uControllerDetallesArticulos.pas: Nueva funcionalidad para añadir un artículo a una lista de detalles pudiendo elegir si se inserta una nueva fila o utilizando la actual.
git-svn-id: https://192.168.0.254/svn/Proyectos.Acana_FactuGES2/trunk@88 f4e31baf-9722-1c47-927c-6f952f962d4b
This commit is contained in:
parent
80cf052f33
commit
078f444359
@ -13,8 +13,8 @@ type
|
|||||||
TEnumReferencia = (tCliente, tProveedor);
|
TEnumReferencia = (tCliente, tProveedor);
|
||||||
|
|
||||||
IControllerDetallesArticulos = interface(IControllerDetallesBase)
|
IControllerDetallesArticulos = interface(IControllerDetallesBase)
|
||||||
['{6E156796-DB1F-4727-BBFB-FBAEF2E5C098}']
|
['{6E156796-DB1F-4727-BBFB-FBAEF2E5C098}']
|
||||||
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable);
|
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; const ANuevaFila :Boolean = True);
|
||||||
function AnadirArticulo(ADetalles: IDAStronglyTypedDataTable; Referencia: String; TipoReferencia: TEnumReferencia; AClienteID: Integer = -1): Boolean; overload;
|
function AnadirArticulo(ADetalles: IDAStronglyTypedDataTable; Referencia: String; TipoReferencia: TEnumReferencia; AClienteID: Integer = -1): Boolean; overload;
|
||||||
function AnadirArticulo(ADetalles: IDAStronglyTypedDataTable; IDArticulo: Integer; AClienteID: Integer = -1): Boolean; overload;
|
function AnadirArticulo(ADetalles: IDAStronglyTypedDataTable; IDArticulo: Integer; AClienteID: Integer = -1): Boolean; overload;
|
||||||
procedure ActualizarDetalles(ADetalles: IDAStronglyTypedDataTable; AArticulos: IBizArticulo);
|
procedure ActualizarDetalles(ADetalles: IDAStronglyTypedDataTable; AArticulos: IBizArticulo);
|
||||||
@ -39,7 +39,7 @@ type
|
|||||||
public
|
public
|
||||||
function AnadirArticulo(ADetalles: IDAStronglyTypedDataTable; Referencia: String; TipoReferencia: TEnumReferencia; AClienteID: Integer = -1): Boolean; overload;
|
function AnadirArticulo(ADetalles: IDAStronglyTypedDataTable; Referencia: String; TipoReferencia: TEnumReferencia; AClienteID: Integer = -1): Boolean; overload;
|
||||||
function AnadirArticulo(ADetalles: IDAStronglyTypedDataTable; IDArticulo: Integer; AClienteID: Integer = -1): Boolean; overload;
|
function AnadirArticulo(ADetalles: IDAStronglyTypedDataTable; IDArticulo: Integer; AClienteID: Integer = -1): Boolean; overload;
|
||||||
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable); virtual;
|
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; const ANuevaFila :Boolean = True);
|
||||||
procedure ActualizarDetalles(ADetalles: IDAStronglyTypedDataTable; AArticulos: IBizArticulo);
|
procedure ActualizarDetalles(ADetalles: IDAStronglyTypedDataTable; AArticulos: IBizArticulo);
|
||||||
procedure CambiarSignoDetalles(ADetalles: IDAStronglyTypedDataTable);
|
procedure CambiarSignoDetalles(ADetalles: IDAStronglyTypedDataTable);
|
||||||
procedure AnadirConceptoInicial(ADetalles: IDAStronglyTypedDataTable; AConcepto: String);
|
procedure AnadirConceptoInicial(ADetalles: IDAStronglyTypedDataTable; AConcepto: String);
|
||||||
@ -70,7 +70,7 @@ begin
|
|||||||
ADetalles.DataTable.First;
|
ADetalles.DataTable.First;
|
||||||
with ADetalles.DataTable do
|
with ADetalles.DataTable do
|
||||||
begin
|
begin
|
||||||
while not Eof do
|
while not EOF do
|
||||||
begin
|
begin
|
||||||
Edit;
|
Edit;
|
||||||
AArticulos.DataTable.First;
|
AArticulos.DataTable.First;
|
||||||
@ -129,10 +129,10 @@ function TControllerDetallesArticulos.AnadirArticulo(ADetalles: IDAStronglyTyped
|
|||||||
var
|
var
|
||||||
AArticulo: IBizArticulo;
|
AArticulo: IBizArticulo;
|
||||||
begin
|
begin
|
||||||
{
|
{
|
||||||
Añade el artículo con la referencia pasada por parametro a los detalles pasados por parametro
|
Añade el artículo con la referencia pasada por parametro a los detalles pasados por parametro
|
||||||
En el caso de asignar un AClienteID el articulo debe contener el descuento para ese cliente
|
En el caso de asignar un AClienteID el articulo debe contener el descuento para ese cliente
|
||||||
}
|
}
|
||||||
|
|
||||||
Result := False;
|
Result := False;
|
||||||
BeginUpdate(ADetalles);
|
BeginUpdate(ADetalles);
|
||||||
@ -155,16 +155,20 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TControllerDetallesArticulos.AnadirArticulos(ADetalles: IDAStronglyTypedDataTable);
|
procedure TControllerDetallesArticulos.AnadirArticulos(
|
||||||
|
ADetalles: IDAStronglyTypedDataTable; const ANuevaFila: Boolean);
|
||||||
var
|
var
|
||||||
AArticulos: IBizArticulo;
|
AArticulos: IBizArticulo;
|
||||||
begin
|
begin
|
||||||
if Assigned(ADetalles) then
|
if Assigned(ADetalles) then
|
||||||
begin
|
begin
|
||||||
try
|
try
|
||||||
AArticulos := (FArticulosController.BuscarTodos as IBizArticulo);
|
AArticulos := (FArticulosController.BuscarTodos as IBizArticulo);
|
||||||
AArticulos := FArticulosController.ElegirArticulos(AArticulos, 'Elija los artículos que desea añadir', True);
|
AArticulos := FArticulosController.ElegirArticulos(AArticulos, 'Elija los artículos que desea añadir', True);
|
||||||
Add(ADetalles, AArticulos);
|
if ANuevaFila then
|
||||||
|
Add(ADetalles, AArticulos)
|
||||||
|
else
|
||||||
|
RellenarDetalle(ADetalles, AArticulos);
|
||||||
finally
|
finally
|
||||||
AArticulos := Nil;
|
AArticulos := Nil;
|
||||||
end;
|
end;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user