Index: AAPClient/UI/InfoLogScherm.dfm =================================================================== diff -u -r52 -r54 --- AAPClient/UI/InfoLogScherm.dfm (.../InfoLogScherm.dfm) (revision 52) +++ AAPClient/UI/InfoLogScherm.dfm (.../InfoLogScherm.dfm) (revision 54) @@ -1,7 +1,5 @@ inherited fmInfoLogScherm: TfmInfoLogScherm Caption = 'fmInfoLogScherm' - ExplicitWidth = 232 - ExplicitHeight = 246 PixelsPerInch = 96 TextHeight = 19 object lblToelevering: TLabel [1] @@ -52,6 +50,7 @@ DefaultColWidth = 93 DrawingStyle = gdsGradient FixedCols = 0 + RowCount = 2 Font.Charset = DEFAULT_CHARSET Font.Color = clWindowText Font.Height = -13 Index: AAPClient/UI/InfoLogScherm.pas =================================================================== diff -u -r52 -r54 --- AAPClient/UI/InfoLogScherm.pas (.../InfoLogScherm.pas) (revision 52) +++ AAPClient/UI/InfoLogScherm.pas (.../InfoLogScherm.pas) (revision 54) @@ -5,7 +5,8 @@ uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, DrieKnoppenScherm, Vcl.ActnList, - Vcl.StdCtrls, Vcl.Grids, DnaCodeService; + Vcl.StdCtrls, Vcl.Grids, DnaCodeService, Data.DB, Datasnap.DBClient, + Vcl.DBGrids; type TfmInfoLogScherm = class(TfmDrieKnoppenScherm) @@ -16,8 +17,10 @@ lblAantallen: TLabel; sgToeleveringData: TStringGrid; procedure FormCreate(Sender: TObject); + procedure FormShow(Sender: TObject); private function ToeleveringDataOphalen(): ZoekViaToeleveringResponse; + procedure VulGridMetToeleveringData(Response: ZoekViaToeleveringResponse; ToonGescand: boolean); public { Public declarations } end; @@ -36,6 +39,15 @@ sgToeleveringData.Cols[1].Text := 'Pallet'; end; +procedure TfmInfoLogScherm.FormShow(Sender: TObject); +var + Response: ZoekViaToeleveringResponse; +begin + inherited; + Response := ToeleveringDataOphalen(); + VulGridMetToeleveringData(Response,True); +end; + function TfmInfoLogScherm.ToeleveringDataOphalen: ZoekViaToeleveringResponse; var Service: DnaCodeServiceSoap; @@ -48,27 +60,42 @@ Request := ZoekViaToeleveringRequest.Create; Header := RequestHeader.Create; try - Header.Initialen := lblGebruiker.Caption; + Header.Initialen := 'NBO';//lblGebruiker.Caption; Header.ComputerNaam := ComputerName(); Request.Header := Header; Request.Toelevering := lblToelevering.Caption; Response := Service.ZoekViaToelevering(Request); try if Response.Header.Status <> '200' then begin - Self.ModalResult := mrRetry; - ToonPopupScherm('Geen data beschikbaar', 'Probeer opnieuw') + ToonPopupScherm(Response.Header.Omschrijving, 'Probeer opnieuw') end else begin lblAantalGescand.Caption := IntToStr(Response.AantalReedsGescand); lblTotaalAantal.Caption := IntToStr(Response.AantalInToelevering); - Self.ModalResult := mrIgnore; end; finally - Response.Free; + result := Response; + //Response.Free; end; finally Request.Free; end; end; +procedure TfmInfoLogScherm.VulGridMetToeleveringData(Response: ZoekViaToeleveringResponse; ToonGescand: boolean); +var + DnaCodeTeller: Integer; + StringListTeller: Integer; +begin + StringListTeller := 1; + for DnaCodeTeller := 0 to length(Response.DnaCodes)-1 do begin + if (ToonGescand and (Response.DnaCodes[DnaCodeTeller].InitialenScanner <> '')) or + ((not ToonGescand) and (Response.DnaCodes[DnaCodeTeller].InitialenScanner = '')) then begin + sgToeleveringData.Rows[StringListTeller].Add(Response.DnaCodes[DnaCodeTeller].DnaCode); + sgToeleveringData.Rows[StringListTeller].Append(Response.DnaCodes[DnaCodeTeller].PalletCode); + StringListTeller := StringListTeller + 1; + end; + end; +end; + end.