Diferencia entre revisiones de «TTfvsCatalogoImportarForm»
(Página creada con «=Descripción= El objeto '''TTfvsCatalogoImportarForm''' (Importar catálogo) permite importar transacciones de catálogo originadas con TTfvsCatalogoExportarForm. miniaturadeimagen|no|Importar catálogo. =Identidad= Category:MANUAL/PROGRAMADOR Category:OBJETOS/REFRESCO *Ancestro: TfvsForm *Carpeta: C:\DevelopPrx\explorer *Archivo: fvsCatalogoImportarForm.pas») |
Sin resumen de edición |
||
Línea 2: | Línea 2: | ||
El objeto '''TTfvsCatalogoImportarForm''' (Importar catálogo) permite importar transacciones de catálogo originadas con [[TTfvsCatalogoExportarForm]]. | El objeto '''TTfvsCatalogoImportarForm''' (Importar catálogo) permite importar transacciones de catálogo originadas con [[TTfvsCatalogoExportarForm]]. | ||
La pantalla es: | |||
[[Archivo:20250529 1135 fvsCatalogoImportarForm.png|miniaturadeimagen|no|Importar catálogo.]] | [[Archivo:20250529 1135 fvsCatalogoImportarForm.png|miniaturadeimagen|no|Importar catálogo.]] | ||
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. | |||
=[[QUEESESTO/IDENTIDAD|Identidad]]= | =[[QUEESESTO/IDENTIDAD|Identidad]]= | ||
[[Category:MANUAL/PROGRAMADOR]] | [[Category:MANUAL/PROGRAMADOR]] | ||
Línea 9: | Línea 20: | ||
*Carpeta: C:\DevelopPrx\explorer | *Carpeta: C:\DevelopPrx\explorer | ||
*Archivo: fvsCatalogoImportarForm.pas | *Archivo: fvsCatalogoImportarForm.pas | ||
=Declaración= | |||
<pre> | |||
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; | |||
</pre> | |||
=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: | |||
*[[DEV REGISTRO|Log de desarrollo (prxdevlog)]]. | |||
*[[DEV REGISTRO/DETALLE|Log de desarrollo, detalle (prxdevlogD)]]. | |||
Usando: | |||
<pre> | |||
if devlog_component.SaveToDevlog(False) then | |||
; | |||
</pre> | |||
===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. |
Revisión actual - 16:51 29 may 2025
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.