procedure Tf_main.Timer1Timer(Sender: TObject);
var
ProcessCallerWS1
rocessCallerWS;
Root,NodeData,NodeJG,NodeBS,NodeMS:IXMLNode;
begin
f_main.Timer1.Enabled :=false;
f_DataModule.ADOQuery1.Close;
f_DataModule.ADOQuery1.SQL.Clear;
f_DataModule.ADOQuery1.SQL.Add('select * from XWY_SJBDB where STS =''A'' order by OPER_DATE');
f_DataModule.ADOQuery1.Open;
IF f_DataModule.ADOQuery1.RecordCount =0 THEN ELSE
BEGIN
HTTPRIO1.URL := 'http://'+trim(f_DataModule.Table1.FieldByName('serverip').AsString)+'/axis/services/BizService';
HTTPRIO1.HTTPWebNode.UseUTF8InHeader := True;
ProcessCallerWS1 := (HTTPRIO1 as ProcessCallerWS);
f_DataModule.ADOQuery1.First;
WHILE NOT f_DataModule.ADOQuery1.Eof DO
BEGIN
if trim(f_DataModule.ADOQuery1.FieldByName('TABLE_NAME').AsString) ='V_XWY_XDRSYPZ' THEN
BEGIN
IF trim(f_DataModule.ADOQuery1.FieldByName('OPER_TYPE').AsString) ='I' THEN
BEGIN
END ELSE IF trim(f_DataModule.ADOQuery1.FieldByName('OPER_TYPE').AsString) ='U' THEN
BEGIN
END ELSE IF trim(f_DataModule.ADOQuery1.FieldByName('OPER_TYPE').AsString) ='D' THEN
BEGIN
END;
END ELSE if trim(f_DataModule.ADOQuery1.FieldByName('TABLE_NAME').AsString) ='V_XWY_XDRSYQY' THEN
BEGIN
IF trim(f_DataModule.ADOQuery1.FieldByName('OPER_TYPE').AsString) ='I' THEN
BEGIN
END ELSE IF trim(f_DataModule.ADOQuery1.FieldByName('OPER_TYPE').AsString) ='U' THEN
BEGIN
END ELSE IF trim(f_DataModule.ADOQuery1.FieldByName('OPER_TYPE').AsString) ='D' THEN
BEGIN
END;
END ELSE if trim(f_DataModule.ADOQuery1.FieldByName('TABLE_NAME').AsString) ='V_XWY_RKB' THEN
BEGIN
f_DataModule.ADOQuery2.Close;
f_DataModule.ADOQuery2.SQL.Clear;
f_DataModule.ADOQuery2.SQL.Add('select * from V_XWY_RKB where ywbh ='''+trim(f_DataModule.ADOQuery1.FieldByName('PK1').AsString)+'''');
f_DataModule.ADOQuery2.Open;
IF (trim(f_DataModule.ADOQuery1.FieldByName('OPER_TYPE').AsString) ='I') or (trim(f_DataModule.ADOQuery1.FieldByName('OPER_TYPE').AsString) ='U') THEN
BEGIN
F_MAIN.XMLDocument1.XML.Clear;
F_MAIN.XMLDocument1.XML.Add('<?xml version="1.0" encoding="GB2312" standalone="no"?>');
F_MAIN.XMLDocument1.XML.Add('<root>');
F_MAIN.XMLDocument1.XML.Add('<data>');
F_MAIN.XMLDocument1.XML.Add('<XWY_RKB>');
F_MAIN.XMLDocument1.XML.Add('<LHPH>'+trim(f_DataModule.ADOQuery2.FieldByName('lhph').AsString)+'</LHPH>');
F_MAIN.XMLDocument1.XML.Add('<YSJL>'+trim(f_DataModule.ADOQuery2.FieldByName('ysjl').AsString)+'</YSJL>');
F_MAIN.XMLDocument1.XML.Add('<SPMC>'+trim(f_DataModule.ADOQuery2.FieldByName('spmc').AsString)+'</SPMC>');
F_MAIN.XMLDocument1.XML.Add('<SPBM>'+trim(f_DataModule.ADOQuery2.FieldByName('spbm').AsString)+'</SPBM>');
F_MAIN.XMLDocument1.XML.Add('<MJPH>'+trim(f_DataModule.ADOQuery2.FieldByName('mjph').AsString)+'</MJPH>');
try
F_MAIN.XMLDocument1.XML.Add('<YXRQ pattern="yyyy-MM-dd">'+formatdatetime('yyyy-MM-dd',f_DataModule.ADOQuery2.FieldByName('yxq').AsDateTime)+'</YXRQ>');
except
F_MAIN.XMLDocument1.XML.Add('<YXRQ pattern="yyyy-MM-dd"></YXRQ>');
end;
F_MAIN.XMLDocument1.XML.Add('<BGSBH>'+trim(f_DataModule.ADOQuery2.FieldByName('bgsbh').AsString)+'</BGSBH>');
F_MAIN.XMLDocument1.XML.Add('<PZWH>'+trim(f_DataModule.ADOQuery2.FieldByName('pzwh').AsString)+'</PZWH>');
try
F_MAIN.XMLDocument1.XML.Add('<YSRQ pattern="yyyy-MM-dd">'+formatdatetime('yyyy-MM-dd',f_DataModule.ADOQuery2.FieldByName('ysrq').AsDateTime)+'</YSRQ>');
except
F_MAIN.XMLDocument1.XML.Add('<YSRQ pattern="yyyy-MM-dd"></YSRQ>');
end;
try
F_MAIN.XMLDocument1.XML.Add('<DHRQ pattern="yyyy-MM-dd">'+formatdatetime('yyyy-MM-dd',f_DataModule.ADOQuery2.FieldByName('dhrq').AsDateTime)+'</DHRQ>');
except
F_MAIN.XMLDocument1.XML.Add('<DHRQ pattern="yyyy-MM-dd"></DHRQ>');
end;
F_MAIN.XMLDocument1.XML.Add('<SCPH>'+trim(f_DataModule.ADOQuery2.FieldByName('scph').AsString)+'</SCPH>');
F_MAIN.XMLDocument1.XML.Add('<XDR_ID>'+trim(f_DataModule.Table1.FieldByName('qiyid').AsString)+'</XDR_ID>');
F_MAIN.XMLDocument1.XML.Add('<CGY>'+trim(f_DataModule.ADOQuery2.FieldByName('cgy').AsString)+'</CGY>');
F_MAIN.XMLDocument1.XML.Add('<GYSMC>'+trim(f_DataModule.ADOQuery2.FieldByName('gysmc').AsString)+'</GYSMC>');
F_MAIN.XMLDocument1.XML.Add('<WGZL>'+trim(f_DataModule.ADOQuery2.FieldByName('wgzl').AsString)+'</WGZL>');
F_MAIN.XMLDocument1.XML.Add('<TYMC>'+trim(f_DataModule.ADOQuery2.FieldByName('tymc').AsString)+'</TYMC>');
F_MAIN.XMLDocument1.XML.Add('<YWBH>'+trim(f_DataModule.ADOQuery2.FieldByName('ywbh').AsString)+'</YWBH>');
F_MAIN.XMLDocument1.XML.Add('<SCQY>'+trim(f_DataModule.ADOQuery2.FieldByName('scqy').AsString)+'</SCQY>');
F_MAIN.XMLDocument1.XML.Add('<GYSBH>'+trim(f_DataModule.ADOQuery2.FieldByName('gysbm').AsString)+'</GYSBH>');
F_MAIN.XMLDocument1.XML.Add('<GG>'+trim(f_DataModule.ADOQuery2.FieldByName('gg').AsString)+'</GG>');
F_MAIN.XMLDocument1.XML.Add('<SL>'+trim(f_DataModule.ADOQuery2.FieldByName('sl').AsString)+'</SL>');
F_MAIN.XMLDocument1.XML.Add('<YSR>'+trim(f_DataModule.ADOQuery2.FieldByName('ysr').AsString)+'</YSR>');
F_MAIN.XMLDocument1.XML.Add('<JX>'+trim(f_DataModule.ADOQuery2.FieldByName('jx').AsString)+'</JX>');
F_MAIN.XMLDocument1.XML.Add('<BZ>'+trim(f_DataModule.ADOQuery2.FieldByName('bz').AsString)+'</BZ>');
F_MAIN.XMLDocument1.XML.Add('<YSDH>'+trim(f_DataModule.ADOQuery2.FieldByName('ysdh').AsString)+'</YSDH>');
F_MAIN.XMLDocument1.XML.Add('<DW>'+trim(f_DataModule.ADOQuery2.FieldByName('dw').AsString)+'</DW>');
F_MAIN.XMLDocument1.XML.Add('</XWY_RKB>');
F_MAIN.XMLDocument1.XML.Add('</data>');
F_MAIN.XMLDocument1.XML.Add('</root>');
self.XMLDocument1.Active := true;
Memo1.Clear;
Memo1.Text := ProcessCallerWS1.runBiz('xsda_jk','0','bizJieKou.bizRuKuBaoCun','primeton',XMLDocument1.XML.Text);
XMLDocument1.XML.Clear;
XMLDocument1.XML.Assign(Memo1.Lines);
self.XMLDocument1.Active := true;
Root := self.XMLDocument1.DocumentElement;
NodeData := Root.ChildNodes['data'];
NodeJG := NodeData.ChildNodes['JG'];
NodeBS := NodeJG.ChildNodes['BS'];
NodeMS := NodeJG.ChildNodes['MS'];
IF strtoint(NodeBS.Text) >0 THEN
begin
n :=n+1;
f_DataModule.ADOQuery3.Close;
f_DataModule.ADOQuery3.SQL.Clear;
f_DataModule.ADOQuery3.SQL.Add('update XWY_SJBDB set STS=''P'' where ID ='+TRIM(f_DataModule.ADOQuery1.FieldByName('ID').AsString)+'');
f_DataModule.ADOQuery3.ExecSQL;
end else
begin
m :=m+1;
f_DataModule.ADOQuery3.Close;
f_DataModule.ADOQuery3.SQL.Clear;
f_DataModule.ADOQuery3.SQL.Add('update XWY_SJBDB set STS=''F'' where ID ='+trim(f_DataModule.ADOQuery1.FieldByName('ID').AsString)+'');
f_DataModule.ADOQuery3.ExecSQL;
WriteLog(NodeMs.Text);
end;
END ELSE IF trim(f_DataModule.ADOQuery1.FieldByName('OPER_TYPE').AsString) ='D' THEN
BEGIN
F_MAIN.XMLDocument1.XML.Clear;
F_MAIN.XMLDocument1.XML.Add('<?xml version="1.0" encoding="GB2312" standalone="no"?>');
F_MAIN.XMLDocument1.XML.Add('<root>');
F_MAIN.XMLDocument1.XML.Add('<data>');
F_MAIN.XMLDocument1.XML.Add('<XWY_RKB>');
F_MAIN.XMLDocument1.XML.Add('<XDR_ID>'+trim(f_DataModule.Table1.FieldByName('qiyid').AsString)+'</XDR_ID>');
F_MAIN.XMLDocument1.XML.Add('<YWBH>'+trim(f_DataModule.ADOQuery2.FieldByName('ywbh').AsString)+'</YWBH>');
F_MAIN.XMLDocument1.XML.Add('</XWY_RKB>');
F_MAIN.XMLDocument1.XML.Add('</data>');
F_MAIN.XMLDocument1.XML.Add('</root>');
XMLDocument1.Active := true;
Memo1.Clear;
Memo1.Text := ProcessCallerWS1.runBiz('xsda_jk','0','bizJieKou.bizRuKuShanChu','primeton',XMLDocument1.XML.Text);
XMLDocument1.XML.Clear;
XMLDocument1.XML.Assign(Memo1.Lines);
XMLDocument1.Active := true;
Root := self.XMLDocument1.DocumentElement;
NodeData := Root.ChildNodes['data'];
NodeJG := NodeData.ChildNodes['JG'];
NodeBS := NodeJG.ChildNodes['BS'];
NodeMS := NodeJG.ChildNodes['MS'];
IF strtoint(NodeBS.Text) >0 THEN
begin
n :=n+1;
f_DataModule.ADOQuery2.Close;
f_DataModule.ADOQuery2.SQL.Clear;
f_DataModule.ADOQuery2.SQL.Add('update XWY_SJBDB set STS=''P'' where ID ='+TRIM(f_DataModule.ADOQuery1.FieldByName('ID').AsString)+'');
f_DataModule.ADOQuery2.ExecSQL;
end else
begin
m :=m+1;
f_DataModule.ADOQuery2.Close;
f_DataModule.ADOQuery2.SQL.Clear;
f_DataModule.ADOQuery2.SQL.Add('update XWY_SJBDB set STS=''F'' where ID ='+TRIM(f_DataModule.ADOQuery1.FieldByName('ID').AsString)+'');
f_DataModule.ADOQuery2.ExecSQL;
WriteLog(NodeMs.Text);
end;
END;
END ELSE if trim(f_DataModule.ADOQuery1.FieldByName('TABLE_NAME').AsString) ='V_XWY_CKB' THEN
BEGIN
f_DataModule.ADOQuery2.Close;
f_DataModule.ADOQuery2.SQL.Clear;
f_DataModule.ADOQuery2.SQL.Add('select * from V_XWY_CKB where ywbh ='''+trim(f_DataModule.ADOQuery1.FieldByName('PK1').AsString)+'''');
f_DataModule.ADOQuery2.Open;
IF (trim(f_DataModule.ADOQuery1.FieldByName('OPER_TYPE').AsString) ='I') or (trim(f_DataModule.ADOQuery1.FieldByName('OPER_TYPE').AsString) ='U') THEN
BEGIN
F_MAIN.XMLDocument1.XML.Clear;
F_MAIN.XMLDocument1.XML.Add('<?xml version="1.0" encoding="GB2312" standalone="no"?>');
F_MAIN.XMLDocument1.XML.Add('<root>');
F_MAIN.XMLDocument1.XML.Add('<data>');
F_MAIN.XMLDocument1.XML.Add('<XWY_CKB>');
F_MAIN.XMLDocument1.XML.Add('<SPMC>'+trim(f_DataModule.ADOQuery2.FieldByName('spmc').AsString)+'</SPMC>');
F_MAIN.XMLDocument1.XML.Add('<SPBM>'+trim(f_DataModule.ADOQuery2.FieldByName('spbm').AsString)+'</SPBM>');
try
F_MAIN.XMLDocument1.XML.Add('<YXRQ pattern="yyyy-MM-dd">'+formatdatetime('yyyy-MM-dd',f_DataModule.ADOQuery2.FieldByName('yxq').AsDateTime)+'</YXRQ>');
except
F_MAIN.XMLDocument1.XML.Add('<YXRQ pattern="yyyy-MM-dd"></YXRQ>');
end;
F_MAIN.XMLDocument1.XML.Add('<PZWH>'+trim(f_DataModule.ADOQuery2.FieldByName('pzwh').AsString)+'</PZWH>');
try
F_MAIN.XMLDocument1.XML.Add('<FHRQ pattern="yyyy-MM-dd">'+formatdatetime('yyyy-MM-dd',f_DataModule.ADOQuery2.FieldByName('fhrq').AsDateTime)+'</FHRQ>');
except
F_MAIN.XMLDocument1.XML.Add('<FHRQ pattern="yyyy-MM-dd"></FHRQ>');
end;
F_MAIN.XMLDocument1.XML.Add('<SCPH>'+trim(f_DataModule.ADOQuery2.FieldByName('scph').AsString)+'</SCPH>');
F_MAIN.XMLDocument1.XML.Add('<XDR_ID>'+trim(f_DataModule.Table1.FieldByName('qiyid').AsString)+'</XDR_ID>');
F_MAIN.XMLDocument1.XML.Add('<YWY>'+trim(f_DataModule.ADOQuery2.FieldByName('ywy').AsString)+'</YWY>');
F_MAIN.XMLDocument1.XML.Add('<KHMC>'+trim(f_DataModule.ADOQuery2.FieldByName('khmc').AsString)+'</KHMC>');
F_MAIN.XMLDocument1.XML.Add('<TYMC>'+trim(f_DataModule.ADOQuery2.FieldByName('tymc').AsString)+'</TYMC>');
F_MAIN.XMLDocument1.XML.Add('<YWBH>'+trim(f_DataModule.ADOQuery2.FieldByName('ywbh').AsString)+'</YWBH>');
F_MAIN.XMLDocument1.XML.Add('<SCQY>'+trim(f_DataModule.ADOQuery2.FieldByName('scqy').AsString)+'</SCQY>');
F_MAIN.XMLDocument1.XML.Add('<KHBM>'+trim(f_DataModule.ADOQuery2.FieldByName('khbm').AsString)+'</KHBM>');
F_MAIN.XMLDocument1.XML.Add('<GG>'+trim(f_DataModule.ADOQuery2.FieldByName('gg').AsString)+'</GG>');
F_MAIN.XMLDocument1.XML.Add('<SL>'+trim(f_DataModule.ADOQuery2.FieldByName('sl').AsString)+'</SL>');
F_MAIN.XMLDocument1.XML.Add('<FHMC>'+trim(f_DataModule.ADOQuery2.FieldByName('fhr').AsString)+'</FHMC>');
F_MAIN.XMLDocument1.XML.Add('<JX>'+trim(f_DataModule.ADOQuery2.FieldByName('jx').AsString)+'</JX>');
F_MAIN.XMLDocument1.XML.Add('<BZ>'+trim(f_DataModule.ADOQuery2.FieldByName('bz').AsString)+'</BZ>');
F_MAIN.XMLDocument1.XML.Add('<FHDH>'+trim(f_DataModule.ADOQuery2.FieldByName('fhdh').AsString)+'</FHDH>');
F_MAIN.XMLDocument1.XML.Add('<DW>'+trim(f_DataModule.ADOQuery2.FieldByName('dw').AsString)+'</DW>');
F_MAIN.XMLDocument1.XML.Add('</XWY_CKB>');
F_MAIN.XMLDocument1.XML.Add('</data>');
F_MAIN.XMLDocument1.XML.Add('</root>');
self.XMLDocument1.Active := true;
Memo1.Clear;
Memo1.Text := ProcessCallerWS1.runBiz('xsda_jk','0','bizJieKou.bizChuKuBaoCun','primeton',XMLDocument1.XML.Text);
XMLDocument1.XML.Clear;
XMLDocument1.XML.Assign(Memo1.Lines);
self.XMLDocument1.Active := true;
Root := self.XMLDocument1.DocumentElement;
NodeData := Root.ChildNodes['data'];
NodeJG := NodeData.ChildNodes['JG'];
NodeBS := NodeJG.ChildNodes['BS'];
NodeMS := NodeJG.ChildNodes['MS'];
IF strtoint(NodeBS.Text) >0 THEN
begin
n :=n+1;
f_DataModule.ADOQuery2.Close;
f_DataModule.ADOQuery2.SQL.Clear;
f_DataModule.ADOQuery2.SQL.Add('update XWY_SJBDB set STS=''P'' where ID ='+trim(f_DataModule.ADOQuery1.FieldByName('ID').AsString)+'');
f_DataModule.ADOQuery2.ExecSQL;
end else
begin
m :=m+1;
f_DataModule.ADOQuery2.Close;
f_DataModule.ADOQuery2.SQL.Clear;
f_DataModule.ADOQuery2.SQL.Add('update XWY_SJBDB set STS=''F'' where ID ='+trim(f_DataModule.ADOQuery1.FieldByName('ID').AsString)+'');
f_DataModule.ADOQuery2.ExecSQL;
WriteLog(NodeMs.Text);
end;
END ELSE IF trim(f_DataModule.ADOQuery1.FieldByName('OPER_TYPE').AsString) ='D' THEN
BEGIN
F_MAIN.XMLDocument1.XML.Clear;
F_MAIN.XMLDocument1.XML.Add('<?xml version="1.0" encoding="GB2312" standalone="no"?>');
F_MAIN.XMLDocument1.XML.Add('<root>');
F_MAIN.XMLDocument1.XML.Add('<data>');
F_MAIN.XMLDocument1.XML.Add('<XWY_CKB>');
F_MAIN.XMLDocument1.XML.Add('<XDR_ID>'+trim(f_DataModule.Table1.FieldByName('qiyid').AsString)+'</XDR_ID>');
F_MAIN.XMLDocument1.XML.Add('<YWBH>'+trim(f_DataModule.ADOQuery2.FieldByName('ywbh').AsString)+'</YWBH>');
F_MAIN.XMLDocument1.XML.Add('</XWY_CKB>');
F_MAIN.XMLDocument1.XML.Add('</data>');
F_MAIN.XMLDocument1.XML.Add('</root>');
XMLDocument1.Active := true;
Memo1.Clear;
Memo1.Text := ProcessCallerWS1.runBiz('xsda_jk','0','bizJieKou.bizChuKuShanChu','primeton',XMLDocument1.XML.Text);
XMLDocument1.XML.Clear;
XMLDocument1.XML.Assign(Memo1.Lines);
XMLDocument1.Active := true;
Root := self.XMLDocument1.DocumentElement;
NodeData := Root.ChildNodes['data'];
NodeJG := NodeData.ChildNodes['JG'];
NodeBS := NodeJG.ChildNodes['BS'];
NodeMS := NodeJG.ChildNodes['MS'];
IF strtoint(NodeBS.Text) >0 THEN
begin
n :=n+1;
f_DataModule.ADOQuery2.Close;
f_DataModule.ADOQuery2.SQL.Clear;
f_DataModule.ADOQuery2.SQL.Add('update XWY_SJBDB set STS=''P'' where ID ='+trim(f_DataModule.ADOQuery1.FieldByName('ID').AsString)+'');
f_DataModule.ADOQuery2.ExecSQL;
end else
begin
m :=m+1;
f_DataModule.ADOQuery2.Close;
f_DataModule.ADOQuery2.SQL.Clear;
f_DataModule.ADOQuery2.SQL.Add('update XWY_SJBDB set STS=''F'' where ID ='+trim(f_DataModule.ADOQuery1.FieldByName('ID').AsString)+'');
f_DataModule.ADOQuery2.ExecSQL;
WriteLog(NodeMs.Text);
end;
END;
END;
f_DataModule.ADOQuery1.Next;
END;
END;
f_main.StatusBar1.Panels[2].Text :=inttostr
;
f_main.StatusBar1.Panels[4].Text :=inttostr(m);
f_main.Timer2.Enabled :=true;
end;
我在DELPHI7+SQL2000上 运行的 你应该有用