初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2015-02-05 15:43:49

sora
Guest

レコードを対象外にする方法

FMPro12、Go12の初心者です。

計画番号毎に作成したレコード1000件ほどをインポートしています。
印刷するのですが、その前に10数件の計画番号は印刷しません。
印刷しない計画番号はEXCEL表で送られてきますので、それを利用してレコードを対象外に出来ないでしょうか。

#2 2015-02-05 16:17:19

チポ
Member

Re: レコードを対象外にする方法

インポート用に別テーブルを作り、
その計画番号と元テーブルの計画番号をリレーション。

スクリプトで
  別テーブルにインポート
  関連レコードへ移動[対象レコード内の全てのレコードを照合]
  元テーブルで、対象外のみを表示

これでいいでしょう。

Offline

#3 2015-02-06 09:42:23

sora
Guest

Re: レコードを対象外にする方法

チポ wrote:

インポート用に別テーブルを作り、
その計画番号と元テーブルの計画番号をリレーション。

スクリプトで
  別テーブルにインポート
  関連レコードへ移動[対象レコード内の全てのレコードを照合]
  元テーブルで、対象外のみを表示

これでいいでしょう。


次の様に作成しましたが、上手く行きません。
申し訳ありませんが確認をお願い致します。

1.別テーブルに1000件分をインポートしてレコード作成
2・元テーブルに10数件をインポートしてレコード作成
3.スクリプトは
レコードのインポート[ソース「file:インポート.fmp12」;ターゲット「別テーブル;方法;追加;文字セット:「シフトJIS」;フィールドデータのインポート順:ソースフィールド1のインポート別テーブル(インポート用::計画番号]
関連レコードへ移動[テーブル:「元テーブル;使用するレイアウト:<現在のレイアウト>]
[関連レコードのみを表示;対象レコードの照合]
対象外のみを表示

以上

#4 2015-02-06 10:34:19

チポ
Member

Re: レコードを対象外にする方法

書き方が悪かったか・・

  元テーブルに1000件をインポート
  別テーブルに10数件の計画番号をインポート
  別テーブルから元テーブルへ関連レコードへ移動
  元テーブルで対象外のみを表示


と、
ここまで書いて気がつきました。

元テーブルに既存のレコードがあって、
それらは今回印刷しないのならこのままではまずいですね。

元テーブルでインポート前に既存のレコードにフラグをたてるとか、
印刷用にもう一つテーブルを作り、レコードが無い状態から上記の作業をするとか、
考えてください。

Offline

#5 2015-02-06 11:00:26

sora
Guest

Re: レコードを対象外にする方法

分かりにくい説明で申し訳ありません。
改めて説明致します。

①Aレイアウトにレコードを毎日1000件インポートします。
フィールドは計画番号(ユニークな値),日付、商品名などです。
②印刷する前に日付で検索します。
そのレコードに対し、10数件の計画番号を除いて印刷します。
10数件の計画番号はEXCEL表で他部署より送られてきます。
③又、10数件のみ印刷することもあります。

改めて宜しくお願い致します。

#6 2015-02-06 11:27:40

チポ
Member

Re: レコードを対象外にする方法

前レスの手順の最後に、
日付で絞り込み検索をすればいいのでは。


③又、10数件のみ印刷することもあります。

インポート直後なら、
前レスの手順で
  対象外のみを表示
を省けばいいでしょう。


それ以降なら、別テーブルに日付を持たせて、
それで検索し、関連レコードへ移動でいいでしょう。

Offline

#7 2015-02-06 14:08:32

sora
Guest

Re: レコードを対象外にする方法

Aレイアウトに1000件をインポートした以降に、EXCELからインポートした10数件を除いて印刷する2段階の方法が良いです。
申し訳ありませんが、私のスキルではスクリプトが書けません。

#8 2015-02-07 10:45:01

旅人
Member

Re: レコードを対象外にする方法

元テーブルと印刷しない番号をインポートする両方のテーブルに
作成日自動入力の日付フィールドを作ったら少し楽になるかも知れない。

http://pupld.net/28/150207/p27xt7zcd3/index.cgi
非印刷伝票.fmp12

印刷しないテーブルでは既存の全レコードを削除してからインポート
するのが前提です。

Offline

#9 2015-02-08 12:03:47

チポ
Member

Re: レコードを対象外にする方法

どちらにも日付フィールドが有って、
その日付ごとに印刷なら、
1000件は元のテーブルにインポートできますね。


また、リレーションは
  日付 = 日付
  and
  計画番号 ≠ 計画番号
とすれば、
  関連レコードへ移動
だけで、対象外との入れ換えが不要になるんでした。

Offline

#10 2015-02-08 16:53:08

花丸
Guest

Re: レコードを対象外にする方法

1000件のレコードが送られてきて、その後別に、15件は非正規データで報告しない、と言うようなことでしょうか。
15件は非保存で良いということにして

別テーブルにエクセルデータをインポート
(1000件が入った)元テーブルの計画番号=別テーブルの計画番号   とリレーション

元テーブルに新しく計算フィールド 非印刷= Count(リレーション::計画番号)
とすると元テーブルで非印刷<1 が印刷対象になります。

#11 2015-02-08 23:18:40

旅人
Member

Re: レコードを対象外にする方法

チポさんのは、別テーブルからの関連レコード移動がすべてを照合なので
1レコードずつ照合してしまうと思いますよ。

花丸さんのは、元テーブルが1000レコードだけではないので、日付のand
検索も必要です。(日付があるのなら)

Offline

#12 2015-02-09 09:03:28

チポ
Member

Re: レコードを対象外にする方法

旅人さんの言われていることがよく理解できないですけど、、

別テーブルで日付でしぼった対象レコードの
関連レコードでいいでしょう。


花丸さんのは
索引非保存のフィールドの検索になりますから、
お勧めできませんよ。

Offline

#13 2015-02-09 15:24:33

sora
Guest

Re: レコードを対象外にする方法

旅人 wrote:

元テーブルと印刷しない番号をインポートする両方のテーブルに
作成日自動入力の日付フィールドを作ったら少し楽になるかも知れない。

http://pupld.net/28/150207/p27xt7zcd3/index.cgi
非印刷伝票.fmp12

印刷しないテーブルでは既存の全レコードを削除してからインポート
するのが前提です。

旅人様
サンプルまで作成頂き大変有難う御座います。
非印刷で作成日と番号を入力すると希望通りになりますが、出来れば、番号のみ入力で、除いて印刷は難しいのでしょうか。

#14 2015-02-09 18:56:45

旅人
Member

Re: レコードを対象外にする方法

今日インポートしたという目印が無いと、元テーブル側の昨日までのレコードも
印刷対象として出てしまいます。
既に印刷したレコードに「印刷済み」などの目印があればいいのですが。
作成日は作成情報自動入力を設定しておけば、インポート時に勝手に入りますけど。

Offline

#15 2015-02-10 09:15:25

チポ
Member

Re: レコードを対象外にする方法

①Aレイアウトにレコードを毎日1000件インポートします。
フィールドは計画番号(ユニークな値),日付、商品名などです

この日付は、その毎日の同日付が入っているのですよね。


10数件の計画番号はEXCEL表で他部署より送られてきます

これにも日付が有ると考えていましたが、違うのかな?


でなかった場合、
計画番号はユニークと書いてありますが、それは、
  毎日の1000件の中でユニーク
  全レコードを通してユニーク

どちらでしょう。

Offline

#16 2015-02-10 10:40:50

sora
Guest

Re: レコードを対象外にする方法

①Aレイアウトにレコードを毎日1000件インポートします。
フィールドは計画番号(ユニークな値),日付、商品名などです
この日付は、その毎日の同日付が入っているのですよね。

⇒日付は全てのレコードにありますが、毎日の同日付ではありません。
他部署が任意に決めています。


10数件の計画番号はEXCEL表で他部署より送られてきます
これにも日付が有ると考えていましたが、違うのかな?
でなかった場合、
計画番号はユニークと書いてありますが、それは、
  毎日の1000件の中でユニーク
  全レコードを通してユニーク
どちらでしょう。

⇒送られてくるEXCEL表には計画番号のみです。
手間が掛かるのか日付がありません。
計画番号は全レコードを通じてユニークです。

宜しくお願いします。

#17 2015-02-10 11:23:53

チポ
Member

Re: レコードを対象外にする方法

でしたら、旅人さんの言われている通り、
1000件はインポート時にその本日を自動入力し、


10数件の方は、
上記と同日にインポートなら同様に入力、
でなければ、1000件と計画番号でリレーションして上記の日付を得られますよね。

Offline

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.006 seconds, 11 queries executed - Memory usage: 556.85 KiB (Peak: 577.76 KiB) ]