From a345d4447608c0b55ce5276bfae15600548b1f22 Mon Sep 17 00:00:00 2001 From: fdbozzo Date: Thu, 30 Oct 2014 16:02:00 +0100 Subject: [PATCH 1/5] Changeset: 458 fdbozzo - 30/10/2014 15:51:39: - Condicionamiento de EXTERNAL --- foxbin2prg.prg | 174 ++++++++++++++++++++++++++++++++++++------------- 1 file changed, 127 insertions(+), 47 deletions(-) diff --git a/foxbin2prg.prg b/foxbin2prg.prg index 1e10043..6a02321 100644 --- a/foxbin2prg.prg +++ b/foxbin2prg.prg @@ -107,6 +107,7 @@ * 19/09/2014 FDBOZZO v1.19.34 Arreglo bug: Si se ejecuta FoxBin2Prg desde ventana de comandos FoxPro para un proyecto y hay algún archivo abierto o cacheado, se produce un error al intentar capitalizar el archivo de entrada (Jim Nelson) * 26/09/2014 FDBOZZO v1.19.35 Mejora: Generar siempre el mismo Timestamp y UniqueID para los binarios minimizaría los cambios al regenerarlos (Marcio Gomez G.) * 08/10/2014 FDBOZZO v1.19.36 Arreglo bug: Al generar el mn2 el identificador queda vacío (bug introducido en v1.19.35) +* 30/10/2014 FDBOZZO v1.19.37 Mejora: Optimizaciones y condicionamiento de EXTERNAL * * *--------------------------------------------------------------------------------------------------- @@ -2619,7 +2620,10 @@ DEFINE CLASS c_conversor_base AS SESSION * tnLEN_TAG_F (v! IN ) Longitud del tag de fin *-------------------------------------------------------------------------------------------------------------- LPARAMETERS tcPropName, tcValue, taProps, tnProp_Count, I, tcTAG_I, tcTAG_F, tnLEN_TAG_I, tnLEN_TAG_F - EXTERNAL ARRAY taProps + + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taProps + ENDIF LOCAL llBloqueEncontrado, loEx AS EXCEPTION TRY @@ -3088,7 +3092,10 @@ DEFINE CLASS c_conversor_base AS SESSION * tcRightTag (v! IN ) TAG de fin de los metadatos *-------------------------------------------------------------------------------------------------------------- LPARAMETERS tcLineWithMetadata, taPropsAndValues, tnPropsAndValues_Count, tcLeftTag, tcRightTag - EXTERNAL ARRAY taPropsAndValues + + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taPropsAndValues + ENDIF LOCAL lcMetadatos, I, lnEqualSigns, lcNextVar, lcStr, lcVirtualMeta, lnPos1, lnPos2, lnLastPos, lnCantComillas STORE '' TO lcVirtualMeta @@ -3231,7 +3238,9 @@ DEFINE CLASS c_conversor_base AS SESSION * taLineasExclusion (@? OUT) Array unidimensional con un .T. o .F. según la línea sea de exclusión o no * tnBloquesExclusion (@? OUT) Cantidad de bloques de exclusión *-------------------------------------------------------------------------------------------------------------- - EXTERNAL ARRAY ta_ID_Bloques, taLineasExclusion + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY ta_ID_Bloques, taLineasExclusion + ENDIF TRY LOCAL lnBloques, I, X, lnPrimerID, lnLen_IDFinBQ, lnID_Bloques_Count, lcWord, lnAnidamientos, lcLine, lcPrevLine @@ -3333,17 +3342,6 @@ DEFINE CLASS c_conversor_base AS SESSION PROCEDURE lineaExcluida LPARAMETERS tn_Linea, tnBloquesExclusion, taLineasExclusion - EXTERNAL ARRAY taLineasExclusion - *LOCAL X, llExcluida - - *FOR X = 1 TO tnBloquesExclusion - * IF BETWEEN( tn_Linea, taBloquesExclusion(X,1), taBloquesExclusion(X,2) ) - * llExcluida = .T. - * EXIT - * ENDIF - *ENDFOR - - *RETURN llExcluida RETURN taLineasExclusion(tn_Linea) ENDPROC @@ -3651,7 +3649,10 @@ DEFINE CLASS c_conversor_base AS SESSION * 2=Sort completo de propiedades con "Name" al final (para la versión BIN) *-------------------------------------------------------------------------------------------------------------- LPARAMETERS taPropsAndValues, tnPropsAndValues_Count, tnSortType - EXTERNAL ARRAY taPropsAndValues + + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taPropsAndValues + ENDIF TRY LOCAL I, X, lnArrayCols, laPropsAndValues(1,2), lcPropName, lcSortedMemo, lcMethods @@ -4896,7 +4897,10 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base PROCEDURE analizarLineasDeProcedure LPARAMETERS toClase, toObjeto, tcLine, taCodeLines, I, tnCodeLines, tcProcedureAbierto, tc_Comentario ; , taLineasExclusion, tnBloquesExclusion - EXTERNAL ARRAY taCodeLines + + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taCodeLines + ENDIF #IF .F. LOCAL toObjeto AS CL_OBJETO OF 'FOXBIN2PRG.PRG' @@ -4974,7 +4978,9 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base PROCEDURE analizarBloque_ADD_OBJECT LPARAMETERS toModulo, toClase, tcLine, I, taCodeLines, tnCodeLines - EXTERNAL ARRAY taCodeLines + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taCodeLines + ENDIF #IF .F. LOCAL toModulo AS CL_MODULO OF 'FOXBIN2PRG.PRG' @@ -5200,7 +5206,9 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base LPARAMETERS toModulo, toClase, tcLine, taCodeLines, I, tnCodeLines, tcProcedureAbierto ; , taLineasExclusion, tnBloquesExclusion, tc_Comentario - EXTERNAL ARRAY taCodeLines, tnBloquesExclusion, taLineasExclusion + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taCodeLines, tnBloquesExclusion, taLineasExclusion + ENDIF #IF .F. LOCAL toModulo AS CL_MODULO OF 'FOXBIN2PRG.PRG' @@ -5437,7 +5445,9 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base PROCEDURE analizarBloque_CLASSCOMMENTS LPARAMETERS toClase, tcLine ,taCodeLines, tnCodeLines, I - EXTERNAL ARRAY taCodeLines + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taCodeLines + ENDIF #IF .F. LOCAL toClase AS CL_CLASE OF 'FOXBIN2PRG.PRG' @@ -5757,7 +5767,9 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base *-------------------------------------------------------------------------------------------------------------- LPARAMETERS taCodeLines, tnCodeLines, taLineasExclusion, tnBloquesExclusion, toModulo - EXTERNAL ARRAY taCodeLines, taLineasExclusion + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taCodeLines, taLineasExclusion + ENDIF #IF .F. LOCAL toModulo AS CL_MODULO OF 'FOXBIN2PRG.PRG' @@ -6652,7 +6664,9 @@ DEFINE CLASS c_conversor_prg_a_pjx AS c_conversor_prg_a_bin * NOTA: * Como identificador se usa el nombre de clase o de procedimiento, según corresponda. *-------------------------------------------------------------------------------------------------------------- - EXTERNAL ARRAY taCodeLines, taLineasExclusion + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taCodeLines, taLineasExclusion + ENDIF #IF .F. LOCAL toProject AS CL_PROJECT OF 'FOXBIN2PRG.PRG' @@ -6985,7 +6999,10 @@ DEFINE CLASS c_conversor_prg_a_pjx AS c_conversor_prg_a_bin *------------------------------------------------------ LPARAMETERS toProject, tcLine, taCodeLines, I, tnCodeLines - EXTERNAL ARRAY toProject + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY toProject + ENDIF + #IF .F. LOCAL toProject AS CL_PROJECT OF 'FOXBIN2PRG.PRG' #ENDIF @@ -7047,7 +7064,10 @@ DEFINE CLASS c_conversor_prg_a_pjx AS c_conversor_prg_a_bin *------------------------------------------------------ LPARAMETERS toProject, tcLine, taCodeLines, I, tnCodeLines - EXTERNAL ARRAY toProject + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY toProject + ENDIF + #IF .F. LOCAL toProject AS CL_PROJECT OF 'FOXBIN2PRG.PRG' #ENDIF @@ -7109,7 +7129,10 @@ DEFINE CLASS c_conversor_prg_a_pjx AS c_conversor_prg_a_bin *------------------------------------------------------ LPARAMETERS toProject, tcLine, taCodeLines, I, tnCodeLines - EXTERNAL ARRAY toProject + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY toProject + ENDIF + #IF .F. LOCAL toProject AS CL_PROJECT OF 'FOXBIN2PRG.PRG' #ENDIF @@ -7406,7 +7429,9 @@ DEFINE CLASS c_conversor_prg_a_frx AS c_conversor_prg_a_bin * NOTA: * Como identificador se usa el nombre de clase o de procedimiento, según corresponda. *-------------------------------------------------------------------------------------------------------------- - EXTERNAL ARRAY taCodeLines, taLineasExclusion + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taCodeLines, taLineasExclusion + ENDIF #IF .F. LOCAL toReport AS CL_REPORT OF 'FOXBIN2PRG.PRG' @@ -7887,7 +7912,10 @@ DEFINE CLASS c_conversor_prg_a_dbf AS c_conversor_prg_a_bin * toTable (@? OUT) Objeto con toda la información de la tabla analizada *-------------------------------------------------------------------------------------------------------------- LPARAMETERS taCodeLines, tnCodeLines, taLineasExclusion, tnBloquesExclusion, toTable - EXTERNAL ARRAY taCodeLines, taLineasExclusion + + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taCodeLines, taLineasExclusion + ENDIF #IF .F. LOCAL toTable AS CL_DBF_TABLE OF 'FOXBIN2PRG.PRG' @@ -8063,7 +8091,10 @@ DEFINE CLASS c_conversor_prg_a_dbc AS c_conversor_prg_a_bin * Como identificador se usa el nombre de clase o de procedimiento, según corresponda. *-------------------------------------------------------------------------------------------------------------- LPARAMETERS taCodeLines, tnCodeLines, taLineasExclusion, tnBloquesExclusion, toDatabase - EXTERNAL ARRAY taCodeLines, taLineasExclusion + + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taCodeLines, taLineasExclusion + ENDIF #IF .F. LOCAL toDatabase AS CL_DBC OF 'FOXBIN2PRG.PRG' @@ -8197,7 +8228,10 @@ DEFINE CLASS c_conversor_prg_a_mnx AS c_conversor_prg_a_bin * Como identificador se usa el nombre de clase o de procedimiento, según corresponda. *-------------------------------------------------------------------------------------------------------------- LPARAMETERS taCodeLines, tnCodeLines, taLineasExclusion, tnBloquesExclusion, toMenu - EXTERNAL ARRAY taCodeLines, taLineasExclusion + + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taCodeLines, taLineasExclusion + ENDIF #IF .F. LOCAL toMenu AS CL_MENU OF 'FOXBIN2PRG.PRG' @@ -8358,7 +8392,10 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base , taPropsAndComments, tnPropsAndComments_Count, taProtected, tnProtected_Count ; , toFoxBin2Prg - EXTERNAL ARRAY taPropsAndComments, taProtected + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taPropsAndComments, taProtected + ENDIF + #IF .F. LOCAL toFoxBin2Prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG' #ENDIF @@ -8420,7 +8457,9 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base LPARAMETERS tnMethodCount, taMethods, taCode, taProtected, taPropsAndComments *-- DEFINIR MÉTODOS DE LA CLASE *-- Ubico los métodos protegidos y les cambio la definición - EXTERNAL ARRAY taMethods, taCode, taProtected, taPropsAndComments + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taMethods, taCode, taProtected, taPropsAndComments + ENDIF TRY LOCAL lcMethod, lcMethodName, lnProtectedItem, lnCommentRow, lcProcDef, lcMethods, lnLen @@ -8506,7 +8545,10 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base * tcSortedMemo (@? OUT) Contenido del campo memo ordenado *--------------------------------------------------------------------------------------------------- LPARAMETERS tcMemo, tlSort, taPropsAndComments, tnPropsAndComments_Count, tcSortedMemo - EXTERNAL ARRAY taPropsAndComments + + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taPropsAndComments + ENDIF TRY LOCAL laLines(1), I, lnPos, loEx AS EXCEPTION @@ -8565,7 +8607,11 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base * tcSortedMemo (@? OUT) Contenido del campo memo ordenado *--------------------------------------------------------------------------------------------------- LPARAMETERS tcMemo, tnSort, taPropsAndValues, tnPropsAndValues_Count, tcSortedMemo - EXTERNAL ARRAY taPropsAndValues + + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taPropsAndValues + ENDIF + TRY LOCAL laItems(1), I, X, lnLenAcum, lnPosEQ, lcPropName, lnLenVal, lcValue, lcMethods tcSortedMemo = '' @@ -8671,7 +8717,10 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base * tcSortedMemo (@? OUT) Contenido del campo memo ordenado *--------------------------------------------------------------------------------------------------- LPARAMETERS tcMemo, tlSort, taProtected, tnProtected_Count, tcSortedMemo - EXTERNAL ARRAY taProtected + + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taProtected + ENDIF tcSortedMemo = '' tnProtected_Count = ALINES(taProtected, tcMemo, 1+4) @@ -8796,7 +8845,10 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base ******************************************************************************************************************* PROCEDURE set_MultilineMemoWithAddObjectProperties LPARAMETERS taPropsAndValues, tnPropCount, tcLeftIndentation, tlNormalizeLine - EXTERNAL ARRAY taPropsAndValues + + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taPropsAndValues + ENDIF TRY LOCAL lcLine, I, lcComentarios, laLines(1), lcFinDeLinea @@ -8833,7 +8885,10 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base LPARAMETERS tcMethod, taMethods, taCode, tcSorted, tnMethodCount, taPropsAndComments, tnPropsAndComments_Count ; , taProtected, tnProtected_Count, toFoxBin2Prg - EXTERNAL ARRAY taMethods, taCode, taPropsAndComments, taProtected + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taMethods, taCode, taPropsAndComments, taProtected + ENDIF + #IF .F. LOCAL toFoxBin2Prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG' #ENDIF @@ -8898,7 +8953,10 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base *-- 29/10/2013 Fernando D. Bozzo *-- Se tiene en cuenta la posibilidad de que haya un PROC/ENDPROC dentro de un TEXT/ENDTEXT *-- cuando es usado en un generador de código o similar. - EXTERNAL ARRAY taMethods, taCode, taPropsAndComments, taProtected + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taMethods, taCode, taPropsAndComments, taProtected + ENDIF + #IF .F. LOCAL toFoxBin2Prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG' #ENDIF @@ -9225,7 +9283,9 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base LPARAMETERS toRegClass, taPropsAndValues, taPropsAndComments, taProtected ; , tnPropsAndValues_Count, tnPropsAndComments_Count, tnProtected_Count - EXTERNAL ARRAY taPropsAndValues, taPropsAndComments + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taPropsAndValues, taPropsAndComments + ENDIF TRY LOCAL lcHiddenProp, lcProtectedProp, lcPropsMethodsDefd, I ; @@ -12712,7 +12772,9 @@ DEFINE CLASS CL_DBC_BASE AS CL_CUS_BASE *--------------------------------------------------------------------------------------------------- LPARAMETERS tcName, tcType, taProperties, tnProperty_Count - EXTERNAL ARRAY taProperties && STRUCTURE: PropName,RecordLen,DataIDLen,DataID,DataType,Data + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taProperties && STRUCTURE: PropName,RecordLen,DataIDLen,DataID,DataType,Data + ENDIF TRY LOCAL lcValue, leValue, lnSelect, laProperty(1,1), lnRecordLen, lcBinRecord, lnPropertyID ; @@ -14176,7 +14238,9 @@ DEFINE CLASS CL_DBC_TABLES AS CL_DBC_COL_BASE *--------------------------------------------------------------------------------------------------- LPARAMETERS taTables, tnTable_Count - EXTERNAL ARRAY taTables + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taTables + ENDIF TRY LOCAL I, lcText, loEx AS EXCEPTION ; @@ -15113,7 +15177,9 @@ DEFINE CLASS CL_DBC_VIEWS AS CL_DBC_COL_BASE *--------------------------------------------------------------------------------------------------- LPARAMETERS taViews, tnView_Count - EXTERNAL ARRAY taViews + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taViews + ENDIF TRY LOCAL I, lcText, lcDBC, lnField_Count, laFields(1), loEx AS EXCEPTION ; @@ -15878,7 +15944,9 @@ DEFINE CLASS CL_DBC_RELATIONS AS CL_DBC_COL_BASE *--------------------------------------------------------------------------------------------------- LPARAMETERS tcTable, taRelations, tnRelation_Count - EXTERNAL ARRAY taRelations + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taRelations + ENDIF TRY LOCAL I, X, lcText, loEx AS EXCEPTION ; @@ -16398,7 +16466,9 @@ DEFINE CLASS CL_DBF_FIELDS AS CL_COL_BASE *--------------------------------------------------------------------------------------------------- LPARAMETERS taFields, tnField_Count - EXTERNAL ARRAY taFields + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taFields + ENDIF TRY LOCAL I, lcText, loEx AS EXCEPTION ; @@ -16559,7 +16629,9 @@ DEFINE CLASS CL_DBF_FIELD AS CL_CUS_BASE *--------------------------------------------------------------------------------------------------- LPARAMETERS taFields, I - EXTERNAL ARRAY taFields + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taFields + ENDIF TRY LOCAL I, lcText, loEx AS EXCEPTION @@ -16685,7 +16757,9 @@ DEFINE CLASS CL_DBF_INDEXES AS CL_COL_BASE *--------------------------------------------------------------------------------------------------- LPARAMETERS taTagInfo, tnTagInfo_Count, tc_InputFile - EXTERNAL ARRAY taTagInfo + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taTagInfo + ENDIF TRY LOCAL I, lcText, loEx AS EXCEPTION ; @@ -16825,7 +16899,9 @@ DEFINE CLASS CL_DBF_INDEX AS CL_CUS_BASE *--------------------------------------------------------------------------------------------------- LPARAMETERS taTagInfo, I - EXTERNAL ARRAY taTagInfo + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taTagInfo + ENDIF TRY LOCAL I, lcText, loEx AS EXCEPTION @@ -16890,7 +16966,9 @@ DEFINE CLASS CL_DBF_RECORDS AS CL_COL_BASE *--------------------------------------------------------------------------------------------------- LPARAMETERS taFields, tnField_Count, tc_DBF_Conversion_Condition - EXTERNAL ARRAY taFields + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taFields + ENDIF TRY LOCAL lcText, loEx AS EXCEPTION ; @@ -16968,7 +17046,9 @@ DEFINE CLASS CL_DBF_RECORD AS CL_CUS_BASE *--------------------------------------------------------------------------------------------------- LPARAMETERS taFields, tnField_Count - EXTERNAL ARRAY taFields + IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. + EXTERNAL ARRAY taFields + ENDIF TRY LOCAL I, lcText, loEx AS EXCEPTION, lcField, luValue, lcFieldType From 6ccc52428a276525ac0c0f288822e8221e61e776 Mon Sep 17 00:00:00 2001 From: fdbozzo Date: Thu, 30 Oct 2014 16:31:02 +0100 Subject: [PATCH 2/5] Changeset: 459 fdbozzo - 30/10/2014 16:02:08: - Quitados THIS sobrantes --- foxbin2prg.prg | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/foxbin2prg.prg b/foxbin2prg.prg index 6a02321..2d009c6 100644 --- a/foxbin2prg.prg +++ b/foxbin2prg.prg @@ -1579,7 +1579,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM *-- Ejecución normal *-- ARCHIVO DE CONFIGURACIÓN PRINCIPAL - IF NOT THIS.l_ConfigEvaluated THEN + IF NOT .l_ConfigEvaluated THEN .EvaluarConfiguracion( @tcDontShowProgress, @tcDontShowErrors, @tcNoTimestamps, @tcDebug, @tcRecompile, @tcBackupLevels ; , @tcClearUniqueID, @tcOptimizeByFilestamp ) ENDIF @@ -3146,12 +3146,13 @@ DEFINE CLASS c_conversor_base AS SESSION *--------------------------------------------------------------------------------------------------- LPARAMETERS tcLine, tcComment LOCAL ln_AT_Cmt - tcComment = '' ln_AT_Cmt = AT( '&'+'&', tcLine) IF ln_AT_Cmt > 0 tcComment = LTRIM( SUBSTR( tcLine, ln_AT_Cmt + 2 ) ) tcLine = RTRIM( LEFT( tcLine, ln_AT_Cmt - 1 ), 0, CHR(9) ) && Quito TABS + ELSE + tcComment = '' ENDIF RETURN (ln_AT_Cmt > 0) @@ -3272,7 +3273,7 @@ DEFINE CLASS c_conversor_base AS SESSION FOR X = 1 TO lnID_Bloques_Count lnLen_IDFinBQ = LEN( ta_ID_Bloques(X,2) ) IF .elTextoEvaluadoEsElTokenIndicado( @lcLine, @ta_ID_Bloques, lnLen_IDFinBQ, X, 1 ) ; - AND NOT THIS.currentLineIsPreviousLineContinuation( @taCodeLines, I ) + AND NOT .currentLineIsPreviousLineContinuation( @taCodeLines, I ) lnPrimerID = X lnAnidamientos = 1 EXIT @@ -3298,7 +3299,7 @@ DEFINE CLASS c_conversor_base AS SESSION DO CASE CASE .elTextoEvaluadoEsElTokenIndicado( @lcLine, @ta_ID_Bloques, lnLen_IDFinBQ, X, 1 ) ; - AND NOT THIS.currentLineIsPreviousLineContinuation( @taCodeLines, I ) + AND NOT .currentLineIsPreviousLineContinuation( @taCodeLines, I ) *-- Busca el primer marcador (#IF o TEXT) lnAnidamientos = lnAnidamientos + 1 @@ -4744,7 +4745,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base lcMethodsMemo = .objectMethods2Memo( toObjeto, toClase ) IF EMPTY(toObjeto._TimeStamp) - toObjeto._TimeStamp = THIS.RowTimeStamp( {^2013/11/04 20:00:00} ) + toObjeto._TimeStamp = .RowTimeStamp( {^2013/11/04 20:00:00} ) ENDIF IF EMPTY(toObjeto._UniqueID) toObjeto._UniqueID = toFoxBin2Prg.Unique_ID() @@ -4829,7 +4830,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base loObjeto = toClase._AddObjects( X ) IF EMPTY(loObjeto._TimeStamp) - loObjeto._TimeStamp = THIS.RowTimeStamp( {^2013/11/04 20:00:00} ) + loObjeto._TimeStamp = .RowTimeStamp( {^2013/11/04 20:00:00} ) ENDIF IF EMPTY(loObjeto._UniqueID) loObjeto._UniqueID = toFoxBin2Prg.Unique_ID() @@ -6012,7 +6013,7 @@ DEFINE CLASS c_conversor_prg_a_vcx AS c_conversor_prg_a_bin ENDIF IF EMPTY(loClase._TimeStamp) - loClase._TimeStamp = THIS.RowTimeStamp( {^2013/11/04 20:00:00} ) + loClase._TimeStamp = .RowTimeStamp( {^2013/11/04 20:00:00} ) ENDIF IF EMPTY(loClase._UniqueID) loClase._UniqueID = toFoxBin2Prg.Unique_ID() @@ -6315,7 +6316,7 @@ DEFINE CLASS c_conversor_prg_a_scx AS c_conversor_prg_a_bin ENDIF IF EMPTY(loClase._TimeStamp) - loClase._TimeStamp = THIS.RowTimeStamp( {^2013/11/04 20:00:00} ) + loClase._TimeStamp = .RowTimeStamp( {^2013/11/04 20:00:00} ) ENDIF IF EMPTY(loClase._UniqueID) loClase._UniqueID = toFoxBin2Prg.Unique_ID() @@ -6554,7 +6555,7 @@ DEFINE CLASS c_conversor_prg_a_pjx AS c_conversor_prg_a_bin ENDIF IF EMPTY(toProject._TimeStamp) - toProject._TimeStamp = THIS.RowTimeStamp( {^2013/11/04 20:00:00} ) + toProject._TimeStamp = .RowTimeStamp( {^2013/11/04 20:00:00} ) ENDIF IF EMPTY(toProject._ID) toProject._ID = toFoxBin2Prg.Unique_ID('N') @@ -6594,7 +6595,7 @@ DEFINE CLASS c_conversor_prg_a_pjx AS c_conversor_prg_a_bin FOR EACH loFile IN toProject FOXOBJECT IF EMPTY(loFile._TimeStamp) - loFile._TimeStamp = THIS.RowTimeStamp( {^2013/11/04 20:00:00} ) + loFile._TimeStamp = .RowTimeStamp( {^2013/11/04 20:00:00} ) ENDIF IF EMPTY(loFile._ID) loFile._ID = toFoxBin2Prg.Unique_ID('N') @@ -7347,7 +7348,7 @@ DEFINE CLASS c_conversor_prg_a_frx AS c_conversor_prg_a_bin * loReg.UNIQUEID = '' *ENDIF IF EMPTY(loReg.TIMESTAMP) - loReg.TIMESTAMP = THIS.RowTimeStamp( {^2013/11/04 20:00:00} ) + loReg.TIMESTAMP = .RowTimeStamp( {^2013/11/04 20:00:00} ) ENDIF IF EMPTY(loReg.UNIQUEID) OR ALLTRIM(loReg.UNIQUEID) = '0' loReg.UNIQUEID = toFoxBin2Prg.Unique_ID() @@ -13725,7 +13726,7 @@ DEFINE CLASS CL_DBC AS CL_DBC_BASE IF NOT EMPTY(._StoredProcedures) UPDATE TABLABIN ; - SET CODE = THIS._StoredProcedures ; + SET CODE = ._StoredProcedures ; WHERE STR(ParentID) + ObjectType + LOWER(objectName) = STR(1) + PADR('Database',10) + PADR(LOWER('StoredProceduresSource'),128) ENDIF From c4f0d854af916d3581e50fae07363140cd65aaa2 Mon Sep 17 00:00:00 2001 From: fdbozzo Date: Sun, 9 Nov 2014 18:22:31 +0100 Subject: [PATCH 3/5] =?UTF-8?q?Changeset:=20470=20fdbozzo=20-=2009/11/2014?= =?UTF-8?q?=2017:05:15:=20-=20Optimizaci=C3=B3n:=20Excluyo=20las=20l=C3=AD?= =?UTF-8?q?neas=20que=20solo=20son=20comentarios?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- foxbin2prg.prg | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/foxbin2prg.prg b/foxbin2prg.prg index 2d009c6..b6f93e9 100644 --- a/foxbin2prg.prg +++ b/foxbin2prg.prg @@ -2782,16 +2782,22 @@ DEFINE CLASS c_conversor_base AS SESSION LPARAMETERS taCodeLines, I LOCAL lcPrevLine, llIsContinuation + *-- Analizo la línea anterior para saber si termina con ";" o "," y la actual es continuación IF I > 1 lcPrevLine = taCodeLines(I-1) ELSE lcPrevLine = '' ENDIF - .get_SeparatedLineAndComment( @lcPrevLine ) + + THIS.get_SeparatedLineAndComment( @lcPrevLine ) + IF INLIST( RIGHT( lcPrevLine,1 ), ';', ',' ) && Esta línea es continuación de la anterior llIsContinuation = .T. ENDIF + + RELEASE lcPrevLine + RETURN llIsContinuation ENDPROC @@ -3265,6 +3271,9 @@ DEFINE CLASS c_conversor_base AS SESSION lcLine = LTRIM( STRTRAN( STRTRAN( CHRTRAN( taCodeLines(I), CHR(9), ' ' ), ' ', ' ' ), ' ', ' ' ) ) IF .lineIsOnlyCommentAndNoMetadata( @lcLine ) + *-- Optimización: Excluyo las líneas que solo son comentarios + taLineasExclusion(I) = .T. + *-- LOOP ENDIF From b1c15566598ba77ad683a5ce0c30952de37f657b Mon Sep 17 00:00:00 2001 From: fdbozzo Date: Sun, 9 Nov 2014 19:30:04 +0100 Subject: [PATCH 4/5] =?UTF-8?q?Changeset:=20471=20fdbozzo=20-=2009/11/2014?= =?UTF-8?q?=2019:26:22:=20-=20Quitado=20el=20condicionamiento=20de=20los?= =?UTF-8?q?=20EXTERNAL:=20Los=20IF=20.F.=20son=20m=C3=A1s=20lentos=20:(?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- foxbin2prg.prg | 145 +++++++++++++------------------------------------ 1 file changed, 37 insertions(+), 108 deletions(-) diff --git a/foxbin2prg.prg b/foxbin2prg.prg index b6f93e9..b7a3057 100644 --- a/foxbin2prg.prg +++ b/foxbin2prg.prg @@ -2621,9 +2621,8 @@ DEFINE CLASS c_conversor_base AS SESSION *-------------------------------------------------------------------------------------------------------------- LPARAMETERS tcPropName, tcValue, taProps, tnProp_Count, I, tcTAG_I, tcTAG_F, tnLEN_TAG_I, tnLEN_TAG_F - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taProps - ENDIF + EXTERNAL ARRAY taProps + LOCAL llBloqueEncontrado, loEx AS EXCEPTION TRY @@ -3099,9 +3098,7 @@ DEFINE CLASS c_conversor_base AS SESSION *-------------------------------------------------------------------------------------------------------------- LPARAMETERS tcLineWithMetadata, taPropsAndValues, tnPropsAndValues_Count, tcLeftTag, tcRightTag - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taPropsAndValues - ENDIF + EXTERNAL ARRAY taPropsAndValues LOCAL lcMetadatos, I, lnEqualSigns, lcNextVar, lcStr, lcVirtualMeta, lnPos1, lnPos2, lnLastPos, lnCantComillas STORE '' TO lcVirtualMeta @@ -3245,9 +3242,7 @@ DEFINE CLASS c_conversor_base AS SESSION * taLineasExclusion (@? OUT) Array unidimensional con un .T. o .F. según la línea sea de exclusión o no * tnBloquesExclusion (@? OUT) Cantidad de bloques de exclusión *-------------------------------------------------------------------------------------------------------------- - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY ta_ID_Bloques, taLineasExclusion - ENDIF + EXTERNAL ARRAY ta_ID_Bloques, taLineasExclusion TRY LOCAL lnBloques, I, X, lnPrimerID, lnLen_IDFinBQ, lnID_Bloques_Count, lcWord, lnAnidamientos, lcLine, lcPrevLine @@ -3660,9 +3655,7 @@ DEFINE CLASS c_conversor_base AS SESSION *-------------------------------------------------------------------------------------------------------------- LPARAMETERS taPropsAndValues, tnPropsAndValues_Count, tnSortType - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taPropsAndValues - ENDIF + EXTERNAL ARRAY taPropsAndValues TRY LOCAL I, X, lnArrayCols, laPropsAndValues(1,2), lcPropName, lcSortedMemo, lcMethods @@ -4908,9 +4901,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base LPARAMETERS toClase, toObjeto, tcLine, taCodeLines, I, tnCodeLines, tcProcedureAbierto, tc_Comentario ; , taLineasExclusion, tnBloquesExclusion - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taCodeLines - ENDIF + EXTERNAL ARRAY taCodeLines #IF .F. LOCAL toObjeto AS CL_OBJETO OF 'FOXBIN2PRG.PRG' @@ -4988,9 +4979,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base PROCEDURE analizarBloque_ADD_OBJECT LPARAMETERS toModulo, toClase, tcLine, I, taCodeLines, tnCodeLines - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taCodeLines - ENDIF + EXTERNAL ARRAY taCodeLines #IF .F. LOCAL toModulo AS CL_MODULO OF 'FOXBIN2PRG.PRG' @@ -5216,9 +5205,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base LPARAMETERS toModulo, toClase, tcLine, taCodeLines, I, tnCodeLines, tcProcedureAbierto ; , taLineasExclusion, tnBloquesExclusion, tc_Comentario - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taCodeLines, tnBloquesExclusion, taLineasExclusion - ENDIF + EXTERNAL ARRAY taCodeLines, tnBloquesExclusion, taLineasExclusion #IF .F. LOCAL toModulo AS CL_MODULO OF 'FOXBIN2PRG.PRG' @@ -5455,9 +5442,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base PROCEDURE analizarBloque_CLASSCOMMENTS LPARAMETERS toClase, tcLine ,taCodeLines, tnCodeLines, I - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taCodeLines - ENDIF + EXTERNAL ARRAY taCodeLines #IF .F. LOCAL toClase AS CL_CLASE OF 'FOXBIN2PRG.PRG' @@ -5777,9 +5762,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base *-------------------------------------------------------------------------------------------------------------- LPARAMETERS taCodeLines, tnCodeLines, taLineasExclusion, tnBloquesExclusion, toModulo - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taCodeLines, taLineasExclusion - ENDIF + EXTERNAL ARRAY taCodeLines, taLineasExclusion #IF .F. LOCAL toModulo AS CL_MODULO OF 'FOXBIN2PRG.PRG' @@ -6674,9 +6657,7 @@ DEFINE CLASS c_conversor_prg_a_pjx AS c_conversor_prg_a_bin * NOTA: * Como identificador se usa el nombre de clase o de procedimiento, según corresponda. *-------------------------------------------------------------------------------------------------------------- - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taCodeLines, taLineasExclusion - ENDIF + EXTERNAL ARRAY taCodeLines, taLineasExclusion #IF .F. LOCAL toProject AS CL_PROJECT OF 'FOXBIN2PRG.PRG' @@ -7009,9 +6990,7 @@ DEFINE CLASS c_conversor_prg_a_pjx AS c_conversor_prg_a_bin *------------------------------------------------------ LPARAMETERS toProject, tcLine, taCodeLines, I, tnCodeLines - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY toProject - ENDIF + EXTERNAL ARRAY toProject #IF .F. LOCAL toProject AS CL_PROJECT OF 'FOXBIN2PRG.PRG' @@ -7074,9 +7053,7 @@ DEFINE CLASS c_conversor_prg_a_pjx AS c_conversor_prg_a_bin *------------------------------------------------------ LPARAMETERS toProject, tcLine, taCodeLines, I, tnCodeLines - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY toProject - ENDIF + EXTERNAL ARRAY toProject #IF .F. LOCAL toProject AS CL_PROJECT OF 'FOXBIN2PRG.PRG' @@ -7139,9 +7116,7 @@ DEFINE CLASS c_conversor_prg_a_pjx AS c_conversor_prg_a_bin *------------------------------------------------------ LPARAMETERS toProject, tcLine, taCodeLines, I, tnCodeLines - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY toProject - ENDIF + EXTERNAL ARRAY toProject #IF .F. LOCAL toProject AS CL_PROJECT OF 'FOXBIN2PRG.PRG' @@ -7439,9 +7414,7 @@ DEFINE CLASS c_conversor_prg_a_frx AS c_conversor_prg_a_bin * NOTA: * Como identificador se usa el nombre de clase o de procedimiento, según corresponda. *-------------------------------------------------------------------------------------------------------------- - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taCodeLines, taLineasExclusion - ENDIF + EXTERNAL ARRAY taCodeLines, taLineasExclusion #IF .F. LOCAL toReport AS CL_REPORT OF 'FOXBIN2PRG.PRG' @@ -7923,9 +7896,7 @@ DEFINE CLASS c_conversor_prg_a_dbf AS c_conversor_prg_a_bin *-------------------------------------------------------------------------------------------------------------- LPARAMETERS taCodeLines, tnCodeLines, taLineasExclusion, tnBloquesExclusion, toTable - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taCodeLines, taLineasExclusion - ENDIF + EXTERNAL ARRAY taCodeLines, taLineasExclusion #IF .F. LOCAL toTable AS CL_DBF_TABLE OF 'FOXBIN2PRG.PRG' @@ -8102,9 +8073,7 @@ DEFINE CLASS c_conversor_prg_a_dbc AS c_conversor_prg_a_bin *-------------------------------------------------------------------------------------------------------------- LPARAMETERS taCodeLines, tnCodeLines, taLineasExclusion, tnBloquesExclusion, toDatabase - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taCodeLines, taLineasExclusion - ENDIF + EXTERNAL ARRAY taCodeLines, taLineasExclusion #IF .F. LOCAL toDatabase AS CL_DBC OF 'FOXBIN2PRG.PRG' @@ -8239,9 +8208,7 @@ DEFINE CLASS c_conversor_prg_a_mnx AS c_conversor_prg_a_bin *-------------------------------------------------------------------------------------------------------------- LPARAMETERS taCodeLines, tnCodeLines, taLineasExclusion, tnBloquesExclusion, toMenu - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taCodeLines, taLineasExclusion - ENDIF + EXTERNAL ARRAY taCodeLines, taLineasExclusion #IF .F. LOCAL toMenu AS CL_MENU OF 'FOXBIN2PRG.PRG' @@ -8402,9 +8369,7 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base , taPropsAndComments, tnPropsAndComments_Count, taProtected, tnProtected_Count ; , toFoxBin2Prg - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taPropsAndComments, taProtected - ENDIF + EXTERNAL ARRAY taPropsAndComments, taProtected #IF .F. LOCAL toFoxBin2Prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG' @@ -8467,9 +8432,7 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base LPARAMETERS tnMethodCount, taMethods, taCode, taProtected, taPropsAndComments *-- DEFINIR MÉTODOS DE LA CLASE *-- Ubico los métodos protegidos y les cambio la definición - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taMethods, taCode, taProtected, taPropsAndComments - ENDIF + EXTERNAL ARRAY taMethods, taCode, taProtected, taPropsAndComments TRY LOCAL lcMethod, lcMethodName, lnProtectedItem, lnCommentRow, lcProcDef, lcMethods, lnLen @@ -8556,9 +8519,7 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base *--------------------------------------------------------------------------------------------------- LPARAMETERS tcMemo, tlSort, taPropsAndComments, tnPropsAndComments_Count, tcSortedMemo - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taPropsAndComments - ENDIF + EXTERNAL ARRAY taPropsAndComments TRY LOCAL laLines(1), I, lnPos, loEx AS EXCEPTION @@ -8618,9 +8579,7 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base *--------------------------------------------------------------------------------------------------- LPARAMETERS tcMemo, tnSort, taPropsAndValues, tnPropsAndValues_Count, tcSortedMemo - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taPropsAndValues - ENDIF + EXTERNAL ARRAY taPropsAndValues TRY LOCAL laItems(1), I, X, lnLenAcum, lnPosEQ, lcPropName, lnLenVal, lcValue, lcMethods @@ -8728,9 +8687,7 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base *--------------------------------------------------------------------------------------------------- LPARAMETERS tcMemo, tlSort, taProtected, tnProtected_Count, tcSortedMemo - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taProtected - ENDIF + EXTERNAL ARRAY taProtected tcSortedMemo = '' tnProtected_Count = ALINES(taProtected, tcMemo, 1+4) @@ -8856,9 +8813,7 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base PROCEDURE set_MultilineMemoWithAddObjectProperties LPARAMETERS taPropsAndValues, tnPropCount, tcLeftIndentation, tlNormalizeLine - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taPropsAndValues - ENDIF + EXTERNAL ARRAY taPropsAndValues TRY LOCAL lcLine, I, lcComentarios, laLines(1), lcFinDeLinea @@ -8895,9 +8850,7 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base LPARAMETERS tcMethod, taMethods, taCode, tcSorted, tnMethodCount, taPropsAndComments, tnPropsAndComments_Count ; , taProtected, tnProtected_Count, toFoxBin2Prg - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taMethods, taCode, taPropsAndComments, taProtected - ENDIF + EXTERNAL ARRAY taMethods, taCode, taPropsAndComments, taProtected #IF .F. LOCAL toFoxBin2Prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG' @@ -8963,9 +8916,7 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base *-- 29/10/2013 Fernando D. Bozzo *-- Se tiene en cuenta la posibilidad de que haya un PROC/ENDPROC dentro de un TEXT/ENDTEXT *-- cuando es usado en un generador de código o similar. - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taMethods, taCode, taPropsAndComments, taProtected - ENDIF + EXTERNAL ARRAY taMethods, taCode, taPropsAndComments, taProtected #IF .F. LOCAL toFoxBin2Prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG' @@ -9293,9 +9244,7 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base LPARAMETERS toRegClass, taPropsAndValues, taPropsAndComments, taProtected ; , tnPropsAndValues_Count, tnPropsAndComments_Count, tnProtected_Count - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taPropsAndValues, taPropsAndComments - ENDIF + EXTERNAL ARRAY taPropsAndValues, taPropsAndComments TRY LOCAL lcHiddenProp, lcProtectedProp, lcPropsMethodsDefd, I ; @@ -12782,9 +12731,7 @@ DEFINE CLASS CL_DBC_BASE AS CL_CUS_BASE *--------------------------------------------------------------------------------------------------- LPARAMETERS tcName, tcType, taProperties, tnProperty_Count - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taProperties && STRUCTURE: PropName,RecordLen,DataIDLen,DataID,DataType,Data - ENDIF + EXTERNAL ARRAY taProperties && STRUCTURE: PropName,RecordLen,DataIDLen,DataID,DataType,Data TRY LOCAL lcValue, leValue, lnSelect, laProperty(1,1), lnRecordLen, lcBinRecord, lnPropertyID ; @@ -14248,9 +14195,7 @@ DEFINE CLASS CL_DBC_TABLES AS CL_DBC_COL_BASE *--------------------------------------------------------------------------------------------------- LPARAMETERS taTables, tnTable_Count - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taTables - ENDIF + EXTERNAL ARRAY taTables TRY LOCAL I, lcText, loEx AS EXCEPTION ; @@ -15187,9 +15132,7 @@ DEFINE CLASS CL_DBC_VIEWS AS CL_DBC_COL_BASE *--------------------------------------------------------------------------------------------------- LPARAMETERS taViews, tnView_Count - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taViews - ENDIF + EXTERNAL ARRAY taViews TRY LOCAL I, lcText, lcDBC, lnField_Count, laFields(1), loEx AS EXCEPTION ; @@ -15954,9 +15897,7 @@ DEFINE CLASS CL_DBC_RELATIONS AS CL_DBC_COL_BASE *--------------------------------------------------------------------------------------------------- LPARAMETERS tcTable, taRelations, tnRelation_Count - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taRelations - ENDIF + EXTERNAL ARRAY taRelations TRY LOCAL I, X, lcText, loEx AS EXCEPTION ; @@ -16476,9 +16417,7 @@ DEFINE CLASS CL_DBF_FIELDS AS CL_COL_BASE *--------------------------------------------------------------------------------------------------- LPARAMETERS taFields, tnField_Count - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taFields - ENDIF + EXTERNAL ARRAY taFields TRY LOCAL I, lcText, loEx AS EXCEPTION ; @@ -16639,9 +16578,7 @@ DEFINE CLASS CL_DBF_FIELD AS CL_CUS_BASE *--------------------------------------------------------------------------------------------------- LPARAMETERS taFields, I - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taFields - ENDIF + EXTERNAL ARRAY taFields TRY LOCAL I, lcText, loEx AS EXCEPTION @@ -16767,9 +16704,7 @@ DEFINE CLASS CL_DBF_INDEXES AS CL_COL_BASE *--------------------------------------------------------------------------------------------------- LPARAMETERS taTagInfo, tnTagInfo_Count, tc_InputFile - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taTagInfo - ENDIF + EXTERNAL ARRAY taTagInfo TRY LOCAL I, lcText, loEx AS EXCEPTION ; @@ -16909,9 +16844,7 @@ DEFINE CLASS CL_DBF_INDEX AS CL_CUS_BASE *--------------------------------------------------------------------------------------------------- LPARAMETERS taTagInfo, I - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taTagInfo - ENDIF + EXTERNAL ARRAY taTagInfo TRY LOCAL I, lcText, loEx AS EXCEPTION @@ -16976,9 +16909,7 @@ DEFINE CLASS CL_DBF_RECORDS AS CL_COL_BASE *--------------------------------------------------------------------------------------------------- LPARAMETERS taFields, tnField_Count, tc_DBF_Conversion_Condition - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taFields - ENDIF + EXTERNAL ARRAY taFields TRY LOCAL lcText, loEx AS EXCEPTION ; @@ -17056,9 +16987,7 @@ DEFINE CLASS CL_DBF_RECORD AS CL_CUS_BASE *--------------------------------------------------------------------------------------------------- LPARAMETERS taFields, tnField_Count - IF .F. && EXTERNAL consume ciclos de ejecución, pero no aporta nada fuera del proyecto. - EXTERNAL ARRAY taFields - ENDIF + EXTERNAL ARRAY taFields TRY LOCAL I, lcText, loEx AS EXCEPTION, lcField, luValue, lcFieldType From 2c88a261896975b9dd7f0fd46ccfc1dae3f5e39b Mon Sep 17 00:00:00 2001 From: fdbozzo Date: Sun, 9 Nov 2014 21:08:11 +0100 Subject: [PATCH 5/5] =?UTF-8?q?Changeset:=20472=20fdbozzo=20-=2009/11/2014?= =?UTF-8?q?=2019:30:05:=20-=20Agregado=20de=20varios=20RELEASE=20para=20re?= =?UTF-8?q?colecci=C3=B3n=20de=20basura=20manual?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- foxbin2prg.prg | 263 ++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 226 insertions(+), 37 deletions(-) diff --git a/foxbin2prg.prg b/foxbin2prg.prg index b7a3057..a2a2e82 100644 --- a/foxbin2prg.prg +++ b/foxbin2prg.prg @@ -652,6 +652,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM lc_Foxbin2prg_EXE = FORCEEXT( THIS.c_Foxbin2prg_FullPath, 'EXE' ) THIS.c_FB2PRG_EXE_Version = IIF( AGETFILEVERSION( laValues, lc_Foxbin2prg_EXE ) = 0, TRANSFORM(THIS.n_FB2PRG_Version), laValues(4) ) ADDPROPERTY(_SCREEN, 'ExitCode', 0) + RELEASE lcSys16, lnPosProg, lc_Foxbin2prg_EXE, laValues RETURN ENDPROC @@ -1008,6 +1009,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM FINALLY CLEAR DLLS fb2p_SetFileAttributes, fb2p_GetFileAttributes + RELEASE tcFileName, tcAttrib, dwFileAttributes ENDTRY RETURN @@ -1037,6 +1039,9 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM COMPILE DATABASE (tcFileName) ENDCASE + + RELEASE tcFileName, lcType + RETURN ENDPROC @@ -1124,6 +1129,9 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM THROW ENDIF + FINALLY + RELEASE toEx, tlRelanzarError, tcBakFile_1, tcBakFile_2, tcBakFile_3 ; + , lcNext_Bak, lcExt_1, lcExt_2, lcExt_3 ENDTRY RETURN @@ -1412,8 +1420,11 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM THROW FINALLY - STORE NULL TO lo_Configuration, lo_CFG - RELEASE lo_Configuration, lo_CFG + STORE NULL TO lo_Configuration, lo_CFG, loEx + RELEASE tcDontShowProgress, tcDontShowErrors, tcNoTimestamps, tcDebug, tcRecompile, tcExtraBackupLevels ; + , tcClearUniqueID, tcOptimizeByFilestamp, tc_InputFile ; + , lcConfigFile, llExisteConfig, laConfig, I, lcConfData, lcExt, lcValue, lc_CFG_Path ; + , lo_CFG, lo_Configuration, loEx ENDTRY @@ -1439,6 +1450,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM ENDIF ENDFOR + RELEASE tcFileName, tcFilters, llFound, laFiltros RETURN llFound ENDFUNC @@ -1460,6 +1472,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM , 'XXX' ) ENDWITH && THIS + RELEASE tcExt RETURN lcExt2 ENDPROC @@ -1467,6 +1480,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM PROCEDURE TieneSoporte_Bin2Prg LPARAMETERS tcExt LOCAL llTieneSoporte + WITH THIS AS c_foxbin2prg OF 'FOXBIN2PRG.PRG' llTieneSoporte = ICASE( tcExt == 'PJX', .PJX_Conversion_Support >= 1 ; , tcExt == 'VCX', .VCX_Conversion_Support >= 1 ; @@ -1478,6 +1492,8 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM , tcExt == 'DBC', .DBC_Conversion_Support >= 1 ; , .F. ) ENDWITH && THIS + + RELEASE tcExt RETURN llTieneSoporte ENDPROC @@ -1485,6 +1501,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM PROCEDURE TieneSoporte_Prg2Bin LPARAMETERS tcExt LOCAL llTieneSoporte + WITH THIS AS c_foxbin2prg OF 'FOXBIN2PRG.PRG' llTieneSoporte = ICASE( tcExt == .c_PJ2, .PJX_Conversion_Support = 2 ; , tcExt == .c_VC2, .VCX_Conversion_Support = 2 ; @@ -1496,6 +1513,8 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM , tcExt == .c_DC2, .DBC_Conversion_Support = 2 ; , .F. ) ENDWITH && THIS + + RELEASE tcExt RETURN llTieneSoporte ENDPROC @@ -1862,7 +1881,10 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM ENDIF CD (JUSTPATH(THIS.c_CurDir)) STORE NULL TO loFSO - RELEASE loFSO + RELEASE tc_InputFile, tcType, tcTextName, tlGenText, tcDontShowErrors, tcDebug, tcDontShowProgress ; + , toModulo, toEx, tlRelanzarError, tcOriginalFileName, tcRecompile, tcNoTimestamps ; + , tcBackupLevels, tcClearUniqueID, tcOptimizeByFilestamp ; + , I, lcPath, lcFileSpec, lcFile, laFiles, lnFileCount, lcErrorInfo, loEx, loFSO ENDTRY RETURN lnCodError @@ -2162,6 +2184,10 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM *THIS.writeLog_Flush() ENDIF + RELEASE tc_InputFile, toModulo, toEx, tlRelanzarError, tcOriginalFileName ; + , lcErrorInfo, laDirFile, lcExtension, lnFileCount, laFiles, I ; + , ltFilestamp, lcExtA, lcExtB ; + , loFSO ENDTRY RETURN lnCodError @@ -2585,6 +2611,8 @@ DEFINE CLASS c_conversor_base AS SESSION THIS.c_Foxbin2prg_FullPath = SUBSTR( lcSys16, lnPosProg ) THIS.SortSpecialProps() + RELEASE lcSys16, lnPosProg + RETURN ENDPROC @@ -2682,6 +2710,8 @@ DEFINE CLASS c_conversor_base AS SESSION THROW + FINALLY + RELEASE tcPropName, tcValue, taProps, tnProp_Count, I, tcTAG_I, tcTAG_F, tnLEN_TAG_I, tnLEN_TAG_F, loEx ENDTRY RETURN llBloqueEncontrado @@ -2738,6 +2768,8 @@ DEFINE CLASS c_conversor_base AS SESSION THROW + FINALLY + RELEASE tcNombreObjeto, toClase, I, X, N, lcRutaDelNombre, loObjeto ENDTRY RETURN lnObjeto @@ -2755,6 +2787,9 @@ DEFINE CLASS c_conversor_base AS SESSION CATCH TO loEx llError = .T. tnCodError = loEx.ERRORNO + + FINALLY + RELEASE tcAsignacion, tnCodError, tcExpNormalizada, loEx ENDTRY RETURN NOT llError @@ -2774,6 +2809,8 @@ DEFINE CLASS c_conversor_base AS SESSION #ENDIF THIS.writeLog( '' ) THIS.writeLog( C_CONVERTING_FILE_LOC + ' ' + THIS.c_OutputFile + '...' ) + RELEASE toModulo, toEx, toFoxBin2Prg + RETURN ENDPROC @@ -2795,7 +2832,7 @@ DEFINE CLASS c_conversor_base AS SESSION llIsContinuation = .T. ENDIF - RELEASE lcPrevLine + RELEASE taCodeLines, I, lcPrevLine RETURN llIsContinuation ENDPROC @@ -2803,7 +2840,7 @@ DEFINE CLASS c_conversor_base AS SESSION PROCEDURE elTextoEvaluadoEsElTokenIndicado LPARAMETERS tcLine, ta_ID_Bloques, tnLen_IDFinBQ, X, tnIniFin - LOCAL llEncontrado, lcWord + LOCAL llEncontrado, lcWord, lcLine TRY *-- Pre-normalización @@ -2847,6 +2884,9 @@ DEFINE CLASS c_conversor_base AS SESSION llEncontrado = .T. ENDIF ENDIF + + FINALLY + RELEASE tcLine, ta_ID_Bloques, tnLen_IDFinBQ, X, tnIniFin, lcLine ENDTRY RETURN llEncontrado @@ -2863,6 +2903,7 @@ DEFINE CLASS c_conversor_base AS SESSION FOR I = 0 TO 31 tcText = STRTRAN( tcText, '{' + TRANSFORM(I) + '}', CHR(I) ) ENDFOR + RELEASE I RETURN tcText ENDPROC @@ -2875,7 +2916,7 @@ DEFINE CLASS c_conversor_base AS SESSION lcComentario = '' THIS.desnormalizarValorPropiedad( @lcPropName, @lcValor, @lcComentario ) tcAsignacion = lcPropName + ' = ' + lcValor - + RELEASE lcPropName, lcValor, lnCodError, lcExpNormalizada, lnPos, lcComentario RETURN tcAsignacion ENDPROC @@ -2924,6 +2965,7 @@ DEFINE CLASS c_conversor_base AS SESSION ENDCASE + RELEASE tcProp, tcComentario, lnCodError, lnPos, lcValue RETURN tcValue ENDPROC @@ -2961,6 +3003,7 @@ DEFINE CLASS c_conversor_base AS SESSION tcValor = STUFF(tcValor, lnPos, lnPos2 - lnPos + 1, CHR(lnAscii)) && ASCII ENDDO + RELEASE lnPos, lnPos2, lnAscii RETURN tcValor ENDPROC @@ -2972,6 +3015,7 @@ DEFINE CLASS c_conversor_base AS SESSION FOR I = 0 TO 31 tcText = STRTRAN( tcText, CHR(I), '{' + TRANSFORM(I) + '}' ) ENDFOR + RELEASE I RETURN tcText ENDPROC @@ -2983,6 +3027,7 @@ DEFINE CLASS c_conversor_base AS SESSION lcError = 'Error ' + TRANSFORM(toEx.ERRORNO) + ', ' + toEx.MESSAGE + CHR(13) + CHR(13) ; + toEx.PROCEDURE + ', ' + TRANSFORM(toEx.LINENO) + CHR(13) + CHR(13) ; + toEx.LINECONTENTS + RELEASE toEx RETURN lcError ENDPROC @@ -3100,7 +3145,7 @@ DEFINE CLASS c_conversor_base AS SESSION EXTERNAL ARRAY taPropsAndValues - LOCAL lcMetadatos, I, lnEqualSigns, lcNextVar, lcStr, lcVirtualMeta, lnPos1, lnPos2, lnLastPos, lnCantComillas + LOCAL lcMetadatos, I, lcVirtualMeta, lnPos1, lnPos2, lnLastPos, lnCantComillas STORE '' TO lcVirtualMeta STORE 0 TO lnPos1, lnPos2, lnLastPos, tnPropsAndValues_Count, I @@ -3137,6 +3182,8 @@ DEFINE CLASS c_conversor_base AS SESSION lnLastPos = lnPos2 + 1 ENDFOR + RELEASE tcLineWithMetadata, taPropsAndValues, tnPropsAndValues_Count, tcLeftTag, tcRightTag ; + , lcMetadatos, I, lcVirtualMeta, lnPos1, lnPos2, lnLastPos, lnCantComillas RETURN ENDPROC @@ -3158,6 +3205,7 @@ DEFINE CLASS c_conversor_base AS SESSION tcComment = '' ENDIF + RELEASE tcLine, tcComment RETURN (ln_AT_Cmt > 0) ENDPROC @@ -3206,6 +3254,7 @@ DEFINE CLASS c_conversor_base AS SESSION ENDIF ENDIF + RELEASE tcAsignacion, tcPropName, tcValue, toClase, taCodeLines, tnCodeLines, I, ln_AT_Cmt RETURN ENDPROC @@ -3220,6 +3269,7 @@ DEFINE CLASS c_conversor_base AS SESSION ELSE lcValue = CHRTRAN( LEFT( tcNullTerminatedValue, lnNullPos - 1 ), ['], ["] ) ENDIF + RELEASE tcNullTerminatedValue, lnNullPos RETURN lcValue ENDPROC @@ -3337,6 +3387,9 @@ DEFINE CLASS c_conversor_base AS SESSION THROW + FINALLY + RELEASE taCodeLines, tnCodeLines, ta_ID_Bloques, taLineasExclusion, tnBloquesExclusion, taBloquesExclusion ; + , lnBloques, I, X, lnPrimerID, lnLen_IDFinBQ, lnID_Bloques_Count, lcWord, lnAnidamientos, lcLine, lcPrevLine ENDTRY RETURN @@ -3367,6 +3420,7 @@ DEFINE CLASS c_conversor_base AS SESSION ENDCASE + RELEASE tcLine, tcComment, ln_AT_Cmt RETURN lllineIsOnlyCommentAndNoMetadata ENDPROC @@ -3379,6 +3433,7 @@ DEFINE CLASS c_conversor_base AS SESSION tcComentario = '' THIS.normalizarValorPropiedad( @lcPropName, @lcValor, @tcComentario ) tcAsignacion = lcPropName + ' = ' + lcValor + RELEASE tcComentario, lcPropName, lcValor, lnCodError, lcExpNormalizada, lnPos RETURN tcAsignacion ENDPROC @@ -3424,6 +3479,7 @@ DEFINE CLASS c_conversor_base AS SESSION ENDCASE + RELEASE tcProp, lcValue, I, tcComentario RETURN tcValue ENDPROC @@ -3632,6 +3688,8 @@ DEFINE CLASS c_conversor_base AS SESSION THROW + FINALLY + RELEASE tcOperation, tcPropName, lnPos, loEx ENDTRY RETURN lcPropName @@ -3760,6 +3818,9 @@ DEFINE CLASS c_conversor_base AS SESSION THROW + FINALLY + RELEASE taPropsAndValues, tnPropsAndValues_Count, tnSortType ; + , I, X, lnArrayCols, laPropsAndValues, lcPropName, lcSortedMemo, lcMethods ENDTRY RETURN @@ -4014,6 +4075,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base ENDCASE + RELEASE tcPropName, tcValueType, taPropsAndValues, lnPos RETURN luPropValue ENDFUNC @@ -4036,6 +4098,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base toModulo._SourceFile = THIS.get_ValueByName_FromListNamesWithValues( 'SourceFile', 'C', @laPropsAndValues ) ENDIF + RELEASE toModulo, tcLine, taCodeLines, I, tnCodeLines RETURN llBloqueEncontrado ENDPROC @@ -4056,6 +4119,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base toModulo._Comment = ALLTRIM( STREXTRACT( tcLine, C_LIBCOMMENT_I, C_LIBCOMMENT_F ) ) ENDIF + RELEASE toModulo, tcLine, taCodeLines, I, tnCodeLines, laPropsAndValues, lnPropsAndValues_Count RETURN llBloqueEncontrado ENDPROC @@ -4419,8 +4483,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base *-- Fin: ESTRUCTURA A ANALIZAR: TRY - LOCAL lcDefinedPAM, lnPos, lnPos2, laProps(1,2), lcLine, lcPropName, lcValue, I, lcAsignacion, lcMemo ; - , laPropsAndValues(1,2), lnPropsAndValues_Count + LOCAL I, lcMemo, laPropsAndValues(1,2), lnPropsAndValues_Count lcMemo = '' IF toClase._Prop_Count > 0 @@ -4438,7 +4501,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base lcMemo = lcMemo + laPropsAndValues(I,1) + ' = ' + laPropsAndValues(I,2) + CR_LF ENDFOR - ENDIF && laProps > 0 + ENDIF && toClase._Prop_Count > 0 CATCH TO loEx IF THIS.l_Debug AND _VFP.STARTMODE = 0 @@ -4447,6 +4510,8 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base THROW + FINALLY + RELEASE toClase, I, laPropsAndValues, lnPropsAndValues_Count ENDTRY RETURN lcMemo @@ -4463,7 +4528,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base , toObjeto AS CL_OBJETO OF 'FOXBIN2PRG.PRG' #ENDIF - LOCAL lcMemo, I, laPropsAndValues(1,2), lcPropName, lcValue + LOCAL lcMemo, I, laPropsAndValues(1,2) lcMemo = '' IF toObjeto._Prop_Count > 0 @@ -4483,6 +4548,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base ENDIF + RELEASE toObjeto, toClase, I, laPropsAndValues RETURN lcMemo ENDPROC @@ -4540,7 +4606,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base ENDFOR loProcedure = NULL - RELEASE loProcedure + RELEASE toClase, I, X, lcNombreObjeto, loProcedure RETURN lcMemo ENDPROC @@ -4581,7 +4647,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base ENDFOR loProcedure = NULL - RELEASE loProcedure + RELEASE toObjeto, toClase, I, X, lcNombreObjeto, loProcedure RETURN lcMemo ENDPROC @@ -4606,6 +4672,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base ENDIF ENDFOR + RELEASE tcPropName, toClase, I RETURN lcComentario ENDPROC @@ -4633,7 +4700,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base ENDFOR loProcedure = NULL - RELEASE loProcedure + RELEASE tcMethodName, toClase, loProcedure, I RETURN lcComentario ENDPROC @@ -4682,6 +4749,9 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base lnPos2 = AT( ']', tcSeparatedCommaVars, I ) tcSeparatedCommaVars = STUFF( tcSeparatedCommaVars, lnPos1, lnPos2 - lnPos1 + 1, '' ) ENDFOR + + RELEASE tcSeparatedCommaVars, lnPos1, lnPos2, I + RETURN ENDPROC @@ -4703,6 +4773,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base .Evaluate_PAM( @lcMemo, toClase._HiddenMethods, 'method', 'hidden' ) ENDWITH && THIS + RELEASE toClase, I, lcPAM, lcComentario RETURN lcMemo ENDPROC @@ -4727,6 +4798,9 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base ENDTEXT ENDIF ENDFOR + + RELEASE tcMemo, tcPAM, tcPAM_Type, tcPAM_Visibility, lcPAM, I + RETURN ENDPROC @@ -4802,6 +4876,9 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base , toObjeto._User ) ENDIF ENDWITH && THIS + + RELEASE toClase, toObjeto, toFoxBin2Prg, lcPropsMemo, lcMethodsMemo + RETURN ENDPROC @@ -4881,7 +4958,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base FINALLY loObjeto = NULL - RELEASE loObjeto + RELEASE toClase, toFoxBin2Prg, N, X, lcObjName, loObjeto ENDTRY @@ -4967,7 +5044,8 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base FINALLY loProcedure = NULL - RELEASE loProcedure + RELEASE toClase, toObjeto, tcLine, taCodeLines, I, tnCodeLines, tcProcedureAbierto, tc_Comentario ; + , taLineasExclusion, tnBloquesExclusion, llEsProcedureDeClase, loProcedure ENDTRY @@ -5094,6 +5172,9 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base THROW + FINALLY + RELEASE toModulo, toClase, tcLine, I, taCodeLines, tnCodeLines ; + , laPropsAndValues, lnPropsAndValues_Count, Z, lcProp, lcValue, lcNombre, lcObjName ENDTRY RETURN llBloqueEncontrado @@ -5194,6 +5275,9 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base THROW + FINALLY + RELEASE toClase, tcLine, taCodeLines, tnCodeLines, I ; + , lcDefinedPAM, lnPos, lnPos2, lcPAM_Name, lcItem, lcMethods, lcPAM_Type ENDTRY RETURN llBloqueEncontrado @@ -5359,6 +5443,12 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base THROW + FINALLY + RELEASE toModulo, toClase, tcLine, taCodeLines, I, tnCodeLines, tcProcedureAbierto ; + , taLineasExclusion, tnBloquesExclusion, tc_Comentario, Z, lcProp, lcValue, loEx ; + , llCLASSMETADATA_Completed, llPROTECTED_Completed, llHIDDEN_Completed, llDEFINED_PAM_Completed ; + , llINCLUDE_Completed, llCLASS_PROPERTY_Completed, llOBJECTMETADATA_Completed ; + , llCLASSCOMMENTS_Completed, loObjeto ENDTRY ENDIF @@ -5393,6 +5483,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base STORE '' TO tcProcedureAbierto ENDIF + RELEASE toClase, tcLine, I, tcProcedureAbierto RETURN llBloqueEncontrado ENDPROC @@ -5412,6 +5503,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base toClase._HiddenProps = LOWER( ALLTRIM( SUBSTR( tcLine, 8 ) ) ) ENDIF + RELEASE toClase, tcLine RETURN llBloqueEncontrado ENDPROC @@ -5435,6 +5527,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base ENDIF ENDIF + RELEASE toModulo, toClase, tcLine, taCodeLines, I, tnCodeLines, tcProcedureAbierto RETURN llBloqueEncontrado ENDPROC @@ -5484,6 +5577,8 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base THROW + FINALLY + RELEASE toClase, tcLine ,taCodeLines, tnCodeLines, I ENDTRY RETURN llBloqueEncontrado @@ -5523,6 +5618,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base ENDIF ENDIF + RELEASE toClase, tcLine, laPropsAndValues, lnPropsAndValues_Count RETURN llBloqueEncontrado ENDPROC @@ -5554,7 +5650,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base ENDWITH && THIS loObjeto = NULL - RELEASE laPropsAndValues, lnPropsAndValues_Count, loObjeto + RELEASE toClase, tcLine, laPropsAndValues, lnPropsAndValues_Count, loObjeto ENDIF RETURN llBloqueEncontrado @@ -5606,6 +5702,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base RELEASE loOle, laPropsAndValues, lnPropsAndValues_Count ENDIF + RELEASE toModulo, tcLine, taCodeLines, I, tnCodeLines, tcProcedureAbierto RETURN llBloqueEncontrado ENDPROC @@ -5651,6 +5748,8 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base , @tc_Comentario, @taLineasExclusion, @tnBloquesExclusion ) ENDIF + RELEASE toModulo, toClase, toObjeto, tcLine, taCodeLines, I, tnCodeLines, tcProcedureAbierto ; + , tc_Comentario, taLineasExclusion, tnBloquesExclusion RETURN llBloqueEncontrado ENDPROC @@ -5670,6 +5769,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base toClase._ProtectedProps = LOWER( ALLTRIM( SUBSTR( tcLine, 11 ) ) ) ENDIF + RELEASE toClase, tcLine RETURN llBloqueEncontrado ENDPROC @@ -5739,8 +5839,8 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base FINALLY STORE NULL TO loProcedure - RELEASE loProcedure, I, lcNombreObjeto, lnObjProc - + RELEASE loProcedure, I, lcNombreObjeto, lnObjProc ; + , toClase, tnX, tc_Comentario, tcProcName, tcProcType, toObjeto ENDTRY RETURN @@ -5828,7 +5928,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base FINALLY STORE NULL TO loClase - RELEASE loClase, I ; + RELEASE taCodeLines, tnCodeLines, taLineasExclusion, tnBloquesExclusion, toModulo, loClase, I ; , llFoxBin2Prg_Completed, llOLE_DEF_Completed, llINCLUDE_SCX_Completed, llLIBCOMMENT_Completed ; , lc_Comentario, lcProcedureAbierto, lcLine ENDTRY @@ -6724,6 +6824,11 @@ DEFINE CLASS c_conversor_prg_a_pjx AS c_conversor_prg_a_bin THROW + FINALLY + RELEASE taCodeLines, tnCodeLines, taLineasExclusion, tnBloquesExclusion, toProject ; + , I, lc_Comentario, lcLine, llBuildProj_Completed, llDevInfo_Completed ; + , llServerHead_Completed, llFileComments_Completed, llFoxBin2Prg_Completed ; + , llExcludedFiles_Completed, llTextFiles_Completed, llProjectProperties_Completed ENDTRY RETURN @@ -6804,7 +6909,8 @@ DEFINE CLASS c_conversor_prg_a_pjx AS c_conversor_prg_a_bin FINALLY STORE NULL TO loFile - RELEASE lcComment, lcMetadatos, luValor, laPropsAndValues, lnPropsAndValues_Count, loFile + RELEASE toProject, tcLine, taCodeLines, I, tnCodeLines ; + , lcComment, lcMetadatos, luValor, laPropsAndValues, lnPropsAndValues_Count, loFile ENDTRY RETURN llBloqueEncontrado @@ -7515,6 +7621,9 @@ DEFINE CLASS c_conversor_prg_a_frx AS c_conversor_prg_a_bin THROW + FINALLY + RELEASE toReport, tcLine, taCodeLines, I, tnCodeLines, toReg, tcPropName ; + , lcValue, loEx ENDTRY RETURN llBloqueEncontrado @@ -7533,9 +7642,7 @@ DEFINE CLASS c_conversor_prg_a_frx AS c_conversor_prg_a_bin #ENDIF TRY - LOCAL llBloqueEncontrado, X, lnPos, lnPos2, lcValue, lnLenPropName, laProps(1) ; - , lcComment, lcMetadatos, luValor ; - , laPropsAndValues(1,2), lnPropsAndValues_Count + LOCAL llBloqueEncontrado, X, lnPos, lnPos2, lcValue, lnLenPropName, laProps(1) IF LOWER( LEFT(tcLine, 10) ) == 'platform="' llBloqueEncontrado = .T. @@ -7564,6 +7671,9 @@ DEFINE CLASS c_conversor_prg_a_frx AS c_conversor_prg_a_bin THROW + FINALLY + RELEASE toReport, tcLine, taCodeLines, I, tnCodeLines, toReg ; + , X, lnPos, lnPos2, lcValue, lnLenPropName, laProps ENDTRY RETURN llBloqueEncontrado @@ -7939,6 +8049,9 @@ DEFINE CLASS c_conversor_prg_a_dbf AS c_conversor_prg_a_bin THROW + FINALLY + RELEASE taCodeLines, tnCodeLines, taLineasExclusion, tnBloquesExclusion, toTable ; + , I, lc_Comentario, lcLine, llFoxBin2Prg_Completed, llBloqueTable_Completed ENDTRY RETURN @@ -8116,6 +8229,9 @@ DEFINE CLASS c_conversor_prg_a_dbc AS c_conversor_prg_a_bin THROW + FINALLY + RELEASE taCodeLines, tnCodeLines, taLineasExclusion, tnBloquesExclusion, toDatabase ; + , I, lc_Comentario, lcLine, llFoxBin2Prg_Completed, llBloqueDatabase_Completed ENDTRY RETURN @@ -8251,6 +8367,9 @@ DEFINE CLASS c_conversor_prg_a_mnx AS c_conversor_prg_a_bin THROW + FINALLY + RELEASE taCodeLines, tnCodeLines, taLineasExclusion, tnBloquesExclusion, toMenu ; + , I, lc_Comentario, lcLine, llFoxBin2Prg_Completed, llBloqueMenu_Completed ENDTRY RETURN @@ -8421,6 +8540,11 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base ENDIF THROW + + FINALLY + RELEASE toRegObj, toRegClass, tcMethods, taMethods, taCode, tnMethodCount ; + , taPropsAndComments, tnPropsAndComments_Count, taProtected, tnProtected_Count ; + , toFoxBin2Prg, lcMethodName, lnMethodCount ENDTRY RETURN @@ -8488,6 +8612,10 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base ENDIF THROW + + FINALLY + RELEASE tnMethodCount, taMethods, taCode, taProtected, taPropsAndComments ; + , lcMethod, lcMethodName, lnProtectedItem, lnCommentRow, lcProcDef, lcMethods, lnLen ENDTRY RETURN @@ -8555,6 +8683,10 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base ENDIF THROW + + FINALLY + RELEASE tcMemo, tlSort, taPropsAndComments, tnPropsAndComments_Count, tcSortedMemo ; + , laLines, I, lnPos, loEx ENDTRY RETURN @@ -8668,6 +8800,10 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base ENDIF THROW + + FINALLY + RELEASE tcMemo, tnSort, taPropsAndValues, tnPropsAndValues_Count, tcSortedMemo ; + , laItems, I, X, lnLenAcum, lnPosEQ, lcPropName, lnLenVal, lcValue, lcMethods ENDTRY RETURN @@ -8689,6 +8825,7 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base EXTERNAL ARRAY taProtected + LOCAL I tcSortedMemo = '' tnProtected_Count = ALINES(taProtected, tcMemo, 1+4) @@ -8712,6 +8849,7 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base DIMENSION taProtected(tnProtected_Count) ENDIF + RELEASE tcMemo, tlSort, taProtected, tnProtected_Count, tcSortedMemo, I RETURN ENDPROC @@ -8777,6 +8915,10 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base ENDIF THROW + + FINALLY + RELEASE tcMethod, tcIndentation, tlKeepProcHeader ; + , I, X, llProcedure, lnInicio, lnFin, laLineas, lnOffset ENDTRY RETURN lcMethod @@ -8784,7 +8926,9 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base ******************************************************************************************************************* - PROCEDURE MemoInOneLine( tcMethod ) + PROCEDURE MemoInOneLine + LPARAMETERS tcMethod + TRY LOCAL lcLine, I lcLine = '' @@ -8803,6 +8947,9 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base ENDIF THROW + + FINALLY + RELEASE tcMethod, I ENDTRY RETURN lcLine @@ -8839,6 +8986,10 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base ENDIF THROW + + FINALLY + RELEASE taPropsAndValues, tnPropCount, tcLeftIndentation, tlNormalizeLine ; + , I, lcComentarios, laLines, lcFinDeLinea ENDTRY RETURN lcLine @@ -8903,6 +9054,11 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base ENDIF THROW + + FINALLY + RELEASE tcMethod, taMethods, taCode, tcSorted, tnMethodCount, taPropsAndComments, tnPropsAndComments_Count ; + , taProtected, tnProtected_Count, toFoxBin2Prg ; + , I, I2, laMethods, lnDeleted, lcMethodName, lnMethodPos, lcMethodType, loEx ENDTRY RETURN @@ -9121,6 +9277,13 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base ENDIF THROW + + FINALLY + RELEASE tcMethod, taMethods, taCode, tcSorted, tnMethodCount, taPropsAndComments, tnPropsAndComments_Count ; + , taProtected, tnProtected_Count, toFoxBin2Prg ; + , lnLineCount, laLine, I, lnTextNodes, tcSorted, lnProtectedLine, lcMethod, lnLine_Len, lcLine, llProcOpen ; + , laLineasExclusion, lnBloquesExclusion ; + , loEx ENDTRY RETURN @@ -9197,6 +9360,9 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base ENDIF THROW + + FINALLY + RELEASE toRegObj, lcMemo, laPropsAndValues, lnPropsAndValues_Count ENDTRY RETURN @@ -9235,6 +9401,8 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base C_FB2PRG_CODE = C_FB2PRG_CODE + lcMethods ENDIF + RELEASE tcMethods, taMethods, taCode, tnMethodCount, taPropsAndComments, tnPropsAndComments_Count, taProtected, tnProtected_Count, toFoxBin2Prg ; + , laMethods, laCode, lnMethodCount, I, lcMethods RETURN ENDPROC @@ -9248,7 +9416,8 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base TRY LOCAL lcHiddenProp, lcProtectedProp, lcPropsMethodsDefd, I ; - , lcPropName, lnProtectedItem, lcComentarios + , lcPropName, lnProtectedItem, lcComentarios ; + , loEx as Exception WITH THIS AS c_conversor_bin_a_prg OF 'FOXBIN2PRG.PRG' *-- DEFINIR PROPIEDADES ( HIDDEN, PROTECTED, *DEFINED_PAM ) @@ -9341,6 +9510,12 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base ENDIF THROW + + FINALLY + RELEASE toRegClass, taPropsAndValues, taPropsAndComments, taProtected ; + , tnPropsAndValues_Count, tnPropsAndComments_Count, tnProtected_Count ; + , lcHiddenProp, lcProtectedProp, lcPropsMethodsDefd, I ; + , lcPropName, lnProtectedItem, lcComentarios, loEx ENDTRY RETURN @@ -9403,8 +9578,10 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base C_FB2PRG_CODE = C_FB2PRG_CODE + CR_LF + RELEASE I, lcPropsMethodsDefd, lcType ENDIF + RELEASE taPropsAndComments, tnPropsAndComments_Count RETURN ENDPROC @@ -10279,7 +10456,8 @@ DEFINE CLASS c_conversor_vcx_a_prg AS c_conversor_bin_a_prg FINALLY USE IN (SELECT("TABLABIN")) STORE NULL TO loRegClass, loRegObj - RELEASE lnCodError, loRegClass, loRegObj, lnMethodCount, laMethods, laCode, laProtected, lnLen, lnObjCount ; + RELEASE toModulo, toEx, toFoxBin2Prg ; + , lnCodError, loRegClass, loRegObj, lnMethodCount, laMethods, laCode, laProtected, lnLen, lnObjCount ; , laPropsAndValues, laPropsAndComments, lnLastClass, lnRecno, lcMethods, lcObjName, la_NombresObjsOle ; , laObjs, I, lnPropsAndValues_Count, lnPropsAndComments_Count, lnProtected_Count @@ -10524,7 +10702,8 @@ DEFINE CLASS c_conversor_scx_a_prg AS c_conversor_bin_a_prg FINALLY USE IN (SELECT("TABLABIN")) STORE NULL TO loRegClass, loRegObj - RELEASE lnCodError, loRegClass, loRegObj, lnMethodCount, laMethods, laCode, laProtected, lnLen, lnObjCount ; + RELEASE toModulo, toEx, toFoxBin2Prg ; + , lnCodError, loRegClass, loRegObj, lnMethodCount, laMethods, laCode, laProtected, lnLen, lnObjCount ; , laPropsAndValues, laPropsAndComments, lnLastClass, lnRecno, lcMethods, lcObjName, la_NombresObjsOle ; , laObjs, I, lnPropsAndValues_Count, lnPropsAndComments_Count, lnProtected_Count @@ -10868,7 +11047,8 @@ DEFINE CLASS c_conversor_pjx_a_prg AS c_conversor_bin_a_prg FINALLY USE IN (SELECT("TABLABIN")) STORE NULL TO loProject, loReg, loServerHead, loServerData - RELEASE lnCodError, lcStr, lnPos, lnLen, lnServerCount, loReg, lcDevInfo, lnLen ; + RELEASE toModulo, toEx, toFoxBin2Prg ; + , lnCodError, lcStr, lnPos, lnLen, lnServerCount, loReg, lcDevInfo, lnLen ; , loProject, loServerHead, loServerData ENDTRY @@ -11249,7 +11429,8 @@ DEFINE CLASS c_conversor_pjm_a_prg AS c_conversor_bin_a_prg FINALLY *USE IN (SELECT("TABLABIN")) STORE NULL TO loProject, loReg, loServerHead, loServerData - RELEASE lnCodError, lcStr, lnPos, lnLen, lnServerCount, loReg, lcDevInfo, lnLen ; + RELEASE toModulo, toEx, toFoxBin2Prg ; + , lnCodError, lcStr, lnPos, lnLen, lnServerCount, loReg, lcDevInfo, lnLen ; , lcStrPJM, laLines, laProps, loProject, loServerHead, loServerData ENDTRY @@ -11417,7 +11598,8 @@ DEFINE CLASS c_conversor_frx_a_prg AS c_conversor_bin_a_prg USE IN (SELECT("TABLABIN")) USE IN (SELECT("TABLABIN_0")) STORE NULL TO loRegObj, loRegCab, loRegDataEnv, loRegCur - RELEASE lnCodError, loRegCab, loRegDataEnv, loRegCur, loRegObj, lnMethodCount, laMethods, laCode, laProtected, lnLen ; + RELEASE toModulo, toEx, toFoxBin2Prg ; + , lnCodError, loRegCab, loRegDataEnv, loRegCur, loRegObj, lnMethodCount, laMethods, laCode, laProtected, lnLen ; , laPropsAndValues, laPropsAndComments, lnLastClass, lnRecno, lcMethods, lcObjName, la_NombresObjsOle ENDTRY @@ -11554,7 +11736,8 @@ DEFINE CLASS c_conversor_dbf_a_prg AS c_conversor_bin_a_prg ENDFOR STORE NULL TO loTable, loDBFUtils - RELEASE lnCodError, laDatabases, lnDatabases_Count, laDatabases2, lnLen, lc_FileTypeDesc ; + RELEASE toModulo, toEx, toFoxBin2Prg ; + , lnCodError, laDatabases, lnDatabases_Count, laDatabases2, lnLen, lc_FileTypeDesc ; , ln_HexFileType, ll_FileHasCDX, ll_FileHasMemo, ll_FileIsDBC, lc_DBC_Name, lnDataSessionID, lnSelect ; , loTable, loDBFUtils ENDTRY @@ -11633,7 +11816,8 @@ DEFINE CLASS c_conversor_dbc_a_prg AS c_conversor_bin_a_prg FINALLY USE IN (SELECT("TABLABIN")) CLOSE DATABASES - + RELEASE toDatabase, toEx, toFoxBin2Prg ; + , lnCodError, laDatabases, lnDatabases_Count, lnLen ENDTRY RETURN @@ -11714,7 +11898,7 @@ DEFINE CLASS c_conversor_mnx_a_prg AS c_conversor_bin_a_prg FINALLY USE IN (SELECT("TABLABIN")) - + RELEASE toMenu, toEx, toFoxBin2Prg, lnCodError, lnLen ENDTRY RETURN @@ -11782,15 +11966,16 @@ DEFINE CLASS CL_CUS_BASE AS CUSTOM *--------------------------------------------------------------------------------------------------- LPARAMETERS tcLine, tcComment LOCAL ln_AT_Cmt - tcComment = '' ln_AT_Cmt = AT( '&'+'&', tcLine) IF ln_AT_Cmt > 0 tcComment = LTRIM( SUBSTR( tcLine, ln_AT_Cmt + 2 ) ) - *tcLine = RTRIM( LEFT( tcLine, ln_AT_Cmt - 1 ), 0, ' ', CHR(9) ) && Quito espacios y TABS tcLine = RTRIM( LEFT( tcLine, ln_AT_Cmt - 1 ), 0, CHR(9) ) && Quito TABS + ELSE + tcComment = '' ENDIF + RELEASE tcLine, tcComment RETURN (ln_AT_Cmt > 0) ENDPROC @@ -11861,8 +12046,11 @@ DEFINE CLASS CL_COL_BASE AS COLLECTION IF ln_AT_Cmt > 0 tcComment = LTRIM( SUBSTR( tcLine, ln_AT_Cmt + 2 ) ) tcLine = RTRIM( LEFT( tcLine, ln_AT_Cmt - 1 ), 0, CHR(9) ) && Quito TABS + ELSE + tcComment = '' ENDIF + RELEASE tcLine, tcComment RETURN (ln_AT_Cmt > 0) ENDPROC @@ -18931,7 +19119,8 @@ DEFINE CLASS CL_MENU_OPTION AS CL_MENU_COL_BASE FINALLY STORE NULL TO loReg - RELEASE lcText, loReg, lnPos, lcPadName, lcExpr, lcComment, lcProcName, lcProcCode, lnNegContainer, lnNegObject + RELEASE tcLine, taCodeLines, I, tnCodeLines, toConversor ; + , lcText, loReg, lnPos, lcPadName, lcExpr, lcComment, lcProcName, lcProcCode, lnNegContainer, lnNegObject ENDTRY