AbetoDesign_FactuGES2/Source/Modulos/Articulos/Views/uViewIdiomasArticulo.pas
roberto 1f5e6ebcb9 Version 4.5.4
Cambio en los informes de Contratos de cliente de todas las entidades: Cambio fecha de entrega por fecha expedicion - Solicitado por Próspero
Cambio logo uecko y sellos cabecera en todos los informes de todas las entidades- Solicitado por Noelia
Arreglo para que permita introducir DNI y CIFs raros - Solicitado por Mónica
Las facturas proforma no se tendrán en cuenta en las facturas asociadas a los contratos, listado de contratos - Solicitado por Eva
Se añade comprobación de capitulos para que avise si existe un subtotal sin capitulo correspondiente, ayudará a controlar errores en presupuestos y contratos largos. - Solicitado por Miriam
En los detalles de presupuestos y contratos si eligen un articulo de la tarífa el programa no deja modificar las descripciones (Se ha detectado que lo hen hecho en ocasiones en las tiendas) - Solicitado por Miriam

git-svn-id: https://192.168.0.254/svn/Proyectos.AbetoDesign_FactuGES/trunk@186 93f398dd-4eb6-7a46-baf6-13f46f578da2
2024-02-05 10:15:29 +00:00

148 lines
4.5 KiB
ObjectPascal

unit uViewIdiomasArticulo;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewBase, uViewDetallesGenerico, cxStyles, cxCustomData, cxGraphics,
cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ActnList, ImgList,
PngImageList, uDADataTable, ComCtrls, ToolWin, cxGridLevel,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses,
cxControls, cxGridCustomView, cxGrid, cxDBLookupComboBox, cxSpinEdit,
uBizContactos, uProveedoresController, uDAInterfaces,
uBizArticulos, uArticulosController, uBizIdiomas, uIdiomasController,
cxTextEdit, cxCurrencyEdit;
type
IViewIdiomasArticulo = interface(IViewBase)
['{D6182295-EE09-4951-810D-50A054E9319F}']
function GetArticulo: IBizArticulo;
procedure SetArticulo(const Value: IBizArticulo);
property Articulo: IBizArticulo read GetArticulo write SetArticulo;
function GetController : IArticulosController;
procedure SetController (const Value : IArticulosController);
property Controller : IArticulosController read GetController write SetController;
end;
TfrViewIdiomasArticulo = class(TfrViewDetallesGenerico, IViewIdiomasArticulo)
dsIdiomas: TDADataSource;
cxGridViewDESCRIPCION: TcxGridDBColumn;
cxGridViewID_IDIOMA: TcxGridDBColumn;
cxGridViewID_ARTICULO: TcxGridDBColumn;
procedure cxGridViewPROVEEDORPropertiesEditValueChanged(Sender: TObject);
procedure CustomViewShow(Sender: TObject);
procedure actAnadirUpdate(Sender: TObject);
protected
FArticulo: IBizArticulo;
FController: IArticulosController;
FIdiomasController : IIdiomasController;
FIdiomas : IBizIdioma;
function GetArticulo: IBizArticulo;
procedure SetArticulo(const Value: IBizArticulo);
function GetController : IArticulosController;
procedure SetController (const Value : IArticulosController);
procedure AnadirInterno; override;
public
property Articulo: IBizArticulo read GetArticulo write SetArticulo;
property Controller : IArticulosController read GetController write SetController;
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
end;
implementation
{$R *.dfm}
uses schArticulosClient_Intf;
procedure TfrViewIdiomasArticulo.actAnadirUpdate(Sender: TObject);
begin
inherited;
(Sender as TAction).Enabled := (dsDetalles.DataTable.RecordCount = 0);
end;
procedure TfrViewIdiomasArticulo.AnadirInterno;
begin
dsDetalles.DataTable.Append;
dsDetalles.DataTable.FieldByName(fld_Articulos_IdiomasID_IDIOMA).AsInteger := CTE_ID_IDIOMA_DEFAULT;
end;
constructor TfrViewIdiomasArticulo.Create(AOwner: TComponent);
begin
inherited;
FIdiomasController := TIdiomasController.Create;
FIdiomas := Nil;
{ FProvController := TProveedoresController.Create;
FProveedores := (FProvController.BuscarTodos as IBizProveedor);
dsProveedores.DataTable := FProveedores.DataTable;
if not dsProveedores.DataTable.Active then
dsProveedores.DataTable.Active := True;}
end;
procedure TfrViewIdiomasArticulo.CustomViewShow(Sender: TObject);
begin
inherited;
FIdiomas := FIdiomasController.BuscarTodosMenosDefault;
if Assigned(FIdiomas) then
FIdiomas.DataTable.Active := True;
dsIdiomas.DataTable := FIdiomas.DataTable;
end;
procedure TfrViewIdiomasArticulo.cxGridViewPROVEEDORPropertiesEditValueChanged(Sender: TObject);
begin
inherited;
{
//Signamos el descuento del proveedor seleccionado
if not Articulo.Proveedores.DataTable.Editing then
Articulo.Proveedores.DataTable.Edit;
Articulo.Proveedores.DESCUENTO := FProveedores.DESCUENTO;
}
end;
destructor TfrViewIdiomasArticulo.Destroy;
begin
FIdiomasController := Nil;
FIdiomas := Nil;
inherited;
{
if dsProveedores.DataTable.Active then
dsProveedores.DataTable.Active := False;
FProveedores := NIL;
FProvController := NIL;
inherited;
}
end;
function TfrViewIdiomasArticulo.GetArticulo: IBizArticulo;
begin
Result := FArticulo;
end;
function TfrViewIdiomasArticulo.GetController: IArticulosController;
begin
Result := FController;
end;
procedure TfrViewIdiomasArticulo.SetArticulo(const Value: IBizArticulo);
begin
FArticulo := Value;
dsDetalles.DataTable := FArticulo.Idiomas.DataTable;
end;
procedure TfrViewIdiomasArticulo.SetController(const Value: IArticulosController);
begin
FController := Value;
FIdiomas := FIdiomasController.BuscarTodos;
end;
end.