procedure TfmMain.btSearchProdOrderClick(Sender: TObject); var prodOrderNo : string; posNo : integer; str : string; begin srSearchProdOrder.URL:='/modules/ewbmodule'; // deligation to our module str := edProdOrderNo.Text; // 745834001 prodOrderNo := Copy(str, 1, Length(str) - 3); // 745834 posNo := StrToInt(Copy(str, Length(str) - 2, 3)); { echo request } { srSearchProdOrder.Params.Clear; srSearchProdOrder.Params.Add('method=ft_request'); srSearchProdOrder.Params.Add('query_type=echo'); } srSearchProdOrder.Params.Clear; srSearchProdOrder.Params.Add('method=ft_request'); // TODO: Konstantn verwenden srSearchProdOrder.Params.Add('query_type=prodorder_info'); srSearchProdOrder.Params.Add('query_no=0'); srSearchProdOrder.Params.Add('prod_order_no=' + prodOrderNo); srSearchProdOrder.Params.Add('prod_order_pos_no=' + IntToStr(posNo)); // srSearchProdOrder.Params.Add('sernos=' + CommaText(mmSerNos.Lines)); srSearchProdOrder.Params.Add('sernos=' + StringsAsText(mmSerNos.Lines)); // srSearchProdOrder.Params.Add('ft_param3=201778B-001,201778B-001,201778B-001'); srSearchProdOrder.ResponseContent.LineSeparator:=#10; // srSearchProdOrder.StatusCode := 123; // @@@@@ // srSearchProdOrder.ResponseHeaders.Clear; srSearchProdOrder.Execute; ShowRequestAnswer(TS_UNDEFINED, 'Suche PA...'); end; // ----------------------------------------- // srSearchProdOrderComplete // TODO: generelle InComplete handler! // ----------------------------------------- procedure TfmMain.srSearchProdOrderComplete(Request: TServerRequest); var strError : string; begin LogOutput('STATUS CODE: ' + IntToStr(Request.StatusCode)); // print out respondse header and content... memo.Lines.Clear; memo.Lines.Add('[STATUS CODE: ' + IntToStr(Request.StatusCode)); memo.Lines.Add('[response headers]'); memo.Lines.Add(Request.ResponseHeaders.Text); memo.Lines.Add('[response content]'); memo.Lines.Add(Request.ResponseContent.Text); // [response content] // method=ft_requerst // quer_type=prodorder_info // query_no=0 // posStateCode=100 // prodNo=050819 // prodName=C9900-K282 Kabel Ethernet CP72xx 5m Push Pull IP65 // rootApplyFormNo=5000 // rootApplyRefFormNo=VA3172677 // error=Der Produktionsauftrag ist noch nicht aktiviert worden. // LogOutput(Request.ResponseContent.Values['method']); // LogOutput(STR_FT_REQUEST); // give sisual feedback of async server request // if anser <> '', it's an errro message from the module strError := SlBug(Request.ResponseContent.Values[STR_ERROR]); if strError <> '' then ShowRequestAnswer(TS_TRUE, strError) else ShowRequestAnswer(TS_FALSE, STR_OK); if SlBug(Request.ResponseContent.Values['method']) = STR_FT_REQUEST then begin if (SlBug(Request.ResponseContent.Values['query_type']) = STR_PROD_ORDER_INFO) AND (SlBug(Request.ResponseContent.Values['query_no']) = '0') then begin LogOutput('HA@@@'); end; end; // end;