- Optimizaciones varias

This commit is contained in:
fdbozzo
2015-04-09 20:35:07 +02:00
parent 9ce05b26f5
commit 49a9214df6

View File

@@ -1807,10 +1807,8 @@ DEFINE CLASS c_foxbin2prg AS SESSION
CASE LEFT( laConfig(I), 9 ) == LOWER('Language:') CASE LEFT( laConfig(I), 9 ) == LOWER('Language:')
*-- CASO ESPECIAL: El lenguaje no se guarda en lo_CFG, porque es un seteo Global. *-- CASO ESPECIAL: El lenguaje no se guarda en lo_CFG, porque es un seteo Global.
lcValue = ALLTRIM( SUBSTR( laConfig(I), 10 ) ) lcValue = ALLTRIM( SUBSTR( laConfig(I), 10 ) )
IF .T. .ChangeLanguage(lcValue)
.ChangeLanguage(lcValue) .writeLog( C_TAB + JUSTFNAME(lcConfigFile) + ' > Language: ' + TRANSFORM(lcValue) + ' (' + .c_Language + ')' )
.writeLog( C_TAB + JUSTFNAME(lcConfigFile) + ' > Language: ' + TRANSFORM(lcValue) + ' (' + .c_Language + ')' )
ENDIF
CASE LEFT( laConfig(I), 23 ) == LOWER('PJX_Conversion_Support:') CASE LEFT( laConfig(I), 23 ) == LOWER('PJX_Conversion_Support:')
lcValue = ALLTRIM( SUBSTR( laConfig(I), 24 ) ) lcValue = ALLTRIM( SUBSTR( laConfig(I), 24 ) )
@@ -2026,7 +2024,8 @@ DEFINE CLASS c_foxbin2prg AS SESSION
FSEEK( lnHandle2, 0, 0 ) FSEEK( lnHandle2, 0, 0 )
DO WHILE NOT ( FEOF(lnHandle1) OR FEOF(lnHandle2) ) DO WHILE NOT ( FEOF(lnHandle1) OR FEOF(lnHandle2) )
IF NOT SYS( 2007, FREAD( lnHandle1, lnChunkSize ), -1, 1 ) == SYS( 2007, FREAD( lnHandle2, lnChunkSize ), -1, 1 ) THEN *IF NOT SYS( 2007, FREAD( lnHandle1, lnChunkSize ), -1, 1 ) == SYS( 2007, FREAD( lnHandle2, lnChunkSize ), -1, 1 ) THEN
IF NOT FREAD( lnHandle1, lnChunkSize ) == FREAD( lnHandle2, lnChunkSize ) THEN
lnComparacion = 0 && Son distintos lnComparacion = 0 && Son distintos
EXIT EXIT
ENDIF ENDIF
@@ -2257,20 +2256,20 @@ DEFINE CLASS c_foxbin2prg AS SESSION
.writeLog( loLang.C_MAIN_EXECUTION_LOC, 2 ) .writeLog( loLang.C_MAIN_EXECUTION_LOC, 2 )
.writeLog( REPLICATE( '*', 100 ) ) .writeLog( REPLICATE( '*', 100 ) )
.writeLog( '> ' + loLang.C_EXTERNAL_PARAMETERS_LOC + ':' ) .writeLog( '> ' + loLang.C_EXTERNAL_PARAMETERS_LOC + ':' )
.writeLog( C_TAB + 'tc_InputFile: ' + TRANSFORM( EVL(tc_InputFile, '(empty) -> Will use Default' ) ) ) .writeLog( C_TAB + 'tc_InputFile: ' + TRANSFORM( EVL(tc_InputFile, '(empty) -> Will use Default [' + .c_InputFile + ']' ) ) )
.writeLog( C_TAB + 'tcType: ' + TRANSFORM( EVL(tcType, '(empty) -> Will use Default' ) ) ) .writeLog( C_TAB + 'tcType: ' + TRANSFORM( EVL(tcType, '(empty)' ) ) )
.writeLog( C_TAB + 'tcTextName: ' + TRANSFORM( EVL(tcTextName, '(empty) -> Will use Default' ) ) ) .writeLog( C_TAB + 'tcTextName: ' + TRANSFORM( EVL(tcTextName, '(empty)' ) ) )
.writeLog( C_TAB + 'tlGenText: ' + TRANSFORM( EVL(tlGenText, '(empty) -> Will use Default' ) ) ) .writeLog( C_TAB + 'tlGenText: ' + TRANSFORM( EVL(tlGenText, '(empty)' ) ) )
.writeLog( C_TAB + 'tcDontShowErrors: ' + TRANSFORM( EVL(tcDontShowErrors, '(empty) -> Will use Default' ) ) ) .writeLog( C_TAB + 'tcDontShowErrors: ' + TRANSFORM( EVL(tcDontShowErrors, '(empty) -> Will use Default [' + TRANSFORM(.l_ShowErrors) + ']' ) ) )
.writeLog( C_TAB + 'tcDebug: ' + TRANSFORM( EVL(tcDebug, '(empty) -> Will use Default' ) ) ) .writeLog( C_TAB + 'tcDebug: ' + TRANSFORM( EVL(tcDebug, '(empty) -> Will use Default [' + TRANSFORM(.n_Debug) + ']' ) ) )
.writeLog( C_TAB + 'tcDontShowProgress: ' + TRANSFORM( EVL(tcDontShowProgress, '(empty) -> Will use Default' ) ) ) .writeLog( C_TAB + 'tcDontShowProgress: ' + TRANSFORM( EVL(tcDontShowProgress, '(empty) -> Will use Default [' + TRANSFORM(.n_ShowProgressbar) + ']' ) ) )
.writeLog( C_TAB + 'tlRelanzarError: ' + TRANSFORM( EVL(tlRelanzarError, '(empty) -> Will use Default' ) ) ) .writeLog( C_TAB + 'tlRelanzarError: ' + TRANSFORM( EVL(tlRelanzarError, '(empty)' ) ) )
.writeLog( C_TAB + 'tcOriginalFileName: ' + TRANSFORM( EVL(tcOriginalFileName, '(empty) -> Will use Default' ) ) ) .writeLog( C_TAB + 'tcOriginalFileName: ' + TRANSFORM( EVL(tcOriginalFileName, '(empty) -> Will use Default [' + .c_OriginalFileName + ']' ) ) )
.writeLog( C_TAB + 'tcRecompile: ' + TRANSFORM( EVL(tcRecompile, '(empty) -> Will use Default' ) ) ) .writeLog( C_TAB + 'tcRecompile: ' + TRANSFORM( EVL(tcRecompile, '(empty) -> Will use Default [' + .c_Recompile + ']' ) ) )
.writeLog( C_TAB + 'tcNoTimestamps: ' + TRANSFORM( EVL(tcNoTimestamps, '(empty) -> Will use Default' ) ) ) .writeLog( C_TAB + 'tcNoTimestamps: ' + TRANSFORM( EVL(tcNoTimestamps, '(empty) -> Will use Default [' + TRANSFORM(.l_NoTimestamps) + ']' ) ) )
.writeLog( C_TAB + 'tcBackupLevels: ' + TRANSFORM( EVL(tcBackupLevels, '(empty) -> Will use Default' ) ) ) .writeLog( C_TAB + 'tcBackupLevels: ' + TRANSFORM( EVL(tcBackupLevels, '(empty) -> Will use Default [' + TRANSFORM(.n_ExtraBackupLevels) + ']' ) ) )
.writeLog( C_TAB + 'tcClearUniqueID: ' + TRANSFORM( EVL(tcClearUniqueID, '(empty) -> Will use Default' ) ) ) .writeLog( C_TAB + 'tcClearUniqueID: ' + TRANSFORM( EVL(tcClearUniqueID, '(empty) -> Will use Default [' + TRANSFORM(.l_ClearUniqueID) + ']' ) ) )
.writeLog( C_TAB + 'tcOptimizeByFilestamp: ' + TRANSFORM( EVL(tcOptimizeByFilestamp, '(empty) -> Will use Default' ) ) ) .writeLog( C_TAB + 'tcOptimizeByFilestamp: ' + TRANSFORM( EVL(tcOptimizeByFilestamp, '(empty) -> Will use Default [' + TRANSFORM(.l_OptimizeByFilestamp) + ']' ) ) )
.writeLog( ) .writeLog( )
*-- ARCHIVO DE CONFIGURACI<43>N PRINCIPAL *-- ARCHIVO DE CONFIGURACI<43>N PRINCIPAL
@@ -2940,6 +2939,7 @@ DEFINE CLASS c_foxbin2prg AS SESSION
lcForceAttribs = '+N' lcForceAttribs = '+N'
.c_InputFile = FULLPATH( tc_InputFile ) .c_InputFile = FULLPATH( tc_InputFile )
lcExtension = UPPER( JUSTEXT(.c_InputFile) ) lcExtension = UPPER( JUSTEXT(.c_InputFile) )
.writeLog( REPLICATE( '*', 100 ) ) .writeLog( REPLICATE( '*', 100 ) )
.writeLog( 'CONVERSION PROCESS', 2 ) .writeLog( 'CONVERSION PROCESS', 2 )
.writeLog( REPLICATE( '*', 100 ) ) .writeLog( REPLICATE( '*', 100 ) )
@@ -3243,12 +3243,7 @@ DEFINE CLASS c_foxbin2prg AS SESSION
.writeErrorLog( loConversor.c_TextErr ) .writeErrorLog( loConversor.c_TextErr )
.writeErrorLog( ) .writeErrorLog( )
ENDIF ENDIF
ELSE ENDCASE
*-- Optimizado: El Origen es anterior al Destino - No hace falta regenerar
*.writeLog( '> El archivo de salida [<<THIS.c_OutputFile>>] no se regenera por ser m<>s nuevo que el de entrada.' )
.writeLog( C_TAB + C_TAB + '* ' + TEXTMERGE(loLang.C_OUTPUTFILE_NEWER_THAN_INPUTFILE_LOC) )
ENDIF
.normalizarCapitalizacionArchivos() .normalizarCapitalizacionArchivos()
ENDWITH && THIS AS c_foxbin2prg OF 'FOXBIN2PRG.PRG' ENDWITH && THIS AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
@@ -3695,20 +3690,16 @@ DEFINE CLASS c_foxbin2prg AS SESSION
TRY TRY
WITH THIS AS c_foxbin2prg OF 'FOXBIN2PRG.PRG' WITH THIS AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
IF EVL(tnTimeStamp,0) = 1 THEN *-- Seg<65>n el valor de nTimestamp:
*-- Format: Timestamp__Text *-- 0 = Sin timestamp
.c_TextErr = .c_TextErr + TTOC(DATETIME(),3) + ' ' *-- 1 = Timestamp por delante
ENDIF *-- 2 = Timestamp por detr<74>s
.c_TextErr = .c_TextErr ;
+ IIF( EVL(tnTimeStamp,0) = 1, TTOC(DATETIME(),3) + ' ', '' ) ;
+ EVL(tcText,'') ;
+ IIF( EVL(tnTimeStamp,0) = 2, ' ' + TTOC(DATETIME(),3), '' ) ;
+ CR_LF
*-- Format: Text
.c_TextErr = .c_TextErr + EVL(tcText,'')
IF EVL(tnTimeStamp,0) = 2 THEN
*-- Format: Text__Timestamp
.c_TextErr = .c_TextErr + ' ' + TTOC(DATETIME(),3)
ENDIF
.c_TextErr = .c_TextErr + CR_LF
.errOut(tcText) .errOut(tcText)
.l_Error = .T. .l_Error = .T.
ENDWITH ENDWITH
@@ -3733,20 +3724,15 @@ DEFINE CLASS c_foxbin2prg AS SESSION
TRY TRY
WITH THIS AS c_foxbin2prg OF 'FOXBIN2PRG.PRG' WITH THIS AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
IF EVL(tnTimeStamp,0) = 1 THEN *-- Seg<65>n el valor de nTimestamp:
*-- Format: Timestamp__Text *-- 0 = Sin timestamp
.c_TextLog = .c_TextLog + TTOC(DATETIME(),3) + ' ' *-- 1 = Timestamp por delante
ENDIF *-- 2 = Timestamp por detr<74>s
.c_TextLog = .c_TextLog ;
*-- Format: Text + IIF( EVL(tnTimeStamp,0) = 1, TTOC(DATETIME(),3) + ' ', '' ) ;
.c_TextLog = .c_TextLog + EVL(tcText,'') + EVL(tcText,'') ;
+ IIF( EVL(tnTimeStamp,0) = 2, ' ' + TTOC(DATETIME(),3), '' ) ;
IF EVL(tnTimeStamp,0) = 2 THEN + CR_LF
*-- Format: Text__Timestamp
.c_TextLog = .c_TextLog + ' ' + TTOC(DATETIME(),3)
ENDIF
.c_TextLog = .c_TextLog + CR_LF
ENDWITH ENDWITH
CATCH CATCH
ENDTRY ENDTRY
@@ -4548,7 +4534,7 @@ DEFINE CLASS C_CONVERSOR_BASE AS SESSION
llBloqueEncontrado = .T. llBloqueEncontrado = .T.
LOCAL lcLine, lnArrayCols LOCAL lcLine, lnArrayCols
WITH THIS AS c_foxbin2prg OF 'FOXBIN2PRG.PRG' WITH THIS AS C_CONVERSOR_BASE OF 'FOXBIN2PRG.PRG'
*-- Propiedad especial *-- Propiedad especial
IF tcTAG_F $ tcValue && El fin de tag est<73> "inline" IF tcTAG_F $ tcValue && El fin de tag est<73> "inline"
@@ -4821,10 +4807,14 @@ DEFINE CLASS C_CONVERSOR_BASE AS SESSION
PROCEDURE desnormalizarAsignacion PROCEDURE desnormalizarAsignacion
LPARAMETERS tcAsignacion LPARAMETERS tcAsignacion
LOCAL lcPropName, lcValor, lnCodError, lcExpNormalizada, lnPos, lcComentario LOCAL lcPropName, lcValor, lnCodError, lcExpNormalizada, lnPos, lcComentario
THIS.get_SeparatedPropAndValue( @tcAsignacion, @lcPropName, @lcValor )
lcComentario = '' WITH THIS AS C_CONVERSOR_BASE OF 'FOXBIN2PRG.PRG'
THIS.desnormalizarValorPropiedad( @lcPropName, @lcValor, @lcComentario ) .get_SeparatedPropAndValue( @tcAsignacion, @lcPropName, @lcValor )
tcAsignacion = lcPropName + ' = ' + lcValor lcComentario = ''
.desnormalizarValorPropiedad( @lcPropName, @lcValor, @lcComentario )
tcAsignacion = lcPropName + ' = ' + lcValor
ENDWITH
RELEASE lcPropName, lcValor, lnCodError, lcExpNormalizada, lnPos, lcComentario RELEASE lcPropName, lcValor, lnCodError, lcExpNormalizada, lnPos, lcComentario
RETURN tcAsignacion RETURN tcAsignacion
ENDPROC ENDPROC
@@ -5251,7 +5241,6 @@ DEFINE CLASS C_CONVERSOR_BASE AS SESSION
FOR I = 1 TO tnCodeLines FOR I = 1 TO tnCodeLines
* Reduzco los espacios. Ej: '#IF .F. && cmt' ==> '#IF .F.&&cmt' * Reduzco los espacios. Ej: '#IF .F. && cmt' ==> '#IF .F.&&cmt'
*lcLine = LTRIM( STRTRAN( STRTRAN( CHRTRAN( taCodeLines(I), CHR(9), ' ' ), ' ', ' ' ), ' ', ' ' ) ) *lcLine = LTRIM( STRTRAN( STRTRAN( CHRTRAN( taCodeLines(I), CHR(9), ' ' ), ' ', ' ' ), ' ', ' ' ) )
*lcLine = LTRIM( CHRTRAN( taCodeLines(I), CHR(9), ' ' ) )
lcLine = LTRIM( taCodeLines(I), 0, CHR(9), ' ' ) lcLine = LTRIM( taCodeLines(I), 0, CHR(9), ' ' )
IF .lineIsOnlyCommentAndNoMetadata( @lcLine ) IF .lineIsOnlyCommentAndNoMetadata( @lcLine )
@@ -6048,20 +6037,15 @@ DEFINE CLASS C_CONVERSOR_BASE AS SESSION
TRY TRY
WITH THIS AS C_CONVERSOR_BASE OF 'FOXBIN2PRG.PRG' WITH THIS AS C_CONVERSOR_BASE OF 'FOXBIN2PRG.PRG'
IF EVL(tnTimeStamp,0) = 1 THEN *-- Seg<65>n el valor de nTimestamp:
*-- Format: Timestamp__Text *-- 0 = Sin timestamp
.c_TextLog = .c_TextLog + TTOC(DATETIME(),3) + ' ' *-- 1 = Timestamp por delante
ENDIF *-- 2 = Timestamp por detr<74>s
.c_TextLog = .c_TextLog ;
*-- Format: Text + IIF( EVL(tnTimeStamp,0) = 1, TTOC(DATETIME(),3) + ' ', '' ) ;
.c_TextLog = .c_TextLog + EVL(tcText,'') + EVL(tcText,'') ;
+ IIF( EVL(tnTimeStamp,0) = 2, ' ' + TTOC(DATETIME(),3), '' ) ;
IF EVL(tnTimeStamp,0) = 2 THEN + CR_LF
*-- Format: Text__Timestamp
.c_TextLog = .c_TextLog + ' ' + TTOC(DATETIME(),3)
ENDIF
.c_TextLog = .c_TextLog + CR_LF
ENDWITH ENDWITH
CATCH CATCH
ENDTRY ENDTRY
@@ -6120,7 +6104,6 @@ DEFINE CLASS c_conversor_prg_a_bin AS C_CONVERSOR_BASE
+ [<memberdata name="createreport" display="createReport"/>] ; + [<memberdata name="createreport" display="createReport"/>] ;
+ [<memberdata name="createmenu" display="createMenu"/>] ; + [<memberdata name="createmenu" display="createMenu"/>] ;
+ [<memberdata name="defined_pam2memo" display="defined_PAM2Memo"/>] ; + [<memberdata name="defined_pam2memo" display="defined_PAM2Memo"/>] ;
+ [<memberdata name="emptyrecord" display="emptyRecord"/>] ;
+ [<memberdata name="escribirarchivobin" display="escribirArchivoBin"/>] ; + [<memberdata name="escribirarchivobin" display="escribirArchivoBin"/>] ;
+ [<memberdata name="evaluate_pam" display="Evaluate_PAM"/>] ; + [<memberdata name="evaluate_pam" display="Evaluate_PAM"/>] ;
+ [<memberdata name="evaluardefiniciondeprocedure" display="evaluarDefinicionDeProcedure"/>] ; + [<memberdata name="evaluardefiniciondeprocedure" display="evaluarDefinicionDeProcedure"/>] ;
@@ -6597,14 +6580,6 @@ DEFINE CLASS c_conversor_prg_a_bin AS C_CONVERSOR_BASE
PROCEDURE emptyRecord
LOCAL loReg
SCATTER MEMO BLANK NAME loReg
RETURN loReg
ENDPROC
PROCEDURE escribirArchivoBin PROCEDURE escribirArchivoBin
LPARAMETERS toModulo LPARAMETERS toModulo
ENDPROC ENDPROC
@@ -6802,9 +6777,6 @@ DEFINE CLASS c_conversor_prg_a_bin AS C_CONVERSOR_BASE
*-- Incluir las l<>neas del m<>todo *-- Incluir las l<>neas del m<>todo
FOR X = 1 TO loProcedure._ProcLine_Count FOR X = 1 TO loProcedure._ProcLine_Count
*TEXT TO lcMemo ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
* <<loProcedure._ProcLines(X)>>
*ENDTEXT
lcMemo = lcMemo + CHR(13) + CHR(10) + loProcedure._ProcLines(X) lcMemo = lcMemo + CHR(13) + CHR(10) + loProcedure._ProcLines(X)
ENDFOR ENDFOR
@@ -6964,10 +6936,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS C_CONVERSOR_BASE
lcPAM = lcPAM + '^' lcPAM = lcPAM + '^'
ENDIF ENDIF
TEXT TO tcMemo ADDITIVE TEXTMERGE NOSHOW FLAGS 1 PRETEXT 1+2 tcMemo = tcMemo + lcPAM + CR_LF
<<lcPAM>>
<<>>
ENDTEXT
ENDIF ENDIF
ENDFOR ENDFOR
@@ -8288,11 +8257,6 @@ DEFINE CLASS c_conversor_prg_a_bin AS C_CONVERSOR_BASE
llINCLUDE_SCX_Completed = .T. llINCLUDE_SCX_Completed = .T.
llEXTERNAL_CLASS_Completed = .T. llEXTERNAL_CLASS_Completed = .T.
*CASE .analizarBloque_DEFINE_CLASS( @toModulo, @loClase, @lcLine, @taCodeLines, @I, tnCodeLines ;
, @lcProcedureAbierto, @taLineasExclusion, @tnBloquesExclusion, @lc_Comentario )
*-- Puede haber varias clases definidas
* llEXTERNAL_CLASS_Completed = .T.
ENDCASE ENDCASE
ENDFOR ENDFOR
@@ -8490,11 +8454,12 @@ DEFINE CLASS c_conversor_prg_a_vcx AS c_conversor_prg_a_bin
C_FB2PRG_CODE = C_FB2PRG_CODE + FILETOSTR( lcInputFile_Class ) C_FB2PRG_CODE = C_FB2PRG_CODE + FILETOSTR( lcInputFile_Class )
ENDIF ENDIF
ENDFOR ENDFOR
lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE )
ELSE ELSE
*-- No es clase por archivo, o no se quiere redireccionar a Main. *-- No es clase por archivo, o no se quiere redireccionar a Main.
IF toFoxBin2Prg.l_ProcessFiles THEN IF toFoxBin2Prg.l_ProcessFiles THEN
C_FB2PRG_CODE = FILETOSTR( .c_InputFile ) C_FB2PRG_CODE = FILETOSTR( .c_InputFile )
lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE ) lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE )
.AvanceDelProceso( 'Identifying Header Blocks...', 1, lnCodeLines, 1 ) .AvanceDelProceso( 'Identifying Header Blocks...', 1, lnCodeLines, 1 )
@@ -8512,8 +8477,6 @@ DEFINE CLASS c_conversor_prg_a_vcx AS c_conversor_prg_a_bin
EXIT && Si se indic<69> no procesar, se sale aqu<71>. (Modo de simulaci<63>n) EXIT && Si se indic<69> no procesar, se sale aqu<71>. (Modo de simulaci<63>n)
ENDIF ENDIF
lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE )
*-- Identifico los TEXT/ENDTEXT, #IF .F./#ENDIF *-- Identifico los TEXT/ENDTEXT, #IF .F./#ENDIF
.AvanceDelProceso( 'Identifying Excluded Blocks...', 3, lnCodeLines, 1 ) .AvanceDelProceso( 'Identifying Excluded Blocks...', 3, lnCodeLines, 1 )
.identificarBloquesDeExclusion( @laCodeLines, lnCodeLines, .F., @laLineasExclusion, @lnBloquesExclusion ) .identificarBloquesDeExclusion( @laCodeLines, lnCodeLines, .F., @laLineasExclusion, @lnBloquesExclusion )
@@ -8886,10 +8849,11 @@ DEFINE CLASS c_conversor_prg_a_scx AS c_conversor_prg_a_bin
toFoxBin2Prg.normalizarCapitalizacionArchivos( .T., lcInputFile_Class ) toFoxBin2Prg.normalizarCapitalizacionArchivos( .T., lcInputFile_Class )
C_FB2PRG_CODE = C_FB2PRG_CODE + FILETOSTR( lcInputFile_Class ) C_FB2PRG_CODE = C_FB2PRG_CODE + FILETOSTR( lcInputFile_Class )
ENDFOR ENDFOR
lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE )
ELSE ELSE
*-- No es clase por archivo, o no se quiere redireccionar a Main. *-- No es clase por archivo, o no se quiere redireccionar a Main.
C_FB2PRG_CODE = FILETOSTR( .c_InputFile ) C_FB2PRG_CODE = FILETOSTR( .c_InputFile )
lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE ) lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE )
.AvanceDelProceso( 'Identifying Header Blocks...', 1, lnCodeLines, 1 ) .AvanceDelProceso( 'Identifying Header Blocks...', 1, lnCodeLines, 1 )
@@ -8906,8 +8870,6 @@ DEFINE CLASS c_conversor_prg_a_scx AS c_conversor_prg_a_bin
EXIT && Si se indic<69> no procesar, se sale aqu<71>. (Modo de simulaci<63>n) EXIT && Si se indic<69> no procesar, se sale aqu<71>. (Modo de simulaci<63>n)
ENDIF ENDIF
lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE )
*-- Identifico los TEXT/ENDTEXT, #IF .F./#ENDIF *-- Identifico los TEXT/ENDTEXT, #IF .F./#ENDIF
.AvanceDelProceso( 'Identifying Excluded Blocks...', 3, lnCodeLines, 1 ) .AvanceDelProceso( 'Identifying Excluded Blocks...', 3, lnCodeLines, 1 )
.identificarBloquesDeExclusion( @laCodeLines, lnCodeLines, .F., @laLineasExclusion, @lnBloquesExclusion ) .identificarBloquesDeExclusion( @laCodeLines, lnCodeLines, .F., @laLineasExclusion, @lnBloquesExclusion )
@@ -9431,11 +9393,10 @@ DEFINE CLASS c_conversor_prg_a_pjx AS c_conversor_prg_a_bin
FOR I = 1 TO tnCodeLines FOR I = 1 TO tnCodeLines
.set_Line( @lcLine, @taCodeLines, I ) .set_Line( @lcLine, @taCodeLines, I )
IF .lineIsOnlyCommentAndNoMetadata( @lcLine, @lc_Comentario ) && Vac<61>a o solo Comentarios
LOOP
ENDIF
DO CASE DO CASE
CASE .lineIsOnlyCommentAndNoMetadata( @lcLine, @lc_Comentario ) && Vac<61>a o solo Comentarios
LOOP
CASE NOT llFoxBin2Prg_Completed AND .analizarBloque_FoxBin2Prg( toProject, @lcLine, @taCodeLines, @I, tnCodeLines ) CASE NOT llFoxBin2Prg_Completed AND .analizarBloque_FoxBin2Prg( toProject, @lcLine, @taCodeLines, @I, tnCodeLines )
llFoxBin2Prg_Completed = .T. llFoxBin2Prg_Completed = .T.
@@ -9646,13 +9607,13 @@ DEFINE CLASS c_conversor_prg_a_pjx AS c_conversor_prg_a_bin
.set_Line( @tcLine, @taCodeLines, I ) .set_Line( @tcLine, @taCodeLines, I )
DO CASE DO CASE
CASE .lineIsOnlyCommentAndNoMetadata( @tcLine )
LOOP && Saltear comentarios
CASE LEFT( tcLine, LEN(C_SRV_HEAD_F) ) == C_SRV_HEAD_F CASE LEFT( tcLine, LEN(C_SRV_HEAD_F) ) == C_SRV_HEAD_F
I = I + 1 I = I + 1
EXIT EXIT
CASE .lineIsOnlyCommentAndNoMetadata( @tcLine )
LOOP && Saltear comentarios
OTHERWISE OTHERWISE
loServerHead.setParsedHeadInfoLine( @tcLine ) loServerHead.setParsedHeadInfoLine( @tcLine )
ENDCASE ENDCASE
@@ -9707,13 +9668,13 @@ DEFINE CLASS c_conversor_prg_a_pjx AS c_conversor_prg_a_bin
.set_Line( @tcLine, @taCodeLines, I ) .set_Line( @tcLine, @taCodeLines, I )
DO CASE DO CASE
CASE .lineIsOnlyCommentAndNoMetadata( @tcLine )
LOOP && Saltear comentarios
CASE LEFT( tcLine, LEN(C_SRV_DATA_F) ) == C_SRV_DATA_F CASE LEFT( tcLine, LEN(C_SRV_DATA_F) ) == C_SRV_DATA_F
I = I + 1 I = I + 1
EXIT EXIT
CASE .lineIsOnlyCommentAndNoMetadata( @tcLine )
LOOP && Saltear comentarios
OTHERWISE OTHERWISE
loServerHead.setParsedInfoLine( loServerData, @tcLine ) loServerHead.setParsedInfoLine( loServerData, @tcLine )
ENDCASE ENDCASE
@@ -9767,13 +9728,13 @@ DEFINE CLASS c_conversor_prg_a_pjx AS c_conversor_prg_a_bin
.set_Line( @tcLine, @taCodeLines, I ) .set_Line( @tcLine, @taCodeLines, I )
DO CASE DO CASE
CASE .lineIsOnlyCommentAndNoMetadata( @tcLine )
LOOP && Saltear comentarios
CASE LEFT( tcLine, LEN(C_FILE_CMTS_F) ) == C_FILE_CMTS_F CASE LEFT( tcLine, LEN(C_FILE_CMTS_F) ) == C_FILE_CMTS_F
I = I + 1 I = I + 1
EXIT EXIT
CASE .lineIsOnlyCommentAndNoMetadata( @tcLine )
LOOP && Saltear comentarios
OTHERWISE OTHERWISE
lcFile = LOWER( ALLTRIM( STRTRAN( CHRTRAN( NORMALIZE( STREXTRACT( tcLine, ".ITEM(", ")", 1, 1 ) ), ["], [] ), 'lcCurDir+', '', 1, 1, 1) ) ) lcFile = LOWER( ALLTRIM( STRTRAN( CHRTRAN( NORMALIZE( STREXTRACT( tcLine, ".ITEM(", ")", 1, 1 ) ), ["], [] ), 'lcCurDir+', '', 1, 1, 1) ) )
lcComment = ALLTRIM( CHRTRAN( STREXTRACT( tcLine, "=", "", 1, 2 ), ['], [] ) ) lcComment = ALLTRIM( CHRTRAN( STREXTRACT( tcLine, "=", "", 1, 2 ), ['], [] ) )
@@ -9830,13 +9791,13 @@ DEFINE CLASS c_conversor_prg_a_pjx AS c_conversor_prg_a_bin
.set_Line( @tcLine, @taCodeLines, I ) .set_Line( @tcLine, @taCodeLines, I )
DO CASE DO CASE
CASE .lineIsOnlyCommentAndNoMetadata( @tcLine )
LOOP && Saltear comentarios
CASE LEFT( tcLine, LEN(C_FILE_EXCL_F) ) == C_FILE_EXCL_F CASE LEFT( tcLine, LEN(C_FILE_EXCL_F) ) == C_FILE_EXCL_F
I = I + 1 I = I + 1
EXIT EXIT
CASE .lineIsOnlyCommentAndNoMetadata( @tcLine )
LOOP && Saltear comentarios
OTHERWISE OTHERWISE
lcFile = LOWER( ALLTRIM( STRTRAN( CHRTRAN( NORMALIZE( STREXTRACT( tcLine, ".ITEM(", ")", 1, 1 ) ), ["], [] ), 'lcCurDir+', '', 1, 1, 1) ) ) lcFile = LOWER( ALLTRIM( STRTRAN( CHRTRAN( NORMALIZE( STREXTRACT( tcLine, ".ITEM(", ")", 1, 1 ) ), ["], [] ), 'lcCurDir+', '', 1, 1, 1) ) )
llExclude = EVALUATE( ALLTRIM( CHRTRAN( STREXTRACT( tcLine, "=", "", 1, 2 ), ['], [] ) ) ) llExclude = EVALUATE( ALLTRIM( CHRTRAN( STREXTRACT( tcLine, "=", "", 1, 2 ), ['], [] ) ) )
@@ -9893,13 +9854,13 @@ DEFINE CLASS c_conversor_prg_a_pjx AS c_conversor_prg_a_bin
.set_Line( @tcLine, @taCodeLines, I ) .set_Line( @tcLine, @taCodeLines, I )
DO CASE DO CASE
CASE .lineIsOnlyCommentAndNoMetadata( @tcLine )
LOOP && Saltear comentarios
CASE LEFT( tcLine, LEN(C_FILE_TXT_F) ) == C_FILE_TXT_F CASE LEFT( tcLine, LEN(C_FILE_TXT_F) ) == C_FILE_TXT_F
I = I + 1 I = I + 1
EXIT EXIT
CASE .lineIsOnlyCommentAndNoMetadata( @tcLine )
LOOP && Saltear comentarios
OTHERWISE OTHERWISE
lcFile = LOWER( ALLTRIM( STRTRAN( CHRTRAN( NORMALIZE( STREXTRACT( tcLine, ".ITEM(", ")", 1, 1 ) ), ["], [] ), 'lcCurDir+', '', 1, 1, 1) ) ) lcFile = LOWER( ALLTRIM( STRTRAN( CHRTRAN( NORMALIZE( STREXTRACT( tcLine, ".ITEM(", ")", 1, 1 ) ), ["], [] ), 'lcCurDir+', '', 1, 1, 1) ) )
lcType = ALLTRIM( CHRTRAN( STREXTRACT( tcLine, "=", "", 1, 2 ), ['], [] ) ) lcType = ALLTRIM( CHRTRAN( STREXTRACT( tcLine, "=", "", 1, 2 ), ['], [] ) )
@@ -9952,13 +9913,13 @@ DEFINE CLASS c_conversor_prg_a_pjx AS c_conversor_prg_a_bin
.set_Line( @tcLine, @taCodeLines, I ) .set_Line( @tcLine, @taCodeLines, I )
DO CASE DO CASE
CASE .lineIsOnlyCommentAndNoMetadata( @tcLine )
LOOP && Saltear comentarios
CASE LEFT( tcLine, LEN(C_PROJPROPS_F) ) == C_PROJPROPS_F CASE LEFT( tcLine, LEN(C_PROJPROPS_F) ) == C_PROJPROPS_F
I = I + 1 I = I + 1
EXIT EXIT
CASE .lineIsOnlyCommentAndNoMetadata( @tcLine )
LOOP && Saltear comentarios
CASE LEFT( tcLine ,2 ) == '*<' CASE LEFT( tcLine ,2 ) == '*<'
*--- Se asigna con EVALUATE() tal cual est<73> en el PJ2, pero quitando el marcador *< /> *--- Se asigna con EVALUATE() tal cual est<73> en el PJ2, pero quitando el marcador *< />
lcLine = STUFF( ALLTRIM( STREXTRACT( tcLine, '*<', '/>' ) ), 2, 0, '_' ) lcLine = STUFF( ALLTRIM( STREXTRACT( tcLine, '*<', '/>' ) ), 2, 0, '_' )
@@ -10211,11 +10172,10 @@ DEFINE CLASS c_conversor_prg_a_frx AS c_conversor_prg_a_bin
FOR I = 1 TO tnCodeLines FOR I = 1 TO tnCodeLines
.set_Line( @lcLine, @taCodeLines, I ) .set_Line( @lcLine, @taCodeLines, I )
IF .lineIsOnlyCommentAndNoMetadata( @lcLine, @lc_Comentario ) && Vac<61>a o solo Comentarios
LOOP
ENDIF
DO CASE DO CASE
CASE .lineIsOnlyCommentAndNoMetadata( @lcLine, @lc_Comentario ) && Vac<61>a o solo Comentarios
LOOP
CASE NOT llFoxBin2Prg_Completed AND .analizarBloque_FoxBin2Prg( toReport, @lcLine, @taCodeLines, @I, tnCodeLines ) CASE NOT llFoxBin2Prg_Completed AND .analizarBloque_FoxBin2Prg( toReport, @lcLine, @taCodeLines, @I, tnCodeLines )
llFoxBin2Prg_Completed = .T. llFoxBin2Prg_Completed = .T.
@@ -10372,7 +10332,7 @@ DEFINE CLASS c_conversor_prg_a_frx AS c_conversor_prg_a_bin
loReg = NULL loReg = NULL
WITH THIS AS c_conversor_prg_a_frx OF 'FOXBIN2PRG.PRG' WITH THIS AS c_conversor_prg_a_frx OF 'FOXBIN2PRG.PRG'
loReg = .emptyRecord() SCATTER MEMO BLANK NAME loReg
FOR I = I + 1 TO tnCodeLines FOR I = I + 1 TO tnCodeLines
lcComment = '' lcComment = ''
@@ -10928,6 +10888,7 @@ DEFINE CLASS c_conversor_prg_a_dbc AS c_conversor_prg_a_bin
C_FB2PRG_CODE = C_FB2PRG_CODE + laCodeLines(X) + CR_LF C_FB2PRG_CODE = C_FB2PRG_CODE + laCodeLines(X) + CR_LF
ENDFOR ENDFOR
lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE )
ELSE ELSE
*-- No es clase por archivo, o no se quiere redireccionar a Main. *-- No es clase por archivo, o no se quiere redireccionar a Main.
IF NOT toFoxBin2Prg.l_ProcessFiles THEN IF NOT toFoxBin2Prg.l_ProcessFiles THEN
@@ -10943,8 +10904,6 @@ DEFINE CLASS c_conversor_prg_a_dbc AS c_conversor_prg_a_bin
ENDIF ENDIF
lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE )
*-- Identifico el inicio/fin de bloque, definici<63>n, cabecera y cuerpo del reporte *-- Identifico el inicio/fin de bloque, definici<63>n, cabecera y cuerpo del reporte
.AvanceDelProceso( 'Identifying Code Blocks...', 1, 2, 1 ) .AvanceDelProceso( 'Identifying Code Blocks...', 1, 2, 1 )
.identificarBloquesDeCodigo( @laCodeLines, lnCodeLines, @laLineasExclusion, lnBloquesExclusion, @toDatabase, @toFoxBin2Prg ) .identificarBloquesDeCodigo( @laCodeLines, lnCodeLines, @laLineasExclusion, lnBloquesExclusion, @toDatabase, @toFoxBin2Prg )
@@ -11006,6 +10965,7 @@ DEFINE CLASS c_conversor_prg_a_dbc AS c_conversor_prg_a_bin
*-- Si no recompilo el EventFilename.prg, el EXE dar<61> un error (aunque el PRG no) *-- Si no recompilo el EventFilename.prg, el EXE dar<61> un error (aunque el PRG no)
COMPILE ( ADDBS( JUSTPATH( THIS.c_OutputFile ) ) + toDatabase._DBCEventFilename ) COMPILE ( ADDBS( JUSTPATH( THIS.c_OutputFile ) ) + toDatabase._DBCEventFilename )
ENDIF ENDIF
toDatabase.updateDBC( THIS.c_OutputFile ) toDatabase.updateDBC( THIS.c_OutputFile )
IF toFoxBin2Prg.l_Recompile IF toFoxBin2Prg.l_Recompile
@@ -11082,6 +11042,7 @@ DEFINE CLASS c_conversor_prg_a_dbc AS c_conversor_prg_a_bin
DO CASE DO CASE
CASE .lineIsOnlyCommentAndNoMetadata( @lcLine, @lc_Comentario ) && Excluida, vac<61>a o solo Comentarios CASE .lineIsOnlyCommentAndNoMetadata( @lcLine, @lc_Comentario ) && Excluida, vac<61>a o solo Comentarios
LOOP
CASE NOT llFoxBin2Prg_Completed AND .analizarBloque_FoxBin2Prg( @toDatabase, @lcLine, @taCodeLines, @I, tnCodeLines ) CASE NOT llFoxBin2Prg_Completed AND .analizarBloque_FoxBin2Prg( @toDatabase, @lcLine, @taCodeLines, @I, tnCodeLines )
llFoxBin2Prg_Completed = .T. llFoxBin2Prg_Completed = .T.
@@ -11151,6 +11112,7 @@ DEFINE CLASS c_conversor_prg_a_dbc AS c_conversor_prg_a_bin
DO CASE DO CASE
CASE .lineIsOnlyCommentAndNoMetadata( @lcLine, @lc_Comentario ) && Vac<61>a o solo Comentarios CASE .lineIsOnlyCommentAndNoMetadata( @lcLine, @lc_Comentario ) && Vac<61>a o solo Comentarios
LOOP
CASE NOT llFoxBin2Prg_Completed AND .analizarBloque_FoxBin2Prg( toDatabase, @lcLine, @taCodeLines, @I, tnCodeLines ) CASE NOT llFoxBin2Prg_Completed AND .analizarBloque_FoxBin2Prg( toDatabase, @lcLine, @taCodeLines, @I, tnCodeLines )
llFoxBin2Prg_Completed = .T. llFoxBin2Prg_Completed = .T.
@@ -11346,11 +11308,10 @@ DEFINE CLASS c_conversor_prg_a_mnx AS c_conversor_prg_a_bin
FOR I = 1 TO tnCodeLines FOR I = 1 TO tnCodeLines
.set_Line( @lcLine, @taCodeLines, I ) .set_Line( @lcLine, @taCodeLines, I )
IF .lineIsOnlyCommentAndNoMetadata( @lcLine, @lc_Comentario ) && Vac<61>a o solo Comentarios
LOOP
ENDIF
DO CASE DO CASE
CASE .lineIsOnlyCommentAndNoMetadata( @lcLine, @lc_Comentario ) && Vac<61>a o solo Comentarios
LOOP
CASE NOT llFoxBin2Prg_Completed AND .analizarBloque_FoxBin2Prg( toMenu, @lcLine, @taCodeLines, @I, tnCodeLines ) CASE NOT llFoxBin2Prg_Completed AND .analizarBloque_FoxBin2Prg( toMenu, @lcLine, @taCodeLines, @I, tnCodeLines )
llFoxBin2Prg_Completed = .T. llFoxBin2Prg_Completed = .T.
@@ -12560,8 +12521,7 @@ DEFINE CLASS c_conversor_bin_a_prg AS C_CONVERSOR_BASE
LOOP LOOP
ENDIF ENDIF
lcMethods = lcMethods + CR_LF + .IndentarMemo( taCode(taMethods(I,2)), CHR(9) + CHR(9), .T. ) lcMethods = lcMethods + CR_LF + .IndentarMemo( taCode(taMethods(I,2)), CHR(9) + CHR(9), .T. ) + CR_LF
lcMethods = lcMethods + CR_LF
ENDFOR ENDFOR
ENDWITH && THIS ENDWITH && THIS
@@ -12604,18 +12564,12 @@ DEFINE CLASS c_conversor_bin_a_prg AS C_CONVERSOR_BASE
*-- Escribo las propiedades de la clase y sus comentarios (los comentarios aqu<71> son redundantes) *-- Escribo las propiedades de la clase y sus comentarios (los comentarios aqu<71> son redundantes)
FOR I = 1 TO tnPropsAndValues_Count FOR I = 1 TO tnPropsAndValues_Count
*TEXT TO tcCodigo ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
* <<>> <<taPropsAndValues(I,1)>> = <<taPropsAndValues(I,2)>>
*ENDTEXT
tcCodigo = tcCodigo + CHR(13) + CHR(10) + CHR(9) + taPropsAndValues(I,1) + ' = ' + taPropsAndValues(I,2) tcCodigo = tcCodigo + CHR(13) + CHR(10) + CHR(9) + taPropsAndValues(I,1) + ' = ' + taPropsAndValues(I,2)
IF tnPropsAndComments_Count > 0 THEN IF tnPropsAndComments_Count > 0 THEN
lnComment = ASCAN( taPropsAndComments, taPropsAndValues(I,1), 1, 0, 1, 1+2+4+8) lnComment = ASCAN( taPropsAndComments, taPropsAndValues(I,1), 1, 0, 1, 1+2+4+8)
IF lnComment > 0 AND NOT EMPTY(taPropsAndComments(lnComment,2)) IF lnComment > 0 AND NOT EMPTY(taPropsAndComments(lnComment,2))
*TEXT TO tcCodigo ADDITIVE TEXTMERGE NOSHOW FLAGS 1 PRETEXT 1+2
* <<>> && <<taPropsAndComments(lnComment,2)>>
*ENDTEXT
tcCodigo = tcCodigo + CHR(9) + CHR(9) + '&' + '& ' + taPropsAndComments(lnComment,2) tcCodigo = tcCodigo + CHR(9) + CHR(9) + '&' + '& ' + taPropsAndComments(lnComment,2)
ENDIF ENDIF
ENDIF ENDIF
@@ -12679,21 +12633,12 @@ DEFINE CLASS c_conversor_bin_a_prg AS C_CONVERSOR_BASE
, 'p' ) , 'p' )
IF lcType == 'p' THEN IF lcType == 'p' THEN
*TEXT TO tcCodigo ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
* <<>> *<<lcType>>: <<taPropsAndComments(I,1)>>
*ENDTEXT
tcCodigo = tcCodigo + CHR(13) + CHR(10) + CHR(9) + CHR(9) + '*' + lcType + ': ' + taPropsAndComments(I,1) tcCodigo = tcCodigo + CHR(13) + CHR(10) + CHR(9) + CHR(9) + '*' + lcType + ': ' + taPropsAndComments(I,1)
ELSE ELSE
*TEXT TO tcCodigo ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
* <<>> *<<lcType>>: <<SUBSTR( taPropsAndComments(I,1), 2)>>
*ENDTEXT
tcCodigo = tcCodigo + CHR(13) + CHR(10) + CHR(9) + CHR(9) + '*' + lcType + ': ' + SUBSTR( taPropsAndComments(I,1), 2) tcCodigo = tcCodigo + CHR(13) + CHR(10) + CHR(9) + CHR(9) + '*' + lcType + ': ' + SUBSTR( taPropsAndComments(I,1), 2)
ENDIF ENDIF
IF NOT EMPTY(taPropsAndComments(I,2)) IF NOT EMPTY(taPropsAndComments(I,2))
*TEXT TO tcCodigo ADDITIVE TEXTMERGE NOSHOW FLAGS 1 PRETEXT 1+2
* <<>> <<'&'>><<'&'>> <<taPropsAndComments(I,2)>>
*ENDTEXT
tcCodigo = tcCodigo + CHR(9) + CHR(9) + '&' + '& ' + taPropsAndComments(I,2) tcCodigo = tcCodigo + CHR(9) + CHR(9) + '&' + '& ' + taPropsAndComments(I,2)
ENDIF ENDIF
ENDFOR ENDFOR
@@ -14159,9 +14104,6 @@ DEFINE CLASS c_conversor_pjx_a_prg AS c_conversor_bin_a_prg
FOR EACH loReg IN loProject &&FOXOBJECT FOR EACH loReg IN loProject &&FOXOBJECT
IF loReg.EXCLUDE IF loReg.EXCLUDE
*TEXT TO C_FB2PRG_CODE ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
* <<>> .ITEM(lcCurdir + '<<loReg.NAME>>').Exclude = .T.
*ENDTEXT
C_FB2PRG_CODE = C_FB2PRG_CODE + CHR(13) + CHR(10) + CHR(9) + ".ITEM(lcCurdir + '" + loReg.NAME + "').Exclude = .T." C_FB2PRG_CODE = C_FB2PRG_CODE + CHR(13) + CHR(10) + CHR(9) + ".ITEM(lcCurdir + '" + loReg.NAME + "').Exclude = .T."
ENDIF ENDIF
loReg = NULL loReg = NULL
@@ -14179,9 +14121,6 @@ DEFINE CLASS c_conversor_pjx_a_prg AS c_conversor_bin_a_prg
FOR EACH loReg IN loProject &&FOXOBJECT FOR EACH loReg IN loProject &&FOXOBJECT
IF INLIST( UPPER( JUSTEXT( loReg.NAME ) ), 'H','FPW' ) IF INLIST( UPPER( JUSTEXT( loReg.NAME ) ), 'H','FPW' )
*TEXT TO C_FB2PRG_CODE ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
* <<>> .ITEM(lcCurdir + '<<loReg.NAME>>').Type = 'T'
*ENDTEXT
C_FB2PRG_CODE = C_FB2PRG_CODE + CHR(13) + CHR(10) + CHR(9) + ".ITEM(lcCurdir + '" + loReg.NAME + "').Type = 'T'" C_FB2PRG_CODE = C_FB2PRG_CODE + CHR(13) + CHR(10) + CHR(9) + ".ITEM(lcCurdir + '" + loReg.NAME + "').Type = 'T'"
ENDIF ENDIF
loReg = NULL loReg = NULL
@@ -14531,9 +14470,6 @@ DEFINE CLASS c_conversor_pjm_a_prg AS c_conversor_bin_a_prg
FOR EACH loReg IN loProject &&FOXOBJECT FOR EACH loReg IN loProject &&FOXOBJECT
IF NOT EMPTY(loReg.COMMENTS) IF NOT EMPTY(loReg.COMMENTS)
*TEXT TO C_FB2PRG_CODE ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
* <<>> .ITEM(lcCurdir + '<<loReg.NAME>>').Description = '<<loReg.COMMENTS>>'
*ENDTEXT
C_FB2PRG_CODE = C_FB2PRG_CODE + CHR(13) + CHR(10) + CHR(9) + ".ITEM(lcCurdir + '" + loReg.NAME + "').Description = '" + loReg.COMMENTS + "'" C_FB2PRG_CODE = C_FB2PRG_CODE + CHR(13) + CHR(10) + CHR(9) + ".ITEM(lcCurdir + '" + loReg.NAME + "').Description = '" + loReg.COMMENTS + "'"
ENDIF ENDIF
ENDFOR ENDFOR
@@ -14550,9 +14486,6 @@ DEFINE CLASS c_conversor_pjm_a_prg AS c_conversor_bin_a_prg
FOR EACH loReg IN loProject &&FOXOBJECT FOR EACH loReg IN loProject &&FOXOBJECT
IF loReg.EXCLUDE IF loReg.EXCLUDE
*TEXT TO C_FB2PRG_CODE ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
* <<>> .ITEM(lcCurdir + '<<loReg.NAME>>').Exclude = .T.
*ENDTEXT
C_FB2PRG_CODE = C_FB2PRG_CODE + CHR(13) + CHR(10) + CHR(9) + ".ITEM(lcCurdir + '" + loReg.NAME + "').Exclude = .T." C_FB2PRG_CODE = C_FB2PRG_CODE + CHR(13) + CHR(10) + CHR(9) + ".ITEM(lcCurdir + '" + loReg.NAME + "').Exclude = .T."
ENDIF ENDIF
loReg = NULL loReg = NULL
@@ -14570,9 +14503,6 @@ DEFINE CLASS c_conversor_pjm_a_prg AS c_conversor_bin_a_prg
FOR EACH loReg IN loProject &&FOXOBJECT FOR EACH loReg IN loProject &&FOXOBJECT
IF INLIST( UPPER( JUSTEXT( loReg.NAME ) ), 'H','FPW' ) IF INLIST( UPPER( JUSTEXT( loReg.NAME ) ), 'H','FPW' )
*TEXT TO C_FB2PRG_CODE ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
* <<>> .ITEM(lcCurdir + '<<loReg.NAME>>').Type = 'T'
*ENDTEXT
C_FB2PRG_CODE = C_FB2PRG_CODE + CHR(13) + CHR(10) + CHR(9) + ".ITEM(lcCurdir + '" + loReg.NAME + "').Type = 'T'" C_FB2PRG_CODE = C_FB2PRG_CODE + CHR(13) + CHR(10) + CHR(9) + ".ITEM(lcCurdir + '" + loReg.NAME + "').Type = 'T'"
ENDIF ENDIF
loReg = NULL loReg = NULL
@@ -14685,9 +14615,7 @@ DEFINE CLASS c_conversor_frx_a_prg AS c_conversor_bin_a_prg
#IF .F. #IF .F.
LOCAL THIS AS c_conversor_frx_a_prg OF 'FOXBIN2PRG.PRG' LOCAL THIS AS c_conversor_frx_a_prg OF 'FOXBIN2PRG.PRG'
#ENDIF #ENDIF
*_MEMBERDATA = [<VFPData>] ;
+ [<memberdata name="convertir" display="Convertir"/>] ;
+ [</VFPData>]
c_Type = 'FRX' c_Type = 'FRX'
@@ -14727,8 +14655,6 @@ DEFINE CLASS c_conversor_frx_a_prg AS c_conversor_bin_a_prg
C_FB2PRG_CODE = C_FB2PRG_CODE + toFoxBin2Prg.get_PROGRAM_HEADER() C_FB2PRG_CODE = C_FB2PRG_CODE + toFoxBin2Prg.get_PROGRAM_HEADER()
*SELECT * FROM _TABLAORIG INTO CURSOR TABLABIN_0
*USE IN (SELECT("_TABLAORIG"))
SELECT * FROM _TABLAORIG ; SELECT * FROM _TABLAORIG ;
WHERE ObjType IN (1,25,26) ; WHERE ObjType IN (1,25,26) ;
ORDER BY ObjType ASC ; ORDER BY ObjType ASC ;
@@ -14737,6 +14663,7 @@ DEFINE CLASS c_conversor_frx_a_prg AS c_conversor_bin_a_prg
*-- Header *-- Header
SELECT TABLABIN_0 SELECT TABLABIN_0
LOCATE FOR ObjType = 1 LOCATE FOR ObjType = 1
IF FOUND() IF FOUND()
loRegCab = NULL loRegCab = NULL
SCATTER MEMO NAME loRegCab SCATTER MEMO NAME loRegCab
@@ -14789,6 +14716,7 @@ DEFINE CLASS c_conversor_frx_a_prg AS c_conversor_bin_a_prg
*-- Dataenvironment *-- Dataenvironment
SELECT TABLABIN_0 SELECT TABLABIN_0
LOCATE FOR ObjType = 25 LOCATE FOR ObjType = 25
IF FOUND() IF FOUND()
loRegDataEnv = NULL loRegDataEnv = NULL
SCATTER MEMO NAME loRegDataEnv SCATTER MEMO NAME loRegDataEnv
@@ -14805,6 +14733,7 @@ DEFINE CLASS c_conversor_frx_a_prg AS c_conversor_bin_a_prg
*-- Cursors and Relations *-- Cursors and Relations
SELECT TABLABIN_0 SELECT TABLABIN_0
SCAN ALL FOR ObjType = 26 SCAN ALL FOR ObjType = 26
loRegCur = NULL loRegCur = NULL
SCATTER MEMO NAME loRegCur SCATTER MEMO NAME loRegCur
@@ -14986,12 +14915,6 @@ DEFINE CLASS c_conversor_dbf_a_prg AS c_conversor_bin_a_prg
DO CASE DO CASE
CASE toEx.ERRORNO = 13 && Alias not found CASE toEx.ERRORNO = 13 && Alias not found
*toEx.USERVALUE = 'WARNING!!' + CR_LF ;
+ 'MAKE SURE YOU ARE NOT USING A TABLE ALIAS ON INDEX KEY EXPRESSIONS!! (ex: index on ' ;
+ UPPER(JUSTSTEM(THIS.c_InputFile)) + '.field tag keyname)' + CR_LF + CR_LF ;
+ '<27><>ATENCI<43>N!!' + CR_LF ;
+ 'ASEG<45>RESE DE QUE NO EST<53> USANDO UN ALIAS DE TABLA EN LAS EXPRESIONES DE LOS <20>NDICES!! (ej: index on ' ;
+ UPPER(JUSTSTEM(THIS.c_InputFile)) + '.campo tag nombreclave)'
toEx.USERVALUE = toEx.USERVALUE + TEXTMERGE(loLang.C_WARN_TABLE_ALIAS_ON_INDEX_EXPRESSION_LOC) toEx.USERVALUE = toEx.USERVALUE + TEXTMERGE(loLang.C_WARN_TABLE_ALIAS_ON_INDEX_EXPRESSION_LOC)
*!* CASE toEx.ErrorNo = 1976 && Cannot resolve backlink *!* CASE toEx.ErrorNo = 1976 && Cannot resolve backlink
@@ -22457,7 +22380,7 @@ DEFINE CLASS CL_MENU AS CL_MENU_COL_BASE
WITH THIS AS CL_MENU OF 'FOXBIN2PRG.PRG' WITH THIS AS CL_MENU OF 'FOXBIN2PRG.PRG'
*-- CABECERA DEL MENU *-- CABECERA DEL MENU
.oReg = toConversor.emptyRecord() SCATTER MEMO BLANK NAME .oReg
loReg = .oReg loReg = .oReg
FOR I = I + 0 TO tnCodeLines FOR I = I + 0 TO tnCodeLines
@@ -22750,7 +22673,7 @@ DEFINE CLASS CL_MENU AS CL_MENU_COL_BASE
*-- Creo option *-- Creo option
loOption = NULL loOption = NULL
loOption = CREATEOBJECT("CL_MENU_OPTION") loOption = CREATEOBJECT("CL_MENU_OPTION")
loOption.oReg = toConversor.emptyRecord() SCATTER MEMO BLANK NAME loOption.oReg
WITH loOption.oReg WITH loOption.oReg
.ObjType = C_OBJTYPE_MENUTYPE_OPTION .ObjType = C_OBJTYPE_MENUTYPE_OPTION
@@ -23177,7 +23100,7 @@ DEFINE CLASS CL_MENU_BARPOP AS CL_MENU_COL_BASE
STORE '' TO lcSubName, lcComment, lcExpr, lcProcName, lcProcCode STORE '' TO lcSubName, lcComment, lcExpr, lcProcName, lcProcCode
WITH THIS AS CL_MENU_BARPOP OF 'FOXBIN2PRG.PRG' WITH THIS AS CL_MENU_BARPOP OF 'FOXBIN2PRG.PRG'
.oReg = toConversor.emptyRecord() SCATTER MEMO BLANK NAME .oReg
loReg = .oReg loReg = .oReg
loReg.ObjType = C_OBJTYPE_MENUTYPE_BARorPOPUP loReg.ObjType = C_OBJTYPE_MENUTYPE_BARorPOPUP
loReg.ProcType = 1 loReg.ProcType = 1
@@ -23418,7 +23341,7 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
STORE '' TO lcComment STORE '' TO lcComment
WITH THIS AS CL_MENU_OPTION OF 'FOXBIN2PRG.PRG' WITH THIS AS CL_MENU_OPTION OF 'FOXBIN2PRG.PRG'
.oReg = toConversor.emptyRecord() SCATTER MEMO BLANK NAME .oReg
loReg = .oReg loReg = .oReg
loReg.MARK = CHR(0) loReg.MARK = CHR(0)
loReg.ItemNum = STR(0,3) loReg.ItemNum = STR(0,3)