みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
動作環境 Windows10、filemaker16Advance
会員登録のデータベースを作成しており、会員証にQRコードを印刷したく下記のように作成しました。
参照ページ:http://www.fairmind.jp/staff/2013/07/12/filemaker-qr-code/
>2. libqrencode を使う方法
[フィールド]
会員登録::会員番号 (テキスト)
会員登録::QR表示用会員番号 (オブジェクト)
[スクリプト]
・QRコード作成
"\"C:\Program Files\QRCodeGui\qrcode.exe\" -o \"C:\path\to\output.png\" " & 会員登録::会員番号
・会員証印刷
スクリプト実行 [「QRコード作成」]
コピー [選択; 会員登録::会員番号]
検索モードに切り替え [一時停止:オフ]
貼り付け [選択; 会員登録::会員番号]
検索実行 []
フィールドへ移動 [会員登録::QR表示用会員番号]
ピクチャを挿入 [「output.png」]
プレビューモードに切り替え [一時停止:オフ]
印刷
スクリプト「会員証印刷」を実行すると、指定したフォルダに「output.png」のQRコードが作成されることは確認いたしました。
会員番号1番の方に対してスクリプトを実行後に印刷をし、レコードを会員番号2番にうつしてからスクリプトを実行すると、
なぜか1番のQRコード(output.png)が表示・印刷されてしまいます。
レコードを3番にうつして再度スクリプトを実行すると、今度は2番のQRコード(output.png)が表示されてしまい、なぜか
ひとつずつずれてしまいます。
その都度表示されている会員番号の画像(QRコード)が作成されているは確認しているので、なぜピクチャを挿入するとずれて
しまうのか原因が全く分かりません。
ご教示いただけますよう何卒よろしくお願いいたします。
Offline
>・QRコード作成
> "\"C:\Program Files\QRCodeGui\qrcode.exe\" -o \"C:\path\to\output.png\" " & 会員登録::会員番号
記載が間違っておりました。
"\"C:\Program Files(x86)\QRCodeGui\qrcode.exe\" -o \"C:\QR\output.png\" " & 会員登録::会員番号
Offline
会員番号で検索しているようですが、「一致するレコードを検索」を使えばコピペしないで1ステップで可能です。
印刷すると1レコードだけ対象になってしまいますが、「レコードを会員番号2番にうつしてから」には、いちいちまた全レコード表示してるんですか?
「作成されているは確認している」その画像がプレビューに出てますか?
常に同名のファイルをEvent送信で作成しているようなので、作成が終わらないうちに次の処理が実行されてるような気がしますが。しかし最初はうまくいくというなら、違うかなあ?
会員登録::QR表示用会員番号はグローバルフィールドではないんですよね?
ファイル名は会員番号かUUIDを使って同名を使わないようにしてみたら。
himadanee様
>会員番号で検索しているようですが、「一致するレコードを検索」を使えばコピペしないで1ステップで可能です。
無駄なステップを省くことができました。
>印刷すると1レコードだけ対象になってしまいますが、「レコードを会員番号2番にうつしてから」には、いちいちまた全レコード表示してるんですか?
言葉足らずでした。
ご来場いただいた会員様が、次年度の更新をするタイミングで会員証を新しくするため、必ずしも1番から順に印刷ということではございませんでした。
なので印刷する対象が1レコードのみとなっております。
>「作成されているは確認している」その画像がプレビューに出てますか?
吐き出しに指定したフォルダには指定した会員番号のoutput.pngが都度作成されておりました。
しかしながら、その対象レコードについて印刷を完了し、次のレコードを印刷するためにスクリプトを実行すると、
前に出力をしたpng画像が挿入されてしまう現象です。
>常に同名のファイルをEvent送信で作成しているようなので、作成が終わらないうちに次の処理が実行されてるような気がしますが。しかし最初はうまくいくというなら、違うかなあ?
>会員登録::QR表示用会員番号はグローバルフィールドではないんですよね?
>ファイル名は会員番号かUUIDを使って同名を使わないようにしてみたら。
ファイル名に会員番号を持たせるように下記へ変更しました。
スクリプト:QRコード作成
"C:\qr\output" & 会員登録::会員番号 & ".png"
スクリプト実行後、フォルダ(qr)内を確認すると、output(会員番号).pngのファイルが吐き出されておりました。
また、印刷するスクリプトを下記のように変更しました。
スクリプト実行 [「QRコード作成」]
一致するレコードを検索 [絞り込み; 会員登録::会員番号]
変数を設定 [$QR; 値: "file:qr\output" & 会員登録::会員番号 & ".png"]
フィールドへ移動 [会員登録::QR表示用会員番号]
ピクチャを挿入 [「$QR」]
プレビューモードに切り替え [一時停止:オフ]
印刷
上記を実行すると、「ピクチャを挿入」時に「qr\output(会員番号).pngが見つからなかったため処理を完了できません」
と表示されエラーになってしまいます。
Offline
自己解決いたしました。
変数の設定、挿入するファイルパスの設定に誤りがありました。
[スクリプト:QRコード作成]
(誤)変数を設定 [$QR; 値: "file:qr\output" & 会員登録::会員番号 & ".png"]
(正)変数を設定 [$QR; 値: "output" & 会員登録::会員番号 & ".png"]
「スクリプト:会員証印刷」
(誤)ピクチャを挿入 [「$QR」]
(正)ピクチャを挿入 [「imagewin:/c:/qr/$QR」]
上記に変更して実行したところ、思う通りの会員証が印刷できました。
お騒がせをいたしました。
Offline
解決しましたが追記です。
>上記を実行すると、「ピクチャを挿入」時に「qr\output(会員番号).pngが見つからなかったため処理を完了できません」
>と表示されエラーになってしまいます。
ピクチャ挿入前に、スクリプトを1秒間一時停止させ、QRコードの作成を待ってから続けることで動作いたしました。
Offline
Pages: 1
[ Generated in 0.006 seconds, 9 queries executed - Memory usage: 561.52 KiB (Peak: 581.4 KiB) ]