SeSe añade en el pago del recibo la columna remesa para guardar la remesa a la que estuvo asociado el recibo en un determinado momento, en el caso de quitar el recibo de la remesa manualmente no queda reflejado porque es como si se hubiera equivocado al hacer la remesa, solo queda reflejado en el caso de añadir un pago (en este caso devolución) para poderlo añadir atra remesa
git-svn-id: https://192.168.0.254/svn/Proyectos.LuisLeon_FactuGES2/trunk@166 b2cfbe5a-eba1-4a0c-8b32-7feea0a119f2
This commit is contained in:
parent
82f10e77f4
commit
a52a393fb7
BIN
Build/Build.fbl6
BIN
Build/Build.fbl6
Binary file not shown.
@ -32,8 +32,8 @@ uses
|
|||||||
type
|
type
|
||||||
IPagosProveedorController = interface(ISujeto)
|
IPagosProveedorController = interface(ISujeto)
|
||||||
['{4F907D80-B184-4557-BAB7-9FDA23260E64}']
|
['{4F907D80-B184-4557-BAB7-9FDA23260E64}']
|
||||||
function Anadir(APagosProveedor: IBizPagosProveedor; Const Fecha: String = ''): Boolean;
|
function Anadir(APagosProveedor: IBizPagosProveedor; Const Fecha: String = ''; Const Remesa: String = ''): Boolean;
|
||||||
procedure Modificar(APagosProveedor: IBizPagosProveedor; Const Fecha: String);
|
procedure Modificar(APagosProveedor: IBizPagosProveedor; Const Fecha: String; Const Remesa: String = '');
|
||||||
function Eliminar(APagoCliente : IBizPagosProveedor): Boolean;
|
function Eliminar(APagoCliente : IBizPagosProveedor): Boolean;
|
||||||
function EliminarTodo(APagossCliente : IBizPagosProveedor): Boolean;
|
function EliminarTodo(APagossCliente : IBizPagosProveedor): Boolean;
|
||||||
end;
|
end;
|
||||||
@ -46,8 +46,8 @@ type
|
|||||||
public
|
public
|
||||||
constructor Create; override;
|
constructor Create; override;
|
||||||
destructor Destroy; override;
|
destructor Destroy; override;
|
||||||
function Anadir(APagosProveedor: IBizPagosProveedor; Const Fecha: String = ''): Boolean;
|
function Anadir(APagosProveedor: IBizPagosProveedor; Const Fecha: String = ''; Const Remesa: String = ''): Boolean;
|
||||||
procedure Modificar(APagosProveedor: IBizPagosProveedor; Const Fecha: String);
|
procedure Modificar(APagosProveedor: IBizPagosProveedor; Const Fecha: String; Const Remesa: String = '');
|
||||||
function Eliminar(APagoCliente : IBizPagosProveedor): Boolean;
|
function Eliminar(APagoCliente : IBizPagosProveedor): Boolean;
|
||||||
function EliminarTodo(APagosProveedor : IBizPagosProveedor): Boolean;
|
function EliminarTodo(APagosProveedor : IBizPagosProveedor): Boolean;
|
||||||
end;
|
end;
|
||||||
@ -62,7 +62,7 @@ uses
|
|||||||
|
|
||||||
{ TPagosProveedorController }
|
{ TPagosProveedorController }
|
||||||
|
|
||||||
function TPagosProveedorController.Anadir(APagosProveedor: IBizPagosProveedor; Const Fecha: String = ''): Boolean;
|
function TPagosProveedorController.Anadir(APagosProveedor: IBizPagosProveedor; Const Fecha: String = ''; Const Remesa: String = ''): Boolean;
|
||||||
{ Si el pago introducido es un pago y no una devolución devolvemos true en caso de ser
|
{ Si el pago introducido es un pago y no una devolución devolvemos true en caso de ser
|
||||||
una devolución devolvemos false}
|
una devolución devolvemos false}
|
||||||
begin
|
begin
|
||||||
@ -72,6 +72,9 @@ begin
|
|||||||
else
|
else
|
||||||
APagosProveedor.FECHA_PAGO := StrToDate(Fecha);
|
APagosProveedor.FECHA_PAGO := StrToDate(Fecha);
|
||||||
|
|
||||||
|
if Length(Remesa) <> 0 then
|
||||||
|
APagosProveedor.TITULAR := Remesa;
|
||||||
|
|
||||||
if (APagosProveedor.DataTable.RecordCount = 0)
|
if (APagosProveedor.DataTable.RecordCount = 0)
|
||||||
or ((APagosProveedor.DataTable.RecordCount mod 2) = 0) then
|
or ((APagosProveedor.DataTable.RecordCount mod 2) = 0) then
|
||||||
APagosProveedor.TIPO := CTE_PAGO
|
APagosProveedor.TIPO := CTE_PAGO
|
||||||
@ -133,10 +136,14 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TPagosProveedorController.Modificar(APagosProveedor: IBizPagosProveedor; const Fecha: String);
|
procedure TPagosProveedorController.Modificar(APagosProveedor: IBizPagosProveedor; const Fecha: String; Const Remesa: String = '');
|
||||||
begin
|
begin
|
||||||
APagosProveedor.DataTable.Edit;
|
APagosProveedor.DataTable.Edit;
|
||||||
APagosProveedor.FECHA_PAGO := StrToDate(Fecha);
|
APagosProveedor.FECHA_PAGO := StrToDate(Fecha);
|
||||||
|
|
||||||
|
if Length(Remesa) <> 0 then
|
||||||
|
APagosProveedor.TITULAR := Remesa;
|
||||||
|
|
||||||
APagosProveedor.DataTable.Post;
|
APagosProveedor.DataTable.Post;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|||||||
@ -39,7 +39,7 @@ type
|
|||||||
property PagosController: IPagosProveedorController read GetPagosController write SetPagosController;
|
property PagosController: IPagosProveedorController read GetPagosController write SetPagosController;
|
||||||
|
|
||||||
procedure Anadir(ARecibosProveedor : IBizRecibosProveedor);
|
procedure Anadir(ARecibosProveedor : IBizRecibosProveedor);
|
||||||
function AnadirPago(ARecibosProveedor : IBizRecibosProveedor; FechaPago: String =''): Boolean;
|
function AnadirPago(ARecibosProveedor : IBizRecibosProveedor; FechaPago: String =''; Remesa: String=''): Boolean;
|
||||||
procedure ModificarPago(ARecibosProveedor : IBizRecibosProveedor);
|
procedure ModificarPago(ARecibosProveedor : IBizRecibosProveedor);
|
||||||
function Eliminar(ARecibosProveedor : IBizRecibosProveedor): Boolean;
|
function Eliminar(ARecibosProveedor : IBizRecibosProveedor): Boolean;
|
||||||
function EliminarPago(ARecibosProveedor : IBizRecibosProveedor): Boolean;
|
function EliminarPago(ARecibosProveedor : IBizRecibosProveedor): Boolean;
|
||||||
@ -65,7 +65,7 @@ type
|
|||||||
procedure Ver(ARecibosProveedor: IBizRecibosProveedor);
|
procedure Ver(ARecibosProveedor: IBizRecibosProveedor);
|
||||||
function ExtraerSeleccionados(ARecibosProveedor: IBizRecibosProveedor) : IBizRecibosProveedor;
|
function ExtraerSeleccionados(ARecibosProveedor: IBizRecibosProveedor) : IBizRecibosProveedor;
|
||||||
|
|
||||||
procedure AsignarRemesa(ARecibos : IBizRecibosProveedor; ID_REMESA: Integer);
|
procedure AsignarRemesa(ARecibos : IBizRecibosProveedor; ID_REMESA: Integer; Referencia: String);
|
||||||
procedure QuitarRemesa(ARecibos : IBizRecibosProveedor);
|
procedure QuitarRemesa(ARecibos : IBizRecibosProveedor);
|
||||||
procedure SetSituacionCobrados(ARecibos : IBizRecibosProveedor; WithDeltas: Boolean=False);
|
procedure SetSituacionCobrados(ARecibos : IBizRecibosProveedor; WithDeltas: Boolean=False);
|
||||||
function ElegirRecibos(ARecibos : IBizRecibosProveedor; AMensaje: String; AMultiSelect: Boolean): IBizRecibosProveedor;
|
function ElegirRecibos(ARecibos : IBizRecibosProveedor; AMensaje: String; AMultiSelect: Boolean): IBizRecibosProveedor;
|
||||||
@ -108,7 +108,7 @@ type
|
|||||||
|
|
||||||
procedure RecuperarCliente(AReciboProveedor : IBizRecibosProveedor);
|
procedure RecuperarCliente(AReciboProveedor : IBizRecibosProveedor);
|
||||||
procedure Anadir(ARecibosProveedor : IBizRecibosProveedor);
|
procedure Anadir(ARecibosProveedor : IBizRecibosProveedor);
|
||||||
function AnadirPago(ARecibosProveedor : IBizRecibosProveedor; FechaPago: String =''): Boolean;
|
function AnadirPago(ARecibosProveedor : IBizRecibosProveedor; FechaPago: String =''; Remesa: String=''): Boolean;
|
||||||
procedure ModificarPago(ARecibosProveedor : IBizRecibosProveedor);
|
procedure ModificarPago(ARecibosProveedor : IBizRecibosProveedor);
|
||||||
function Eliminar(ARecibosProveedor : IBizRecibosProveedor): Boolean;
|
function Eliminar(ARecibosProveedor : IBizRecibosProveedor): Boolean;
|
||||||
function EliminarPago(ARecibosProveedor : IBizRecibosProveedor): Boolean;
|
function EliminarPago(ARecibosProveedor : IBizRecibosProveedor): Boolean;
|
||||||
@ -136,7 +136,7 @@ type
|
|||||||
function ElegirRecibos(ARecibos : IBizRecibosProveedor; AMensaje: String; AMultiSelect: Boolean): IBizRecibosProveedor;
|
function ElegirRecibos(ARecibos : IBizRecibosProveedor; AMensaje: String; AMultiSelect: Boolean): IBizRecibosProveedor;
|
||||||
function ElegirRecibosCompensados(ARecibo : IBizRecibosProveedor): Boolean;
|
function ElegirRecibosCompensados(ARecibo : IBizRecibosProveedor): Boolean;
|
||||||
|
|
||||||
procedure AsignarRemesa(ARecibos : IBizRecibosProveedor; ID_REMESA: Integer);
|
procedure AsignarRemesa(ARecibos : IBizRecibosProveedor; ID_REMESA: Integer; Referencia: String);
|
||||||
procedure QuitarRemesa(ARecibos : IBizRecibosProveedor);
|
procedure QuitarRemesa(ARecibos : IBizRecibosProveedor);
|
||||||
procedure QuitarReciboCompensado(ARecibo : IBizRecibosProveedor);
|
procedure QuitarReciboCompensado(ARecibo : IBizRecibosProveedor);
|
||||||
|
|
||||||
@ -166,7 +166,7 @@ begin
|
|||||||
ARecibosProveedor.Insert;
|
ARecibosProveedor.Insert;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TRecibosProveedorController.AnadirPago(ARecibosProveedor: IBizRecibosProveedor; FechaPago: String =''): Boolean;
|
function TRecibosProveedorController.AnadirPago(ARecibosProveedor: IBizRecibosProveedor; FechaPago: String =''; Remesa: String=''): Boolean;
|
||||||
var
|
var
|
||||||
AEditor : IEditorFechaPagoProveedor;
|
AEditor : IEditorFechaPagoProveedor;
|
||||||
begin
|
begin
|
||||||
@ -191,7 +191,7 @@ begin
|
|||||||
Exit;
|
Exit;
|
||||||
|
|
||||||
//Finalmente añadimos el pago (pago o devolucion)
|
//Finalmente añadimos el pago (pago o devolucion)
|
||||||
if PagosController.Anadir(ARecibosProveedor.Pagos, FechaPago) then
|
if PagosController.Anadir(ARecibosProveedor.Pagos, FechaPago, Remesa) then
|
||||||
begin
|
begin
|
||||||
ARecibosProveedor.Edit;
|
ARecibosProveedor.Edit;
|
||||||
ARecibosProveedor.SITUACION := CTE_PAGADO;
|
ARecibosProveedor.SITUACION := CTE_PAGADO;
|
||||||
@ -211,7 +211,7 @@ begin
|
|||||||
FDataModule := TDataModuleRecibosProveedor.Create(Nil);
|
FDataModule := TDataModuleRecibosProveedor.Create(Nil);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TRecibosProveedorController.AsignarRemesa(ARecibos: IBizRecibosProveedor; ID_REMESA: Integer);
|
procedure TRecibosProveedorController.AsignarRemesa(ARecibos: IBizRecibosProveedor; ID_REMESA: Integer; Referencia: String);
|
||||||
begin
|
begin
|
||||||
if Assigned(ARecibos) then
|
if Assigned(ARecibos) then
|
||||||
begin
|
begin
|
||||||
@ -225,7 +225,7 @@ begin
|
|||||||
ARecibos.Edit;
|
ARecibos.Edit;
|
||||||
//Añadimos el cobro automatico por la remesa y volvemos a asignar ID
|
//Añadimos el cobro automatico por la remesa y volvemos a asignar ID
|
||||||
//para que asigne un ID nuevo para el pago, porque aqui si hay maestro-detalle
|
//para que asigne un ID nuevo para el pago, porque aqui si hay maestro-detalle
|
||||||
AnadirPago(ARecibos, DateToStr(Date)); //->Ojo el orden es importante
|
AnadirPago(ARecibos, DateToStr(Date), Referencia); //->Ojo el orden es importante
|
||||||
ARecibos.ID_REMESA := ID_REMESA;
|
ARecibos.ID_REMESA := ID_REMESA;
|
||||||
end;
|
end;
|
||||||
Next;
|
Next;
|
||||||
|
|||||||
@ -15,6 +15,7 @@ inherited frViewPagosProveedor: TfrViewPagosProveedor
|
|||||||
Align = alClient
|
Align = alClient
|
||||||
ParentBackground = True
|
ParentBackground = True
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
|
TabStop = False
|
||||||
AutoContentSizes = [acsWidth, acsHeight]
|
AutoContentSizes = [acsWidth, acsHeight]
|
||||||
LookAndFeel = dxLayoutOfficeLookAndFeel1
|
LookAndFeel = dxLayoutOfficeLookAndFeel1
|
||||||
object ListaPagosProveedor: TcxGrid
|
object ListaPagosProveedor: TcxGrid
|
||||||
@ -84,8 +85,8 @@ inherited frViewPagosProveedor: TfrViewPagosProveedor
|
|||||||
Width = 100
|
Width = 100
|
||||||
end
|
end
|
||||||
object ListaPagosProveedorDBTableView1TITULAR: TcxGridDBColumn
|
object ListaPagosProveedorDBTableView1TITULAR: TcxGridDBColumn
|
||||||
|
Caption = 'Remesa'
|
||||||
DataBinding.FieldName = 'TITULAR'
|
DataBinding.FieldName = 'TITULAR'
|
||||||
Visible = False
|
|
||||||
end
|
end
|
||||||
object ListaPagosProveedorDBTableView1ENTIDAD: TcxGridDBColumn
|
object ListaPagosProveedorDBTableView1ENTIDAD: TcxGridDBColumn
|
||||||
DataBinding.FieldName = 'ENTIDAD'
|
DataBinding.FieldName = 'ENTIDAD'
|
||||||
|
|||||||
@ -557,7 +557,7 @@ begin
|
|||||||
|
|
||||||
//Si todo ha ido bien, asignamos la remesa a los recibos asociados
|
//Si todo ha ido bien, asignamos la remesa a los recibos asociados
|
||||||
//Como no están declarados como maestro-detalles debemos hacer el applyupdates nosotros
|
//Como no están declarados como maestro-detalles debemos hacer el applyupdates nosotros
|
||||||
RecibosProveedorController.AsignarRemesa(ARemesaProveedor.Recibos, ARemesaProveedor.ID);
|
RecibosProveedorController.AsignarRemesa(ARemesaProveedor.Recibos, ARemesaProveedor.ID, ARemesaProveedor.REFERENCIA);
|
||||||
ARemesaProveedor.Recibos.DataTable.ApplyUpdates; //En este applyupdates tambien se realizarán todos los cambios acumulados sobre los recibos asociados (EliminarReciboProveedor/ ElegirRecibosProveedor)
|
ARemesaProveedor.Recibos.DataTable.ApplyUpdates; //En este applyupdates tambien se realizarán todos los cambios acumulados sobre los recibos asociados (EliminarReciboProveedor/ ElegirRecibosProveedor)
|
||||||
|
|
||||||
//Es necesario ya que no se refrescan bien los deltas y despues del applyupdates siguen
|
//Es necesario ya que no se refrescan bien los deltas y despues del applyupdates siguen
|
||||||
|
|||||||
Reference in New Issue
Block a user