List for sql queryにテキストボックスを作成する方法私はユーザーがSQLクエリの情報を入力できるようにテキストボックスを作成しようとしています、そしてユーザーはExcelからテキストボックスにこの情報をコピーします。私の質問:
1。Lotの長さは14に固定されており、この例では11のロットがあります。テキストボックスの長さがなぜ176なのですか。
2。このテキストを{"18148018-01-00"、"18148018-01-01"、"18148018-02-00" ......}のようにリストにする方法
Names Default To Here( 1 );
//make a text box for user input
New Window( "Example",
Outline Box( "Lot List Input",
H List Box( Text Box( "=>" ), teb = Text Edit Box( "Please input your lots", <

再:どのように私はSQLクエリのリストにテキストボックスを作るのですかこれは便利です:D再:どのように私はSQLクエリのリストにテキストボックスを作るのですかこれは、WORDSを使用して情報を解析するための別の方法です。 続いてCONCAT ITEMSを使用してINリストを作成します。
lot_text =
"31383134383031382
31383134383031382
31383134383031382
31383135383031312
31383135383031312
31383138383030322
31383138383030322
31383138383030322
31383138383030342
31383439383030372
31383441383030352";
crlf = "
";
lot_list = words(lot_text, crlf);
lot_in_list = "('" || concat items(lot_list, "', '") || "')";再:どのように私はSQLクエリのリストにテキストボックスを作るのですかジム、説明をありがとう。私はコピー&ペーストでexceclから2つの追加の文字があると思います、そして今私はリストを作ることができます:)
再:どのように私はSQLクエリのリストにテキストボックスを作るのですか問題は、Excelテーブルからコピーした貼り付けバッファの、コピーされた各セルの最後にキャリッジリターン(16進数0 D)と改行(16進数0 A)が含まれることです。 以下は、貼り付けられたExcelファイルから取得したロットのリストの16進表現です。 それは実際には全部で1行の16進文字ですが、説明のために、私は各ロットの終わりで16進文字の行を壊しました
31383134383031382D30312D30300D0A
31383134383031382D30312D30310D0A
31383134383031382D30322D30300D0A
31383135383031312D30312D30300D0A
31383135383031312D30322D30300D0A
31383138383030322D30312D30300D0A
31383138383030322D30312D30320D0A
31383138383030322D30312D30330D0A
31383138383030342D30312D30300D0A
31383439383030372D30312D30300D0A
31383441383030352D30312D30300D0A
したがって、
176 = 11 X(14 + 2)
これは、文字列を文字列のリストに分割するコードの一部です。
fullText = teb << get text;
fullTextList = {};
start = 1;
While( Substr( fullText, start, 14 ) != "",
Insert Into( fullTextList, Substr( fullText, start, 14 ) );
start = start + 16;
);
show( fullTextList );