Topic: loop (Solved... thanks)
hello friends...
here i am uploading sms sending script by selecting rows from database
procedure FormReport_SmsSendAllbtn_OnClick (Sender: TObject; var Cancel: boolean);
var
Msg,smsNumber,smsServer1,SMS_API1,SenderName1 : string;
sl,slParam: TStringList;
j : integer;
jDataStream: TJSONObject;
jStatus, jSmsID: TJSONString;
dt : tDateTime;
begin
for j := 0 to SQLExecute('select (id) from smsLogs') -1 do
begin
if SQLExecute('Select (id) from smsLogs where id ='+inttostr(j)) then
begin
smsNumber := SQLExecute('select smsNumber from smsLogs where id = '+inttostr(j)+'');
Msg := SQLExecute('select smsData from smsLogs where id = '+inttostr(j)+'');
ShowMessage(smsNumber+' '+Msg);
//-------------------------------------------------------
SMS_API1 := SQLExecute('Select SmsAPI from Extras where id = 1');
SenderName1 := SQLExecute('select SenderName from Extras where id = 1');//'BlackPearl';
slParam := TStringList.Create;
smsResult := HTTPPost('http://api.veevotech.com/sendsms?hash='+SMS_API1+'&receivenum='+smsNumber+'&sendernum='+SenderName1+'&textmessage='+Msg+'',slParam);
slParam.Free;
//--------------------------------------------------------
sl:=TStringList.Create;
sl.Text := smsResult;
jDataStream := nil;jDataStream:=TJSONObject(TJSONObject.ParseJSONValue(sl.Text));
if jDataStream <> nil then
begin
jStatus := TJSONString(jDataStream.GetPairByIndex(0).JsonValue);
jSmsID := TJSONString(jDataStream.GetPairByIndex(3).JsonValue);
end;
ShowMessage(jStatus.Value);
if (vartostr(jStatus.Value) = 'ACCEPTED') then
begin
SQLExecute('delete from smsLogs where id = '+inttostr(j)+'');
end
else ShowMessage('Status : '+vartostr(jStatus.Value));//-------------------------------------------------------
end;
end;end;
not working... how to fix it