unit BlPallet; interface uses DnaCodeService, UiContext, Agent; type TBlPallet = Class private fUiContext: TUiContext; fAgent: TAgent; public constructor Create(aUiContext: TUiContext; aAgent: TAgent); function GenereerTbp: string; procedure SetContext(GescandeWaarde: string); End; implementation uses CommonFunctions, SysUtils; { TBlPallet } constructor TBlPallet.Create(aUiContext: TUiContext; aAgent: TAgent); begin fUiContext := aUiContext; fAgent := TAgent.Create(fUiContext); end; function TBlPallet.GenereerTbp: string; var fGeefVolgendeTbpCodeResponse: GeefVolgendeTbpCodeResponse; begin inherited; fGeefVolgendeTbpCodeResponse := fAgent.GeefVolgendeTbpCode(); try if fGeefVolgendeTbpCodeResponse.Header.Status <> '200' then begin raise EExternalException.Create(fGeefVolgendeTbpCodeResponse.Header.Omschrijving); 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.