V10テーブルリポジトリー出力(ドキュメント形式)
- このフォーラムに新しいトピックを立てることはできません
- このフォーラムではゲスト投稿が禁止されています
yh-hasegawa
投稿数: 32
![半人前 半人前](../../uploads/rank3dbf8e94a6f72.gif)
muka様
ありがとうごさいます。
この方法でプログラムの修正をしてみます。
ありがとうごさいます。
この方法でプログラムの修正をしてみます。
投票数:0
平均点:0.00
muka
居住地: 東京都練馬区
投稿数: 69
![常連 常連](../../uploads/rank3dbf8e9e7d88d.gif)
カラムの順番のことですね?
これも同じように下記ような二重のループをXMLGetするしかないと思います。
ファイル:DataSources.xml
パス:/Application/DataSourceRepository/DataObjects/DataObject[n1]/Columns/Column[n2]
ちなみにテーブルのインデックスやセグメント、外部キー等も同じファイルで取得できます。
MAGICの場合、テーブルに限らず、内部番号と表示番号が常に別なのですが、表示番号を取得するためには、XML定義テーブルではだめで、XMLGet関数等を使って取得するしかないと思います。
しかし、この内部番号は表示位置の移動操作等を行っても常に変わらない番号なので、そういう意味では有用な番号です。(リポジトリの入出力を行ったときには振り直されます。)
これも同じように下記ような二重のループをXMLGetするしかないと思います。
ファイル:DataSources.xml
パス:/Application/DataSourceRepository/DataObjects/DataObject[n1]/Columns/Column[n2]
ちなみにテーブルのインデックスやセグメント、外部キー等も同じファイルで取得できます。
MAGICの場合、テーブルに限らず、内部番号と表示番号が常に別なのですが、表示番号を取得するためには、XML定義テーブルではだめで、XMLGet関数等を使って取得するしかないと思います。
しかし、この内部番号は表示位置の移動操作等を行っても常に変わらない番号なので、そういう意味では有用な番号です。(リポジトリの入出力を行ったときには振り直されます。)
投票数:0
平均点:0.00
yh-hasegawa
投稿数: 32
![半人前 半人前](../../uploads/rank3dbf8e94a6f72.gif)
muka様
ご返答ありがとうございます。
下記の方法で、テーブルの並び順は確保できると思いますが、
テーブルの中のフィールドの並び順の確保はどのようにすればいいか、もしご存知でしたら、教えていただけますでしょうか。
宜しく御願いします。
ご返答ありがとうございます。
下記の方法で、テーブルの並び順は確保できると思いますが、
テーブルの中のフィールドの並び順の確保はどのようにすればいいか、もしご存知でしたら、教えていただけますでしょうか。
宜しく御願いします。
投票数:0
平均点:0.00
muka
居住地: 東京都練馬区
投稿数: 69
![常連 常連](../../uploads/rank3dbf8e9e7d88d.gif)
yh-hasegawaさん、こんにちは。
MAGICのXML定義テーブルを使った場合、ノードIDが振られ、それに対するインデックスが自動的に生成さるんですが、必ずしも表示順になるとは保証されないようです。
(本来XMLというのは、表示順も意味があるのですが・・・)
そこで、次のような方法で行ってください。
・データの表示順は、「DataSourcesIndex.xml」の要素「/Application/DataSourceRepository/DataObjects/DataObject」の順番から取得します。
・上記の要素の属性「id」の値は、「DataSources.xml」の要素「/Application/DataSourceRepository/DataObjects/DataObject/」の属性「id」の値と一致します。
具体的には、XMLGet関数で「DataSourcesIndex.xml」にアクセスし、ループの中でyh-hasegawaさんの定義したデータをリンクさせながら(リンクさせなくても主要な項目は同じ要素の属性に定義されているのですが・・・)CSVを出力してもいいですし、メモリテーブルなどを定義し、表示順の情報を書き出しておいてから、それをメインテーブルにしたタスクでCSVを出力しても良いかと思います。
p.s
弊社サイトにV10のソース解析ツールを公開しています。よければ参考にしてみて下さい。
http://www.eternaldesign.jp/da/v10beta
表示している画面のリストや、テーブルの仕様書などをExcelシートに出せるようにしてあります。
MAGICのXML定義テーブルを使った場合、ノードIDが振られ、それに対するインデックスが自動的に生成さるんですが、必ずしも表示順になるとは保証されないようです。
(本来XMLというのは、表示順も意味があるのですが・・・)
そこで、次のような方法で行ってください。
・データの表示順は、「DataSourcesIndex.xml」の要素「/Application/DataSourceRepository/DataObjects/DataObject」の順番から取得します。
・上記の要素の属性「id」の値は、「DataSources.xml」の要素「/Application/DataSourceRepository/DataObjects/DataObject/」の属性「id」の値と一致します。
具体的には、XMLGet関数で「DataSourcesIndex.xml」にアクセスし、ループの中でyh-hasegawaさんの定義したデータをリンクさせながら(リンクさせなくても主要な項目は同じ要素の属性に定義されているのですが・・・)CSVを出力してもいいですし、メモリテーブルなどを定義し、表示順の情報を書き出しておいてから、それをメインテーブルにしたタスクでCSVを出力しても良いかと思います。
p.s
弊社サイトにV10のソース解析ツールを公開しています。よければ参考にしてみて下さい。
http://www.eternaldesign.jp/da/v10beta
表示している画面のリストや、テーブルの仕様書などをExcelシートに出せるようにしてあります。
投票数:0
平均点:0.00
yh-hasegawa
投稿数: 32
![半人前 半人前](../../uploads/rank3dbf8e94a6f72.gif)
V10にはv9,v8で存在した「仕様書出力」がないので、edev_datasources.xsdを使いDataSources.xmlにアクセスし
テーブル情報をCSV形式で出力するようにプログラムを作成しました。
問題があります。
V10テーブルレポジトリ上で見えるような並び順でCSV形式で出力したいのですが、毎回並び順が違ってきています。どなたかXMLファイル出力の時の並び順をv10マジック上で見える順番での出力方法をご存知の方いましたら、教えていただけますでしょうか。
宜しく御願いします。
テーブル情報をCSV形式で出力するようにプログラムを作成しました。
問題があります。
V10テーブルレポジトリ上で見えるような並び順でCSV形式で出力したいのですが、毎回並び順が違ってきています。どなたかXMLファイル出力の時の並び順をv10マジック上で見える順番での出力方法をご存知の方いましたら、教えていただけますでしょうか。
宜しく御願いします。
投票数:0
平均点:0.00