Wie multipliziere ich Benutzereingaben mit einer konstanten Zahl?Alle,
Ich versuche, die Benutzereingabennummer mit einer Konstanten zu multiplizieren. Ich muss die endgültige Nummer (Stunden zurück) als Teil einer Webadresse verwenden.
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
);Den folgenden Fehler erhalten -
Das Argument kann beim Zugriff oder bei der Auswertung von 'Multiplizieren', daysBack * / * ### * / 24 / * ### * / nicht in eine Zahl [oder Matrix] konvertiert werden.
SkriptingBetreff: Wie multipliziere ich Benutzereingaben mit einer konstanten Zahl?num (Tage) * 24
Sie werden das Problem überwinden, bei dem Daysback eine Zeichenfolge enthält.
Betreff: Wie multipliziere ich Benutzereingaben mit einer konstanten Zahl?Das Problem ist, dass Sie Ihr daysBack über ein EditText () -Feld eingeben, das eine Zeichenfolge und keinen numerischen Wert zurückgibt.Daher muss es konvertiert werden.Siehe meinen Code unten
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
);Betreff: Wie multipliziere ich Benutzereingaben mit einer konstanten Zahl?@ txnelson Vielen Dank. Ich habe versucht, was Sie vorgeschlagen haben, erhalte jedoch eine Fehlermeldung. Ich habe den Schnappschuss des Fehlers angehängt