unit uEditorProveedores; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, uEditorContactos, Menus, ImgList, PngImageList, StdActns, ActnList, TB2ExtItems, TBXExtItems, TBX, TB2Item, TB2Dock, TB2Toolbar, JvExControls, JvComponent, JvNavigationPane, DB, uDADataTable, JvFormAutoSize, ComCtrls, uDAScriptingProvider, uDACDSDataTable, JvAppStorage, JvAppRegistryStorage, JvFormPlacement, ExtCtrls, uCustomView, uViewBase, uViewBarraSeleccion, pngimage, JvComponentBase; type IEditorProveedores = interface(IEditorContactos) ['{1A37D5B6-E090-4E71-94AA-1ABF34EA98DF}'] end; TfEditorProveedores = class(TfEditorContactos, IEditorProveedores) procedure actEliminarExecute(Sender: TObject); procedure actDuplicarExecute(Sender: TObject); public constructor Create(AOwner: TComponent); override; end; implementation uses uViewProveedores, uViewContactos, uDataModuleContactos, uDataModuleBase, uEditorGrid, uEditorUtils, uBizContacto; {$R *.dfm} function ShowEditorProveedores (ABizObject : TDADataTableRules) : TModalResult; var AEditor: TfEditorProveedores; begin AEditor := TfEditorProveedores.Create(Application); try AEditor.Contactos := (ABizObject as IBizProveedor); Result := AEditor.ShowModal; finally AEditor.Release; end; end; function ShowSelectEditorProveedores (ABizObject : TDADataTableRules) : TModalResult; var AEditor: TfEditorProveedores; begin AEditor := TfEditorProveedores.Create(Application); try AEditor.Contactos := (ABizObject as IBizProveedor); AEditor.SelectionBarVisible := True; Result := AEditor.ShowModal; finally AEditor.Release; end; end; { ***************************** TfEditorProveedores ****************************** } procedure TfEditorProveedores.actEliminarExecute(Sender: TObject); begin if (Application.MessageBox('¿Desea borrar este proveedor?', 'Atención', MB_YESNO) = IDYES) then begin inherited; ViewGrid.RefreshGrid; end; end; constructor TfEditorProveedores.Create(AOwner: TComponent); begin inherited; ViewGrid := CreateView(TfrViewProveedores) as IViewContactos; end; procedure TfEditorProveedores.actDuplicarExecute(Sender: TObject); var AContacto : IBizContacto; begin inherited; AContacto := dmContactos.GetCliente(Contactos.CODIGO); Contactos.Insert; Contactos.CopyFrom(AContacto); Contactos.DataTable.ApplyUpdates; ViewGrid.RefreshGrid; ViewGrid.GotoFirst; end; initialization RegisterEditor(IBizProveedor, ShowEditorProveedores, etItems); RegisterEditor(IBizProveedor, ShowSelectEditorProveedores, etSelectItems); finalization end.