unit BlPallet; interface uses UiContext; type TBlPallet = Class private fUiContext: TUiContext; public constructor Create(aUiContext: TUiContext); function GenereerTbp: string; procedure SetContext(GescandeWaarde: string); End; implementation uses DnaCodeService, Agent, CommonFunctions, SysUtils; { TBlPallet } constructor TBlPallet.Create(aUiContext: TUiContext); begin fUiContext := aUiContext; end; function TBlPallet.GenereerTbp: string; var fGeefVolgendeTbpCodeResponse: GeefVolgendeTbpCodeResponse; begin inherited; fGeefVolgendeTbpCodeResponse := TAgent.Create(fUiContext).GeefVolgendeTbpCode(); try if fGeefVolgendeTbpCodeResponse.Header.Status <> '200' then begin //Self.ModalResult := mrPallet; raise EExternalException.Create(fGeefVolgendeTbpCodeResponse.Header.Omschrijving); //ToonPopupScherm(fGeefVolgendeTbpCodeResponse.Header.Omschrijving, 'Probeer opnieuw'); result := ''; end else begin result := fGeefVolgendeTbpCodeResponse.VolgendeTbpCode; fUiContext.Pallet := result; fUiContext.Toelevering := ''; end; SetContext(result); finally fGeefVolgendeTbpCodeResponse.Free; end;; end; procedure TBlPallet.SetContext(GescandeWaarde: string); begin if TCommonFunctions.IsKaderdeurLocatie(GescandeWaarde) then fUiContext.Pallet := GescandeWaarde else fUiContext.Pallet := UpperCase(GescandeWaarde); end; end.