みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
OS:[mac OS 10.12.1]FileMaker Ver:[14 Adv.]
たいへんお世話になります。
配布したランタイムをバージョンアップした際に、新ファイルへのデータの移行スクリプトで躓きました。
レコードに関しては良いのですが、配布先でユーザーさんが独自に「編集...」で設定した値一覧のカスタム値を、バージョンアップしたランタイムへのインポートできません。
旧ファイルをこちらが用意したフォルダーにユーザーサイドで入れてもらってファイルパスを取得、ValueListItems で吸い上げるところまではできそうですが、新しいファイルの値一覧へ「フィールド設定」的にインポートする方法が思いつきません。
この部分だけユーザーさんに手作業でコピペして頂くしかないのでしょうか。
値一覧をフィールド値にするべきなのでしょうが、勝手にソートされてしまって使い勝手が悪くて困ります。
2番目のフィールドも表示させたくありません、、、。
Offline
値一覧をフィールド値にするべきなのでしょうが、勝手にソートされてしまって使い勝手が悪くて困ります。
2番目のフィールドも表示させたくありません、、、。
この辺りは、ファイルの制作的な問題で
ある程度の制限を加えて編集できないようにしていおけば
すみそうな気もしますが。
Last edited by シャチ (2016-12-08 20:15:28)
Offline
>シャチ様
勝手にソート、とはユーザーさんのことではなくプルダウンしたときの値の並び方、FileMakerの仕様のことです。
Offline
ごめんなさい、誤解をしてたんですねぇ。
孫悟空がお釈迦様の掌の上でしか動けなかった
それと同じで
ユーザーはFMPの機能に縛られてますねぇ。。
なんとかしたいですが・・・
Offline
あんまりこういう代案を出したくはないのですが
別テーブルを値一覧がわりにポップさせる方法を
http://yahoo.jp/box/QF_NMQ
に置きました。
おすすめではないですが、擬似的になんとかの代案です
Offline
値一覧だけを持たせたファイルを作っておく、というのも一つの手かも。もちろん、固定値などを保存するマスターファイルの様な機能を持たせるとベターでしょう。そのファイルの内容については、ユーザー側で管理する、という運用にすれば、配布先毎に異なる値一覧が使えます。
そこで作った値一覧を、使用するファイルから参照させます。
Offline
Shinさんの案が現実問題として最適でしょうね
私の案は、あくまでも値一覧の並べ替えの問題の代案です。
Offline
環境が無く、記憶からの曖昧なお答えを、お断りしておいて、
FM間であれば、値一覧のインポートが可能で、
一方ランタイムはFMへのデコード変換が出来た筈なので、
詰まる所、インポート可能と思います。
・旧ランタイムをFMP advで開き旧FMファイルとして保存
・新FMファイルからその旧FMの値一覧をインポートします。
・実際のインポート手順は、
・レイアウト画面で所望フィールドへの値一覧の仮設定を試行し、
・値一覧の所在を聞かれたら、旧FMの目的値一覧を指定、設定終了すると、
・新ファイルにその値一覧が自動的にインポートされ登録完了されていると思います。
Offline
どうも私のFMPのランタイム作成にトラブルがあって
ランタイム版を作成できないので検証できていないのですが、
値一覧の編集をランタイムユーザーがしているということは
ドロップダウンに「編集」が表示されているはずで、
ランタイムでなければ
これはそのフィールドをクリックした段階で
コピペができますね。
ユーザーに手順を説明することで
コピペでの入れ替えできないでしょうか?
Offline
>シャチさん
サンプルのご提示ありがとうございます。
レコード値を使って任意の並びを重視するならば擬似的ではありますがすばらしい方法だと思います。
>Shinさん
配布先で値のインポートをしてもらうにはフィールド値としてレコードにするのがベストな方法だと思います。
>Hiroさん
説明不足ですみません。
ランタイム配布先のユーザーさんはAdvは持っていないしFMPの操作自体全くの素人さんですなので、あくまでも(ほぼ)ボタン一発でレコードも値一覧のカスタム値もスクリプトでインポートできることを基本目指しております。
Offline
>シャチさん
最初の投稿にも書きましたように、無理であれば手作業でコピペをお願いすることも視野に入れております。
Offline
これは妄想ですが、インポートという考え方ではなくて、ファイル構造もレコードも含めて新旧2つのファイルの差分アップデートのような機能があればいいなといつも思ってます。
Offline
何か完全に勘違いしていません?そのファイルを、ランタイムと全く異なる場所に保存しておく事も可能で、そのファイルその物を引き継ぐのですが。(FMのバージョンが変わって、ファイルコンバートが必要な時には現場作業が必要かも)
データのインポート等、全く不要な運用方法もありますよ。データとそれ以外を分離してしまう管理です。それですと、管理部分のみのファイルを入れ替えるだけです。
ただ、どうしてもわからないのが、ランタイムソリューションで、ユーザーが値一覧のカスタム値を編集している、という所です。色々と試しているのですが、どうやって実現しているのですか。
Last edited by Shin (2016-12-09 16:21:20)
Offline
>Shinさん
ファイルを分けてしまうと新しいフィールドを加えるようなアップグレードをやったときに、結局レコードを抱えているファイルにインポートをやらねばならないような・・。
勘違いでしょうか。
値一覧の編集を許可しておけば、ランタイムにしても「編集...」が選択可能になります。
Offline
>
値一覧の編集を許可しておけば、ランタイムにしても「編集...」が選択可能になります。
これが可能で荒れば、あとはユーザーさんとの間での運用の問題になりそうですね。
Offline
あぁ、ドロップダウンリスト等からの編集がありましたね。ランタイムソリューションの様な、自分の手を離れる物では原則的に許可していませんので。
フィールドの追加の様な大きなバージョンアップでは、それは仕方ないかと。それをさけるために、予備のフィールドをいくつか用意しておく、というのも有りかも。過去にそうした事もありましたが、結局ほとんど使わなかった記憶があります。
Offline
本来制作者側の専権事項なので、ランタイムユーザ側でと云う事なら所詮無理なことですよね。
あくまでランタイム側の機能と処理の範囲内で実現すしたいとすれば、
事前にスクリプトで出来る最大限、
『目的の値一覧をValueListItemsで内容取得し作業フィールドに
一時保存し、それをクリップボードへコピーする』
までを行わせておいて、最後のペーストだけをユーザの手で行って貰う、
と云うのが最も現実的答えかも?
Offline
まとめさせて頂きます。
というかHiroさんがまとめてくさださいました^^
ランタイムにして配布する場合は、値一覧カスタム値をユーザー側に編集を許可しないのが基本ということですね。
今回のケースは1対多のリレーションで、大項目グローバルフィールドの値をプルダウンで切り替え、以下の小項目の表示を絞り込む価格表でした。
ユーザーさん毎に項目内容は違うので、値も区切り線「-」も、自由にカスタム値を編集してもらう仕様にしてしまいました。
今後は大項目をグローバルにしないでレコードにするべきですね。
でもフィールド値を使ってプルダウンすると、FMPによってソートされてしまってユーザーさんは絶対混乱するはずなのでそこはジレンマです。
今回は既に配布済みでHiroさんの言われた作業フィールドもありませんので、ユーザーさんにコピペをお願いすることにします。
レスを頂いた皆様ありがとうございました。
Offline
問題の根本原因が、
> フィールド値を使ってプルダウンすると、FMPによってソートされてしまって
の点にあり、
それを解決するのが最適解なら、解法はあります。
2番目表示フィールドに「順位フィールド」かつソートを指定して、
この順位が見えないよう順位(数字)を「文字幅ゼロの特殊文字」(文字列)に置き換えておく方法です。
詳しくは、ここの 過去ログ id=1305 スレ内の #9番回答 をご覧ください。
(この方法の注意点は、数字ソート→文字列ソートに変わる点の対策と、
フィールド索引言語を日本語→Unicodeへ設定変更する点です。)
Last edited by Hiro (2016-12-11 12:46:51)
Offline
ファイルメーカーを使いこなすのがいっぱいいっぱいの自分にとって、ゼロ幅空白文字とはいったい何者?、からはじめることになりますがチャレンジしてみます。
Hiroさんありがとうございます!
Offline
Pages: 1
[ Generated in 0.008 seconds, 9 queries executed - Memory usage: 562.99 KiB (Peak: 583.9 KiB) ]