unit Main; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Data.DB, Bde.DBTables, Vcl.Grids, Vcl.DBGrids, Vcl.OleCtrls, CACHEQUERYLib_TLB, TLLib_TLB, Vcl.OleServer, CacheActiveX_TLB, Vcl.StdCtrls, Datasnap.DBClient, UiContext, Vcl.ComCtrls; type TfmMain = class(TForm) DataSource1: TDataSource; CacheQuery1: TCacheQuery; ClientDataSet1: TClientDataSet; tcMain: TTabControl; DBGrid1: TDBGrid; Button1: TButton; procedure Button1Click(Sender: TObject); private fUiContext: TUiContext; public property UiContext: TUiContext Read fUiContext Write fUiContext; end; var fmMain: TfmMain; implementation uses DnaCodeService, Agent, typinfo; {$R *.dfm} procedure TfmMain.Button1Click(Sender: TObject); var fZoekViaToeleveringResponse: ZoekViaToeleveringResponse; DnaCodesStringList: TStringList; DnaCodes: ArrayOfDnaCodeDnaCode; ii: integer; begin UiContext := TUiContext.Create; UiContext.Pallet := 'TBP98984'; UiContext.LoginCode := '1513'; UiContext.Initialen := 'TSN'; UiContext.Toelevering := '210817'; fZoekViaToeleveringResponse := TAgent.Create(UiContext).ZoekViaToelevering(UiContext.Toelevering); try if fZoekViaToeleveringResponse.Header.Status = '200' then begin DnaCodes := fZoekViaToeleveringResponse.DnaCodes; ClientDataSet1.FieldDefs.Add('DnaCode',ftString,10); ClientDataSet1.FieldDefs.Add('Pallet',ftString,10); ClientDataSet1.FieldDefs.Add('Toelevering',ftString,10); ClientDataSet1.FieldDefs.Add('Status',ftString,10); ClientDataSet1.FieldDefs.Add('Batch',ftString,10); ClientDataSet1.FieldDefs.Add('Tijdstip',ftString,10); ClientDataSet1.FieldDefs.Add('Initialen',ftString,3); ClientDataSet1.CreateDataSet; ii := 0; while ii <= length(DnaCodes)-1 do begin ClientDataSet1.InsertRecord([ DnaCodes[ii].DnaCode, DnaCodes[ii].PalletCode, DnaCodes[ii].Toelevering, GetEnumName(typeInfo(DnaCodeStatus),Ord(DnaCodes[ii].Status)), '',//DnaCodes[ii].BatchId, DnaCodes[ii].ScanTijdstip, DnaCodes[ii].InitialenScanner]); ii := ii + 1; end; end else begin //ToonPopupScherm(fZoekViaPalletCodeResponse.Header.Omschrijving, 'Bel planning'); end; finally fZoekViaToeleveringResponse.Free; end; end; end.