Diferencia entre revisiones de «TTfvsDBClientFrameCheckList»
Sin resumen de edición |
|||
| Línea 11: | Línea 11: | ||
=Ejemplo de definición= | =Ejemplo de definición= | ||
=== | ===Vista de la pantalla en runtime=== | ||
Usamos el detalle de [[CONTABILIDAD/GRUPOS DE CUENTAS]] como ejemplo, la pantalla se ve de la siguiente manera: | Usamos el detalle de [[CONTABILIDAD/GRUPOS DE CUENTAS]] como ejemplo, la pantalla se ve de la siguiente manera: | ||
[[Archivo:20250603 1129 CUENTA GRUPO.png|miniaturadeimagen|no|Grupos de cuentas contables.]] | [[Archivo:20250603 1129 CUENTA GRUPO.png|miniaturadeimagen|no|Grupos de cuentas contables.]] | ||
Revisión del 15:55 3 jun 2025
Descripción
El frame TTfvsDBClientFrameCheckList (Implementa lista para checkboxes) implementa un frame donde podemos editar una lista de líneas, cada una con un checkbox. Toma una clase definida y la transforma a una lista de checkboxes. Necesita tener el frame de edición definido como se muestra en el ejemplo.
Identidad
- Ancestro: TTfvsDBClientFrame
- Carpeta: C:\DevelopPrx\frames
- Archivo: fvsDBClientFrameCheckList.pas
Ejemplo de definición
Vista de la pantalla en runtime
Usamos el detalle de CONTABILIDAD/GRUPOS DE CUENTAS como ejemplo, la pantalla se ve de la siguiente manera:

El detalle usa este frame, la definición de la clase es:
Lista de campos
| Columna | Campo físico | Campo lógico | Observaciones |
|---|---|---|---|
| 1 | FGRUPO | Grupo | Código de agrupación. |
| 2 | FCUENTA | Cuenta | Código de cuenta asociada a la agrupación. |
Definición del frame

Solo necesita Instancia 1.
Con estas definiciones el frame transforma la tabla en una lista de checkboxes, marca las que estaban marcadas y finalmente, a pedido del master, arma los registros que hay que aplicar para que la tabla solo contenga los registros que están marcados en la pantalla.
Declaración
type
TTfvsDBClientFrameCheckList = class(TTfvsDBClientFrame)
Panel1: TPanel;
Panel3: TPanel;
PanelNAVEGADOR: TPanel;
DBNavigator1: TfvsDBNavigator;
Panel2: TPanel;
SpeedButton_OPCIONES: TfvsBotonOpciones;
prxListaCHECKS: TprxListView;
procedure DBNavigator1NavigatorClick(Sender: TDBNavigator; aButton: TNavigateBtn; aX, aY: Integer; var aHandled: Boolean);
private
FADOField: Tfva_campos_item;
FCheckedOffImage: Integer;
FCargarComandosCount: Integer;
FRefreshing: Boolean;
protected
procedure FieldMessage(var Message: TprxADODataSetMessage); message MSG_PRXADODATASETMESSAGE;
procedure CargarComandos;
procedure GuardarCambios(Sender: TObject);
procedure CancelarCambios(Sender: TObject; var aCloseForm: Boolean);
property ADOField: Tfva_campos_item read FADOField write FADOField;
property CheckedOffImage: Integer read FCheckedOffImage write FCheckedOffImage;
property CargarComandosCount: Integer read FCargarComandosCount write FCargarComandosCount;
property Refreshing: Boolean read FRefreshing write FRefreshing;
public
procedure OnFrameShow(Sender: TObject); override;
procedure ClassShow_BuildFrame(Sender: TObject); override;
function ClassShow_AgregarTablaMaster(aTabla: String): Boolean; override;
function ClassShow_AgregarControles: Boolean; override;
function ClassShow_Activate(aActivateDataSet: Boolean): Boolean; override;
procedure ClassShow_Activate_GetFilterCommands(aDataSet: TprxADODataSetEdit); override;
end;