Tecsitel_FactuGES2/Source/Modulos/Contactos/Views/uViewProveedor.pas
david b343cdea63 - Ticket #32. Añadir la columna contrato al vendedor.
- En proveedores, la descripción (tipo de material que sirve) se ha cambiado a un combobox para que sea más fácil.

git-svn-id: https://192.168.0.254/svn/Proyectos.Tecsitel_FactuGES2/trunk@240 0c75b7a4-871f-7646-8a2f-f78d34cc349f
2008-02-05 10:08:44 +00:00

127 lines
3.8 KiB
ObjectPascal

unit uViewProveedor;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewContacto, dxLayoutLookAndFeels, DB, uDADataTable,
dxLayoutControl, cxMemo, cxDBEdit, cxContainer, cxEdit, cxTextEdit, cxControls,
cxMaskEdit, cxSpinEdit, ImgList, PngImageList, ActnList, cxHyperLinkEdit,
Buttons, PngSpeedButton, StdCtrls, cxCheckBox, cxGraphics, cxDropDownEdit,
uGruposProveedorController, uDAInterfaces;
type
IViewProveedor = interface(IViewContacto)
['{D251B289-767A-489A-A862-BE564C79EFE6}']
end;
TfrViewProveedor = class(TfrViewContacto, IViewProveedor)
dxLayoutControlContactoGroup10: TdxLayoutGroup;
dxLayoutControlContactoItem16: TdxLayoutItem;
Label1: TLabel;
dxLayoutControlContactoItem19: TdxLayoutItem;
cxDBCheckBox1: TcxDBCheckBox;
dxLayoutControlContactoItem22: TdxLayoutItem;
cxDBCheckBox2: TcxDBCheckBox;
dxLayoutControlContactoItem23: TdxLayoutItem;
eCertificaciones: TcxDBTextEdit;
dxLayoutControlContactoGroup14: TdxLayoutGroup;
dxLayoutControlContactoItem20: TdxLayoutItem;
cbGrupoProveedor: TcxDBComboBox;
dxLayoutControlContactoItem21: TdxLayoutItem;
cbDescripcionProveedor: TcxDBComboBox;
dxLayoutControlContactoItem24: TdxLayoutItem;
eCodigoAsignado: TcxDBTextEdit;
procedure CustomViewCreate(Sender: TObject);
procedure CustomViewDestroy(Sender: TObject);
procedure cbGrupoProveedorPropertiesInitPopup(Sender: TObject);
procedure cbGrupoProveedorPropertiesValidate(Sender: TObject;
var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
procedure cbDescripcionProveedorPropertiesInitPopup(Sender: TObject);
protected
FGrupoController: IGruposProveedorController;
public
end;
implementation
{$R *.dfm}
uses
uBizGruposProveedor, uBizContactos, uProveedoresController;
procedure TfrViewProveedor.cbDescripcionProveedorPropertiesInitPopup(
Sender: TObject);
begin
inherited;
with cbDescripcionProveedor.Properties.Items do
begin
ShowHourglassCursor;
BeginUpdate;
try
Clear;
AddStrings((FController as IProveedoresController).DarListaDescripcionesProveedores);
finally
EndUpdate;
HideHourglassCursor;
end;
end;
end;
procedure TfrViewProveedor.cbGrupoProveedorPropertiesInitPopup(Sender: TObject);
begin
inherited;
with cbGrupoProveedor.Properties.Items do
begin
BeginUpdate;
try
Clear;
AddStrings(FGrupoController.DarListaGruposProveedor);
finally
EndUpdate;
end;
end;
end;
procedure TfrViewProveedor.cbGrupoProveedorPropertiesValidate(Sender: TObject;
var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
var
AGrupo : IBizGrupoProveedor;
begin
inherited;
with (Sender as TcxDBComboBox) do
begin
if (Length(DisplayValue) > 0) and (DisplayValue <> (Contacto as IBizProveedor).GRUPO_PROVEEDOR) then
if Properties.LookupItems.IndexOf(DisplayValue) < 0 then
begin
Properties.LookupItems.BeginUpdate;
AGrupo := FGrupoController.BuscarTodos;
AGrupo.DataTable.Active := True;
try
FGrupoController.Anadir(AGrupo);
AGrupo.DESCRIPCION := DisplayValue;
FGrupoController.Guardar(AGrupo);
Properties.LookupItems.Add(DisplayValue);
finally
Properties.LookupItems.EndUpdate;
AGrupo := NIL;
end;
end;
end;
end;
procedure TfrViewProveedor.CustomViewCreate(Sender: TObject);
begin
inherited;
FGrupoController := TGruposProveedorController.Create;
end;
procedure TfrViewProveedor.CustomViewDestroy(Sender: TObject);
begin
FGrupoController := Nil;
inherited;
end;
end.