如何將用戶輸入乘以常數?所有,
我正在嘗試將用戶輸入數字乘以一個常數。 我需要使用最終號碼(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 / * ### * /
腳本編寫回复:如何將用戶輸入乘以常數?num(daysback)* 24
將使您擺脫dayback包含字符串的問題。
回复:如何將用戶輸入乘以常數?問題是您正在從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
);回复:如何將用戶輸入乘以常數?@txnelson謝謝。 我嘗試了您的建議,但出現錯誤。 我已附上錯誤的快照