TTfvsDBClientFrameMasterClases

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

Descripción

El frame TTfvsDBClientFrameMasterClases (Implementa ficha de clases) implementa un frame para editar las clases que hemos definido en Clases. Este frame va a crear lo necesario para editar el registro solicitado, y si esa clase tiene detalles va a crearlos también.

Según lo documentado en DEV ETIQUETAS/FRAME EDICION este frame correspondería a la instancia 2.

Imagen del frame en diseño

En diseño el frame se ve de la siguiente manera:

Frame en diseño.

Sus partes son:

  • Panel superior: normalmente usado con controles de edición en formato de ficha, puede tener hasta dos paneles (el izquierdo y el derecho).
  • Área para detalles: se crean las pestañas para los detalles de la clase master (si los hubiere).
  • Panel de comentarios: normalmente contiene el control de edición de comentarios, pero puede tener otros controles de edición.
  • Panel de totales: normalmente muestra los totales del comprobante.

Finalmente, abajo a derecha están los botones de aplicar y de cancelar. El botón Button1 debe ignorarse, se usó para una prueba y nunca fue eliminado, no es visible en rntime.

Imagen del frame en runtime

Advertencia:

 - AGREGAR IMÁGEN EN RUNTIME, FCCAB pCATALOGO.

Declaración

const
  TTAplicarText = 'Aplicar';
  TTCancelarText = 'Cancelar';

type
  TTfvsDBClientFrameMasterClases = class(TTfvsDBClientFrame)
    PanelBASE: TPanel;
    PanelCABECERA: TPanel;
    PanelPIE: TPanel;
    SplitterCENTRAL: TSplitter;
    PopupMenu1: TPopupMenu;
    PanelCENTRAL: TPanel;
    SplitterPIE: TSplitter;
    PageControlDETALLES: TPageControl;
    PanelBOTONES_PIE: TPanel;
    ButtonAPLICAR: TButton;
    ButtonCANCELAR: TButton;
    StatusBar1: TStatusBar;
    PanelPIE_Comentarios: TPanel;
    Splitter_PanelPIE_Vertical: TSplitter;
    PanelPIE_Totales: TPanel;
    Panel5: TPanel;
    Panel1: TPanel;
    prxScrollBox_Comentarios: TprxScrollBox;
    prxScrollBox_Totales: TprxScrollBox;
    Button1: TButton;
    Action_INSERT_Master: TAction;
    Action_EDIT_Master: TAction;
    Action_POST_Master: TAction;
    Action_CANCEL_Master: TAction;
    Action_DELETE_Master: TAction;
    Action_INSERT_Detail: TAction;
    Action_EDIT_Detail: TAction;
    Action_POST_Detail: TAction;
    Action_CANCEL_Detail: TAction;
    Action_DELETE_Detail: TAction;
    Label_wflFIRMASX: TLabel;
    procedure prxADODataSetEdit1ppOnShowFieldHint(Sender: TprxADODataSet; aCampo, aAtributo: String; aEnteros, aDecimales: Integer; aRequerido: Boolean; aIndicaciones: String; aConstraint: String);
    procedure Button1Click(Sender: TObject);
    procedure PageControlDETALLESChange(Sender: TObject);
    procedure OnExecute_INSERT_Master(Sender: TObject);
    procedure OnExecute_EDIT_Master(Sender: TObject);
    procedure OnExecute_POST_Master(Sender: TObject);
    procedure OnExecute_CANCEL_Master(Sender: TObject);
    procedure OnExecute_DELETE_Master(Sender: TObject);
    procedure OnExecute_REFRESH_Master(Sender: TObject);
    procedure OnExecute_INSERT_Detail(Sender: TObject);
    procedure OnExecute_EDIT_Detail(Sender: TObject);
    procedure OnExecute_DELETE_Detail(Sender: TObject);
    procedure OnExecute_POST_Detail(Sender: TObject);
  private
    FUsaPanelCENTRAL: Boolean;
    FUsaPanelPIE: Boolean;
    FUsaPanelPIE_Totales: Boolean;

    FPanelCABECERA_ClassShow_Frame: TTfvsFrame;
  protected
    procedure   SetDataSet(aValue: TprxADODataSetEdit); override;
    procedure   FieldMessage(var Message: TprxADODataSetMessage); message MSG_PRXADODATASETMESSAGE;

    procedure   UsaPanelCENTRALSet(aValue: Boolean);
    function    UsaPanelCENTRALGet: Boolean;

    procedure   UsaPanelPIESet(aValue: Boolean);
    function    UsaPanelPIEGet: Boolean;

    procedure   UsaPanelPIE_Totales_Set(aValue: Boolean);
    function    UsaPanelPIE_Totales_Get: Boolean;

    procedure   ClassShow_BuildFrame_ArmaTab_Especial(aTabName: String);

    procedure   ClassShow_BuildFrame_PanelesAlPie(aPanelName: String; aScrollBox: TprxScrollBox);

    function    OnExecute_Detail_Select_Frame(var aFrame: TTfvsDBClientFrame): Boolean;

    property    UsaPanelCENTRAL: Boolean read UsaPanelCENTRALGet write UsaPanelCENTRALSet;
    property    UsaPanelPIE: Boolean read UsaPanelPIEGet write UsaPanelPIESet;
    property    UsaPanelPIE_Totales: Boolean read UsaPanelPIE_Totales_Get write UsaPanelPIE_Totales_Set;

    property    PanelCABECERA_ClassShow_Frame: TTfvsFrame read FPanelCABECERA_ClassShow_Frame write FPanelCABECERA_ClassShow_Frame;
  public
    constructor Create(AOwner: TComponent); override;
    destructor  Destroy; override;
    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_CloseFrame(Sender: TObject); override;
  end;

Implementación

Identidad

  • Ancestro: TTfvsDBClientFrame
  • Carpeta: C:\DevelopPrx\frames
  • Archivo: fvsDBClientFrameMasterClases.pas