TTfvsCatalogoImportarForm
Descripción
El objeto TTfvsCatalogoImportarForm (Importar catálogo) permite importar transacciones de catálogo originadas con TTfvsCatalogoExportarForm.
La pantalla es:

En el form tenemos que indicar:
- Desde qué carpeta queremos importar los archivos con las transacciones, debe ser la misma carpeta a la que fueron exportados. En este caso la carpeta es C:\pragmaclient\Devlog.
- El campo Evaluación indicará cuántas transacciones hay para importar, cosa que ocurrirá cuando presionemos el botón Importar.
- Cuando presionemos el botón Aplicar se aplicarán los cambios a la base de datos.
Debe quedar claro que el importar las transacciones no las aplica a la base de datos, solo las guarda para que sean aplicadas posteriormente.
Este formulario mostrará otro con un detalle de las transacciones que se están aplicando.
Identidad
- Ancestro: TfvsForm
- Carpeta: C:\DevelopPrx\explorer
- Archivo: fvsCatalogoImportarForm.pas
Declaración
const
fvs_caption_importar = 'Importar';
fvs_caption_aplicar = 'Aplicar';
type
TTfvsCatalogoImportarForm = class(TTfvsForm)
StatusBar1: TStatusBar;
PageControl1: TPageControl;
TabSheet_Importacion: TTabSheet;
Panel1: TPanel;
Bevel1: TBevel;
Panel_GUARDAR: TPanel;
Panel5: TPanel;
Panel6: TPanel;
ProgressBar_GUARDAR: TProgressBar;
Panel_APLICAR: TPanel;
Button_APLICAR: TButton;
Panel2: TPanel;
Panel3: TPanel;
Panel7: TPanel;
Edit_SeleccionarCarpeta: TEdit;
Panel4: TPanel;
Button_SeleccionarCarpeta: TButton;
Panel10: TPanel;
Panel11: TPanel;
Panel12: TPanel;
ProgressBar_Evaluacion: TProgressBar;
Panel13: TPanel;
Button_IMPORTAR: TButton;
TabSheet_Catálogos: TTabSheet;
Panel8: TPanel;
Memo_Catalogos: TMemo;
SpeedButton_PENDIENTES_APLICACION: TprxSpeedButton;
procedure FormShow(Sender: TObject); //override;
procedure Button_SeleccionarCarpetaClick(Sender: TObject); //override;
procedure Button_IMPORTARClick(Sender: TObject);
procedure Button_APLICARClick(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure Edit_SeleccionarCarpetaChange(Sender: TObject);
procedure SpeedButton_PENDIENTES_APLICACIONClick(Sender: TObject);
private
FQueryLista: TprxADOQuery;
Fdevlog_component: Tfva_dropbox_bandeja_devlog;
Fguardando_flag: Boolean;
Faplicando_flag: Boolean;
FFolderName: String;
FFolderNameOk: Boolean;
FRecordCount_Importar: Integer;
FRecordCount_Aplicar: Integer;
FRefreshing: Boolean;
FListaIdentificadores: TStringList;
protected
procedure SetFolderNameOk(aValue: Boolean);
procedure SetRecordCount_Importar(aValue: Integer);
procedure SetRecordCount_Aplicar(aValue: Integer);
procedure show_progress(a_bar: TProgressBar; a_index: Integer; a_count: Integer);
function BuscarIdentificadoresEnCarpeta: Integer;
property devlog_component: Tfva_dropbox_bandeja_devlog read Fdevlog_component write Fdevlog_component;
property guardando_flag: Boolean read Fguardando_flag write Fguardando_flag;
property aplicando_flag: Boolean read Faplicando_flag write Faplicando_flag;
property FolderName: String read FFolderName write FFolderName;
property FolderNameOk: Boolean read FFolderNameOk write SetFolderNameOk;
property RecordCount_Importar: Integer read FRecordCount_Importar write SetRecordCount_Importar;
property RecordCount_Aplicar: Integer read FRecordCount_Aplicar write SetRecordCount_Aplicar;
property QueryLista: TprxADOQuery read FQueryLista write FQueryLista;
property ListaIdentificadores: TStringList read FListaIdentificadores write FListaIdentificadores;
property Refreshing: Boolean read FRefreshing write FRefreshing;
public
end;
Implementación
function BuscarIdentificadoresEnCarpeta: Integer
Dada la carpeta carga la lista de archivos y arma una lista con aquellos que no existen en la BD, la carga de archivos se hace por catálogo y de esa manera se informa el progreso.
procedure Button_IMPORTARClick(Sender: TObject)
Importa los archivos generados en el paso anterior y los guarda en:
Usando:
if devlog_component.SaveToDevlog(False) then ;
procedure Button_APLICARClick(Sender: TObject)
Aplica los cambios pendientes usando TTfvsCatalogoRefrescarForm.
procedure SpeedButton_PENDIENTES_APLICACIONClick(Sender: TObject)
Abre un form TTprxSelectFromGridForm y permite ver una lista de transacciones pendientes de aplicar, tiene dos consultas: una resumida y otra detallada.
Uso
Solo se usa desde TfvsClassCatalogos.menuCatalogoImportarClick.