PrxDataTypes

De Pragma Wiki
Revisión del 21:09 16 may 2025 de Luciano Carou (discusión | contribs.) (Página creada con «=Introducción= Los datasets (al igual que cualquier componente de Delphi) usan activamente el envío de mensajes y eventos entre componentes. Esta unidad define eventos y mensajes específicamente creados para los datasets de Pragma. La unidad solo define declaraciones y no tiene implementación. Se listan las definiciones más importantes. =Identidad= Category:MANUAL/PROGRAMADOR Category:DATASETS *Carpeta: C:\DevelopPrx\library *Arch…»)
(difs.) ← Revisión anterior | Revisión actual (difs.) | Revisión siguiente → (difs.)
Ir a la navegación Ir a la búsqueda

Introducción

Los datasets (al igual que cualquier componente de Delphi) usan activamente el envío de mensajes y eventos entre componentes. Esta unidad define eventos y mensajes específicamente creados para los datasets de Pragma. La unidad solo define declaraciones y no tiene implementación. Se listan las definiciones más importantes.

Identidad

  • Carpeta: C:\DevelopPrx\library
  • Archivo: prxDataTypes.pas

Definiciones generales

type
  TprxOnLocalFrameClose = procedure (aTimeStamp: String) of object;

type
  TprxNotifyEventWithContinue = procedure (Sender: TObject; var aContinue: Boolean) of object;

// Modo de edición de prxDBEdit y prxComboBox...

type
  TprxEditDataType = (edtCombo, edtAlpha, edtInteger, edtFloat, edtBoolean);

// Llamada para cargar valores existentes de un campo en una grilla...

type
  TprxDBGridGetColumnValues = procedure (aFieldName: String; aList: TStringList) of object;

// Llamadas para el OnEnter y OnExit internos (programados)...

type
  TprxADOFieldOnEnterInternal = procedure (aDataSet: TDataset; aFieldName: String) of object;

type
  TprxADOFieldOnExitInternal = procedure (aDataSet: TDataset; aFieldName: String) of object;

type
  Tprx_show_progress_procedure = procedure (a_index: Integer; a_count: Integer) of object;

Definición de mensajes del TprxADODataSetEdit

const
  MSG_PRXADODATASETMESSAGE = WM_USER + 400 + 1001;

type
  TprxADODataSetMessageType = ( msgInsert
                              , msgEdit
                              , msgBeforePost
                              , msgPost
                              , msgCancel
                              , msgBeforeDelete
                              , msgDelete
                              , msgApplyUpdates
                              , msgEnable
                              , msgDisable
                              , msgFocus
                              , msgFindFocus
                              , msgRepaint
                              , msgScroll
                              , msgNewRecord
                              , msgExistingKey
                              , msgTabStop
                              , msgRefresh
                              , msgOnEnter
                              , msgOnExit
                              , msgApplyMasterKey
                              , msgActivate
                              );

type
  TprxADODataSetMessage = record
    Msg: Cardinal;
    Sender: TComponent;
    FieldName: String;
    Operation: TprxADODataSetMessageType;
    Value: Variant;
    Enabled: Boolean;
    end;

type
  TprxADODataSetIdentidadTransaccion = record
    Catalogo: String;
    TipoDato: String;
    end;

MSG_PRXADODATASETMESSAGE = WM_USER + 400 + 1001

Los mensajes se envían dentro de una estructura tipo record y necesitan un número de mensaje que es el definido en esta constante.

TprxADODataSetMessageType

Son los tipos de mensaje enviados:

  • msgInsert indica inserción del dataset.
  • msgEdit indica edición.
  • msgBeforePost justo antes de hacer post.
  • msgPost en el momento de hacer post.
  • msgCancel cuando se cancela la operación corriente.
  • msgBeforeDelete ejecutado justo antes de eliminar un registro.
  • msgDelete ejecutado al eliminar.
  • msgApplyUpdates cuando aplica los cambios a la base de datos.
  • msgEnable habilita algo.
  • msgDisable deshabilita algo.
  • msgFocus setea foco, normalmente en un control visual.
  • msgFindFocus busca el foco de un control o del control que representa un campo.
  • msgRepaint indica que hay que volver a dibujar la pantalla.
  • msgScroll cuando se cambia de un registro a otro.
  • msgNewRecord cuando vamos a insertar un nuevo registro.
  • msgExistingKey enviado cuando estamos insertando e ingresamos una clave primaria ya existente.
  • msgTabStop indica que un control puede recibir foco.
  • msgRefresh
  • msgOnEnter ejecutado cuando el foco entra a un control.
  • msgOnExit ejecutado cuando el foco sale de un control.
  • msgApplyMasterKey ejecutado cuando aplicamos la clave maestra en un detalle.
  • msgActivate cuando se activa el dataset (cuando se instancia el form y está todo listo para que el usuario lo use).

type TprxADODataSetMessage = record

Define el registro usado para enviar mensajes, algunos campos son:

  • Sender es el componente que envía el mensaje.
  • FieldName en caso de que el mensaje se relacione con un campo su nombre se pone aquí.
  • Operation indica la operación tomándola de TprxADODataSetMessageType.
  • Value valor informado.
  • Enabled se completa con True o False según el emnsaje.