Index: AAPClient/UI/DnaCodeScherm.pas =================================================================== diff -u -r150 -r159 --- AAPClient/UI/DnaCodeScherm.pas (.../DnaCodeScherm.pas) (revision 150) +++ AAPClient/UI/DnaCodeScherm.pas (.../DnaCodeScherm.pas) (revision 159) @@ -35,6 +35,7 @@ procedure MeldDnaCodeAf(); procedure ZetToeleveringStatus(Status: DnaCodeStatus); procedure ToeleveringDataOphalen(); + procedure VerwerkReedsGescandeDnaCode(); public end; @@ -132,6 +133,7 @@ Request: DnaCodeAfmeldenRequest; Response: DnaCodeAfmeldenResponse; Header: RequestHeader; + List: TStrings; begin Service := DnaCodeService.GetDnaCodeServiceSoap(); // request opbouwen @@ -148,20 +150,29 @@ Response := Service.DnaCodeAfmelden(Request); try - if Response.Header.Status <> '200' then begin - Self.ModalResult := mrDnaCode; - ToonPopupScherm(Response.Header.Omschrijving, 'Probeer opnieuw') - end else begin - UiContext.Toelevering := Response.DnaCodes[0].Toelevering; - lblToeleveringData.Caption := UiContext.Toelevering; - lblAantalGescand.Caption := IntToStr(Response.AantalReedsGescand); - lblTotaalAantal.Caption := IntToStr(Response.AantalInToelevering); - if Response.DnaCodes[0].IsGlsDirect then begin - ToonPopupScherm('GLS DIRECT', 'OK'); - imgGls.Visible := Response.DnaCodes[0].IsGlsDirect; - end; - lblLaatstGescandData.Caption := Request.DnaCode; - Self.ModalResult := mrDnaCode; + List := TStringList.Create; + ExtractStrings([':'], [], PChar(Response.Header.Status), List); + case strtoint(List[0]) of + 200: begin + UiContext.Toelevering := Response.DnaCodes[0].Toelevering; + lblToeleveringData.Caption := UiContext.Toelevering; + lblAantalGescand.Caption := IntToStr(Response.AantalReedsGescand); + lblTotaalAantal.Caption := IntToStr(Response.AantalInToelevering); + imgInfo.Visible := true; + if Response.DnaCodes[0].IsGlsDirect then begin + ToonPopupScherm('GLS DIRECT', 'OK'); + imgGls.Visible := Response.DnaCodes[0].IsGlsDirect; + end; + lblLaatstGescandData.Caption := Request.DnaCode; + Self.ModalResult := mrDnaCode; + end; + 1005: begin //reeds gescand + VerwerkReedsGescandeDnaCode(); + end; + else begin + Self.ModalResult := mrDnaCode; + ToonPopupScherm(Response.Header.Omschrijving, 'Probeer opnieuw') + end; end; finally Response.Free; @@ -171,6 +182,11 @@ end; end; +procedure TfmDnaCodeScherm.VerwerkReedsGescandeDnaCode; +begin + ToonPopupScherm(Response.Header.Omschrijving, 'Probeer opnieuw') +end; + procedure TfmDnaCodeScherm.ToeleveringDataOphalen; var Service: DnaCodeServiceSoap;