Changeset: 104 - Terminado DIFF
- Inicio de MERGE
This commit is contained in:
BIN
foxbin2prg.pjt
BIN
foxbin2prg.pjt
Binary file not shown.
BIN
foxbin2prg.pjx
BIN
foxbin2prg.pjx
Binary file not shown.
252
foxbin2prg.prg
252
foxbin2prg.prg
@@ -85,10 +85,12 @@
|
|||||||
* tcDontShowErrors (v? IN ) '1' para NO mostrar errores con MESSAGEBOX
|
* tcDontShowErrors (v? IN ) '1' para NO mostrar errores con MESSAGEBOX
|
||||||
* tcDebug (v? IN ) '1' para depurar en el sitio donde ocurre el error (solo modo desarrollo)
|
* tcDebug (v? IN ) '1' para depurar en el sitio donde ocurre el error (solo modo desarrollo)
|
||||||
* tcDontShowProgress (v? IN ) '1' para NO mostrar la ventana de progreso
|
* tcDontShowProgress (v? IN ) '1' para NO mostrar la ventana de progreso
|
||||||
|
* tcOriginalFileName (v? IN ) Sirve para los casos en los que inputFile es un nombre temporal y se quiere generar
|
||||||
|
* el nombre correcto dentro de la versi<73>n texto (por ej: en los PJ2 y las cabeceras)
|
||||||
*
|
*
|
||||||
* Ej: DO FOXBIN2PRG.PRG WITH "C:\DESA\INTEGRACION\LIBRERIA.VCX"
|
* Ej: DO FOXBIN2PRG.PRG WITH "C:\DESA\INTEGRACION\LIBRERIA.VCX"
|
||||||
*---------------------------------------------------------------------------------------------------
|
*---------------------------------------------------------------------------------------------------
|
||||||
LPARAMETERS tc_InputFile, tcType_na, tcTextName_na, tlGenText_na, tcDontShowErrors, tcDebug, tcDontShowProgress
|
LPARAMETERS tc_InputFile, tcType_na, tcTextName_na, tlGenText_na, tcDontShowErrors, tcDebug, tcDontShowProgress, tcOriginalFileName
|
||||||
|
|
||||||
*-- Internacionalizaci<63>n / Internationalization
|
*-- Internacionalizaci<63>n / Internationalization
|
||||||
*-- Fin / End
|
*-- Fin / End
|
||||||
@@ -269,20 +271,14 @@ LPARAMETERS tc_InputFile, tcType_na, tcTextName_na, tlGenText_na, tcDontShowErro
|
|||||||
PUBLIC goCnv AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
|
PUBLIC goCnv AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
|
||||||
LOCAL lnResp
|
LOCAL lnResp
|
||||||
goCnv = CREATEOBJECT("c_foxbin2prg")
|
goCnv = CREATEOBJECT("c_foxbin2prg")
|
||||||
lnResp = goCnv.ejecutar( tc_InputFile, tcType_na, tcTextName_na, tlGenText_na, tcDontShowErrors, tcDebug, tcDontShowProgress )
|
lnResp = goCnv.ejecutar( tc_InputFile, tcType_na, tcTextName_na, tlGenText_na, tcDontShowErrors, tcDebug ;
|
||||||
|
, '', NULL, NULL, .F., tcOriginalFileName )
|
||||||
|
|
||||||
IF _VFP.STARTMODE = 0
|
IF _VFP.STARTMODE > 0
|
||||||
RETURN
|
QUIT
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
*-- Muy <20>til para procesos batch que capturan el c<>digo de error
|
RETURN lnResp
|
||||||
DECLARE ExitProcess in Win32API INTEGER ExitCode
|
|
||||||
IF NOT EMPTY(lnResp)
|
|
||||||
ExitProcess(1)
|
|
||||||
ENDIF
|
|
||||||
|
|
||||||
QUIT
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
*******************************************************************************************************************
|
*******************************************************************************************************************
|
||||||
@@ -318,6 +314,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM
|
|||||||
+ [<memberdata name="n_fb2prg_version" display="n_FB2PRG_Version"/>] ;
|
+ [<memberdata name="n_fb2prg_version" display="n_FB2PRG_Version"/>] ;
|
||||||
+ [<memberdata name="o_conversor" display="o_Conversor"/>] ;
|
+ [<memberdata name="o_conversor" display="o_Conversor"/>] ;
|
||||||
+ [<memberdata name="o_frm_avance" display="o_Frm_Avance"/>] ;
|
+ [<memberdata name="o_frm_avance" display="o_Frm_Avance"/>] ;
|
||||||
|
+ [<memberdata name="o_fso" display="o_FSO"/>] ;
|
||||||
+ [<memberdata name="writelog" display="writeLog"/>] ;
|
+ [<memberdata name="writelog" display="writeLog"/>] ;
|
||||||
+ [</VFPData>]
|
+ [</VFPData>]
|
||||||
|
|
||||||
@@ -340,6 +337,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM
|
|||||||
nClassTimeStamp = ''
|
nClassTimeStamp = ''
|
||||||
o_Conversor = NULL
|
o_Conversor = NULL
|
||||||
o_Frm_Avance = NULL
|
o_Frm_Avance = NULL
|
||||||
|
o_FSO = NULL
|
||||||
c_VC2 = 'VC2' && VCX
|
c_VC2 = 'VC2' && VCX
|
||||||
c_SC2 = 'SC2' && SCX
|
c_SC2 = 'SC2' && SCX
|
||||||
c_PJ2 = 'PJ2' && PJX
|
c_PJ2 = 'PJ2' && PJX
|
||||||
@@ -359,6 +357,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM
|
|||||||
SET TABLEPROMPT OFF
|
SET TABLEPROMPT OFF
|
||||||
THIS.c_Foxbin2prg_FullPath = SUBSTR( SYS(16), AT( 'C_FOXBIN2PRG.INIT', SYS(16) ) + LEN('C_FOXBIN2PRG.INIT') + 1 )
|
THIS.c_Foxbin2prg_FullPath = SUBSTR( SYS(16), AT( 'C_FOXBIN2PRG.INIT', SYS(16) ) + LEN('C_FOXBIN2PRG.INIT') + 1 )
|
||||||
THIS.c_CurDir = SYS(5) + CURDIR()
|
THIS.c_CurDir = SYS(5) + CURDIR()
|
||||||
|
THIS.o_FSO = NEWOBJECT("Scripting.FileSystemObject")
|
||||||
ENDPROC
|
ENDPROC
|
||||||
|
|
||||||
|
|
||||||
@@ -388,14 +387,17 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM
|
|||||||
* toModulo (?@ OUT) Referencia de objeto del m<>dulo generado (para Unit Testing)
|
* toModulo (?@ OUT) Referencia de objeto del m<>dulo generado (para Unit Testing)
|
||||||
* toEx (?@ OUT) Objeto con informaci<63>n del error
|
* toEx (?@ OUT) Objeto con informaci<63>n del error
|
||||||
* tlRelanzarError (?v IN ) Indica si el error debe relanzarse o no
|
* tlRelanzarError (?v IN ) Indica si el error debe relanzarse o no
|
||||||
|
* tcOriginalFileName (v? IN ) Sirve para los casos en los que inputFile es un nombre temporal y se quiere generar
|
||||||
|
* el nombre correcto dentro de la versi<73>n texto (por ej: en los PJ2 y las cabeceras)
|
||||||
*--------------------------------------------------------------------------------------------------------------
|
*--------------------------------------------------------------------------------------------------------------
|
||||||
LPARAMETERS tc_InputFile, tcType_na, tcTextName_na, tlGenText_na, tcDontShowErrors, tcDebug, tcDontShowProgress ;
|
LPARAMETERS tc_InputFile, tcType_na, tcTextName_na, tlGenText_na, tcDontShowErrors, tcDebug, tcDontShowProgress ;
|
||||||
, toModulo, toEx AS EXCEPTION, tlRelanzarError
|
, toModulo, toEx AS EXCEPTION, tlRelanzarError, tcOriginalFileName
|
||||||
|
|
||||||
TRY
|
TRY
|
||||||
LOCAL I, lcPath, lnResp, lcFileSpec, lcFile, laFiles(1,5), laConfig(1), lcConfigFile, lcExt ;
|
LOCAL I, lcPath, lnResp, lcFileSpec, lcFile, laFiles(1,5), laConfig(1), lcConfigFile, lcExt ;
|
||||||
, llExisteConfig, lcConfData, lnFileCount ;
|
, llExisteConfig, lcConfData, lnFileCount ;
|
||||||
, loEx AS EXCEPTION
|
, loEx AS EXCEPTION ;
|
||||||
|
, loFSO as Scripting.FileSystemObject
|
||||||
|
|
||||||
lnResp = 0
|
lnResp = 0
|
||||||
|
|
||||||
@@ -410,6 +412,8 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM
|
|||||||
SET ESCAPE OFF
|
SET ESCAPE OFF
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
|
loFSO = THIS.o_FSO
|
||||||
|
|
||||||
DO CASE
|
DO CASE
|
||||||
CASE VERSION(5) < 900
|
CASE VERSION(5) < 900
|
||||||
*-- '<27>FOXBIN2PRG es solo para Visual FoxPro 9.0!'
|
*-- '<27>FOXBIN2PRG es solo para Visual FoxPro 9.0!'
|
||||||
@@ -452,7 +456,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM
|
|||||||
DO CASE
|
DO CASE
|
||||||
CASE '*' $ JUSTEXT( tc_InputFile ) OR '?' $ JUSTEXT( tc_InputFile )
|
CASE '*' $ JUSTEXT( tc_InputFile ) OR '?' $ JUSTEXT( tc_InputFile )
|
||||||
IF THIS.l_ShowErrors
|
IF THIS.l_ShowErrors
|
||||||
MESSAGEBOX( ASTERISK_EXT_NOT_ALLOWED_LOC, 0+48+4096, 'FOXBIN2PRG: ERROR!!', 60000 )
|
MESSAGEBOX( ASTERISK_EXT_NOT_ALLOWED_LOC, 0+48+4096, 'FOXBIN2PRG: ERROR!!', 10000 )
|
||||||
ELSE
|
ELSE
|
||||||
ERROR ASTERISK_EXT_NOT_ALLOWED_LOC
|
ERROR ASTERISK_EXT_NOT_ALLOWED_LOC
|
||||||
ENDIF
|
ENDIF
|
||||||
@@ -473,7 +477,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM
|
|||||||
ENDIF
|
ENDIF
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
lnFileCount = ADIR( laFiles, lcFileSpec )
|
lnFileCount = ADIR( laFiles, lcFileSpec, '', 1 )
|
||||||
|
|
||||||
IF THIS.l_ShowProgress
|
IF THIS.l_ShowProgress
|
||||||
THIS.o_Frm_Avance.nMAX_VALUE = lnFileCount
|
THIS.o_Frm_Avance.nMAX_VALUE = lnFileCount
|
||||||
@@ -489,7 +493,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM
|
|||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
IF FILE( lcFile )
|
IF FILE( lcFile )
|
||||||
lnResp = THIS.Convertir( lcFile, toModulo, toEx, tlRelanzarError )
|
lnResp = THIS.Convertir( lcFile, toModulo, toEx, tlRelanzarError, tcOriginalFileName )
|
||||||
ENDIF
|
ENDIF
|
||||||
ENDFOR
|
ENDFOR
|
||||||
|
|
||||||
@@ -506,7 +510,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM
|
|||||||
THIS.writeLog( THIS.c_Foxbin2prg_FullPath + ' - FileSpec: ' + EVL(tc_InputFile,'') )
|
THIS.writeLog( THIS.c_Foxbin2prg_FullPath + ' - FileSpec: ' + EVL(tc_InputFile,'') )
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
lnResp = THIS.Convertir( tc_InputFile, toModulo, toEx, tlRelanzarError )
|
lnResp = THIS.Convertir( tc_InputFile, toModulo, toEx, tlRelanzarError, tcOriginalFileName )
|
||||||
ENDIF
|
ENDIF
|
||||||
ENDCASE
|
ENDCASE
|
||||||
|
|
||||||
@@ -531,8 +535,6 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM
|
|||||||
CD (JUSTPATH(THIS.c_CurDir))
|
CD (JUSTPATH(THIS.c_CurDir))
|
||||||
*SET PATH TO (lcPath)
|
*SET PATH TO (lcPath)
|
||||||
ENDTRY
|
ENDTRY
|
||||||
|
|
||||||
RETURN lnResp
|
|
||||||
ENDPROC
|
ENDPROC
|
||||||
|
|
||||||
|
|
||||||
@@ -543,108 +545,126 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM
|
|||||||
* toModulo (?@ OUT) Referencia de objeto del m<>dulo generado (para Unit Testing)
|
* toModulo (?@ OUT) Referencia de objeto del m<>dulo generado (para Unit Testing)
|
||||||
* toEx (?@ OUT) Objeto con informaci<63>n del error
|
* toEx (?@ OUT) Objeto con informaci<63>n del error
|
||||||
* tlRelanzarError (?v IN ) Indica si el error debe relanzarse o no
|
* tlRelanzarError (?v IN ) Indica si el error debe relanzarse o no
|
||||||
|
* tcOriginalFileName (v? IN ) Sirve para los casos en los que inputFile es un nombre temporal y se quiere generar
|
||||||
|
* el nombre correcto dentro de la versi<73>n texto (por ej: en los PJ2 y las cabeceras)
|
||||||
*--------------------------------------------------------------------------------------------------------------
|
*--------------------------------------------------------------------------------------------------------------
|
||||||
LPARAMETERS tc_InputFile, toModulo, toEx AS EXCEPTION, tlRelanzarError
|
LPARAMETERS tc_InputFile, toModulo, toEx AS EXCEPTION, tlRelanzarError, tcOriginalFileName
|
||||||
|
|
||||||
TRY
|
TRY
|
||||||
LOCAL lnCodError, lcErrorInfo
|
LOCAL lnCodError, lcErrorInfo, laDirFile(1,5), lcExtension ;
|
||||||
|
, loFSO as Scripting.FileSystemObject
|
||||||
lnCodError = 0
|
lnCodError = 0
|
||||||
THIS.c_InputFile = FULLPATH( tc_InputFile )
|
|
||||||
THIS.o_Conversor = NULL
|
WITH THIS AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
|
||||||
|
loFSO = THIS.o_FSO
|
||||||
|
.c_InputFile = FULLPATH( tc_InputFile )
|
||||||
|
IF ADIR( laDirFile, .c_InputFile, '', 1 ) = 0
|
||||||
|
ERROR 'No se encontr<74> el archivo [' + .c_InputFile + ']'
|
||||||
|
ENDIF
|
||||||
|
.c_InputFile = loFSO.GetAbsolutePathName( FORCEPATH( laDirFile(1,1), JUSTPATH(.c_InputFile) ) )
|
||||||
|
IF NOT EMPTY(tcOriginalFileName)
|
||||||
|
tcOriginalFileName = loFSO.GetAbsolutePathName( tcOriginalFileName )
|
||||||
|
ENDIF
|
||||||
|
THIS.writeLog( 'c_InputFile=' + .c_InputFile )
|
||||||
|
.o_Conversor = NULL
|
||||||
|
|
||||||
IF NOT FILE(THIS.c_InputFile)
|
IF NOT FILE(.c_InputFile)
|
||||||
ERROR C_FILE_DOESNT_EXIST_LOC + ' [' + THIS.c_InputFile + ']'
|
ERROR C_FILE_DOESNT_EXIST_LOC + ' [' + .c_InputFile + ']'
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
IF FILE( THIS.c_InputFile + '.ERR' )
|
IF FILE( .c_InputFile + '.ERR' )
|
||||||
TRY
|
TRY
|
||||||
ERASE ( THIS.c_InputFile + '.ERR' )
|
ERASE ( .c_InputFile + '.ERR' )
|
||||||
CATCH
|
CATCH
|
||||||
ENDTRY
|
ENDTRY
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
|
lcExtension = UPPER( JUSTEXT(.c_InputFile) )
|
||||||
|
|
||||||
DO CASE
|
DO CASE
|
||||||
CASE JUSTEXT(THIS.c_InputFile) = 'VCX'
|
CASE lcExtension = 'VCX'
|
||||||
THIS.c_OutputFile = FORCEEXT( THIS.c_InputFile, THIS.c_VC2 )
|
.c_OutputFile = FORCEEXT( .c_InputFile, .c_VC2 )
|
||||||
THIS.o_Conversor = CREATEOBJECT( 'c_conversor_vcx_a_prg' )
|
.o_Conversor = CREATEOBJECT( 'c_conversor_vcx_a_prg' )
|
||||||
|
|
||||||
CASE JUSTEXT(THIS.c_InputFile) = 'SCX'
|
CASE lcExtension = 'SCX'
|
||||||
THIS.c_OutputFile = FORCEEXT( THIS.c_InputFile, THIS.c_SC2 )
|
.c_OutputFile = FORCEEXT( .c_InputFile, .c_SC2 )
|
||||||
THIS.o_Conversor = CREATEOBJECT( 'c_conversor_scx_a_prg' )
|
.o_Conversor = CREATEOBJECT( 'c_conversor_scx_a_prg' )
|
||||||
|
|
||||||
CASE JUSTEXT(THIS.c_InputFile) = 'PJX'
|
CASE lcExtension = 'PJX'
|
||||||
THIS.c_OutputFile = FORCEEXT( THIS.c_InputFile, THIS.c_PJ2 )
|
.c_OutputFile = FORCEEXT( .c_InputFile, .c_PJ2 )
|
||||||
THIS.o_Conversor = CREATEOBJECT( 'c_conversor_pjx_a_prg' )
|
.o_Conversor = CREATEOBJECT( 'c_conversor_pjx_a_prg' )
|
||||||
|
|
||||||
CASE JUSTEXT(THIS.c_InputFile) = 'FRX'
|
CASE lcExtension = 'FRX'
|
||||||
THIS.c_OutputFile = FORCEEXT( THIS.c_InputFile, THIS.c_FR2 )
|
.c_OutputFile = FORCEEXT( .c_InputFile, .c_FR2 )
|
||||||
THIS.o_Conversor = CREATEOBJECT( 'c_conversor_frx_a_prg' )
|
.o_Conversor = CREATEOBJECT( 'c_conversor_frx_a_prg' )
|
||||||
|
|
||||||
CASE JUSTEXT(THIS.c_InputFile) = 'LBX'
|
CASE lcExtension = 'LBX'
|
||||||
THIS.c_OutputFile = FORCEEXT( THIS.c_InputFile, THIS.c_LB2 )
|
.c_OutputFile = FORCEEXT( .c_InputFile, .c_LB2 )
|
||||||
THIS.o_Conversor = CREATEOBJECT( 'c_conversor_frx_a_prg' )
|
.o_Conversor = CREATEOBJECT( 'c_conversor_frx_a_prg' )
|
||||||
|
|
||||||
CASE JUSTEXT(THIS.c_InputFile) = 'DBF'
|
CASE lcExtension = 'DBF'
|
||||||
THIS.c_OutputFile = FORCEEXT( THIS.c_InputFile, THIS.c_DB2 )
|
.c_OutputFile = FORCEEXT( .c_InputFile, .c_DB2 )
|
||||||
THIS.o_Conversor = CREATEOBJECT( 'c_conversor_dbf_a_prg' )
|
.o_Conversor = CREATEOBJECT( 'c_conversor_dbf_a_prg' )
|
||||||
|
|
||||||
CASE JUSTEXT(THIS.c_InputFile) = 'DBC'
|
CASE lcExtension = 'DBC'
|
||||||
THIS.c_OutputFile = FORCEEXT( THIS.c_InputFile, THIS.c_DC2 )
|
.c_OutputFile = FORCEEXT( .c_InputFile, .c_DC2 )
|
||||||
THIS.o_Conversor = CREATEOBJECT( 'c_conversor_dbc_a_prg' )
|
.o_Conversor = CREATEOBJECT( 'c_conversor_dbc_a_prg' )
|
||||||
|
|
||||||
CASE JUSTEXT(THIS.c_InputFile) = 'MNX'
|
CASE lcExtension = 'MNX'
|
||||||
THIS.c_OutputFile = FORCEEXT( THIS.c_InputFile, THIS.c_MN2 )
|
.c_OutputFile = FORCEEXT( .c_InputFile, .c_MN2 )
|
||||||
THIS.o_Conversor = CREATEOBJECT( 'c_conversor_mnx_a_prg' )
|
.o_Conversor = CREATEOBJECT( 'c_conversor_mnx_a_prg' )
|
||||||
|
|
||||||
CASE JUSTEXT(THIS.c_InputFile) = THIS.c_VC2
|
CASE lcExtension = .c_VC2
|
||||||
THIS.c_OutputFile = FORCEEXT( THIS.c_InputFile, 'VCX' )
|
.c_OutputFile = FORCEEXT( .c_InputFile, 'VCX' )
|
||||||
THIS.o_Conversor = CREATEOBJECT( 'c_conversor_prg_a_vcx' )
|
.o_Conversor = CREATEOBJECT( 'c_conversor_prg_a_vcx' )
|
||||||
|
|
||||||
CASE JUSTEXT(THIS.c_InputFile) = THIS.c_SC2
|
CASE lcExtension = .c_SC2
|
||||||
THIS.c_OutputFile = FORCEEXT( THIS.c_InputFile, 'SCX' )
|
.c_OutputFile = FORCEEXT( .c_InputFile, 'SCX' )
|
||||||
THIS.o_Conversor = CREATEOBJECT( 'c_conversor_prg_a_scx' )
|
.o_Conversor = CREATEOBJECT( 'c_conversor_prg_a_scx' )
|
||||||
|
|
||||||
CASE JUSTEXT(THIS.c_InputFile) = THIS.c_PJ2
|
CASE lcExtension = .c_PJ2
|
||||||
THIS.c_OutputFile = FORCEEXT( THIS.c_InputFile, 'PJX' )
|
.c_OutputFile = FORCEEXT( .c_InputFile, 'PJX' )
|
||||||
THIS.o_Conversor = CREATEOBJECT( 'c_conversor_prg_a_pjx' )
|
.o_Conversor = CREATEOBJECT( 'c_conversor_prg_a_pjx' )
|
||||||
|
|
||||||
CASE JUSTEXT(THIS.c_InputFile) = THIS.c_FR2
|
CASE lcExtension = .c_FR2
|
||||||
THIS.c_OutputFile = FORCEEXT( THIS.c_InputFile, 'FRX' )
|
.c_OutputFile = FORCEEXT( .c_InputFile, 'FRX' )
|
||||||
THIS.o_Conversor = CREATEOBJECT( 'c_conversor_prg_a_frx' )
|
.o_Conversor = CREATEOBJECT( 'c_conversor_prg_a_frx' )
|
||||||
|
|
||||||
CASE JUSTEXT(THIS.c_InputFile) = THIS.c_LB2
|
CASE lcExtension = .c_LB2
|
||||||
THIS.c_OutputFile = FORCEEXT( THIS.c_InputFile, 'LBX' )
|
.c_OutputFile = FORCEEXT( .c_InputFile, 'LBX' )
|
||||||
THIS.o_Conversor = CREATEOBJECT( 'c_conversor_prg_a_frx' )
|
.o_Conversor = CREATEOBJECT( 'c_conversor_prg_a_frx' )
|
||||||
|
|
||||||
CASE JUSTEXT(THIS.c_InputFile) = THIS.c_DB2
|
CASE lcExtension = .c_DB2
|
||||||
THIS.c_OutputFile = FORCEEXT( THIS.c_InputFile, 'DBF' )
|
.c_OutputFile = FORCEEXT( .c_InputFile, 'DBF' )
|
||||||
THIS.o_Conversor = CREATEOBJECT( 'c_conversor_prg_a_dbf' )
|
.o_Conversor = CREATEOBJECT( 'c_conversor_prg_a_dbf' )
|
||||||
|
|
||||||
CASE JUSTEXT(THIS.c_InputFile) = THIS.c_DC2
|
CASE lcExtension = .c_DC2
|
||||||
THIS.c_OutputFile = FORCEEXT( THIS.c_InputFile, 'DBC' )
|
.c_OutputFile = FORCEEXT( .c_InputFile, 'DBC' )
|
||||||
THIS.o_Conversor = CREATEOBJECT( 'c_conversor_prg_a_dbc' )
|
.o_Conversor = CREATEOBJECT( 'c_conversor_prg_a_dbc' )
|
||||||
|
|
||||||
CASE JUSTEXT(THIS.c_InputFile) = THIS.c_MN2
|
CASE lcExtension = .c_MN2
|
||||||
THIS.c_OutputFile = FORCEEXT( THIS.c_InputFile, 'MNX' )
|
.c_OutputFile = FORCEEXT( .c_InputFile, 'MNX' )
|
||||||
THIS.o_Conversor = CREATEOBJECT( 'c_conversor_prg_a_mnx' )
|
.o_Conversor = CREATEOBJECT( 'c_conversor_prg_a_mnx' )
|
||||||
|
|
||||||
OTHERWISE
|
OTHERWISE
|
||||||
ERROR 'El archivo [' + THIS.c_InputFile + '] no est<73> soportado'
|
ERROR 'El archivo [' + .c_InputFile + '] no est<73> soportado'
|
||||||
|
|
||||||
ENDCASE
|
ENDCASE
|
||||||
|
|
||||||
THIS.o_Conversor.c_InputFile = THIS.c_InputFile
|
.o_Conversor.c_InputFile = .c_InputFile
|
||||||
THIS.o_Conversor.c_OutputFile = THIS.c_OutputFile
|
.o_Conversor.c_OutputFile = .c_OutputFile
|
||||||
THIS.o_Conversor.c_LogFile = THIS.c_LogFile
|
.o_Conversor.c_LogFile = .c_LogFile
|
||||||
THIS.o_Conversor.l_Debug = THIS.l_Debug
|
.o_Conversor.l_Debug = .l_Debug
|
||||||
THIS.o_Conversor.l_Test = THIS.l_Test
|
.o_Conversor.l_Test = .l_Test
|
||||||
THIS.o_Conversor.n_FB2PRG_Version = THIS.n_FB2PRG_Version
|
.o_Conversor.n_FB2PRG_Version = .n_FB2PRG_Version
|
||||||
THIS.o_Conversor.l_MethodSort_Enabled = THIS.l_MethodSort_Enabled
|
.o_Conversor.l_MethodSort_Enabled = .l_MethodSort_Enabled
|
||||||
THIS.o_Conversor.l_PropSort_Enabled = THIS.l_PropSort_Enabled
|
.o_Conversor.l_PropSort_Enabled = .l_PropSort_Enabled
|
||||||
THIS.o_Conversor.l_ReportSort_Enabled = THIS.l_ReportSort_Enabled
|
.o_Conversor.l_ReportSort_Enabled = .l_ReportSort_Enabled
|
||||||
*--
|
.o_Conversor.c_OriginalFileName = tcOriginalFileName
|
||||||
THIS.o_Conversor.Convertir( @toModulo )
|
*--
|
||||||
THIS.o_Conversor = NULL
|
.o_Conversor.Convertir( @toModulo )
|
||||||
|
.o_Conversor = NULL
|
||||||
|
ENDWITH && THIS AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
|
||||||
|
|
||||||
CATCH TO toEx
|
CATCH TO toEx
|
||||||
lnCodError = toEx.ERRORNO
|
lnCodError = toEx.ERRORNO
|
||||||
@@ -662,11 +682,16 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM
|
|||||||
THIS.writeLog( lcErrorInfo )
|
THIS.writeLog( lcErrorInfo )
|
||||||
ENDIF
|
ENDIF
|
||||||
IF THIS.l_Debug AND THIS.l_ShowErrors
|
IF THIS.l_Debug AND THIS.l_ShowErrors
|
||||||
MESSAGEBOX( lcErrorInfo, 0+16+4096, 'FOXBIN2PRG: ERROR!!', 60000 )
|
MESSAGEBOX( lcErrorInfo, 0+16+4096, 'FOXBIN2PRG: ERROR!!', 10000 )
|
||||||
ENDIF
|
ENDIF
|
||||||
IF tlRelanzarError && Usado en Unit Testing
|
IF tlRelanzarError && Usado en Unit Testing
|
||||||
THROW
|
THROW
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
|
FINALLY
|
||||||
|
loFSO = NULL
|
||||||
|
THIS.o_FSO = NULL
|
||||||
|
|
||||||
ENDTRY
|
ENDTRY
|
||||||
|
|
||||||
RETURN lnCodError
|
RETURN lnCodError
|
||||||
@@ -799,6 +824,7 @@ DEFINE CLASS c_conversor_base AS SESSION
|
|||||||
+ [<memberdata name="c_curdir" display="c_CurDir"/>] ;
|
+ [<memberdata name="c_curdir" display="c_CurDir"/>] ;
|
||||||
+ [<memberdata name="c_inputfile" display="c_InputFile"/>] ;
|
+ [<memberdata name="c_inputfile" display="c_InputFile"/>] ;
|
||||||
+ [<memberdata name="c_logfile" display="c_LogFile"/>] ;
|
+ [<memberdata name="c_logfile" display="c_LogFile"/>] ;
|
||||||
|
+ [<memberdata name="c_originalfilename" display="c_OriginalFileName"/>] ;
|
||||||
+ [<memberdata name="c_outputfile" display="c_OutputFile"/>] ;
|
+ [<memberdata name="c_outputfile" display="c_OutputFile"/>] ;
|
||||||
+ [<memberdata name="c_type" display="c_Type"/>] ;
|
+ [<memberdata name="c_type" display="c_Type"/>] ;
|
||||||
+ [<memberdata name="l_debug" display="l_Debug"/>] ;
|
+ [<memberdata name="l_debug" display="l_Debug"/>] ;
|
||||||
@@ -823,6 +849,7 @@ DEFINE CLASS c_conversor_base AS SESSION
|
|||||||
l_MethodSort_Enabled = .T.
|
l_MethodSort_Enabled = .T.
|
||||||
l_PropSort_Enabled = .T.
|
l_PropSort_Enabled = .T.
|
||||||
l_ReportSort_Enabled = .T.
|
l_ReportSort_Enabled = .T.
|
||||||
|
c_OriginalFileName = ''
|
||||||
|
|
||||||
|
|
||||||
*******************************************************************************************************************
|
*******************************************************************************************************************
|
||||||
@@ -1154,16 +1181,13 @@ DEFINE CLASS c_conversor_base AS SESSION
|
|||||||
THIS.writeLog( C_BACKUP_OF_LOC + FORCEEXT(THIS.c_OutputFile,lcExt_1) + '/' + lcExt_2 + '/' + lcExt_3 )
|
THIS.writeLog( C_BACKUP_OF_LOC + FORCEEXT(THIS.c_OutputFile,lcExt_1) + '/' + lcExt_2 + '/' + lcExt_3 )
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
*COPY FILE ( FORCEEXT(THIS.c_OutputFile, lcExt_1) ) TO ( FORCEEXT(THIS.c_OutputFile, lcExt_1 + lcNext_Bak) )
|
|
||||||
RENAME ( FORCEEXT(THIS.c_OutputFile, lcExt_1) ) TO ( tcBakFile_1 )
|
RENAME ( FORCEEXT(THIS.c_OutputFile, lcExt_1) ) TO ( tcBakFile_1 )
|
||||||
|
|
||||||
IF NOT EMPTY(lcExt_2) AND FILE( FORCEEXT(THIS.c_OutputFile, lcExt_2) )
|
IF NOT EMPTY(lcExt_2) AND FILE( FORCEEXT(THIS.c_OutputFile, lcExt_2) )
|
||||||
*COPY FILE ( FORCEEXT(THIS.c_OutputFile, lcExt_2) ) TO ( FORCEEXT(THIS.c_OutputFile, lcExt_2 + lcNext_Bak) )
|
|
||||||
RENAME ( FORCEEXT(THIS.c_OutputFile, lcExt_2) ) TO ( tcBakFile_2 )
|
RENAME ( FORCEEXT(THIS.c_OutputFile, lcExt_2) ) TO ( tcBakFile_2 )
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
IF NOT EMPTY(lcExt_3) AND FILE( FORCEEXT(THIS.c_OutputFile, lcExt_3) )
|
IF NOT EMPTY(lcExt_3) AND FILE( FORCEEXT(THIS.c_OutputFile, lcExt_3) )
|
||||||
*COPY FILE ( FORCEEXT(THIS.c_OutputFile, lcExt_3) ) TO ( FORCEEXT(THIS.c_OutputFile, lcExt_3 + lcNext_Bak) )
|
|
||||||
RENAME ( FORCEEXT(THIS.c_OutputFile, lcExt_3) ) TO ( tcBakFile_3 )
|
RENAME ( FORCEEXT(THIS.c_OutputFile, lcExt_3) ) TO ( tcBakFile_3 )
|
||||||
ENDIF
|
ENDIF
|
||||||
ENDIF
|
ENDIF
|
||||||
@@ -7107,7 +7131,7 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base
|
|||||||
* (ES) AUTOGENERADO - <20><>ATENCI<43>N!! - <20><>NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!!
|
* (ES) AUTOGENERADO - <20><>ATENCI<43>N!! - <20><>NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!!
|
||||||
* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!!
|
* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!!
|
||||||
*--------------------------------------------------------------------------------------------------------------------------------------------------------
|
*--------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
<<C_FB2PRG_META_I>> Version="<<TRANSFORM(THIS.n_FB2PRG_Version)>>" SourceFile="<<THIS.c_InputFile>>" Generated="<<TTOC(DATETIME())>>" <<C_FB2PRG_META_F>> (Para binarios Visual FoxPro 9.0 solamente)
|
<<C_FB2PRG_META_I>> Version="<<TRANSFORM(THIS.n_FB2PRG_Version)>>" SourceFile="<<EVL( THIS.c_OriginalFileName, THIS.c_InputFile )>>" Generated="<<TTOC(DATETIME())>>" <<C_FB2PRG_META_F>> (Solo para binarios VFP 9 / Only for VFP 9 binaries)
|
||||||
*
|
*
|
||||||
ENDTEXT
|
ENDTEXT
|
||||||
ENDPROC
|
ENDPROC
|
||||||
@@ -7893,19 +7917,6 @@ DEFINE CLASS c_conversor_pjx_a_prg AS c_conversor_bin_a_prg
|
|||||||
#ENDIF
|
#ENDIF
|
||||||
|
|
||||||
|
|
||||||
PROCEDURE write_PROGRAM_HEADER
|
|
||||||
*-- Cabecera del PRG e inicio de DEF_CLASS
|
|
||||||
TEXT TO C_FB2PRG_CODE ADDITIVE TEXTMERGE NOSHOW FLAGS 1 PRETEXT 1+2
|
|
||||||
*--------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
||||||
* (ES) AUTOGENERADO - PARA MANTENER INFORMACI<43>N DE SERVIDORES DLL USAR "FOXBIN2PRG", SI NO IMPORTAN, EJECUTAR DIRECTAMENTE PARA REGENERAR EL PROYECTO.
|
|
||||||
* (EN) AUTOGENERATED - TO KEEP DLL SERVER INFORMATION USE "FOXBIN2PRG", OTHERWISE YOU CAN EXECUTE DIRECTLY TO REGENERATE PROJECT.
|
|
||||||
*--------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
||||||
<<C_FB2PRG_META_I>> Version="<<TRANSFORM(THIS.n_FB2PRG_Version)>>" SourceFile="<<THIS.c_InputFile>>" Generated="<<TTOC(DATETIME())>>" <<C_FB2PRG_META_F>> (Para binarios Visual FoxPro 9.0 solamente)
|
|
||||||
*
|
|
||||||
ENDTEXT
|
|
||||||
ENDPROC
|
|
||||||
|
|
||||||
|
|
||||||
PROCEDURE Convertir
|
PROCEDURE Convertir
|
||||||
*---------------------------------------------------------------------------------------------------
|
*---------------------------------------------------------------------------------------------------
|
||||||
* PAR<41>METROS: !=Obligatorio, ?=Opcional, @=Pasar por referencia, v=Pasar por valor (IN/OUT)
|
* PAR<41>METROS: !=Obligatorio, ?=Opcional, @=Pasar por referencia, v=Pasar por valor (IN/OUT)
|
||||||
@@ -7967,9 +7978,6 @@ DEFINE CLASS c_conversor_pjx_a_prg AS c_conversor_bin_a_prg
|
|||||||
SCATTER FIELDS NAME,TYPE,EXCLUDE,COMMENTS,CPID,TIMESTAMP,ID,OBJREV MEMO NAME loReg
|
SCATTER FIELDS NAME,TYPE,EXCLUDE,COMMENTS,CPID,TIMESTAMP,ID,OBJREV MEMO NAME loReg
|
||||||
loReg.NAME = LOWER( ALLTRIM( loReg.NAME, 0, ' ', CHR(0) ) )
|
loReg.NAME = LOWER( ALLTRIM( loReg.NAME, 0, ' ', CHR(0) ) )
|
||||||
loReg.COMMENTS = CHRTRAN( ALLTRIM( loReg.COMMENTS, 0, ' ', CHR(0) ), ['], ["] )
|
loReg.COMMENTS = CHRTRAN( ALLTRIM( loReg.COMMENTS, 0, ' ', CHR(0) ), ['], ["] )
|
||||||
|
|
||||||
*-- TIP: Por alg<6C>n motivo el NAME puede estar vac<61>o. Asigno uno temporal que muestre el error.
|
|
||||||
loReg.NAME = EVL(loReg.NAME, 'BadName_FixIt')
|
|
||||||
|
|
||||||
TRY
|
TRY
|
||||||
loProject.ADD( loReg, loReg.NAME )
|
loProject.ADD( loReg, loReg.NAME )
|
||||||
@@ -8013,7 +8021,7 @@ DEFINE CLASS c_conversor_pjx_a_prg AS c_conversor_bin_a_prg
|
|||||||
ENDFOR
|
ENDFOR
|
||||||
<<>>
|
<<>>
|
||||||
STRTOFILE( '', '__newproject.f2b' )
|
STRTOFILE( '', '__newproject.f2b' )
|
||||||
BUILD PROJECT <<JUSTFNAME( THIS.c_inputFile )>> FROM '__newproject.f2b'
|
BUILD PROJECT <<JUSTFNAME( EVL( THIS.c_OriginalFileName, THIS.c_InputFile ) )>> FROM '__newproject.f2b'
|
||||||
ENDTEXT
|
ENDTEXT
|
||||||
|
|
||||||
|
|
||||||
@@ -8023,9 +8031,9 @@ DEFINE CLASS c_conversor_pjx_a_prg AS c_conversor_bin_a_prg
|
|||||||
<<>> loProj.Close()
|
<<>> loProj.Close()
|
||||||
ENDFOR
|
ENDFOR
|
||||||
<<>>
|
<<>>
|
||||||
MODIFY PROJECT '<<JUSTFNAME( THIS.c_inputFile )>>' NOWAIT NOSHOW NOPROJECTHOOK
|
MODIFY PROJECT '<<JUSTFNAME( EVL( THIS.c_OriginalFileName, THIS.c_InputFile ) )>>' NOWAIT NOSHOW NOPROJECTHOOK
|
||||||
<<>>
|
<<>>
|
||||||
loProject = _VFP.Projects('<<JUSTFNAME( THIS.c_inputFile )>>')
|
loProject = _VFP.Projects('<<JUSTFNAME( EVL( THIS.c_OriginalFileName, THIS.c_InputFile ) )>>')
|
||||||
<<>>
|
<<>>
|
||||||
WITH loProject.FILES
|
WITH loProject.FILES
|
||||||
ENDTEXT
|
ENDTEXT
|
||||||
@@ -8149,7 +8157,7 @@ DEFINE CLASS c_conversor_pjx_a_prg AS c_conversor_bin_a_prg
|
|||||||
* _VFP.Projects('<<JUSTFNAME( THIS.c_inputFile )>>').FILES('__newproject.f2b').Remove()
|
* _VFP.Projects('<<JUSTFNAME( THIS.c_inputFile )>>').FILES('__newproject.f2b').Remove()
|
||||||
TEXT TO C_FB2PRG_CODE ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
|
TEXT TO C_FB2PRG_CODE ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
|
||||||
<<>>
|
<<>>
|
||||||
_VFP.Projects('<<JUSTFNAME( THIS.c_inputFile )>>').Close()
|
_VFP.Projects('<<JUSTFNAME( EVL( THIS.c_OriginalFileName, THIS.c_InputFile ) )>>').Close()
|
||||||
ENDTEXT
|
ENDTEXT
|
||||||
|
|
||||||
*-- Restauro Directorio de inicio
|
*-- Restauro Directorio de inicio
|
||||||
|
|||||||
Reference in New Issue
Block a user