みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
初めて投稿させていただきます。
FM16のMac版で使用してます。
AAAというファイル名のDBがあります。
DBの更新に伴いAAA(旧)のデータを全て書きだし,AAA(新)に入れ直しするとします。
ABCの中に値一覧があり,その値一覧の名称がBBBであるとした場合
BBBをValueListItems ( "AAAA" ; "BBB" )であるフィールドCに書き出したのですが,
これを今度はAAA(新)のBBBに書き出したCのテキストデータを復元したいのですが,どうすればいいか
ご教授をお願いしたします。
簡単に言いますとテキストデータCをAAAというファイル名のDBの中にある値一覧BBBに入れたいということです。
これをスクリプトで行いたいのです。
よろしくお願いします。
Offline
値一覧は、カスタム値を使っているのでしたら、他のファイルにある値一覧を参照することができます。旧のファイルを複製し、値一覧のみを残してそれ以外を削除し、そのファイルを参照しておく、というのが、現状では一萬楽かもしれません。
それ以外でしたら、表示順や区切リの問題が残りますが、テーブルに展開させて、そのテーブルを参照する、という手もあるでしょう。
そのまま移行したいのでしたら、手でコピペするしかないでしょう。そのうちにインポートもできるようになると思います。(期待しています)
Offline
作ったDBを自分で使うのであれば,コピペでいいのですが。
今回の場合,作成したDBを複数の人に配布し,ユーザーの意見で修正し,それをまた配布するため,
配布先で作成した値一覧をその度にコピペで対応するのは面倒といわれるので,
総書き出しの際にデータと共に値一覧も書き出し,修正版では書き出したデータと値一覧を新たに取り込むことを
スクリプトで行いたいのです。
値一覧の書き出しは出来るのですが,それを戻す方法が解りません。
そこの所を教えて頂きたいと思います。よろしくお願いします。
Offline
値一覧は、統合的なインポートエクスポートの機構を持っていない要素です。
ValuListItems()による取得は、デザイン関数という副作用の無い関数による取得であって、エクスポートではありません。
結果、カスタム値を使った値一覧は、GUIによる手作業を使わなければ、ファイル間で移動できません。
無難なのは、現在カスタム値として入力してあるテキストをグローバル格納のフィールドに入力し、
それを値一覧が参照するフィールドとして指定する、という方法です。
中身が改行区切りのテキストであれば、カスタム値の場合と同じように認識してくれますし、
グローバル格納フィールドであればTOGを無視してアクセスでき、インポートエクスポートも可能です。
ただしグローバル格納を用いるため、共有環境ではクライアントからの永続的な書き換えができなくなります。
そこで、値一覧用の元データを入れておく非グローバル格納フィールドを用意しておき、
OnFirstWindowOpenトリガや、その元データフィールドのSaveトリガなどを使い、
値一覧が参照するグローバル格納フィールドに、元データから内容をコピーする、といった仕組みを用意する必要があります。
Offline
Pages: 1
[ Generated in 0.008 seconds, 9 queries executed - Memory usage: 554.55 KiB (Peak: 582.95 KiB) ]