Diferencia entre revisiones de «TOPCAB implemented»
Ir a la navegación
Ir a la búsqueda
(Página creada con «=Descripción= El objeto '''TOPCAB_implemented''' (Cabecera de ordenes de pago OPCAB.) extiende a ORDENES PAGO. =Identidad= Category:MANUAL/PROGRAMADOR Category:DATASETS/IMPLEMENTED *Ancestro: TcmpCABECERA_pragma_XTD_implemented *Carpeta: C:\DevelopPrx\implemented *Archivo: OPCAB_implemented.pas =Declaración= <pre> type TOPCAB_implemented = class(TCMPCABECERA_PRAGMA_XTD_implemented) private FLiquida_Moneda: String;…») |
Sin resumen de edición |
||
| Línea 63: | Línea 63: | ||
*Refresca los totales del comprobante. | *Refresca los totales del comprobante. | ||
*Actualiza los datos del comprobante en la base de datos. | *Actualiza los datos del comprobante en la base de datos. | ||
===procedure CalcularRetenciones(aLiquida_Fecha: TDatetime; aLiquida: Boolean)=== | |||
Calcula las retenciones del comprobante. | |||
Revisión actual - 19:53 19 may 2025
Descripción
El objeto TOPCAB_implemented (Cabecera de ordenes de pago OPCAB.) extiende a ORDENES PAGO.
Identidad
- Ancestro: TcmpCABECERA_pragma_XTD_implemented
- Carpeta: C:\DevelopPrx\implemented
- Archivo: OPCAB_implemented.pas
Declaración
type
TOPCAB_implemented = class(TCMPCABECERA_PRAGMA_XTD_implemented)
private
FLiquida_Moneda: String;
FLiquida_Fecha: TDatetime;
FLiquida_Cotizacion: Double;
FLiquidando: Boolean;
protected
function Redondear(aNumero: Double; aDecs: Integer): Double;
public
property Liquida_Fecha: TDatetime read FLiquida_Fecha write FLiquida_Fecha;
property Liquida_Moneda: String read FLiquida_Moneda write FLiquida_Moneda;
property Liquida_Cotizacion: Double read FLiquida_Cotizacion write FLiquida_Cotizacion;
property Liquidando: Boolean read FLiquidando;
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure Loaded; override;
procedure GetPopupOptions(Sender: TprxPopupMenu); override;
function PuedeRegistrar(var aMsg: String; aOP: String): Boolean; override;
procedure Totalizar;
function EsCodigoTemporario: Boolean;
procedure LiquidarClick(Sender: TObject); overload;
procedure LiquidarClick(aLiquida_Moneda: String; aLiquida_Fecha: TDatetime; aLiquida_Cotizacion: Double; aLiquida_Retenciones: Boolean; aLiquidaOriginal: Boolean); overload;
procedure CalcularRetenciones(aLiquida_Fecha: TDatetime; aLiquida: Boolean);
function UpdateBatchXtd(AffectRecords: TAffectRecords = arAll): Boolean; override;
function ReabrirComprobante: Boolean; override;
published
end;
Implementación
function PuedeRegistrar(var aMsg: String; aOP: String): Boolean
Verifica con COMPROBANTES/PERIODOS si el comprobante tiene una fecha válida según la fecha de liquidación y no la del comprobante.
function Redondear(aNumero: Double; aDecs: Integer): Double
Función que redondea un cálculo a dos decimales usando SQL.
procedure Totalizar
Totaliza los comprobantes y los asigna a los FDEBITOS y FCREDITOS, luego calcula el neto restando también las FRETENCIONES.
procedure LiquidarClick
Calcula la liquidación de la orden de pago:
- Primero aplica la cotización de liquidación a cada comprobante cuando corresponda, con eso calcula el nuevo monto a pagar.
- Con los nuevos importes calcula las retenciones.
- Refresca los totales del comprobante.
- Actualiza los datos del comprobante en la base de datos.
procedure CalcularRetenciones(aLiquida_Fecha: TDatetime; aLiquida: Boolean)
Calcula las retenciones del comprobante.