FC2ブログ

FileMakerあれこれブログ

FileMakerに関する、あれやこれやの解決策や小技など、思い付いたものをどんどん書き込んでいきます。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

レイアウトへのメモ書き

スクリプトトリガや条件付き書式などを使って、少し凝ったレイアウトを作成すると、どこにどんな設定をしたのか、作った本人でさえ分からなくなってしまうことが多々あります。
スクリプトトリガや条件付き書式なら、セットしたフィールドやオブジェクトの右下に小さなマークが付くので、注意して見れば分かりますが、レイアウトにスクリプトトリガをセットした場合や、オブジェクト名を設定した場合などは、メニューからレイアウト設定画面を開いて確認したり、いちいちオブジェクトを選択して、インスペクタから一つ一つ確認していかないと見付けられません。

そんな問題を解決する、ちょっとした方法です。
私が考えたわけではないですが、多くの開発者が使っている方法です。

オブジェクト名などを付けたフィールドの横に赤文字のテキストを配置し、そこに下記のような条件付き書式を設定します。

条件式:(計算式が) Get ( ウィンドウモード = 0 )
その他書式設定から、フォントサイズを500ポイントにして、さらにスタイルを「下付き」にします。

こうすることで、レイアウトモードにした時だけに表示されるメモ書きになります。
オブジェクト名の表示だけでなく、レイアウトのスクリプトトリガが設定されている旨の注意書きや、その他色々なメモ書きに応用できます。

※この機能はVer.11までは有効ですが、残念ながらVer.12では適用できなくなりました...

LayoutMemo01.jpg

LayoutMemo02.jpg

スポンサーサイト

テーマ:ソフトウェア - ジャンル:コンピュータ

ポータルを含むレコードの複製(応用)

ポータルを含むレコードの複製の応用です。
複製する回数を指定することと、複製した親レコードに連続した日付を入力していくスクリプトを実現されたいと、リクエストをいただきました。

まずは複製回数を入力するグローバルフィールドを、フィールドタイプ「数値」で親テーブルに作成し、複製を実行するレイアウトに配置します。

続いて「ポータルを含むレコードの複製」のスクリプト(定番でもひねった方の何れでも可)にスクリプトステップを追加していきます。

--------------------------------------------------

複製回数を入力するフィールド:gQuot(数値のグローバルフィールド)
日付を入力する親テーブルのフィールド:Date(日付フィールド)


If [ gQuot ≤ 0 ] //複製回数が0または入力していなかったらエラーメッセージを表示
カスタムダイアログを表示 [ "確認" ; "複製回数を入力してください。" ]
Else //複製回数が入力されていたら、以下のスクリプトを実行
 Loop
 変数を設定 [ $Rep; $Rep + 1 ] //複製回数をカウントする変数をセット
 変数を設定 [ $count; 値:"" ] //2個目のLoop回数をカウントする変数をクリア※ここを忘れるとLoopが止まらなくなるので注意してください。

 変数を設定 [ $sn2; 値:GetNextSerialValue ( Get ( ファイル名 ) ; "sn" ) ]
 変数を設定 [ $Lines; 値:Count ( SalesH_SalesD_Sn::sn ) ]
 Loop
 変数を設定 [ $count; 値:$count + 1 ]
 ポータル内の行へ移動[ 選択; ダイアログなし; $count ]
 レコード/検索条件複製
 フィールド設定 [SalesD::fksn; $sn2]
 Exit Loop If[ $count ≥ $Lines ]
 End Lopp
 レコード/検索条件複製


 フィールド設定 [SalesH::Date; SalesH::Date + 1] //複製前から入力されていた日付に1を加算(1日送ることになる)
 Exit Loop If[ $Rep ≥ gQuot ] //$Repの値が複製回数(gQuot)の数値に達したらLoop終了※ここも忘れるとLoopが止まらなくなるので注意してください。
 End Loop
 フィールドへ移動[]

End If

--------------------------------------------------

※青字の部分は、前回の「ポータルを含むレコードの複製」と同じです。

テーマ:ソフトウェア - ジャンル:コンピュータ

FC2Ad

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。