Tecsitel_FactuGES2/Source/Modulos/Contactos/Views/uViewProveedor.pas
david e94ba43e81 - Proveedores: indicar si es subcontrata o no.
- Contactos: lista de personal asociado a un contacto (en clientes y proveedores).
- Obras: poder indicar una subcontrata
- Pedidos a proveedor: usar obras como destino del pedido.

git-svn-id: https://192.168.0.254/svn/Proyectos.Tecsitel_FactuGES2/trunk@350 0c75b7a4-871f-7646-8a2f-f78d34cc349f
2008-03-24 20:50:41 +00:00

130 lines
3.9 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;
dxLayoutControlContactoItem26: TdxLayoutItem;
cxDBCheckBox3: TcxDBCheckBox;
dxLayoutControlContactoGroup15: TdxLayoutGroup;
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.