TprxCmpDETALLE

De Pragma Wiki
Ir a la navegación Ir a la búsqueda

Descripción

El objeto TprxCmpDETALLE (Funcionalidad básica para detalle con campo cmpLinea) implementa la funcionalidad para manejar detalles de comprobantes que derivan de la clase CmpDETALLE.

Los campos definidos son:

  • cmpCodigo: prxcmpcodigo es el código de comprobante.
  • cmpLinea: prxcmplinea es el número de línea.

Identidad

Declaración

type
  TprxCmpDETALLE = class(TprxADODataSetDetail)
  private
  protected
  public
    constructor Create(AOwner: TComponent); override;
    destructor  Destroy;  override;
    procedure   Loaded; override;

    procedure   InsertXtd(Sender: TObject); override;
    procedure   EditXtd(Sender: TObject); override;
  published
  end;

Implementación

Este componente tiene poca funcionalidad programada ya que casi todo proviene de sus ancestros (y las clases que hacen de master).

procedure InsertXtd(Sender: TObject)

Este procedimiento incrementa el valor del campo cmpLinea y posiciona el cursor en el campo siguiente.

procedure TprxCmpDETALLE.InsertXtd(Sender: TObject);
begin
  Trace('TprxCmpDETALLE.InsertXtd');

  inherited InsertXtd(Sender);

  // Incrementamos el número de linea...

  FieldByName('cmpLinea').ReadOnly  := False;
  FieldValues['cmpLinea']           := FieldMaxValue('cmpLinea') + 1;

  if LocalInsertXtdFlag = False then
     FieldsXtdList.FocusNextActiveControl('cmpLinea');
end;