Changeset: 120 Ajustes al menu

This commit is contained in:
fernando
2013-12-30 17:10:32 +01:00
parent ea20466528
commit a99bc6c5da
3 changed files with 361 additions and 165 deletions

Binary file not shown.

Binary file not shown.

View File

@@ -693,7 +693,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM
.o_Conversor.c_OriginalFileName = tcOriginalFileName .o_Conversor.c_OriginalFileName = tcOriginalFileName
.o_Conversor.c_Foxbin2prg_FullPath = .c_Foxbin2prg_FullPath .o_Conversor.c_Foxbin2prg_FullPath = .c_Foxbin2prg_FullPath
*-- *--
.o_Conversor.Convertir( @toModulo ) .o_Conversor.Convertir( @toModulo, .F., THIS )
.c_TextLog = .c_TextLog + CR_LF + .o_Conversor.c_TextLog && Recojo el LOG que haya generado el conversor .c_TextLog = .c_TextLog + CR_LF + .o_Conversor.c_TextLog && Recojo el LOG que haya generado el conversor
.normalizarCapitalizacionArchivos() .normalizarCapitalizacionArchivos()
ENDWITH && THIS AS c_foxbin2prg OF 'FOXBIN2PRG.PRG' ENDWITH && THIS AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
@@ -793,12 +793,16 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM
PROCEDURE RenameFile PROCEDURE RenameFile
LPARAMETERS tcFileName, tcEXE_CAPS, toFSO AS Scripting.FileSystemObject LPARAMETERS tcFileName, tcEXE_CAPS, toFSO AS Scripting.FileSystemObject
LOCAL lcLog LOCAL lcLog, laFile(1,5)
THIS.writeLog( '- Se ha solicitado capitalizar el archivo [' + tcFileName + ']' ) THIS.writeLog( '- Se ha solicitado capitalizar el archivo [' + tcFileName + ']' )
lcLog = '' lcLog = ''
DO (tcEXE_CAPS) WITH tcFileName, '', 'F', lcLog, .T. DO (tcEXE_CAPS) WITH tcFileName, '', 'F', lcLog, .T.
toFSO.MoveFile( tcFileName, tcFileName ) IF ADIR( laFile, tcFileName, '', 1 ) > 0 AND laFile(1,1) <> JUSTFNAME(tcFileName)
toFSO.MoveFile( FORCEPATH( laFile(1,1), JUSTPATH(tcFileName) ), tcFileName )
THIS.writeLog( ' => Se renombrar<61> a [' + tcFileName + ']' ) THIS.writeLog( ' => Se renombrar<61> a [' + tcFileName + ']' )
ELSE
THIS.writeLog( ' => No se renombrar<61> a [' + tcFileName + '] porque ya estaba correcto.' )
ENDIF
ENDPROC ENDPROC
@@ -1156,8 +1160,12 @@ DEFINE CLASS c_conversor_base AS SESSION
* 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)
* toModulo (@! OUT) Objeto generado de clase correspondiente con la informaci<63>n leida del texto * toModulo (@! OUT) Objeto generado de clase correspondiente con la informaci<63>n leida del texto
* toEx (@! OUT) Objeto con informaci<63>n del error * toEx (@! OUT) Objeto con informaci<63>n del error
* toFoxbin2prg (v! IN ) Referencia al objeto principal
*--------------------------------------------------------------------------------------------------- *---------------------------------------------------------------------------------------------------
LPARAMETERS toModulo, toEx AS EXCEPTION LPARAMETERS toModulo, toEx AS EXCEPTION, toFoxbin2prg
#IF .F.
LOCAL toFoxbin2prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
#ENDIF
THIS.writeLog( '' ) THIS.writeLog( '' )
THIS.writeLog( C_CONVERTING_FILE_LOC + THIS.c_OutputFile + '...' ) THIS.writeLog( C_CONVERTING_FILE_LOC + THIS.c_OutputFile + '...' )
ENDPROC ENDPROC
@@ -1263,7 +1271,20 @@ DEFINE CLASS c_conversor_base AS SESSION
******************************************************************************************************************* *******************************************************************************************************************
PROCEDURE doBackup PROCEDURE doBackup
LPARAMETERS toEx, tlRelanzarError, tcBakFile_1, tcBakFile_2, tcBakFile_3 *---------------------------------------------------------------------------------------------------
* PAR<41>METROS: (!=Obligatorio | ?=Opcional) (@=Pasar por referencia | v=Pasar por valor) (IN/OUT)
* toEx (@? IN ) Objeto Exception con informaci<63>n del error
* tlRelanzarError (v? IN ) Indica si se debe relanzar el error
* tcBakFile_1 (@? OUT) Nombre del archivo backup 1 (vcx,scx,pjx,frx,lbx,dbf,dbc,mnx,vc2,sc2,pj2,etc)
* tcBakFile_2 (@? OUT) Nombre del archivo backup 2 (vct,sct,pjt,frt,lbt,fpt,dct,mnt,etc)
* tcBakFile_3 (@? OUT) Nombre del archivo backup 1 (vcx,scx,pjx,cdx,dcx,etc)
* toFoxbin2prg (v! IN ) Referencia al objeto principal
*---------------------------------------------------------------------------------------------------
LPARAMETERS toEx, tlRelanzarError, tcBakFile_1, tcBakFile_2, tcBakFile_3, toFoxbin2prg
#IF .F.
LOCAL toFoxbin2prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
#ENDIF
TRY TRY
LOCAL lcNext_Bak, lcExt_1, lcExt_2, lcExt_3 LOCAL lcNext_Bak, lcExt_1, lcExt_2, lcExt_3
@@ -1273,6 +1294,10 @@ DEFINE CLASS c_conversor_base AS SESSION
tcBakFile_1 = FORCEEXT(THIS.c_OutputFile, lcExt_1 + lcNext_Bak) tcBakFile_1 = FORCEEXT(THIS.c_OutputFile, lcExt_1 + lcNext_Bak)
DO CASE DO CASE
CASE INLIST( lcExt_1, toFoxbin2prg.c_PJ2, toFoxbin2prg.c_VC2, toFoxbin2prg.c_SC2, toFoxbin2prg.c_FR2 ;
, toFoxbin2prg.c_LB2, toFoxbin2prg.c_DB2, toFoxbin2prg.c_DC2, toFoxbin2prg.c_MN2 )
*-- Extensiones TEXTO
CASE lcExt_1 = 'DBF' CASE lcExt_1 = 'DBF'
*-- DBF *-- DBF
lcExt_2 = 'FPT' lcExt_2 = 'FPT'
@@ -1295,20 +1320,25 @@ DEFINE CLASS c_conversor_base AS SESSION
ENDCASE ENDCASE
IF NOT EMPTY(lcExt_1) AND FILE( FORCEEXT(THIS.c_OutputFile, lcExt_1) ) IF NOT EMPTY(lcExt_1) AND FILE( FORCEEXT(THIS.c_OutputFile, lcExt_1) )
IF EMPTY(lcExt_3) *-- LOG
DO CASE
CASE EMPTY(lcExt_2)
THIS.writeLog( C_BACKUP_OF_LOC + FORCEEXT(THIS.c_OutputFile,lcExt_1) )
CASE EMPTY(lcExt_3)
THIS.writeLog( C_BACKUP_OF_LOC + FORCEEXT(THIS.c_OutputFile,lcExt_1) + '/' + lcExt_2 ) THIS.writeLog( C_BACKUP_OF_LOC + FORCEEXT(THIS.c_OutputFile,lcExt_1) + '/' + lcExt_2 )
ELSE OTHERWISE
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 ENDCASE
RENAME ( FORCEEXT(THIS.c_OutputFile, lcExt_1) ) TO ( tcBakFile_1 ) *-- COPIA BACKUP
COPY FILE ( 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) )
RENAME ( FORCEEXT(THIS.c_OutputFile, lcExt_2) ) TO ( tcBakFile_2 ) COPY FILE ( 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) )
RENAME ( FORCEEXT(THIS.c_OutputFile, lcExt_3) ) TO ( tcBakFile_3 ) COPY FILE ( FORCEEXT(THIS.c_OutputFile, lcExt_3) ) TO ( tcBakFile_3 )
ENDIF ENDIF
ENDIF ENDIF
@@ -1398,7 +1428,6 @@ DEFINE CLASS c_conversor_base AS SESSION
ENDPROC ENDPROC
*******************************************************************************************************************
PROCEDURE getDBFmetadata PROCEDURE getDBFmetadata
*--------------------------------------------------------------------------------------------------- *---------------------------------------------------------------------------------------------------
* 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)
@@ -1456,8 +1485,12 @@ DEFINE CLASS c_conversor_base AS SESSION
ENDPROC ENDPROC
******************************************************************************************************************* FUNCTION GetTimeStamp
FUNCTION GetTimeStamp(tnTimeStamp) *---------------------------------------------------------------------------------------------------
* PAR<41>METROS: (!=Obligatorio | ?=Opcional) (@=Pasar por referencia | v=Pasar por valor) (IN/OUT)
* tnTimeStamp (v! IN ) Timestamp en formato num<75>rico
*---------------------------------------------------------------------------------------------------
LPARAMETERS tnTimeStamp
*-- CONVIERTE UN DATO TIMESTAMP NUMERICO USADO POR LOS ARCHIVOS SCX/VCX/etc. EN TIPO DATETIME *-- CONVIERTE UN DATO TIMESTAMP NUMERICO USADO POR LOS ARCHIVOS SCX/VCX/etc. EN TIPO DATETIME
TRY TRY
LOCAL lcTimeStamp,lnYear,lnMonth,lnDay,lnHour,lnMinutes,lnSeconds,lcTime,lnHour,ltTimeStamp,lnResto ; LOCAL lcTimeStamp,lnYear,lnMonth,lnDay,lnHour,lnMinutes,lnSeconds,lcTime,lnHour,ltTimeStamp,lnResto ;
@@ -1537,8 +1570,12 @@ DEFINE CLASS c_conversor_base AS SESSION
ENDPROC ENDPROC
*******************************************************************************************************************
PROCEDURE get_SeparatedLineAndComment PROCEDURE get_SeparatedLineAndComment
*---------------------------------------------------------------------------------------------------
* PAR<41>METROS: (!=Obligatorio | ?=Opcional) (@=Pasar por referencia | v=Pasar por valor) (IN/OUT)
* tcLine (@! IN/OUT) L<>nea a separar del comentario
* tcComment (@? OUT) Comentario
*---------------------------------------------------------------------------------------------------
LPARAMETERS tcLine, tcComment LPARAMETERS tcLine, tcComment
LOCAL ln_AT_Cmt LOCAL ln_AT_Cmt
tcComment = '' tcComment = ''
@@ -1553,7 +1590,6 @@ DEFINE CLASS c_conversor_base AS SESSION
ENDPROC ENDPROC
*******************************************************************************************************************
PROCEDURE get_SeparatedPropAndValue PROCEDURE get_SeparatedPropAndValue
*-- Devuelve el valor separado de la propiedad. *-- Devuelve el valor separado de la propiedad.
*-- Si se indican m<>s de 3 par<61>metros, eval<61>a el valor completo a trav<61>s de las l<>neas de c<>digo *-- Si se indican m<>s de 3 par<61>metros, eval<61>a el valor completo a trav<61>s de las l<>neas de c<>digo
@@ -2282,7 +2318,6 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base
+ [<memberdata name="createproject_recordheader" display="createProject_RecordHeader"/>] ; + [<memberdata name="createproject_recordheader" display="createProject_RecordHeader"/>] ;
+ [<memberdata name="createreport" display="createReport"/>] ; + [<memberdata name="createreport" display="createReport"/>] ;
+ [<memberdata name="createmenu" display="createMenu"/>] ; + [<memberdata name="createmenu" display="createMenu"/>] ;
+ [<memberdata name="createmenu_recordheader" display="createMenu_RecordHeader"/>] ;
+ [<memberdata name="defined_pam2memo" display="defined_PAM2Memo"/>] ; + [<memberdata name="defined_pam2memo" display="defined_PAM2Memo"/>] ;
+ [<memberdata name="emptyrecord" display="emptyRecord"/>] ; + [<memberdata name="emptyrecord" display="emptyRecord"/>] ;
+ [<memberdata name="escribirarchivobin" display="escribirArchivoBin"/>] ; + [<memberdata name="escribirarchivobin" display="escribirArchivoBin"/>] ;
@@ -2308,8 +2343,12 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base
* 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)
* toModulo (@! OUT) Objeto generado de clase correspondiente con la informaci<63>n leida del texto * toModulo (@! OUT) Objeto generado de clase correspondiente con la informaci<63>n leida del texto
* toEx (@! OUT) Objeto con informaci<63>n del error * toEx (@! OUT) Objeto con informaci<63>n del error
* toFoxbin2prg (v! IN ) Referencia al objeto principal
*--------------------------------------------------------------------------------------------------- *---------------------------------------------------------------------------------------------------
LPARAMETERS toModulo, toEx AS EXCEPTION LPARAMETERS toModulo, toEx AS EXCEPTION, toFoxbin2prg
#IF .F.
LOCAL toFoxbin2prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
#ENDIF
DODEFAULT( @toModulo, @toEx ) DODEFAULT( @toModulo, @toEx )
ENDPROC ENDPROC
@@ -2818,28 +2857,6 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base
ENDPROC ENDPROC
PROCEDURE createMenu_RecordHeader
*--------------------------------------------------------------------------------------------------------------
* PAR<41>METROS: (!=Obligatorio | ?=Opcional) (@=Pasar por referencia | v=Pasar por valor) (IN/OUT)
* tnMenuType (!v IN ) Indica el tipo de menu. 1=Menu, 4=Shortcut, 5=TopLevel Form Menu
*--------------------------------------------------------------------------------------------------------------
LPARAMETERS tnMenuType
INSERT INTO TABLABIN ;
( 'OBJTYPE' ;
, 'OBJCODE' ;
, 'PROCTYPE' ;
, 'MARK' ;
, 'LOCATION' ) ;
VALUES ;
( tnMenuType ;
, 22 ;
, 1 ;
, CHR(4) ;
, 1 )
ENDPROC
******************************************************************************************************************* *******************************************************************************************************************
PROCEDURE emptyRecord PROCEDURE emptyRecord
LOCAL loReg LOCAL loReg
@@ -4104,8 +4121,12 @@ DEFINE CLASS c_conversor_prg_a_vcx AS c_conversor_prg_a_bin
* 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)
* toModulo (@! OUT) Objeto generado de clase CL_MODULO con la informaci<63>n leida del texto * toModulo (@! OUT) Objeto generado de clase CL_MODULO con la informaci<63>n leida del texto
* toEx (@! OUT) Objeto con informaci<63>n del error * toEx (@! OUT) Objeto con informaci<63>n del error
* toFoxbin2prg (v! IN ) Referencia al objeto principal
*--------------------------------------------------------------------------------------------------- *---------------------------------------------------------------------------------------------------
LPARAMETERS toModulo, toEx AS EXCEPTION LPARAMETERS toModulo, toEx AS EXCEPTION, toFoxbin2prg
#IF .F.
LOCAL toFoxbin2prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
#ENDIF
DODEFAULT( @toModulo, @toEx ) DODEFAULT( @toModulo, @toEx )
TRY TRY
@@ -4118,7 +4139,7 @@ DEFINE CLASS c_conversor_prg_a_vcx AS c_conversor_prg_a_bin
C_FB2PRG_CODE = FILETOSTR( THIS.c_InputFile ) C_FB2PRG_CODE = FILETOSTR( THIS.c_InputFile )
lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE ) lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE )
THIS.doBackup( .F., .T. ) THIS.doBackup( .F., .T., '', '', '', toFoxbin2prg )
*-- Creo la librer<65>a *-- Creo la librer<65>a
THIS.createClasslib() THIS.createClasslib()
@@ -4139,6 +4160,8 @@ DEFINE CLASS c_conversor_prg_a_vcx AS c_conversor_prg_a_bin
THROW THROW
FINALLY
USE IN (SELECT("TABLABIN"))
ENDTRY ENDTRY
RETURN RETURN
@@ -4375,8 +4398,12 @@ DEFINE CLASS c_conversor_prg_a_scx AS c_conversor_prg_a_bin
* 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)
* toModulo (@! OUT) Objeto generado de clase CL_MODULO con la informaci<63>n leida del texto * toModulo (@! OUT) Objeto generado de clase CL_MODULO con la informaci<63>n leida del texto
* toEx (@! OUT) Objeto con informaci<63>n del error * toEx (@! OUT) Objeto con informaci<63>n del error
* toFoxbin2prg (v! IN ) Referencia al objeto principal
*--------------------------------------------------------------------------------------------------- *---------------------------------------------------------------------------------------------------
LPARAMETERS toModulo, toEx AS EXCEPTION LPARAMETERS toModulo, toEx AS EXCEPTION, toFoxbin2prg
#IF .F.
LOCAL toFoxbin2prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
#ENDIF
DODEFAULT( @toModulo, @toEx ) DODEFAULT( @toModulo, @toEx )
TRY TRY
@@ -4389,7 +4416,7 @@ DEFINE CLASS c_conversor_prg_a_scx AS c_conversor_prg_a_bin
C_FB2PRG_CODE = FILETOSTR( THIS.c_InputFile ) C_FB2PRG_CODE = FILETOSTR( THIS.c_InputFile )
lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE ) lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE )
THIS.doBackup( .F., .T. ) THIS.doBackup( .F., .T., '', '', '', toFoxbin2prg )
*-- Creo el form *-- Creo el form
THIS.createForm() THIS.createForm()
@@ -4410,6 +4437,8 @@ DEFINE CLASS c_conversor_prg_a_scx AS c_conversor_prg_a_bin
THROW THROW
FINALLY
USE IN (SELECT("TABLABIN"))
ENDTRY ENDTRY
RETURN RETURN
@@ -4654,12 +4683,14 @@ DEFINE CLASS c_conversor_prg_a_pjx AS c_conversor_prg_a_bin
* 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)
* toProject (@! OUT) Objeto generado de clase CL_PROJECT con la informaci<63>n leida del texto * toProject (@! OUT) Objeto generado de clase CL_PROJECT con la informaci<63>n leida del texto
* toEx (@! OUT) Objeto con informaci<63>n del error * toEx (@! OUT) Objeto con informaci<63>n del error
* toFoxbin2prg (v! IN ) Referencia al objeto principal
*--------------------------------------------------------------------------------------------------- *---------------------------------------------------------------------------------------------------
LPARAMETERS toProject, toEx AS EXCEPTION LPARAMETERS toProject, toEx AS EXCEPTION, toFoxbin2prg
DODEFAULT( @toProject, @toEx ) DODEFAULT( @toProject, @toEx )
#IF .F. #IF .F.
LOCAL toProject AS CL_PROJECT OF 'FOXBIN2PRG.PRG' LOCAL toProject AS CL_PROJECT OF 'FOXBIN2PRG.PRG'
LOCAL toFoxbin2prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
#ENDIF #ENDIF
TRY TRY
@@ -4672,7 +4703,7 @@ DEFINE CLASS c_conversor_prg_a_pjx AS c_conversor_prg_a_bin
C_FB2PRG_CODE = FILETOSTR( THIS.c_InputFile ) C_FB2PRG_CODE = FILETOSTR( THIS.c_InputFile )
lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE ) lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE )
THIS.doBackup( .F., .T. ) THIS.doBackup( .F., .T., '', '', '', toFoxbin2prg )
*-- Creo solo la cabecera del proyecto *-- Creo solo la cabecera del proyecto
THIS.createProject() THIS.createProject()
@@ -4693,6 +4724,8 @@ DEFINE CLASS c_conversor_prg_a_pjx AS c_conversor_prg_a_bin
THROW THROW
FINALLY
USE IN (SELECT("TABLABIN"))
ENDTRY ENDTRY
RETURN RETURN
@@ -5373,12 +5406,14 @@ DEFINE CLASS c_conversor_prg_a_frx AS c_conversor_prg_a_bin
* 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)
* toReport (@! OUT) Objeto generado de clase CL_REPORT con la informaci<63>n leida del texto * toReport (@! OUT) Objeto generado de clase CL_REPORT con la informaci<63>n leida del texto
* toEx (@! OUT) Objeto con informaci<63>n del error * toEx (@! OUT) Objeto con informaci<63>n del error
* toFoxbin2prg (v! IN ) Referencia al objeto principal
*--------------------------------------------------------------------------------------------------- *---------------------------------------------------------------------------------------------------
LPARAMETERS toReport, toEx AS EXCEPTION LPARAMETERS toReport, toEx AS EXCEPTION, toFoxbin2prg
DODEFAULT( @toReport, @toEx ) DODEFAULT( @toReport, @toEx )
#IF .F. #IF .F.
LOCAL toReport AS CL_REPORT OF 'FOXBIN2PRG.PRG' LOCAL toReport AS CL_REPORT OF 'FOXBIN2PRG.PRG'
LOCAL toFoxbin2prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
#ENDIF #ENDIF
TRY TRY
@@ -5391,7 +5426,7 @@ DEFINE CLASS c_conversor_prg_a_frx AS c_conversor_prg_a_bin
C_FB2PRG_CODE = FILETOSTR( THIS.c_InputFile ) C_FB2PRG_CODE = FILETOSTR( THIS.c_InputFile )
lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE ) lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE )
THIS.doBackup( .F., .T. ) THIS.doBackup( .F., .T., '', '', '', toFoxbin2prg )
*-- Creo el reporte *-- Creo el reporte
THIS.createReport() THIS.createReport()
@@ -5411,6 +5446,8 @@ DEFINE CLASS c_conversor_prg_a_frx AS c_conversor_prg_a_bin
THROW THROW
FINALLY
USE IN (SELECT("TABLABIN"))
ENDTRY ENDTRY
RETURN lnCodError RETURN lnCodError
@@ -5767,12 +5804,14 @@ DEFINE CLASS c_conversor_prg_a_dbf AS c_conversor_prg_a_bin
* 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)
* toTable (@! OUT) Objeto generado de clase CL_TABLE con la informaci<63>n leida del texto * toTable (@! OUT) Objeto generado de clase CL_TABLE con la informaci<63>n leida del texto
* toEx (@! OUT) Objeto con informaci<63>n del error * toEx (@! OUT) Objeto con informaci<63>n del error
* toFoxbin2prg (v! IN ) Referencia al objeto principal
*--------------------------------------------------------------------------------------------------- *---------------------------------------------------------------------------------------------------
LPARAMETERS toTable, toEx AS EXCEPTION LPARAMETERS toTable, toEx AS EXCEPTION, toFoxbin2prg
DODEFAULT( @toTable, @toEx ) DODEFAULT( @toTable, @toEx )
#IF .F. #IF .F.
LOCAL toTable AS CL_DBF_TABLE OF 'FOXBIN2PRG.PRG' LOCAL toTable AS CL_DBF_TABLE OF 'FOXBIN2PRG.PRG'
LOCAL toFoxbin2prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
#ENDIF #ENDIF
TRY TRY
@@ -5785,7 +5824,7 @@ DEFINE CLASS c_conversor_prg_a_dbf AS c_conversor_prg_a_bin
C_FB2PRG_CODE = FILETOSTR( THIS.c_InputFile ) C_FB2PRG_CODE = FILETOSTR( THIS.c_InputFile )
lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE ) lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE )
THIS.doBackup( .F., .T. ) THIS.doBackup( .F., .T., '', '', '', toFoxbin2prg )
*-- 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
THIS.identificarBloquesDeCodigo( @laCodeLines, lnCodeLines, @laBloquesExclusion, lnBloquesExclusion, @toTable ) THIS.identificarBloquesDeCodigo( @laCodeLines, lnCodeLines, @laBloquesExclusion, lnBloquesExclusion, @toTable )
@@ -5802,6 +5841,8 @@ DEFINE CLASS c_conversor_prg_a_dbf AS c_conversor_prg_a_bin
THROW THROW
FINALLY
USE IN (SELECT("TABLABIN"))
ENDTRY ENDTRY
RETURN lnCodError RETURN lnCodError
@@ -6010,12 +6051,14 @@ DEFINE CLASS c_conversor_prg_a_dbc AS c_conversor_prg_a_bin
* 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)
* toDatabase (@! OUT) Objeto generado de clase CL_DBC con la informaci<63>n leida del texto * toDatabase (@! OUT) Objeto generado de clase CL_DBC con la informaci<63>n leida del texto
* toEx (@! OUT) Objeto con informaci<63>n del error * toEx (@! OUT) Objeto con informaci<63>n del error
* toFoxbin2prg (v! IN ) Referencia al objeto principal
*--------------------------------------------------------------------------------------------------- *---------------------------------------------------------------------------------------------------
LPARAMETERS toDatabase, toEx AS EXCEPTION LPARAMETERS toDatabase, toEx AS EXCEPTION, toFoxbin2prg
DODEFAULT( @toDatabase, @toEx ) DODEFAULT( @toDatabase, @toEx )
#IF .F. #IF .F.
LOCAL toDatabase AS CL_DBC OF 'FOXBIN2PRG.PRG' LOCAL toDatabase AS CL_DBC OF 'FOXBIN2PRG.PRG'
LOCAL toFoxbin2prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
#ENDIF #ENDIF
TRY TRY
@@ -6028,7 +6071,7 @@ DEFINE CLASS c_conversor_prg_a_dbc AS c_conversor_prg_a_bin
C_FB2PRG_CODE = FILETOSTR( THIS.c_InputFile ) C_FB2PRG_CODE = FILETOSTR( THIS.c_InputFile )
lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE ) lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE )
THIS.doBackup( .F., .T. ) THIS.doBackup( .F., .T., '', '', '', toFoxbin2prg )
*-- Creo la tabla *-- Creo la tabla
*THIS.createTable() *THIS.createTable()
@@ -6048,6 +6091,8 @@ DEFINE CLASS c_conversor_prg_a_dbc AS c_conversor_prg_a_bin
THROW THROW
FINALLY
USE IN (SELECT("TABLABIN"))
ENDTRY ENDTRY
RETURN lnCodError RETURN lnCodError
@@ -6068,7 +6113,6 @@ DEFINE CLASS c_conversor_prg_a_dbc AS c_conversor_prg_a_bin
STORE '' TO lcIndex, lcFieldDef STORE '' TO lcIndex, lcFieldDef
toDatabase.updateDBC( THIS.c_OutputFile ) toDatabase.updateDBC( THIS.c_OutputFile )
*USE IN (SELECT(JUSTSTEM(THIS.c_OutputFile)))
CATCH TO loEx CATCH TO loEx
@@ -6170,12 +6214,14 @@ DEFINE CLASS c_conversor_prg_a_mnx AS c_conversor_prg_a_bin
* 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)
* toMenu (@! OUT) Objeto generado de clase CL_DBC con la informaci<63>n leida del texto * toMenu (@! OUT) Objeto generado de clase CL_DBC con la informaci<63>n leida del texto
* toEx (@! OUT) Objeto con informaci<63>n del error * toEx (@! OUT) Objeto con informaci<63>n del error
* toFoxbin2prg (v! IN ) Referencia al objeto principal
*--------------------------------------------------------------------------------------------------- *---------------------------------------------------------------------------------------------------
LPARAMETERS toMenu, toEx AS EXCEPTION LPARAMETERS toMenu, toEx AS EXCEPTION, toFoxbin2prg
DODEFAULT( @toMenu, @toEx ) DODEFAULT( @toMenu, @toEx )
#IF .F. #IF .F.
LOCAL toMenu AS CL_MENU OF 'FOXBIN2PRG.PRG' LOCAL toMenu AS CL_MENU OF 'FOXBIN2PRG.PRG'
LOCAL toFoxbin2prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
#ENDIF #ENDIF
TRY TRY
@@ -6188,11 +6234,10 @@ DEFINE CLASS c_conversor_prg_a_mnx AS c_conversor_prg_a_bin
C_FB2PRG_CODE = FILETOSTR( THIS.c_InputFile ) C_FB2PRG_CODE = FILETOSTR( THIS.c_InputFile )
lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE ) lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE )
THIS.doBackup( .F., .T. ) THIS.doBackup( .F., .T., '', '', '', toFoxbin2prg )
*-- Creo la tabla *-- Creo la tabla
THIS.createMenu() THIS.createMenu()
*THIS.createMenu_RecordHeader( lnMenuType )
*-- 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
THIS.identificarBloquesDeCodigo( @laCodeLines, lnCodeLines, @laBloquesExclusion, lnBloquesExclusion, @toMenu ) THIS.identificarBloquesDeCodigo( @laCodeLines, lnCodeLines, @laBloquesExclusion, lnBloquesExclusion, @toMenu )
@@ -6209,6 +6254,8 @@ DEFINE CLASS c_conversor_prg_a_mnx AS c_conversor_prg_a_bin
THROW THROW
FINALLY
USE IN (SELECT("TABLABIN"))
ENDTRY ENDTRY
RETURN lnCodError RETURN lnCodError
@@ -6293,8 +6340,6 @@ DEFINE CLASS c_conversor_prg_a_mnx AS c_conversor_prg_a_bin
lnCodError = 0 lnCodError = 0
STORE '' TO lcIndex, lcFieldDef STORE '' TO lcIndex, lcFieldDef
*THIS.createMenu_RecordHeader( lnMenuType )
toMenu.updateMENU( THIS.c_OutputFile ) toMenu.updateMENU( THIS.c_OutputFile )
@@ -6375,8 +6420,12 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base
* 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)
* toModulo (@! OUT) Objeto generado de clase correspondiente con la informaci<63>n leida del texto * toModulo (@! OUT) Objeto generado de clase correspondiente con la informaci<63>n leida del texto
* toEx (@! OUT) Objeto con informaci<63>n del error * toEx (@! OUT) Objeto con informaci<63>n del error
* toFoxbin2prg (v! IN ) Referencia al objeto principal
*--------------------------------------------------------------------------------------------------- *---------------------------------------------------------------------------------------------------
LPARAMETERS toModulo, toEx AS EXCEPTION LPARAMETERS toModulo, toEx AS EXCEPTION, toFoxbin2prg
#IF .F.
LOCAL toFoxbin2prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
#ENDIF
DODEFAULT( @toModulo, @toEx ) DODEFAULT( @toModulo, @toEx )
ENDPROC ENDPROC
@@ -7845,8 +7894,12 @@ DEFINE CLASS c_conversor_vcx_a_prg AS c_conversor_bin_a_prg
* 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)
* toModulo (@! OUT) Objeto generado de clase CL_MODULO con la informaci<63>n leida del texto * toModulo (@! OUT) Objeto generado de clase CL_MODULO con la informaci<63>n leida del texto
* toEx (@! OUT) Objeto con informaci<63>n del error * toEx (@! OUT) Objeto con informaci<63>n del error
* toFoxbin2prg (v! IN ) Referencia al objeto principal
*--------------------------------------------------------------------------------------------------- *---------------------------------------------------------------------------------------------------
LPARAMETERS toModulo, toEx AS EXCEPTION LPARAMETERS toModulo, toEx AS EXCEPTION, toFoxbin2prg
#IF .F.
LOCAL toFoxbin2prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
#ENDIF
DODEFAULT( @toModulo, @toEx ) DODEFAULT( @toModulo, @toEx )
TRY TRY
@@ -7937,6 +7990,8 @@ DEFINE CLASS c_conversor_vcx_a_prg AS c_conversor_bin_a_prg
THIS.write_ENDDEFINE_SiCorresponde( lnLastClass ) THIS.write_ENDDEFINE_SiCorresponde( lnLastClass )
THIS.doBackup( .F., .T., '', '', '', toFoxbin2prg )
*-- Genero el VC2 *-- Genero el VC2
IF THIS.l_Test IF THIS.l_Test
toModulo = C_FB2PRG_CODE toModulo = C_FB2PRG_CODE
@@ -7980,12 +8035,14 @@ DEFINE CLASS c_conversor_scx_a_prg AS c_conversor_bin_a_prg
* 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)
* toModulo (@! OUT) Objeto generado de clase CL_MODULO con la informaci<63>n leida del texto * toModulo (@! OUT) Objeto generado de clase CL_MODULO con la informaci<63>n leida del texto
* toEx (@! OUT) Objeto con informaci<63>n del error * toEx (@! OUT) Objeto con informaci<63>n del error
* toFoxbin2prg (v! IN ) Referencia al objeto principal
*--------------------------------------------------------------------------------------------------- *---------------------------------------------------------------------------------------------------
LPARAMETERS toModulo, toEx AS EXCEPTION LPARAMETERS toModulo, toEx AS EXCEPTION, toFoxbin2prg
DODEFAULT( @toModulo, @toEx ) DODEFAULT( @toModulo, @toEx )
#IF .F. #IF .F.
LOCAL toModulo AS CL_MODULO OF 'FOXBIN2PRG.PRG' LOCAL toModulo AS CL_MODULO OF 'FOXBIN2PRG.PRG'
LOCAL toFoxbin2prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
#ENDIF #ENDIF
TRY TRY
@@ -8098,6 +8155,8 @@ DEFINE CLASS c_conversor_scx_a_prg AS c_conversor_bin_a_prg
THIS.write_ENDDEFINE_SiCorresponde( lnLastClass ) THIS.write_ENDDEFINE_SiCorresponde( lnLastClass )
THIS.doBackup( .F., .T., '', '', '', toFoxbin2prg )
*-- Genero el SC2 *-- Genero el SC2
IF THIS.l_Test IF THIS.l_Test
toModulo = C_FB2PRG_CODE toModulo = C_FB2PRG_CODE
@@ -8143,8 +8202,12 @@ DEFINE CLASS c_conversor_pjx_a_prg AS c_conversor_bin_a_prg
* 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)
* toModulo (@! OUT) Objeto generado de clase CL_PROJECT con la informaci<63>n leida del texto * toModulo (@! OUT) Objeto generado de clase CL_PROJECT con la informaci<63>n leida del texto
* toEx (@! OUT) Objeto con informaci<63>n del error * toEx (@! OUT) Objeto con informaci<63>n del error
* toFoxbin2prg (v! IN ) Referencia al objeto principal
*--------------------------------------------------------------------------------------------------- *---------------------------------------------------------------------------------------------------
LPARAMETERS toModulo, toEx AS EXCEPTION LPARAMETERS toModulo, toEx AS EXCEPTION, toFoxbin2prg
#IF .F.
LOCAL toFoxbin2prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
#ENDIF
DODEFAULT( @toModulo, @toEx ) DODEFAULT( @toModulo, @toEx )
TRY TRY
@@ -8397,6 +8460,8 @@ DEFINE CLASS c_conversor_pjx_a_prg AS c_conversor_bin_a_prg
ENDTEXT ENDTEXT
THIS.doBackup( .F., .T., '', '', '', toFoxbin2prg )
*-- Genero el PJ2 *-- Genero el PJ2
IF THIS.l_Test IF THIS.l_Test
toModulo = C_FB2PRG_CODE toModulo = C_FB2PRG_CODE
@@ -8448,7 +8513,16 @@ DEFINE CLASS c_conversor_frx_a_prg AS c_conversor_bin_a_prg
******************************************************************************************************************* *******************************************************************************************************************
PROCEDURE Convertir PROCEDURE Convertir
LPARAMETERS toModulo, toEx AS EXCEPTION *---------------------------------------------------------------------------------------------------
* PAR<41>METROS: (!=Obligatorio | ?=Opcional) (@=Pasar por referencia | v=Pasar por valor) (IN/OUT)
* toModulo (@! OUT) Objeto generado de clase CL_PROJECT con la informaci<63>n leida del texto
* toEx (@! OUT) Objeto con informaci<63>n del error
* toFoxbin2prg (v! IN ) Referencia al objeto principal
*---------------------------------------------------------------------------------------------------
LPARAMETERS toModulo, toEx AS EXCEPTION, toFoxbin2prg
#IF .F.
LOCAL toFoxbin2prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
#ENDIF
DODEFAULT( @toModulo, @toEx ) DODEFAULT( @toModulo, @toEx )
TRY TRY
@@ -8518,6 +8592,8 @@ DEFINE CLASS c_conversor_frx_a_prg AS c_conversor_bin_a_prg
THIS.write_DETALLE_REPORTE( @loRegCur ) THIS.write_DETALLE_REPORTE( @loRegCur )
ENDIF ENDIF
THIS.doBackup( .F., .T., '', '', '', toFoxbin2prg )
*-- Genero el FR2 *-- Genero el FR2
IF THIS.l_Test IF THIS.l_Test
toModulo = C_FB2PRG_CODE toModulo = C_FB2PRG_CODE
@@ -8562,8 +8638,12 @@ DEFINE CLASS c_conversor_dbf_a_prg AS c_conversor_bin_a_prg
* 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)
* toModulo (@! OUT) Contenido del texto generado * toModulo (@! OUT) Contenido del texto generado
* toEx (@! OUT) Objeto con informaci<63>n del error * toEx (@! OUT) Objeto con informaci<63>n del error
* toFoxbin2prg (v! IN ) Referencia al objeto principal
*--------------------------------------------------------------------------------------------------- *---------------------------------------------------------------------------------------------------
LPARAMETERS toModulo, toEx AS EXCEPTION LPARAMETERS toModulo, toEx AS EXCEPTION, toFoxbin2prg
#IF .F.
LOCAL toFoxbin2prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
#ENDIF
DODEFAULT( @toModulo, @toEx ) DODEFAULT( @toModulo, @toEx )
TRY TRY
@@ -8583,6 +8663,8 @@ DEFINE CLASS c_conversor_dbf_a_prg AS c_conversor_bin_a_prg
C_FB2PRG_CODE = C_FB2PRG_CODE + loTable.toText( ln_HexFileType, ll_FileHasCDX, ll_FileHasMemo, ll_FileIsDBC, lc_DBC_Name, THIS.c_InputFile ) C_FB2PRG_CODE = C_FB2PRG_CODE + loTable.toText( ln_HexFileType, ll_FileHasCDX, ll_FileHasMemo, ll_FileIsDBC, lc_DBC_Name, THIS.c_InputFile )
THIS.doBackup( .F., .T., '', '', '', toFoxbin2prg )
*-- Genero el DB2 *-- Genero el DB2
IF THIS.l_Test IF THIS.l_Test
toModulo = C_FB2PRG_CODE toModulo = C_FB2PRG_CODE
@@ -8635,12 +8717,14 @@ DEFINE CLASS c_conversor_dbc_a_prg AS c_conversor_bin_a_prg
* 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)
* toDatabase (@! OUT) Objeto generado de clase CL_DBC con la informaci<63>n leida del texto * toDatabase (@! OUT) Objeto generado de clase CL_DBC con la informaci<63>n leida del texto
* toEx (@! OUT) Objeto con informaci<63>n del error * toEx (@! OUT) Objeto con informaci<63>n del error
* toFoxbin2prg (v! IN ) Referencia al objeto principal
*--------------------------------------------------------------------------------------------------- *---------------------------------------------------------------------------------------------------
LPARAMETERS toDatabase, toEx AS EXCEPTION LPARAMETERS toDatabase, toEx AS EXCEPTION, toFoxbin2prg
DODEFAULT( @toDatabase, @toEx ) DODEFAULT( @toDatabase, @toEx )
#IF .F. #IF .F.
LOCAL toDatabase AS CL_DBC OF 'FOXBIN2PRG.PRG' LOCAL toDatabase AS CL_DBC OF 'FOXBIN2PRG.PRG'
LOCAL toFoxbin2prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
#ENDIF #ENDIF
TRY TRY
@@ -8660,6 +8744,8 @@ DEFINE CLASS c_conversor_dbc_a_prg AS c_conversor_bin_a_prg
C_FB2PRG_CODE = C_FB2PRG_CODE + toDatabase.toText() C_FB2PRG_CODE = C_FB2PRG_CODE + toDatabase.toText()
THIS.doBackup( .F., .T., '', '', '', toFoxbin2prg )
*-- Genero el DC2 *-- Genero el DC2
IF THIS.l_Test IF THIS.l_Test
toModulo = C_FB2PRG_CODE toModulo = C_FB2PRG_CODE
@@ -8704,12 +8790,14 @@ DEFINE CLASS c_conversor_mnx_a_prg AS c_conversor_bin_a_prg
* 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)
* totoMenu (@! OUT) Objeto generado de clase CL_MENU con la informaci<63>n leida del texto * totoMenu (@! OUT) Objeto generado de clase CL_MENU con la informaci<63>n leida del texto
* toEx (@! OUT) Objeto con informaci<63>n del error * toEx (@! OUT) Objeto con informaci<63>n del error
* toFoxbin2prg (v! IN ) Referencia al objeto principal
*--------------------------------------------------------------------------------------------------- *---------------------------------------------------------------------------------------------------
LPARAMETERS toMenu, toEx AS EXCEPTION LPARAMETERS toMenu, toEx AS EXCEPTION, toFoxbin2prg
DODEFAULT( @toMenu, @toEx ) DODEFAULT( @toMenu, @toEx )
#IF .F. #IF .F.
LOCAL toMenu AS CL_MENU OF 'FOXBIN2PRG.PRG' LOCAL toMenu AS CL_MENU OF 'FOXBIN2PRG.PRG'
LOCAL toFoxbin2prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
#ENDIF #ENDIF
TRY TRY
@@ -8726,6 +8814,8 @@ DEFINE CLASS c_conversor_mnx_a_prg AS c_conversor_bin_a_prg
C_FB2PRG_CODE = C_FB2PRG_CODE + toMenu.toText() C_FB2PRG_CODE = C_FB2PRG_CODE + toMenu.toText()
THIS.doBackup( .F., .T., '', '', '', toFoxbin2prg )
*-- Genero el DC2 *-- Genero el DC2
IF THIS.l_Test IF THIS.l_Test
toMenu = C_FB2PRG_CODE toMenu = C_FB2PRG_CODE
@@ -14071,6 +14161,7 @@ DEFINE CLASS CL_MENU AS CL_MENU_COL_BASE
+ [<memberdata name="analizarbloque_procedure" display="analizarBloque_PROCEDURE"/>] ; + [<memberdata name="analizarbloque_procedure" display="analizarBloque_PROCEDURE"/>] ;
+ [<memberdata name="analizarbloque_setupcode" display="analizarBloque_SetupCode"/>] ; + [<memberdata name="analizarbloque_setupcode" display="analizarBloque_SetupCode"/>] ;
+ [<memberdata name="updatemenu" display="updateMENU"/>] ; + [<memberdata name="updatemenu" display="updateMENU"/>] ;
+ [<memberdata name="updatemenu_recursivo" display="UpdateMenu_Recursivo"/>] ;
+ [<memberdata name="_sourcefile" display="_SourceFile"/>] ; + [<memberdata name="_sourcefile" display="_SourceFile"/>] ;
+ [<memberdata name="_version" display="_Version"/>] ; + [<memberdata name="_version" display="_Version"/>] ;
+ [</VFPData>] + [</VFPData>]
@@ -14125,6 +14216,7 @@ DEFINE CLASS CL_MENU AS CL_MENU_COL_BASE
.LOCATION = 1 .LOCATION = 1
.SETUPTYPE = 1 .SETUPTYPE = 1
.CLEANTYPE = 1 .CLEANTYPE = 1
.ITEMNUM = STR(0,3)
ENDWITH ENDWITH
FOR I = I + 0 TO tnCodeLines FOR I = I + 0 TO tnCodeLines
@@ -14501,6 +14593,75 @@ DEFINE CLASS CL_MENU AS CL_MENU_COL_BASE
PROCEDURE updateMENU PROCEDURE updateMENU
*---------------------------------------------------------------------------------------------------
* PAR<41>METROS: (!=Obligatorio | ?=Opcional) (@=Pasar por referencia | v=Pasar por valor) (IN/OUT)
* tcOutputFile (@! IN/OUT) Contenido de la l<>nea en an<61>lisis
*---------------------------------------------------------------------------------------------------
LPARAMETERS tcOutputFile
SELECT TABLABIN
IF THIS.l_Debug
STRTOFILE( '', 'Opciones.txt' )
ENDIF
THIS.UpdateMenu_Recursivo( THIS, 0 )
ENDPROC
PROCEDURE UpdateMenu_Recursivo
LPARAMETERS toObj as Collection, tnNivel
LOCAL loReg, loEx as Exception
TRY
IF VARTYPE( toObj.oReg ) = 'O'
loReg = toObj.oReg
INSERT INTO TABLABIN FROM NAME loReg
*APPEND BLANK
*GATHER NAME loReg MEMO
IF THIS.l_Debug
STRTOFILE( REPLICATE(C_TAB,tnNivel) ;
+ 'ObjType=' + TRANSFORM(loReg.ObjType) ;
+ ', ObjCode=' + TRANSFORM(loReg.ObjCode) ;
+ ', Name=' + TRANSFORM(loReg.NAME) ;
+ ', LevelName=' + TRANSFORM(loReg.LEVELNAME) ;
+ ', ItemNum=' + TRANSFORM(loReg.ItemNum) ;
+ ', Location=' + TRANSFORM(loReg.Location) ;
+ ', Prompt=' + TRANSFORM(loReg.PROMPT) ;
+ ', Message=' + TRANSFORM(loReg.Message) ;
+ ', KeyName=' + TRANSFORM(loReg.KEYNAME) ;
+ ', KeyLabel=' + TRANSFORM(loReg.KeyLabel) ;
+ ', Comment=' + TRANSFORM(loReg.Comment) ;
+ ', SkipFor=' + TRANSFORM(loReg.SkipFor) ;
+ CR_LF ;
, 'Opciones.txt', 1 )
ENDIF
ELSE
IF THIS.l_Debug
STRTOFILE( REPLICATE(C_TAB,tnNivel) ;
+ 'Objeto [' + toObj.Class + '] sin registro oReg (nivel ' + TRANSFORM(tnNivel) + ')' ;
+ CR_LF ;
, 'Opciones.txt', 1 )
ENDIF
ENDIF
IF toObj.Count > 0 THEN
FOR EACH loReg IN toObj FOXOBJECT
THIS.UpdateMenu_Recursivo( loReg, tnNivel + 1 )
ENDFOR
ENDIF
CATCH TO loEx
IF THIS.l_Debug AND _VFP.STARTMODE = 0
SET STEP ON
ENDIF
THROW
ENDTRY
ENDPROC ENDPROC
@@ -14514,6 +14675,7 @@ DEFINE CLASS CL_MENU_BARPOP AS CL_MENU_COL_BASE
+ [<memberdata name="updatemenu" display="updateMENU"/>] ; + [<memberdata name="updatemenu" display="updateMENU"/>] ;
+ [<memberdata name="c_parentname" display="c_ParentName"/>] ; + [<memberdata name="c_parentname" display="c_ParentName"/>] ;
+ [<memberdata name="n_parentcode" display="n_ParentCode"/>] ; + [<memberdata name="n_parentcode" display="n_ParentCode"/>] ;
+ [<memberdata name="n_parentcount" display="n_ParentCount"/>] ;
+ [</VFPData>] + [</VFPData>]
#IF .F. #IF .F.
@@ -14522,6 +14684,7 @@ DEFINE CLASS CL_MENU_BARPOP AS CL_MENU_COL_BASE
c_ParentName = '' c_ParentName = ''
n_ParentCode = 0 n_ParentCode = 0
n_ParentCount = 0
PROCEDURE analizarBloque PROCEDURE analizarBloque
@@ -14541,12 +14704,13 @@ DEFINE CLASS CL_MENU_BARPOP AS CL_MENU_COL_BASE
TRY TRY
LOCAL loOption AS CL_MENU_OPTION OF 'FOXBIN2PRG.PRG' LOCAL loOption AS CL_MENU_OPTION OF 'FOXBIN2PRG.PRG'
LOCAL llBloqueEncontrado, lcSubName, lcComment, loReg, loEx AS EXCEPTION LOCAL llBloqueEncontrado, lcSubName, lcComment, lnLast_I, loReg, loEx AS EXCEPTION
STORE '' TO lcSubName, lcComment STORE '' TO lcSubName, lcComment
THIS.oReg = toConversor.emptyRecord() THIS.oReg = toConversor.emptyRecord()
loReg = THIS.oReg loReg = THIS.oReg
loReg.OBJTYPE = 2 loReg.OBJTYPE = 2
loReg.ITEMNUM = STR(0,3)
*LEFT( tcLine, 13 ) == 'DEFINE POPUP ' *LEFT( tcLine, 13 ) == 'DEFINE POPUP '
llBloqueEncontrado = .T. llBloqueEncontrado = .T.
@@ -14576,13 +14740,18 @@ DEFINE CLASS CL_MENU_BARPOP AS CL_MENU_COL_BASE
CASE LEFT( tcLine, 11 ) == 'DEFINE PAD ' OR LEFT( tcLine, 11 ) == 'DEFINE BAR ' CASE LEFT( tcLine, 11 ) == 'DEFINE PAD ' OR LEFT( tcLine, 11 ) == 'DEFINE BAR '
loOption = CREATEOBJECT("CL_MENU_OPTION") loOption = CREATEOBJECT("CL_MENU_OPTION")
lnLast_I = I
loOption.c_ParentName = loReg.LEVELNAME loOption.c_ParentName = loReg.LEVELNAME
loOption.n_ParentCode = loReg.OBJCODE loOption.n_ParentCode = loReg.OBJCODE
loOption.analizarBloque( @tcLine, @taCodeLines, @I, tnCodeLines, toConversor ) loOption.n_ParentCount = THIS.Count
THIS.ADD( loOption ) IF NOT loOption.analizarBloque( @tcLine, @taCodeLines, @I, tnCodeLines, toConversor )
IF loOption.oReg.OBJCODE <> 77 I = lnLast_I
llBloqueEncontrado = .F.
EXIT EXIT
ENDIF ENDIF
THIS.ADD( loOption )
loOption.oReg.ITEMNUM = STR(THIS.Count,3)
loReg.NUMITEMS = THIS.Count
loOption = NULL loOption = NULL
OTHERWISE && Otro valor OTHERWISE && Otro valor
@@ -14688,6 +14857,7 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
+ [<memberdata name="get_procnamefromsnippet" display="get_ProcNameFromSnippet"/>] ; + [<memberdata name="get_procnamefromsnippet" display="get_ProcNameFromSnippet"/>] ;
+ [<memberdata name="c_parentname" display="c_ParentName"/>] ; + [<memberdata name="c_parentname" display="c_ParentName"/>] ;
+ [<memberdata name="n_parentcode" display="n_ParentCode"/>] ; + [<memberdata name="n_parentcode" display="n_ParentCode"/>] ;
+ [<memberdata name="n_parentcount" display="n_ParentCount"/>] ;
+ [</VFPData>] + [</VFPData>]
#IF .F. #IF .F.
@@ -14696,6 +14866,7 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
c_ParentName = '' c_ParentName = ''
n_ParentCode = 0 n_ParentCode = 0
n_ParentCount = 0
PROCEDURE analizarBloque PROCEDURE analizarBloque
@@ -14715,12 +14886,13 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
TRY TRY
LOCAL loBarPop AS CL_MENU_BARPOP OF 'FOXBIN2PRG.PRG' LOCAL loBarPop AS CL_MENU_BARPOP OF 'FOXBIN2PRG.PRG'
LOCAL llBloqueEncontrado, lcComment, loReg, loEx AS EXCEPTION ; LOCAL llBloqueEncontrado, lcComment, loReg, lnLast_I, loEx AS EXCEPTION ;
, llPadOBar_Analizado , llPadOBar_Analizado
STORE '' TO lcComment STORE '' TO lcComment
THIS.oReg = toConversor.emptyRecord() THIS.oReg = toConversor.emptyRecord()
loReg = THIS.oReg loReg = THIS.oReg
loReg.ITEMNUM = STR(0,3)
*IF LEFT( tcLine, 11 ) == 'DEFINE PAD ' OR LEFT( tcLine, 11 ) == 'DEFINE BAR ' *IF LEFT( tcLine, 11 ) == 'DEFINE PAD ' OR LEFT( tcLine, 11 ) == 'DEFINE BAR '
llBloqueEncontrado = .T. llBloqueEncontrado = .T.
@@ -14745,22 +14917,36 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
CASE THIS.analizarBloque_DefinePAD( @tcLine, @taCodeLines, @I, tnCodeLines, toConversor ) CASE THIS.analizarBloque_DefinePAD( @tcLine, @taCodeLines, @I, tnCodeLines, toConversor )
*llPadOBar_Analizado = .T. *llPadOBar_Analizado = .T.
IF EMPTY(loReg.PROMPT)
*-- Esta opci<63>n no corresponde a este nivel. Debe subir.
llBloqueEncontrado = .F.
EXIT
ENDIF
IF loReg.OBJCODE <> 77 IF loReg.OBJCODE <> 77
EXIT EXIT
ENDIF ENDIF
CASE THIS.analizarBloque_DefineBAR( @tcLine, @taCodeLines, @I, tnCodeLines, toConversor ) CASE THIS.analizarBloque_DefineBAR( @tcLine, @taCodeLines, @I, tnCodeLines, toConversor )
*llPadOBar_Analizado = .T. *llPadOBar_Analizado = .T.
IF EMPTY(loReg.PROMPT)
*-- Esta opci<63>n no corresponde a este nivel. Debe subir.
llBloqueEncontrado = .F.
EXIT
ENDIF
IF loReg.OBJCODE <> 77 IF loReg.OBJCODE <> 77
EXIT EXIT
ENDIF ENDIF
CASE LEFT( tcLine, 13 ) == 'DEFINE POPUP ' CASE LEFT( tcLine, 13 ) == 'DEFINE POPUP '
loBarPop = CREATEOBJECT("CL_MENU_BARPOP") loBarPop = CREATEOBJECT("CL_MENU_BARPOP")
lnLast_I = I
loBarPop.c_ParentName = loReg.LEVELNAME loBarPop.c_ParentName = loReg.LEVELNAME
loBarPop.n_ParentCode = loReg.OBJCODE loBarPop.n_ParentCode = loReg.OBJCODE
loBarPop.analizarBloque( @tcLine, @taCodeLines, @I, tnCodeLines, toConversor ) loBarPop.n_ParentCount = THIS.Count
THIS.ADD( loBarPop ) THIS.ADD( loBarPop )
IF NOT loBarPop.analizarBloque( @tcLine, @taCodeLines, @I, tnCodeLines, toConversor )
I = I - 1
ENDIF
loBarPop = NULL loBarPop = NULL
EXIT EXIT
@@ -14781,6 +14967,8 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
THROW THROW
FINALLY
loBarPop = NULL
ENDTRY ENDTRY
RETURN llBloqueEncontrado RETURN llBloqueEncontrado
@@ -14828,10 +15016,16 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
loReg.NAME = lcPadName loReg.NAME = lcPadName
*ENDIF *ENDIF
loReg.LEVELNAME = ALLTRIM( STREXTRACT( tcLine, ' OF ', ' PROMPT ' ) ) loReg.LEVELNAME = ALLTRIM( STREXTRACT( tcLine, ' OF ', ' PROMPT ' ) )
IF loReg.LEVELNAME # THIS.c_ParentName
EXIT
ENDIF
loReg.PROMPT = ALLTRIM( STREXTRACT( tcLine, ' PROMPT ', ' COLOR ' ) ) loReg.PROMPT = ALLTRIM( STREXTRACT( tcLine, ' PROMPT ', ' COLOR ' ) )
loReg.SCHEME = INT( VAL( ALLTRIM( STREXTRACT( tcLine, ' COLOR SCHEME ', ';', 1, 2 ) ) ) ) loReg.SCHEME = INT( VAL( ALLTRIM( STREXTRACT( tcLine, ' COLOR SCHEME ', ';', 1, 2 ) ) ) )
*-- ANALISIS DEL "DEFINE PAD" *-- ANALISIS DEL "DEFINE PAD"
IF ';' $ tcLine
FOR I = I + 1 TO tnCodeLines FOR I = I + 1 TO tnCodeLines
THIS.set_Line( @tcLine, @taCodeLines, I ) THIS.set_Line( @tcLine, @taCodeLines, I )
@@ -14878,12 +15072,10 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
ENDCASE ENDCASE
IF NOT ';' $ tcLine && Fin IF NOT ';' $ tcLine && Fin
I = I + 1
EXIT EXIT
ENDIF ENDIF
ENDFOR ENDFOR
ENDIF && ';' $ tcLine
I = I - 1
* Estructuras ejemplo a analizar: * Estructuras ejemplo a analizar:
@@ -14996,9 +15188,16 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
loReg.NAME = lcBarName loReg.NAME = lcBarName
ENDIF ENDIF
loReg.LEVELNAME = ALLTRIM( STREXTRACT( tcLine, ' OF ', ' PROMPT ' ) ) loReg.LEVELNAME = ALLTRIM( STREXTRACT( tcLine, ' OF ', ' PROMPT ' ) )
IF loReg.LEVELNAME # THIS.c_ParentName
EXIT
ENDIF
loReg.PROMPT = ALLTRIM( STREXTRACT( tcLine, ' PROMPT ', ';', 1, 2 ) ) loReg.PROMPT = ALLTRIM( STREXTRACT( tcLine, ' PROMPT ', ';', 1, 2 ) )
*loReg.ItemNum = STR(THIS.n_ParentCount + 1,3)
*-- ANALISIS DEL "DEFINE BAR" *-- ANALISIS DEL "DEFINE BAR"
IF ';' $ tcLine
FOR I = I + 1 TO tnCodeLines FOR I = I + 1 TO tnCodeLines
THIS.set_Line( @tcLine, @taCodeLines, I ) THIS.set_Line( @tcLine, @taCodeLines, I )
@@ -15045,16 +15244,13 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE
ENDCASE ENDCASE
IF NOT ';' $ tcLine && Fin IF NOT ';' $ tcLine && Fin
I = I + 1
EXIT EXIT
ENDIF ENDIF
ENDFOR ENDFOR
ENDIF && ';' $ tcLine
I = I - 1
IF LEFT(lcBarName,1) == '_' IF LEFT(lcBarName,1) == '_'
*-- Es un BAR del Sistema, as<61> que no tiene ON BAR ni nada m<>s. *-- Es un BAR del Sistema, as<61> que no tiene ON BAR ni nada m<>s.
loReg.ItemNum = 0 && *FDB* ASIGNAR ESTO BIEN!!
loReg.OBJCODE = 78 && Bar# loReg.OBJCODE = 78 && Bar#
EXIT EXIT
ENDIF ENDIF