Index: AAPClient/UI/DnaCodeScherm.pas =================================================================== diff -u -r43 -r47 --- AAPClient/UI/DnaCodeScherm.pas (.../DnaCodeScherm.pas) (revision 43) +++ AAPClient/UI/DnaCodeScherm.pas (.../DnaCodeScherm.pas) (revision 47) @@ -18,7 +18,7 @@ lblAantalGescand: TLabel; lblTotaalAantal: TLabel; lblSlash: TLabel; - Image1: TImage; + imgGls: TImage; procedure FormShow(Sender: TObject); procedure actPalletExecute(Sender: TObject); procedure actHomeExecute(Sender: TObject); @@ -34,6 +34,9 @@ implementation +uses + DnaCodeService; + {$R *.dfm} procedure TfmDnaCodeScherm.actHomeExecute(Sender: TObject); @@ -49,9 +52,44 @@ end; procedure TfmDnaCodeScherm.actVolgendeExecute(Sender: TObject); +var + Service: DnaCodeServiceSoap; + Request: DnaCodeAfmeldenRequest; + Response: DnaCodeAfmeldenResponse; + Header: RequestHeader; begin - inherited; - // + Service := DnaCodeService.GetDnaCodeServiceSoap(); + // request opbouwen + Request := DnaCodeAfmeldenRequest.Create; + Header := RequestHeader.Create; + try + Header.Initialen := lblGebruiker.Caption; + Header.ComputerNaam := ComputerName(); + Request.Header := Header; + Request.DnaCode := edtDnaCode.Text; + Request.Aantal := 1; + Request.Toelevering := lblToelevering.Caption; + Request.PalletCode := lblPalletCode.Caption; + + Response := Service.DnaCodeAfmelden(Request); + try + if Response.Header.Status <> '200' then begin + Self.ModalResult := mrRetry; + ToonPopupScherm(Response.Header.Omschrijving, 'Probeer opnieuw') + end else begin + lblToelevering.Caption := Response.DnaCodes[0].Toelevering; + lblAantalGescand.Caption := IntToStr(Response.AantalReedsGescand); + lblTotaalAantal.Caption := IntToStr(Response.AantalInToelevering); + imgGls.Visible := Response.DnaCodes[0].IsGlsDirect; + lblLaatstGescandData.Caption := Request.DnaCode; + Self.ModalResult := mrIgnore; + end; + finally + Response.Free; + end; + finally + Request.Free; + end; end; procedure TfmDnaCodeScherm.FormShow(Sender: TObject);