现做3个功能A-B-C 在A和B功能的AfterFlowOut事件中加入如下代码
procedure TMainForm.FlowBroker1AfterFlowOut(Sender: TObject; Command: TFlowOutCommand);
var
lstr:string;
begin
lstr := 'update AM_TEVECTIONMAIN set State = ''2'' where ID = '''+DataSetBroker.DataSet.FieldByName('ID').AsString+'''';
SetCallBack(lstr,Command);
end;
static procedure SetCallBack(ASQLText: string; ACommand: TFlowOutCommand);
const
cSystemConnectionString = 'DATABASEURL=Biz:\SYSTEM\SYSTEM.DATABASE';
var
i : Integer;
lTask : TTask;
lQuery:TQuery;
begin
for i := 0 to ACommand.FlowControl.TaskCount - 1 do
begin
lTask := ACommand.FlowControl.TaskByIndex as TTask;
if lTask.State = TTaskState.tsFinished then
begin
lQuery:= TQuery.Create(nil);
try
lQuery.Close;
lQuery.ConnectionString:= cSystemConnectionString;
lQuery.CommandText := 'update TTASK set ECField07 = :s where FGUID = '''+lTask.GUID+'''';
lQuery.Params[0].AsString := ASQLText;
try
lQuery.Execute;
except