みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
FMPro12、Go12の初心者です。
計画番号毎に作成したレコード1000件ほどをインポートしています。
印刷するのですが、その前に10数件の計画番号は印刷しません。
印刷しない計画番号はEXCEL表で送られてきますので、それを利用してレコードを対象外に出来ないでしょうか。
インポート用に別テーブルを作り、
その計画番号と元テーブルの計画番号をリレーション。
スクリプトで
別テーブルにインポート
関連レコードへ移動[対象レコード内の全てのレコードを照合]
元テーブルで、対象外のみを表示
これでいいでしょう。
Offline
インポート用に別テーブルを作り、
その計画番号と元テーブルの計画番号をリレーション。スクリプトで
別テーブルにインポート
関連レコードへ移動[対象レコード内の全てのレコードを照合]
元テーブルで、対象外のみを表示これでいいでしょう。
次の様に作成しましたが、上手く行きません。
申し訳ありませんが確認をお願い致します。
1.別テーブルに1000件分をインポートしてレコード作成
2・元テーブルに10数件をインポートしてレコード作成
3.スクリプトは
レコードのインポート[ソース「file:インポート.fmp12」;ターゲット「別テーブル;方法;追加;文字セット:「シフトJIS」;フィールドデータのインポート順:ソースフィールド1のインポート別テーブル(インポート用::計画番号]
関連レコードへ移動[テーブル:「元テーブル;使用するレイアウト:<現在のレイアウト>]
[関連レコードのみを表示;対象レコードの照合]
対象外のみを表示
以上
書き方が悪かったか・・
元テーブルに1000件をインポート
別テーブルに10数件の計画番号をインポート
別テーブルから元テーブルへ関連レコードへ移動
元テーブルで対象外のみを表示
と、
ここまで書いて気がつきました。
元テーブルに既存のレコードがあって、
それらは今回印刷しないのならこのままではまずいですね。
元テーブルでインポート前に既存のレコードにフラグをたてるとか、
印刷用にもう一つテーブルを作り、レコードが無い状態から上記の作業をするとか、
考えてください。
Offline
分かりにくい説明で申し訳ありません。
改めて説明致します。
①Aレイアウトにレコードを毎日1000件インポートします。
フィールドは計画番号(ユニークな値),日付、商品名などです。
②印刷する前に日付で検索します。
そのレコードに対し、10数件の計画番号を除いて印刷します。
10数件の計画番号はEXCEL表で他部署より送られてきます。
③又、10数件のみ印刷することもあります。
改めて宜しくお願い致します。
前レスの手順の最後に、
日付で絞り込み検索をすればいいのでは。
③又、10数件のみ印刷することもあります。
インポート直後なら、
前レスの手順で
対象外のみを表示
を省けばいいでしょう。
それ以降なら、別テーブルに日付を持たせて、
それで検索し、関連レコードへ移動でいいでしょう。
Offline
Aレイアウトに1000件をインポートした以降に、EXCELからインポートした10数件を除いて印刷する2段階の方法が良いです。
申し訳ありませんが、私のスキルではスクリプトが書けません。
元テーブルと印刷しない番号をインポートする両方のテーブルに
作成日自動入力の日付フィールドを作ったら少し楽になるかも知れない。
http://pupld.net/28/150207/p27xt7zcd3/index.cgi
非印刷伝票.fmp12
印刷しないテーブルでは既存の全レコードを削除してからインポート
するのが前提です。
Offline
どちらにも日付フィールドが有って、
その日付ごとに印刷なら、
1000件は元のテーブルにインポートできますね。
また、リレーションは
日付 = 日付
and
計画番号 ≠ 計画番号
とすれば、
関連レコードへ移動
だけで、対象外との入れ換えが不要になるんでした。
Offline
1000件のレコードが送られてきて、その後別に、15件は非正規データで報告しない、と言うようなことでしょうか。
15件は非保存で良いということにして
別テーブルにエクセルデータをインポート
(1000件が入った)元テーブルの計画番号=別テーブルの計画番号 とリレーション
元テーブルに新しく計算フィールド 非印刷= Count(リレーション::計画番号)
とすると元テーブルで非印刷<1 が印刷対象になります。
チポさんのは、別テーブルからの関連レコード移動がすべてを照合なので
1レコードずつ照合してしまうと思いますよ。
花丸さんのは、元テーブルが1000レコードだけではないので、日付のand
検索も必要です。(日付があるのなら)
Offline
旅人さんの言われていることがよく理解できないですけど、、
別テーブルで日付でしぼった対象レコードの
関連レコードでいいでしょう。
花丸さんのは
索引非保存のフィールドの検索になりますから、
お勧めできませんよ。
Offline
元テーブルと印刷しない番号をインポートする両方のテーブルに
作成日自動入力の日付フィールドを作ったら少し楽になるかも知れない。http://pupld.net/28/150207/p27xt7zcd3/index.cgi
非印刷伝票.fmp12印刷しないテーブルでは既存の全レコードを削除してからインポート
するのが前提です。
旅人様
サンプルまで作成頂き大変有難う御座います。
非印刷で作成日と番号を入力すると希望通りになりますが、出来れば、番号のみ入力で、除いて印刷は難しいのでしょうか。
今日インポートしたという目印が無いと、元テーブル側の昨日までのレコードも
印刷対象として出てしまいます。
既に印刷したレコードに「印刷済み」などの目印があればいいのですが。
作成日は作成情報自動入力を設定しておけば、インポート時に勝手に入りますけど。
Offline
①Aレイアウトにレコードを毎日1000件インポートします。
フィールドは計画番号(ユニークな値),日付、商品名などです
この日付は、その毎日の同日付が入っているのですよね。
10数件の計画番号はEXCEL表で他部署より送られてきます
これにも日付が有ると考えていましたが、違うのかな?
でなかった場合、
計画番号はユニークと書いてありますが、それは、
毎日の1000件の中でユニーク
全レコードを通してユニーク
どちらでしょう。
Offline
①Aレイアウトにレコードを毎日1000件インポートします。
フィールドは計画番号(ユニークな値),日付、商品名などです
この日付は、その毎日の同日付が入っているのですよね。
⇒日付は全てのレコードにありますが、毎日の同日付ではありません。
他部署が任意に決めています。
10数件の計画番号はEXCEL表で他部署より送られてきます
これにも日付が有ると考えていましたが、違うのかな?
でなかった場合、
計画番号はユニークと書いてありますが、それは、
毎日の1000件の中でユニーク
全レコードを通してユニーク
どちらでしょう。
⇒送られてくるEXCEL表には計画番号のみです。
手間が掛かるのか日付がありません。
計画番号は全レコードを通じてユニークです。
宜しくお願いします。
でしたら、旅人さんの言われている通り、
1000件はインポート時にその本日を自動入力し、
10数件の方は、
上記と同日にインポートなら同様に入力、
でなければ、1000件と計画番号でリレーションして上記の日付を得られますよね。
Offline
Pages: 1
[ Generated in 0.005 seconds, 7 queries executed - Memory usage: 557.25 KiB (Peak: 578.16 KiB) ]