Index: PlanScan/UI/frameKlantinstellingen.pas =================================================================== diff -u -r374 -r375 --- PlanScan/UI/frameKlantinstellingen.pas (.../frameKlantinstellingen.pas) (revision 374) +++ PlanScan/UI/frameKlantinstellingen.pas (.../frameKlantinstellingen.pas) (revision 375) @@ -10,17 +10,17 @@ type TfrmKlantinstellingen = class(TFrame) cdsKlantinstellingen: TClientDataSet; - dbgGebruikers: TDBGrid; + dbgKlantinstellingen: TDBGrid; Panel1: TPanel; btnKlantinstellingenToevoegen: TButton; dsKlantinstellingen: TDataSource; btnKlantinstellingenWijzigen: TButton; btnKlantinstellingenVerwijderen: TButton; - procedure dbgGebruikersDrawColumnCell(Sender: TObject; const Rect: TRect; + procedure dbgKlantinstellingenDrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); - procedure dbgGebruikersEnter(Sender: TObject); - procedure dbgGebruikersColEnter(Sender: TObject); - procedure dbgGebruikersColExit(Sender: TObject); + procedure dbgKlantinstellingenEnter(Sender: TObject); + procedure dbgKlantinstellingenColEnter(Sender: TObject); + procedure dbgKlantinstellingenColExit(Sender: TObject); procedure btnKlantinstellingenToevoegenClick(Sender: TObject); procedure btnKlantinstellingenWijzigenClick(Sender: TObject); procedure btnKlantinstellingenVerwijderenClick(Sender: TObject); @@ -76,49 +76,76 @@ procedure TfrmKlantinstellingen.btnKlantinstellingenVerwijderenClick( Sender: TObject); +var + fGeselecteerdeKlantId: string; + fBewerkKlantinstellingenResponse: BewerkKlantinstellingenResponse; begin - // + if dbgKlantinstellingen.SelectedRows.Count > 0 then begin + dbgKlantinstellingen.DataSource.DataSet.GotoBookmark(Pointer(dbgKlantinstellingen.SelectedRows.Items[0])); + fGeselecteerdeKlantId := dbgKlantinstellingen.DataSource.DataSet.FieldByName('cdsKlantinstellingenKlantId').AsString; + end; + fBewerkKlantinstellingenResponse := TAgent.Create(fmMain.UiContext).BewerkKlantinstellingen('Delete',fGeselecteerdeKlantId,false); + if fBewerkKlantinstellingenResponse.Header.Status = '200' then begin + VulKlantinstellingenGridMetData(fBewerkKlantinstellingenResponse.Klantinstellingen); + end else begin + ShowMessage(fBewerkKlantinstellingenResponse.Header.Omschrijving); + end; end; procedure TfrmKlantinstellingen.btnKlantinstellingenWijzigenClick( Sender: TObject); +var + fKlantinstellingenDetailScherm: TfmKlantinstellingenDetail; + fBewerkKlantinstellingenResponse: BewerkKlantinstellingenResponse; begin - // + if dbgKlantinstellingen.SelectedRows.Count > 0 then begin + dbgKlantinstellingen.DataSource.DataSet.GotoBookmark(Pointer(dbgKlantinstellingen.SelectedRows.Items[0])); + fKlantinstellingenDetailScherm := TfmKlantinstellingenDetail.Create(self); + fKlantinstellingenDetailScherm.KlantId := dbgKlantinstellingen.DataSource.DataSet.FieldByName('cdsKlantinstellingenKlantId').AsString; + fKlantinstellingenDetailScherm.IsExport := dbgKlantinstellingen.DataSource.DataSet.FieldByName('cdsKlantinstellingenIsExport').AsBoolean; + fKlantinstellingenDetailScherm.ShowModal; + fBewerkKlantinstellingenResponse := TAgent.Create(fmMain.UiContext).BewerkKlantinstellingen('Upsert',fKlantinstellingenDetailScherm.KlantId,fKlantinstellingenDetailScherm.IsExport); + if fBewerkKlantinstellingenResponse.Header.Status = '200' then begin + VulKlantinstellingenGridMetData(fBewerkKlantinstellingenResponse.Klantinstellingen); + end else begin + ShowMessage(fBewerkKlantinstellingenResponse.Header.Omschrijving); + end; + end; end; -procedure TfrmKlantinstellingen.dbgGebruikersColEnter(Sender: TObject); +procedure TfrmKlantinstellingen.dbgKlantinstellingenColEnter(Sender: TObject); begin - if Self.dbgGebruikers.SelectedField.DataType = ftBoolean then + if dbgKlantinstellingen.SelectedField.DataType = ftBoolean then begin - Self.GridOriginalOptions := Self.dbgGebruikers.Options; - Self.dbgGebruikers.Options := Self.dbgGebruikers.Options - [dgEditing]; + GridOriginalOptions := dbgKlantinstellingen.Options; + dbgKlantinstellingen.Options := dbgKlantinstellingen.Options - [dgEditing]; end; end; -procedure TfrmKlantinstellingen.dbgGebruikersColExit(Sender: TObject); +procedure TfrmKlantinstellingen.dbgKlantinstellingenColExit(Sender: TObject); begin - if Self.dbgGebruikers.SelectedField.DataType = ftBoolean then - Self.dbgGebruikers.Options := Self.GridOriginalOptions; + if dbgKlantinstellingen.SelectedField.DataType = ftBoolean then + dbgKlantinstellingen.Options := GridOriginalOptions; end; -procedure TfrmKlantinstellingen.dbgGebruikersDrawColumnCell(Sender: TObject; +procedure TfrmKlantinstellingen.dbgKlantinstellingenDrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); const CtrlState: array[Boolean] of integer = (DFCS_BUTTONCHECK, DFCS_BUTTONCHECK or DFCS_CHECKED) ; begin if (Column.Field.DataType=ftBoolean) then begin - dbgGebruikers.Canvas.FillRect(Rect) ; + dbgKlantinstellingen.Canvas.FillRect(Rect) ; if VarIsNull(Column.Field.Value) then - DrawFrameControl(dbgGebruikers.Canvas.Handle,Rect, DFC_BUTTON, DFCS_BUTTONCHECK or DFCS_INACTIVE) {grayed} + DrawFrameControl(dbgKlantinstellingen.Canvas.Handle,Rect, DFC_BUTTON, DFCS_BUTTONCHECK or DFCS_INACTIVE) {grayed} else - DrawFrameControl(dbgGebruikers.Canvas.Handle,Rect, DFC_BUTTON, CtrlState[Column.Field.AsBoolean]) ; {checked or unchecked} + DrawFrameControl(dbgKlantinstellingen.Canvas.Handle,Rect, DFC_BUTTON, CtrlState[Column.Field.AsBoolean]) ; {checked or unchecked} end; end; -procedure TfrmKlantinstellingen.dbgGebruikersEnter(Sender: TObject); +procedure TfrmKlantinstellingen.dbgKlantinstellingenEnter(Sender: TObject); begin - dbgGebruikersColEnter(Sender); + dbgKlantinstellingenColEnter(Sender); end; procedure TfrmKlantinstellingen.VulKlantinstellingenGridMetData(