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 - 20: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.