■SI Object Browser 掲示板


ユーザの皆様、開発者、サポート担当者の交流のための掲示板です!

ユーザーの皆様同士で教え合ったりもできる交流の場にしたいと思っていますので、相互協力をよろしくお願いします。
なお、過去に同じようなQ&Aがあるケースも多いので、投稿前にキーワード検索してみてください。

discussion
※各投稿のカラーは対象となる製品に対応しています。【■…OB ■…OBER ■…全般 ■…その他】
※ライセンスに関するお問合せにつきましては、お問い合わせページよりご連絡いただきますようお願いいたします。
※誹謗中傷や公序良俗に反する書き込みはご遠慮ください。運営側の判断によりメッセージを削除する場合があります。
※環境依存や技術的調査が必要な問題については掲示板上ではお答えしかねます。ご了承ください。

よくある質問(FAQ)

検索オプション 矢印

~
リセット
新規投稿
OB Ver11.1

SQL ビルダで 右クリックから「テーブル追加」を選びダイアログでテーブルを選ぶと
小文字 の a という別名がついて追加されます。SQL 文上は 大文字の A になってます。

次に SQL文 を手作業で修正し、SQLビルダに戻ると、修正した SQL文 が SQL ビルダ上に
反映されますが、この時テーブル別名を変更してなくても 別名が反映され、
テーブル別名が大文字の A に変更されます。

次に SQL ビルダで 右クリックから「テーブル追加」を選びダイアログで追加するテーブルを選ぶと
A という別名がついたテーブルが存在するのに、小文字 の a という別名がついて追加されます。




こんにちは。
土手内@SIです。

お問い合わせいただいた件につきまして、現象を確認いたしました。

 ①ダイアグラム(テーブルの列一覧が表示される場所)の表別名は、
  大文字/小文字を区別する(Aとaは異なる別名であると認識している)
 ②エディタには、ダイアグラムで指定した表別名を大文字に変換して貼り付ける
  (これにより、ダイアグラム側に反映する際に大文字がセットされる)
といった原因により、発生している模様です。

当現象はObject Browserの不具合でございます。
ご迷惑をおかけしており、誠に申し訳ございません。

本件につきましては、開発側に不具合として報告させていただきますが、
現状では、ダイアグラムで必要なテーブル、列を選択いただいたのち
エディタにて、表別名を最後に調整いただくなどのご対応をお願いできますでしょうか。

お手数をおかけし、誠に申し訳ございませんが
何卒、よろしくお願いいたします。
お世話になります。日頃より貴社製品を利用させて頂いております。
下記について教えてください。(急ぎではございません。)

Windows7(64bit)へクライアントPCを移行するところですが、
OBが投稿時点で64bit対応していない関係上、32bitとして導入・利用するため
DLL等はOracle Instant Client(32bit)をOB専用として利用したいと考えております。

その際、通常のOracleClient(64bit)も同居させたいと思い
レジストリやOS環境変数はできるだけ変更したくないと考えております。
FAQや「投稿No.4587」を参考に以下をセッティングしました。

■OBの導入先
C:\PF\OB11

■OracleInstantClientの解凍・配置先
C:\PF\ORACLE\instantclient-basic-win32-11.2.0.1.0\bin

■環境変数
NLS_LANG=JAPANESE_JAPAN.JA16SJISTILDE

■ORACLE_HOMEの設定(OBの詳細設定画面より)
C:\PF\ORACLE\instantclient-basic-win32-11.2.0.1.0

接続は「サーバ:ポート/SID」でログオンできましたが、可能であれば
TNSNAMESを使用したいと思い、下記に該当ファイルを配置しました。

■TNSNAMES.ORAの配置(2箇所)
① C:\PF\ORACLE\instantclient-basic-win32-11.2.0.1.0\network
 (通常のOracleClientと同じディレクトリ構成)
② C:\PF\ORACLE\instantclient-basic-win32-11.2.0.1.0\bin\network
 (DLLのサブディレクトリに配置)

①のみの場合、下記エラー画面が発生して接続できませんでした。
 「ORA-12154: TNS: 指定された接続識別子を解決できませんでした」
②のみの場合、接続できましたがログオン画面にてプルダウン表示されません。

質問というより、確認ですがOB詳細設定画面におけるORACLE_HOME設定と
ログオン画面プルダウンより参照されるTNSNAMESは、上記のそれぞれ異なる
ディレクトリを参照しておりますでしょうか。

お忙しい所恐れ入ります。
よろしくお願い申し上げます。
こんにちは。
土手内@SIです。

お問い合わせいただいた件につきましてですが、Object Browserが
tnsnames.oraの配置場所を認識する際、レジストリや環境変数の値を参照しておりますため、
オプション値「ORACLE_HOME」とは関連のない形となっております。

今回、InstantClientにてご利用いただいているとのことですので、システム環境変数に
 名前:TNS_ADMIN
 値 :tnsnames.oraの配置フォルダ
    ①なら、 C:\PF\ORACLE\instantclient-basic-win32-11.2.0.1.0\network
    ②なら、 C:\PF\ORACLE\instantclient-basic-win32-11.2.0.1.0\bin\network
を新規作成いただき、解決するかどうかご確認いただけますでしょうか。

お手数ではございますが、よろしくお願いいたします。
SI 土手内様

お世話になります。ご検討ありがとうございました。
試行結果を以下に記載します。
(初回投稿では、TNSNAMESの配置ディレクトリに「\admin」が抜けておりました。)

パターン① (通常のOracleClientと同等に配置)
■TNSNAMES.ORAの配置(1箇所のみ)
C:\PF\ORACLE\instantclient-basic-win32-11.2.0.1.0\network\admin

■環境変数
TNS_ADMIN=C:\PF\ORACLE\instantclient-basic-win32-11.2.0.1.0\network\admin

■試行結果
・プルダウン表示:正常
・インスタンス接続:正常

パターン② (DLLのサブディレクトリに配置)
■TNSNAMES.ORAの配置(1箇所のみ)
C:\PF\ORACLE\instantclient-basic-win32-11.2.0.1.0\bin\network\admin

■環境変数
TNS_ADMIN=C:\PF\ORACLE\instantclient-basic-win32-11.2.0.1.0\bin\network\admin

■試行結果
・プルダウン表示:なし
・インスタンス接続:正常

パターン③ (専用ディレクトリに配置)
■TNSNAMES.ORAの配置(1箇所のみ)
C:\PF\ORACLE\TNS_ADMIN

■環境変数
TNS_ADMIN=C:\PF\ORACLE\TNS_ADMIN

■試行結果
・プルダウン表示:なし
・インスタンス接続:正常

問題なければ、パターン①にて対応したいと思いますが如何でしょうか。
よろしくお願い申し上げます。
【状況】
あるサーバAにて、
Object Browser Ver11.1(以下OB)と、
Oracle11gの両方がインストールされています。
サーバAのOBから同一サーバA上のデータベースと接続し、
CLOB型の中身を参照しようとすると(...をクリックすると)、
フリーズして操作を受け付けなくなります。

【環境の再現】
あるマシンAにOracle11gが入っており、
他のマシンBからOBを使ってそのデータベースを参照すると問題無いのですが、
Oracleが入っている同じマシンA上にOBをインストールし、
CLOB型のデータを参照しようとするとフリーズします。

つまり、PC上のOBから同一PC上のデータベースに接続し、
CLOB型を参照しようとするとフリーズするようです。

これはバグなのでしょうか、それとも仕様なのでしょうか。

以上、御解答の方をよろしくお願い致します。
こんにちは。
土手内@SIです。

お問い合わせいただいた件につきましてですが、
以下のような条件の時に発生する場合があるとの報告を
いただいております。

・Oracle Database/Client のバージョンが異なっている

・特定のデータがある場合に、Oracle Call Interface(OCI)の
 内部でハングアップする

いずれのケースにつきましても、Oracle Database/Clientの
組み合わせによって再現する場合としない場合があり、
現状ではObject Browser側での対応が困難な状況でございます。

本件につきましては、何らかの方法でフリーズ現象を回避できないか
開発側で検討させていただいておりますが、現状では
別途参照可能な環境があるとのことですので、そちらから
ご確認いただく等、運用での回避をお願いできますでしょうか。

ご不便をおかけし、誠に申し訳ございませんが
何卒、よろしくお願いいたします。
[土手内@SI]
>こんにちは。
>土手内@SIです。
>
>お問い合わせいただいた件につきましてですが、
>以下のような条件の時に発生する場合があるとの報告を
>いただいております。
>
>・Oracle Database/Client のバージョンが異なっている
>
>・特定のデータがある場合に、Oracle Call Interface(OCI)の
> 内部でハングアップする

こちらの環境は上記のどちらも該当しません。
(Oracleのバージョンは同じです。
また、一旦データベースを全削除し、
テスト用のテーブルを一つ作成しテストしました。)

もう少し調査をしてみましたが、
CLOBのデータの内容によってフリーズが起こるものと、
起こらないものがあることが分かりました。

フリーズが起こる文字列
・テスト1
・テスト(改行)
・テストa
・test

フリーズが起こらない文字列
・テスト
・テスト1
・テストs
・test1
・(空白)

上記を見て頂ければ分かると思いますが、
文字列の最後が全角文字であればフリーズは起こらず、
文字列の最後が半角文字か改行であればフリーズするといった状況です。
(あるPCのOBから、同じPCのデータベースにアクセスした場合です。)

できればこの不具合は対処して頂きたいので、
調査の方を御検討して頂ければ幸いです。

以上、よろしくお願い致します。
こんにちは。
土手内@SIです。

詳細な情報のご提供、誠にありがとうございます。

開発側にて確認を行いましたところ、ご指摘にありましたようにCLOBデータの末尾が
1バイト文字の場合に再現する模様です。

Object Browser内部の動作としましては、CLOBデータを読み込んでいき、
OCI.DLLより「読取が完了した」というコードが返された段階で
データを表示する動作となっておりますが、CLOBデータの末尾が1バイト文字の場合
この「読取が完了した」コードが返されず、フリーズ現象が発生することを確認しております。

誠に申し訳ございませんが、OCI.DLLに起因する問題となりますため、
正常なデータを表示することは非常に困難な状況でございます。

代替案としまして、SQL実行画面から文字列データとして
SELECTすることで参照が可能となります。

 SELECT TO_CHAR(CLOB列名) FROM テーブル名 [WHERE 条件...]

しかしながら、この方法ですとCLOBデータを直接編集することが不可となりますため
変更が必要な場合には、別途UPDATE文にて対応していただく必要がございます。

本件につきまして、フリーズ現象を回避する方針で検討するよう
開発側に伝えさせていただきますが、「正常データの表示」につきましては
対応が困難となりますこと、誠に恐縮ではございますがご容赦いただけますでしょうか。

ご不便をおかけし、誠に申し訳ございませんが
何卒よろしくお願いいたします。
過去の投稿も多々あるようですが「アドレス 00000000 でアドレス 00000000 に対応する読み込み違反がおきました。」のメッセージが頻発し困っております。

【発生環境】
・クライアント(自端末) Oracle 10.1
製品:ObjectBrowser for Oracle 11.1.0.0
・サーバ (別端末) Oracle11.2 、 Oracle 10.1
きもち 11.2 への接続で頻発しているものの 10.1 への接続でも発生しています。

本件の解決策はどのようになっているのでしょうか?
製品としての対応をご検討いただきたく期待しております。

現象発生後は、OB画面は存続しているものの内部のセッションは切れており、そのサーバへ再接続しなおせば使える状況になります。
またストアドの編集に多く利用していますが、ストアドを生成する際、本エラーで落ちても、再接続後確認するとその内容自体は変更反映されております。
なお、同じ操作、同じファイル、同じタイミングで操作しても1度目で落ちる場合と暫く使える場合と、発生現象が不特定です。
こんにちは。
土手内@SIです。

お問い合わせいただいた件につきましてですが、
Oracle Database/Clientのバージョンが異なる場合に
発生するケースがあるとの報告をいただいております。

このとき、バージョンを詳細バージョンを含め
同一にしていただくことにより現象が解決するという
ご報告をいただいておりますので、大変お手数ですが、
Oracleクライアントのバージョンを変更していただくなど、
バージョンを同一にしていただいた上で、
現象が解決するかご確認をお願いしてもよろしいでしょうか。

また、本件に対する対応につきましてですが、
発生するタイミングやオペレーション、環境が不定であること、
Oracle Clientに含まれるOrale Call Interface(OCI)の
動作仕様に依存していると考えられるケースもありますことから
現状、製品側での対応が非常に困難な状況でございます。

ご不便をおかけし、誠に申し訳ございませんが
何卒、よろしくお願いいたします。
OBは、マルチな環境に対応する開発をサポートしないということでしょうか?
複数バージョンのオラクルサーバに対する開発を行うような場合は
都度同一のバージョンにクライアントを合わせる(アンインストール・インストールを繰り返す)という運用が前提なのでしょうか?
こんにちは。
土手内@SIです。

ご意見いただき、ありがとうございます。

現状では、動作環境に記載しております通り、
Oracle Client/Databaseバージョンの統一を推奨させていただいております。

内部的な話をいたしますと、Oracle Clientに依存しない形式での実装自体は
可能でございますが、パフォーマンス等とのトレードオフといった形となりますため
ユーザー皆様のご意見を踏まえたうえで弊社での検討を行い、
現状の動作となっている次第でございます。

本件につきましては、貴重なご意見として有難く頂戴いたしますとともに
今後同様のご意見が多く寄せられるようでしたら、改めまして検討させていただければと存じます。

何卒、よろしくお願いいたします。
>都度同一のバージョンにクライアントを合わせる(アンインストール・インストールを繰り返す)という運用が前提なのでしょうか?
>

そんな面倒なことしなくても複数入れてORACLE_HOME切り替えて使ってみては?
(やりかたは探せばいくらでも出てくるので割愛)
以下の現象に悩まされています。

職場のPCは、メイン・サブの2つのディスプレィがある環境です。

職場でサブ画面にObject Browserを表示して閉じた(終了した)とします。

その後、例えばノートPCなどのリモートデスクトップ接続して
メイン画面を表示したとします。

この状態でObject Browserを起動すると、タスクバーには
Object Browserのアイコンが見えるのですが、画面に表示されません。

恐らく終了時の位置を保持していて、次の起動時には前の終了時に
画面を表示しているのではないかと推察します。

リモートデスクトップ接続した時には、メイン画面に表示され、
通常どおり操作可能であるのを希望していますが、何か回避策は
ありますでしょうか?

こんにちは。土手内@SIです。

お問い合わせいただいた件につきましてですが、
ご推察にありました通り、Object Browser終了時のウインドウ位置を
記憶しておりますため、マルチモニタ⇔シングルモニタの切り替え等により
該当の現象が発生するとの報告をいただいております。

現状では、Object Browserにてモニタの数(最大ウインドウ幅)を
取得・チェックするような仕組みがございませんため、回避方法としましては
以下に記載します通り、運用もしくは保持情報の削除にて
ご対応いただく他ない状況でございます。

お手数ではございますが、ご検討いただけますでしょうか。

=====
1.Object Browserを常にメインモニタで使用する。
 (少なくとも、メインモニタ上で終了する)

2.Object Browserの位置情報を保持しているレジストリキーを削除する。
 HKEY_CURRENT_USER\Software\SystemIntegrator\OB○\GUI\MAIN
 ※○にはバージョン番号が入ります。
  また、誤って異なるレジストリ情報を削除しないようご注意ください。
=====

また、本件につきましては改善要望として承り、開発側に伝えさせていただきます。

お手数をおかけし、誠に申し訳ございませんが
何卒、よろしくお願い申し上げます。
ご返信ありがとうございます。

レジストリの位置情報を教えて頂けましたので、
何とかこちらでも対応できると思います。

ありがとうございました。
初歩的な質問ですいません。
表・列のSELECT文作成機能について教えてください。

Aテーブルの項目1,項目2とBテーブルの項目A、項目Bをselectしたいです。
この場合、どのような操作で上記のSELECT文を生成できるのでしょうか。

Aテーブルを表示させ、項目1,項目2を選択、Ctrlを押しながら、
Bテーブルをクリックし、項目A、項目Bを選択。
2テーブル選択されている状態でSELECT文を生成と押すと、2テーブルの
別名が聞かれますが、項目としては、Bテーブルの項目しか表示されません。
こんにちは。
土手内@SIです。

お問い合わせいただいた件につきまして、
ご希望の動作を実現する手順を記載いたします。

お手数ではございますが、ご確認いただけますでしょうか。

=====
1. 表・列画面左側にて、左側に表示されるテーブルを選択します。
  (複数テーブルをSELECTしたい場合は、CtrlまたはShiftを押しながらクリックします)

2. 手順1で選択したテーブルの列一覧が右側に表示されます。
  (複数選択した場合は、「テーブル名.列名」形式で表示されます)

3. 対象の列を選択し、「SELECT文の生成」を行います。
=====

何卒、よろしくお願い申し上げます。
パッケージプロシージャーで引数に配列(複数項目)
を持つオブジェクトを実行すると
「モジュール'ob11.exe'のアドレス005F1329でアドレス00000030に対する読み込み違反がおきました。」
と出力されて実行できません。
ob10で実行すると固まった状態になり強制終了しか出来なくなります。
SQLPLUSでの実行では何も問題なく実行出来ます。

パッケージプロシージャーで引数に配列(複数項目)渡しで正常に処理するには
どうすればよいでしょうか?
こんにちは。
土手内@SIです。

お問い合わせいただいた件につきましてですが、弊社環境にて
再現することができず、原因が判明していない状況でございます。

本件につきましては、技術調査が必要となりますため
保守サービスの範囲にて対応させていただきたく存じます。

お手数ではございますが、サポート宛に以下の情報をご連絡いただけますでしょうか。

・シリアルNO または ダイジェストキー
・Oracle Database/Clientのバージョン
・PACKAGEおよびPACKAGE BODYのCREATE文
・配列引数に使用しているTYPEおよびTYPE BODYのCREATE文
 ※CREATE文2点につきましては、現象が再現するようでしたら加工していただいても構いません。

なお、保守サービス加入が確認できない場合、対応いたしかねることがございます。
あらかじめご了承ください。

何卒、よろしくお願い申し上げます。
お世話になります。
OB9についてお問い合わせさせてください。

OB9を運用していたサーバのOSをWindows2003から
Windows2003R2SP2に変更したところ、Excel出力時にエラーが発生する様になりました。
エラー内容は、「クリップボードを開くことができません」、
「サーバーによって例外が返されました」、
「RangeクラスのPasteSpecialメソッドが失敗しました」など、
SQLによってエラーメッセージの内容が異なります。

全てのSQLでエラーが発生するわけではありませんが、
件数が多いSQLに対して発生する傾向があります。

OBの使い方としまして、クライアント(WindowsXPSP3)からサーバに
リモートデスクトップで接続し、操作しております。

当方で調査を行っているのですが、一点確認できていることがあります。
リモートデスクトップの、ローカルデバイスとリリースの設定で、
クリップボードのチェックを外すことにより問題が解消されます。

ただ、問題が解消される理由や根本原因が掴めず困っております。

お手数をおかけしますが、サポートいただけないでしょうか。

よろしくお願い致します。
こんにちは。
土手内@SIです。

お問い合わせいただいた件につきまして、同様の報告をいただいておりますが
Excelより返されるメッセージをそのままObject Browserで
表示する動作となっており、リモート接続のオプションによって
発生するエラーであるかをObject Browser側で認識・制御することは
困難な状況でございます。

ご不便をおかけし、誠に申し訳ございませんが
Excel出力を実施いただく際は、該当オプションのチェックを
外していただく運用にて、回避いただけますでしょうか。

何卒、よろしくお願いいたします。
土手内様

お世話になります。Hideです。

ご回答いただきありがとうございます。
現状は運用変更にて対応しています。

同様の報告が複数あるとのことですので、
何か新しい情報が入りましたら際は、
カキコミしていただけると幸いです。

(困っている人が少なからず居ると思いますので・・・)

以上、よろしくお願い致します。
こんにちは。
土手内@SIです。

ご意見いただき、誠にありがとうございます。

現状では、よく寄せられる質問とその回答につきまして
FAQページにまとめさせていただいております。

■SI Object Browser - FAQ
http://www.sint.co.jp/products/siob/ob/faq/faq.html

■SI Object Browser ER - FAQ
http://www.sint.co.jp/products/siob/er/faq/faq.html

今回お問い合わせいただいた件につきましては、誠に申し訳ございませんが
現状でもFAQに記載のない状況でございます。

今後、FAQページの更新頻度や「よく寄せられる」の基準等を含め
改善を検討させていただければと存じます。

何卒、よろしくお願いいたします。