みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
下記のページが参考になりませんか
https://bit.ly/3GYPVwV
ブランコさん、回答ありがとうございました。
その後、ちょっと運用を変更しました。このリストはDM用のリストで、タウンページからデータ取得を取得します。当初はデータ取得時にシリアルNOを発行しようと思っていたのですが、ダブりや廃業したところも載っているので、その中から選別したものに対してだけシリアル値をスクリプトで振るようには出来ました。ですので、運用は出来るようになりました。
セパレーターにハイフンを使わない方が良いとのご指摘、確かにそうなので変更するようにします。
さて、せっかく教えていただいたので、試したところどうもうまくシリアル値が入力されません。
作ったファイルは下記にあります。
https://www.dropbox.com/s/tpyfblczw8gvb … fmp12?dl=0
どこがいけないのでしょう?データ作成時に分類NOが入っていないせいのような気がします。
よろしくお願いします。
皆さん、こんにちは。Win版V18を使っています。
下記の様なルールでシリアル番号を振りたいのです。
分類テーブル
00 Aタイプ
01 Bタイプ
02 Cタイプ
04 Dタイプ
…
ここで、Aタイプのデータを作成したらシリアル番号は
00-0001~
Bタイプのデータを作成したらシリアル番号は
01-0001~
の様に分類番号 0X-000X 0から始まる4桁数字
これをシリアル番号のフィールド定義の自動化入力オプションの所に設定したいのですが、どのように記述したら良いか教えてください。
前半はCase関数でいけると思うのですが、後半をどうしたらよいのでしょう?
よろしくお願いします。
みなさんこんにちは。V19 Win版を使用しています。
抽出中のデータのNoフィールドの番号を振り直すために、カスタムダイアログを表示して最初の番号を入力して、その値から増分1でシリアルNoを発行し、振り直すことを考えています。
そのために、下記の様なスクリプトを書いています。
変数を設定[$No]
カスタムダイアログを表示["番号の振り直し";"振り直す番号の最初の値を入力してください。";$No]←入力は変数$Noにしています。
フィールド内容の全置換[ダイアログあり;オフ;No;シリアル番号] ←ここでシリアル番号で置き換える カスタム値 初期値として$No 増分1としています。
これを実行すると
$No1
$No2
$No3
となってしまいます。
このような使い方は出来ないのでしょうか?
よろしくお願いします。
Moz さん、himadanee さん、Shin さん、
回答ありがとうございました。
Shin さんのサンプルファイルで、スクリプトの書き方がわかりました。
>>実際にインポートを実行することでインポート順を記憶させるのは、FM6ぐらいの頃の手法では。
Ver6の頃から使っているので、まだそのくせが抜けないようです。
新しいバージョンのインポート順の設定方法がわかりました。
実体ファイルを書くことによってインポート順を設定するのですね。
その上で、Shin さんのサンプルプログラムについて教えていただきたいのですが、
bkファイルのデータ数を変更して、本体とは別の場所にコピーしました。
インポート時にその別の場所を指定しても、元の位置にあるファイルからインポートしてしまいます。
これはどうしてでしょう?
よろしくお願いします。
Moz さん、himadanee さん、
回答ありがとうございました。
スクリプトは下記の様になっています。
#リストア元のファイルを変数に格納
ファイルを挿入[フィルタ:参照;圧縮しない;ターゲット:$impotfile]
#管理テーブルをインポート
レイアウト切替[管理]
レコードのインポート[ダイアログ:オフ;管理テーブル;「$impotfile」;追加;シフトJIS]
#社員テーブルをインポート
レイアウト切替[社員一覧]
レコードのインポート[ダイアログ:オフ;社員テーブル;「$impotfile」;追加;シフトJIS]
変数$impotfileは、きちんと2行に分かれています。
問題は、社員テーブルをインポートするときに、ダイアログを出して、インポート元を社員テーブルにすると正常に社員テーブルをインポートするのですが、ダイアログオフにすると、管理テーブルから社員テーブルにインポートしてしまうのです。
ユーザーにインポートテーブルを指定させること無く自動的に社員テーブルからインポートしたいのです。
スクリプトを作成するときに
一度
レコードのインポート[ダイアログ:オン;社員テーブル;(実体ファイルを指定);追加;シフトJIS]
として、デバックし、インポート順を覚えさせました。
その後、
レコードのインポート[ダイアログ:オフ;社員テーブル;「$impotfile」;追加;シフトJIS]
すると、他のテーブルから読んでしまいます。インポート順はどのように指定したら良いのでしょうか?
よろしくお願いします。
Shin さん、himadanee さん、Moz さん
回答ありがとうございました。いずれも出来ました。
今回は、Mozさんの方法を採用させていただきます。
その上で、次の質問なのですが、レコードのインポートのスクリプトの作り方を教えてください。
最初の1つめは正常にインポート出来ます。
2つめのテーブルのレコードをインポートするときに、ダイアログ有りで実行し、正常に取り込めることを確認した後、ダイアログオフにしてスクリプトを実行すると、今インポートしたテーブルから、2つめのテーブルへデータをインポートしてしまいます。インポート順は照合名順としています。2つめは、2つめのテーブルから2つめのテーブルへインポートしたいのです。
この場合、レコードのインポートスクリプトを、どのようにスクリプトを作成していったら良いのでしょうか?
よろしくお願いします。