タイトル | : Shapeコマンドのparent-commandについて |
記事No | : 15101 |
投稿日 | : 2011/01/30(Sun) 20:02 |
投稿者 | : wanko |
先日 MSHFlexGrid について質問させていただいた wanko ともうします 前回の結論でRecordsetによるMSHFlexGridの構築にいたったわけですが、現在次のような問題にて躓いております。
まずは下を見ていただけますでしょうか?
'Connection---------------------------------------------------
cnShape.Provider = "MSDataShape" cnShape.Open "Data Provider=MSDAORA;Data Source=qq;User ID=qq;Password=qq;"
'親、子それぞれのSQL-----------------------------
ParentSQL="SELECT A.aaa,B.bbb,C.ccc,D.ddd," & _ "E.eee,F.fff " & _ "FROM (SELECT G.aaa,NVL(H.hhh,0) AS hhh " & _ "FROM TABLE_G@DB1 G,TABLE_H@DB1 H " & _ "WHERE G.xxx=H.xxx(+)) A," & _ "TABLE_B@DB1 B,TABLE_C@DB1 C,TABLE_D@DB1 D," & _ "TABLE_E@DB1 E,TABLE_F@RIS F " & _ "WHERE A.zzz=B.zzz AND A.sss=C.sss AND " & _ "A.www=D.www AND A.vvv=E.vvv AND " & _ "A.nnn=F.nnn"
*ただしAlias Aは各リレーションを満たすColumnを記述してあるものとする *DB1はOracle9.2
ChildSQL="SELECT I.aaa,J.jjj " & _ "FROM TABLE_I@DB1 I,TABLE_J@DB1 " & _ "WHERE I.uuu=J.uuu " & _ "ORDER BY I.kkk ASC"
ShapeSQL = "SHAPE (" & ParentSQL & ") " & _ "Append((" & ChildSQL & ") as NAME_A " & _ "RELATE aaa=aaa"
'Recordset----------------------------------------------------
rsShape.Open ShapeSQL, cnShape, adOpenStatic, adLockBatchOptimistic
'--------------------------------------------------------------
*ParentSQL、ChildSQLともにDataEnvironmentにて正常に作成することができます。 *MSHFlexGridにも正常に表示されます
さて、これを実行すると、コマンドエラーとなります 実際のメッセージは職場に忘れてきたためここでは具体的な記述はできませんが、 コマンドもしくはコマンドの13行目付近に..."SELECT A.aaa,B.bbb,C.ccc,D.ddd," とエラー箇所を指摘してきます。 前述したようにDataEnvironmentからMSHFlexGridを作成することは可能です。 これはいったいどのようなエラーなのでしょうか?
実際のメッセージが示せない状況での質問申し訳ありませんが、ご存知の方いらっしゃいましたらご教示よろしくお願いします
|