如何将文本编辑框的内容变成“变量”?你好,
我正在寻找手动更改变量的替代方法(“检验批") 在脚本本身中。
前脚本:
Names Default To Here( 1 );
Open Database(
"DBQ=X:...
WHERE User1 LIKE '%Inspection Lot%'", "HSS"
);
我试过这个 - s.below,但它不起作用。 脚本正在运行,但未使用“变量”。 可能格式有问题。 寻求建议。
谢谢你。
新脚本版本:
Names Default To Here( 1 );
win = New Window( "Edit Box - Enter the Inspection Lot",
<<MODAL></MODAL>
Re: 如何将文本编辑框的内容变成“变量”?非常非常感谢 - 我的第一个对话框有效 - 我很高兴!!! 

Re: 如何将文本编辑框的内容变成“变量”?在这个论坛发帖的一些建议:
- 缩进您的代码(右键单击 > 重新格式化脚本)
- 使用 按钮将代码粘贴到论坛中。这将保留语法颜色
关于你的问题。我的代码检查是否在文本框中输入了值。如果那里有一个值,它会使用该变量创建一个 SQL 字符串sql ,然后调用打开数据库。您的代码使用其中的 IF 命令调用 open 数据库。那是行不通的。
试试这个代码:
If( tbox_value != "",
sql = Eval Insert(
"SELECT TRBallShearHSBTTSF.Sample, Test, ....
FROM TRBallShearHSBTTSF INNER JOIN SSBallShearHSBTTSF
ON TRBallShearHSBTTSF.Sample = SSBallShearHSBTTSF.Sample
WHERE User1 LIKE '%^tbox_value^%'");
);
dsn_string = "DBQ=X:\- ...HS.mdb;DefaultDir=X:\- ...;Driver={Driver do Microsoft Access (*.mdb)};DriverId=..;FIL=MS Access;FILEDSN=X:\...dsn;MaxBufferSize=2048;MaxScanRows=8;PageTimeout=5;SafeTransactions=0;Threads=3;UID=admin;UserCommitSync=Yes;";
Open Database(dsn_string, sql, "HSS-Dage 4000");
);
Re: 如何将文本编辑框的内容变成“变量”?你好,
非常感谢您的快速回复。 不幸的是,我对编程知之甚少,我仍在苦苦挣扎 - 见下文:
对不起 - 我不明白,把“IF-Command”放在哪里。
Open Database(
"DBQ=X:\- ...HS.mdb;DefaultDir=X:\- ...;Driver={Driver do Microsoft Access (*.mdb)};DriverId=..;FIL=MS Access;FILEDSN=X:\...dsn;MaxBufferSize=2048;MaxScanRows=8;PageTimeout=5;SafeTransactions=0;Threads=3;UID=admin;UserCommitSync=Yes;",
If( tbox_value != "",
sql = Eval Insert(
"SELECT TRBallShearHSBTTSF.Sample, Test, ....
FROM TRBallShearHSBTTSF INNER JOIN SSBallShearHSBTTSF
ON TRBallShearHSBTTSF.Sample = SSBallShearHSBTTSF.Sample
WHERE User1 LIKE '%^tbox_value^%'",
"HSS-Dage 4000"
)
)
);Re: 如何将文本编辑框的内容变成“变量”?您正在为您的文本编辑框调用变量“texteditbox”,这是允许的,但不是良好的编程习惯。以下是如何使用在文本编辑框中输入的值:
Names Default To Here( 1 );
tbox_value = "";
win = New Window( "Edit Box - Enter the Inspection Lot",
<<MODAL></MODAL>
如果我输入 ABC,日志会显示:
sql = "SELECT foo, bar
FROM utopia
WHERE User1 LIKE '%{ABC}%'";