ユーザー入力に定数を掛ける方法は?すべて、
ユーザー入力数に定数を掛けようとしています。 Webアドレスの一部として最終的な数値(hoursBack)を使用する必要があります。
local(
{Name= "ABCD", daysBack = "7", formError = 1, rv},
While( formError > 0,
formError = 0;
rv = Dialog(
Title( "Select Extract criteria" ),
VList(
HList( "Name:", Name= EditText( Name) ),
HList( "Days Back", daysBack = EditText( daysBack ) ),
HList( Button( "OK" ), Button( "Cancel" ) )
)
);
If( rv["button"] < 0,
Throw( "Bye!" )
);
Name= rv["Name"];
If( Name== "",
formError
++);
daysBack = rv["daysBack"];
If( daysBack == "",
formError
++);
If( formError > 0,
Dialog( "Missing required form input values" )
);
);
Write( "Name=" || Name);
hoursBack = daysBack*24; //Getting an error here
Status Msg( "Extracting data for " || Name);
dt = queryData( "Newtable", hoursBack, Name); //Query data function is defined in a different part of the code
);以下のエラーが発生します-
'Multiply'、daysBack * / * ### * / 24 / * ### * /のアクセスまたは評価で、引数を数値[または行列]に変換できません
スクリプティングRe:ユーザー入力に定数を掛ける方法は?num(daysback)* 24
daysbackが文字列を保持するという問題を乗り越えます。
Re:ユーザー入力に定数を掛ける方法は?問題は、EditText()フィールドからdaysBackを入力していることです。このフィールドは、数値ではなく文字列を返します。したがって、変換する必要があります。以下の私のコードを参照してください
local(
{Name= "ABCD", daysBack = "7", formError = 1, rv},
While( formError > 0,
formError = 0;
rv = Dialog(
Title( "Select Extract criteria" ),
VList(
HList( "Name:", Name= EditText( Name) ),
HList( "Days Back", daysBack = EditText( daysBack ) ),
HList( Button( "OK" ), Button( "Cancel" ) )
)
);
If( rv["button"] < 0,
Throw( "Bye!" )
);
Name= rv["Name"];
If( Name== "",
formError
++);
daysBack = num(rv["daysBack"]);show(daysback);
If( daysBack == "",
formError
++);
If( formError > 0,
Dialog( "Missing required form input values" )
);
);
Write( "Name=" || Name);
hoursBack = daysBack*24;
show("xx",hoursback) ; //Getting an error here
Status Msg( "Extracting data for " || char(Name));
dt = queryData( "Newtable", hoursBack, Name); //Query data function is defined in a different part of the code
);Re:ユーザー入力に定数を掛ける方法は?@txnelsonありがとうございました。 私はあなたが提案したことを試しましたが、エラーが発生します。 エラーのスナップショットを添付しました