みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
初心者です。
試薬の在庫管理をまずは作成していきたく、
読み取ったGS1-128コードから商品コード使用期限やロット番号をそれぞれのフィールドに格納させる
方法を教えてください。
GS1-128コード中に2か所以上に「10」同じ文字列がある時にどのように抽出したらよいか悩んでいます。
ご教授ください。
Offline
AI の (10) はロット番号などを表しますで、複数あってもいいです。
詳細は、製造元から提供されているはずです。概ね、1番めが... という区分になっていることが多く、場合によっては、ロット番号側に識別子がついていることもあります。(たまに、チェックサムを変えて区別させることもあるかも)
その読みとったデータを見せていただけませんか。
Last edited by Shin (2019-12-15 16:17:48)
Offline
お手数をおかけいたします。
読み取ったデータは以下の通りです。
01049875516380351719021410690196
で
(01)04987551638035(17)190214(10)690196
のように記載されてあります。
どうぞよろしくお願いいたします。
Offline
GS1 は、可変長のデータを含む、タグ、データの繰り返しですので、頭から1項目ずつ処理していかないとダメです。
AI は、マスター化しておいた方が、先々楽でしょう。その中に、保存先も指定して置きます。
AIが2桁のもののみで、FnNC1 を / で書き出すリーダーでのサンプルです。
変数を設定 [ $GS1 ; 値: RomanHankaku ( テーブル::GS_CODE ) ]
Loop
フィールド設定 [ テーブル::g_AI ; Left ( $GS1 ; 2 ) ]
変数を設定 [ $GS1 ; 値: Right ( $GS1 ; Length ( $GS1 ) - 2 ) ]
If [ AIマスター::桁数 ]
フィールドを名前で設定 [ AIマスター::項目名 ; Left ( $GS1 ; AIマスター::桁数 ) ]
変数を設定 [ $GS1 ; 値: Right ( $GS1 ; Length ( $GS1 ) - AIマスター::桁数 ) ]
Else If [ AIマスター::桁数 = 0 ]
変数を設定 [ $end ; 値: Let ( end = Position ( $GS1 ; "/" ; 1 ; 1 ) ; Case ( end ; end ; Length ( $GS1 ) ) ) ]
フィールドを名前で設定 [ AIマスター::項目名 ; Left ( $GS1 ; $end ) ]
変数を設定 [ $GS1 ; 値: Right ( $GS1 ; Length ( $GS1 ) - $end ) ]
Else
End If
Exit Loop If [ IsEmpty ( $GS1 ) ]
End Loophttps://www.dropbox.com/s/frfmvcioeqmsk … 2.zip?dl=0
Last edited by Shin (2019-12-17 13:36:35)
Offline
Pages: 1
[ Generated in 0.008 seconds, 9 queries executed - Memory usage: 569.45 KiB (Peak: 602.52 KiB) ]