Diferencia entre revisiones de «TcmpDETALLE pragma XTD implemented»
Ir a la navegación
Ir a la búsqueda
Etiqueta: Reversión manual |
Sin resumen de edición |
||
| (No se muestra una edición intermedia del mismo usuario) | |||
| Línea 2: | Línea 2: | ||
El objeto '''TcmpDETALLE_pragma_XTD_implemented''' (Funcionalidad básica para detalle con campo FCMPLINEA.) define campos básicos para detalles de comprobantes, es similar a [[TprxCmpDETALLE]] pero implementa los campos en mayúsculas y con el prefijo '''F'''. | El objeto '''TcmpDETALLE_pragma_XTD_implemented''' (Funcionalidad básica para detalle con campo FCMPLINEA.) define campos básicos para detalles de comprobantes, es similar a [[TprxCmpDETALLE]] pero implementa los campos en mayúsculas y con el prefijo '''F'''. | ||
Usa los campos definidos en [[ | Usa los campos definidos en [[cmpDETALLE_pragma_XTD]]. | ||
=[[QUEESESTO/IDENTIDAD|Identidad]]= | =[[QUEESESTO/IDENTIDAD|Identidad]]= | ||
| Línea 38: | Línea 38: | ||
===procedure InsertXtd(Sender: TObject)=== | ===procedure InsertXtd(Sender: TObject)=== | ||
Incrementa el valor del campo FCMPLINEA en 1 y ejecuta su OnExit: | Incrementa el valor del campo FCMPLINEA en 1 y ejecuta su OnExit: | ||
<pre> | |||
procedure TcmpDETALLE_pragma_XTD_implemented.InsertXtd(Sender: TObject); | |||
var | |||
vErrMsg: String; | |||
begin | |||
inherited InsertXtd(Sender); | |||
// Incrementamos el número de linea... | |||
FieldByName('FCMPLINEA').ReadOnly := False; | |||
FieldValues['FCMPLINEA'] := FieldMaxValue('FCMPLINEA') + 1; | |||
// prxadodatasetedit | |||
if LocalInsertXtdFlag = False then | |||
begin | |||
OnExitFieldXtd(Self, 'FCMPLINEA', FieldByName('FCMPLINEA').AsInteger, vErrMsg); | |||
end; | |||
vErrMsg := vErrMsg; | |||
end; | |||
</pre> | |||
=Implementación= | |||
===function CanInsertXtd: Boolean=== | |||
Además de verificar su inherited, verifica que la cabecera del comprobante no esté anulada ni registrada. | |||
===function CanEditXtd: Boolean=== | |||
Además de verificar su inherited, verifica que la cabecera del comprobante no esté anulada ni registrada. | |||
===procedure InsertXtd(Sender: TObject)=== | |||
Suma 1 al valor del campo FCMPLINEA y llama a su evento OnExit: | |||
<pre> | <pre> | ||
procedure TcmpDETALLE_pragma_XTD_implemented.InsertXtd(Sender: TObject); | procedure TcmpDETALLE_pragma_XTD_implemented.InsertXtd(Sender: TObject); | ||
Revisión actual - 18:42 19 may 2025
Introducción
El objeto TcmpDETALLE_pragma_XTD_implemented (Funcionalidad básica para detalle con campo FCMPLINEA.) define campos básicos para detalles de comprobantes, es similar a TprxCmpDETALLE pero implementa los campos en mayúsculas y con el prefijo F.
Usa los campos definidos en cmpDETALLE_pragma_XTD.
Identidad
- Ancestro: TprxADODataSetDetail
- Carpeta: C:\DevelopPrx\implemented
- Archivo: cmpDETALLE_pragma_XTD_implemented.pas
Declaración
type
TcmpDETALLE_pragma_XTD_implemented = class(TprxADODataSetDetail)
private
protected
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure Loaded; override;
function CanInsertXtd: Boolean; override;
function CanEditXtd: Boolean; override;
procedure InsertXtd(Sender: TObject); override;
published
end;
<pre>
=Implementación=
===function CanInsertXtd: Boolean===
Además de ejecutar el inherited verifica que la cabecera del comprobante no se encuentre ni anulada ni registrada.
===function CanEditXtd: Boolean===
Además de ejecutar el inherited verifica que la cabecera del comprobante no se encuentre ni anulada ni registrada.
===procedure InsertXtd(Sender: TObject)===
Incrementa el valor del campo FCMPLINEA en 1 y ejecuta su OnExit:
<pre>
procedure TcmpDETALLE_pragma_XTD_implemented.InsertXtd(Sender: TObject);
var
vErrMsg: String;
begin
inherited InsertXtd(Sender);
// Incrementamos el número de linea...
FieldByName('FCMPLINEA').ReadOnly := False;
FieldValues['FCMPLINEA'] := FieldMaxValue('FCMPLINEA') + 1;
// prxadodatasetedit
if LocalInsertXtdFlag = False then
begin
OnExitFieldXtd(Self, 'FCMPLINEA', FieldByName('FCMPLINEA').AsInteger, vErrMsg);
end;
vErrMsg := vErrMsg;
end;
Implementación
function CanInsertXtd: Boolean
Además de verificar su inherited, verifica que la cabecera del comprobante no esté anulada ni registrada.
function CanEditXtd: Boolean
Además de verificar su inherited, verifica que la cabecera del comprobante no esté anulada ni registrada.
procedure InsertXtd(Sender: TObject)
Suma 1 al valor del campo FCMPLINEA y llama a su evento OnExit:
procedure TcmpDETALLE_pragma_XTD_implemented.InsertXtd(Sender: TObject);
var
vErrMsg: String;
begin
inherited InsertXtd(Sender);
// Incrementamos el número de linea...
FieldByName('FCMPLINEA').ReadOnly := False;
FieldValues['FCMPLINEA'] := FieldMaxValue('FCMPLINEA') + 1;
// prxadodatasetedit
if LocalInsertXtdFlag = False then
begin
OnExitFieldXtd(Self, 'FCMPLINEA', FieldByName('FCMPLINEA').AsInteger, vErrMsg);
end;
vErrMsg := vErrMsg;
end;