diff --git a/foxbin2prg.prg b/foxbin2prg.prg
index ee25dd2..612ee7f 100644
--- a/foxbin2prg.prg
+++ b/foxbin2prg.prg
@@ -10360,7 +10360,6 @@ DEFINE CLASS c_conversor_prg_a_dbc AS c_conversor_prg_a_bin
C_FB2PRG_CODE = C_FB2PRG_CODE + laCodeLines(X) + CR_LF
ENDFOR
- STRTOFILE( C_FB2PRG_CODE, .c_InputFile + '.txt' )
ELSE
*-- No es clase por archivo, o no se quiere redireccionar a Main.
C_FB2PRG_CODE = FILETOSTR( .c_InputFile )
@@ -10372,6 +10371,7 @@ DEFINE CLASS c_conversor_prg_a_dbc AS c_conversor_prg_a_bin
ENDIF
+ *STRTOFILE( C_FB2PRG_CODE, .c_InputFile + '.txt' ) && *fdb*
lnCodeLines = ALINES( laCodeLines, C_FB2PRG_CODE )
*-- Identifico el inicio/fin de bloque, definición, cabecera y cuerpo del reporte
@@ -15580,6 +15580,7 @@ DEFINE CLASS CL_DBC_COL_BASE AS CL_COL_BASE
+ [] ;
+ [] ;
+ [] ;
+ + [] ;
+ []
__ObjectID = 0
@@ -17013,7 +17014,7 @@ DEFINE CLASS CL_DBC_CONNECTIONS AS CL_DBC_COL_BASE
WITH THIS AS CL_DBC_CONNECTIONS OF 'FOXBIN2PRG.PRG'
loConnection = NULL
lcText = ''
- .read_bindatatoproperties()
+ .read_BinDataToProperties()
IF .Count > 0 THEN
@@ -17051,7 +17052,7 @@ DEFINE CLASS CL_DBC_CONNECTIONS AS CL_DBC_COL_BASE
ENDPROC
- PROCEDURE read_bindatatoproperties
+ PROCEDURE read_BinDataToProperties
*---------------------------------------------------------------------------------------------------
* PARÁMETROS: (v=Pasar por valor | @=Pasar por referencia) (!=Obligatorio | ?=Opcional) (IN/OUT)
* toFoxBin2Prg (@! IN ) Referencia de toFoxBin2Prg
@@ -17078,7 +17079,7 @@ DEFINE CLASS CL_DBC_CONNECTIONS AS CL_DBC_COL_BASE
IF lnConnection_Count > 0
FOR I = 1 TO lnConnection_Count
loConnection = CREATEOBJECT('CL_DBC_CONNECTION')
- loConnection.read_bindatatoproperties( laConnections(I) )
+ loConnection.read_BinDataToProperties( laConnections(I) )
.ADD( loConnection, loConnection._Name )
ENDFOR
ENDIF
@@ -17223,7 +17224,7 @@ DEFINE CLASS CL_DBC_CONNECTION AS CL_DBC_BASE
LOCAL lcText, loEx AS EXCEPTION
WITH THIS AS CL_DBC_CONNECTION OF 'FOXBIN2PRG.PRG'
- .read_bindatatoproperties(tcConnection)
+ .read_BinDataToProperties(tcConnection)
TEXT TO lcText TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
<<>>
@@ -17292,7 +17293,7 @@ DEFINE CLASS CL_DBC_CONNECTION AS CL_DBC_BASE
ENDPROC
- PROCEDURE read_bindatatoproperties
+ PROCEDURE read_BinDataToProperties
LPARAMETERS tcConnection
WITH THIS AS CL_DBC_CONNECTION OF 'FOXBIN2PRG.PRG'
@@ -17415,7 +17416,7 @@ DEFINE CLASS CL_DBC_TABLES AS CL_DBC_COL_BASE
WITH THIS AS CL_DBC_TABLES OF 'FOXBIN2PRG.PRG'
STORE NULL TO loTable
lcText = ''
- .read_bindatatoproperties()
+ .read_BinDataToProperties()
IF .Count > 0 THEN
TEXT TO lcText ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
@@ -17458,7 +17459,7 @@ DEFINE CLASS CL_DBC_TABLES AS CL_DBC_COL_BASE
ENDPROC
- PROCEDURE read_bindatatoproperties
+ PROCEDURE read_BinDataToProperties
*---------------------------------------------------------------------------------------------------
* PARÁMETROS: (v=Pasar por valor | @=Pasar por referencia) (!=Obligatorio | ?=Opcional) (IN/OUT)
* toFoxBin2Prg (@! IN ) Referencia de toFoxBin2Prg
@@ -17486,7 +17487,7 @@ DEFINE CLASS CL_DBC_TABLES AS CL_DBC_COL_BASE
IF lnTable_Count > 0
FOR I = 1 TO lnTable_Count
loTable = CREATEOBJECT("CL_DBC_TABLE")
- loTable.read_bindatatoproperties( laTables(I) )
+ loTable.read_BinDataToProperties( laTables(I) )
.ADD( loTable, loTable._Name )
ENDFOR
ENDIF
@@ -17662,7 +17663,7 @@ DEFINE CLASS CL_DBC_TABLE AS CL_DBC_BASE
WITH THIS AS CL_DBC_TABLE OF 'FOXBIN2PRG.PRG'
STORE NULL TO loRelations, loFields, loIndexes
STORE '' TO lcText, lcFields, lcIndexes, lcRelations
- .read_bindatatoproperties(tcTable)
+ .read_BinDataToProperties(tcTable)
loFields = CREATEOBJECT('CL_DBC_FIELDS_DB')
lcFields = loFields.toText( tcTable, @toFoxBin2Prg )
@@ -17754,7 +17755,7 @@ DEFINE CLASS CL_DBC_TABLE AS CL_DBC_BASE
ENDPROC
- PROCEDURE read_bindatatoproperties
+ PROCEDURE read_BinDataToProperties
LPARAMETERS tcTable
WITH THIS AS CL_DBC_TABLE OF 'FOXBIN2PRG.PRG'
@@ -17815,7 +17816,7 @@ DEFINE CLASS CL_DBC_FIELDS_DB AS CL_DBC_COL_BASE
llBloqueEncontrado = .T.
WITH THIS AS CL_DBC_FIELDS_DB OF 'FOXBIN2PRG.PRG'
- *.n_Campos = 0 && Para forzar modo LEGACY
+ *.n_Campos = 0 && Descomentar para forzar modo LEGACY
FOR I = I + 1 TO tnCodeLines
.set_Line( @tcLine, @taCodeLines, I )
@@ -17830,13 +17831,13 @@ DEFINE CLASS CL_DBC_FIELDS_DB AS CL_DBC_COL_BASE
loField = CREATEOBJECT("CL_DBC_FIELD_DB")
loField.analizarBloque( @tcLine, @taCodeLines, @I, tnCodeLines )
- *IF .n_Campos = 0 THEN
- *-- MODO LEGACY: Cuando no existe tag de ordenamiento de campos, se agregan en el orden que se leen
- .ADD( loField, loField._Name )
- *ELSE
- * lnPos = ASCAN( .a_Campos, loField._Name, 1, 0, 1, 1+2+4+8 )
- * .a_Campos( lnPos, 2) = loField
- *ENDIF
+ IF .n_Campos = 0 THEN
+ *-- MODO LEGACY: Cuando no existe tag de ordenamiento de campos, se agregan en el orden que se leen
+ .ADD( loField, loField._Name )
+ ELSE
+ lnPos = ASCAN( .a_Campos, loField._Name, 1, 0, 1, 1+2+4+8 )
+ .a_Campos( lnPos, 2) = loField
+ ENDIF
OTHERWISE && Otro valor
*-- No hay otros valores
@@ -17844,9 +17845,9 @@ DEFINE CLASS CL_DBC_FIELDS_DB AS CL_DBC_COL_BASE
ENDFOR
*-- Restablezco el orden de los campos (Solo si n_Campos > 0, que significa que tiene el nuevo tag especial de orden)
- *FOR lnPos = 1 TO .n_Campos
- * .ADD( .a_Campos( lnPos, 2), .a_Campos( lnPos, 1) )
- *ENDFOR
+ FOR lnPos = 1 TO .n_Campos
+ .ADD( .a_Campos( lnPos, 2), .a_Campos( lnPos, 1) )
+ ENDFOR
ENDWITH && THIS
ENDIF
@@ -17901,7 +17902,7 @@ DEFINE CLASS CL_DBC_FIELDS_DB AS CL_DBC_COL_BASE
CASE C_FIELD_ORDER_F $ tcLine && Fin
EXIT
- OTHERWISE && campo
+ OTHERWISE && nombre del campo en el orden original
.n_Campos = .n_Campos + 1
DIMENSION .a_Campos(.n_Campos, 2)
.a_Campos(.n_Campos, 1) = tcLine
@@ -17949,7 +17950,7 @@ DEFINE CLASS CL_DBC_FIELDS_DB AS CL_DBC_COL_BASE
STORE 0 TO X, lnField_Count
lcText = ''
- .read_bindatatoproperties( tcTable, @toFoxBin2Prg )
+ .read_BinDataToProperties( tcTable, @toFoxBin2Prg )
IF .Count > 0 THEN
TEXT TO lcText ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
@@ -17974,7 +17975,7 @@ DEFINE CLASS CL_DBC_FIELDS_DB AS CL_DBC_COL_BASE
<<>>
ENDTEXT
- .KeySort = 2 && Comento para forzar modo LEGACY
+ .KeySort = 2 && Comentar para forzar modo LEGACY
FOR EACH loField IN THIS &&FOXOBJECT
lcText = lcText + loField.toText( tcTable, loField._Name )
ENDFOR
@@ -18007,7 +18008,7 @@ DEFINE CLASS CL_DBC_FIELDS_DB AS CL_DBC_COL_BASE
ENDPROC
- PROCEDURE read_bindatatoproperties
+ PROCEDURE read_BinDataToProperties
*---------------------------------------------------------------------------------------------------
* PARÁMETROS: (v=Pasar por valor | @=Pasar por referencia) (!=Obligatorio | ?=Opcional) (IN/OUT)
* tcTable (@! IN ) Nombre de la tabla de la que se obtendrán los campos
@@ -18041,7 +18042,7 @@ DEFINE CLASS CL_DBC_FIELDS_DB AS CL_DBC_COL_BASE
IF lnField_Count > 0
FOR I = 1 TO lnField_Count
loField = CREATEOBJECT("CL_DBC_FIELD_DB")
- loField.read_bindatatoproperties( tcTable, laFields(I) )
+ loField.read_BinDataToProperties( tcTable, laFields(I) )
.ADD( loField, loField._Name )
ENDFOR
ENDIF
@@ -18176,7 +18177,7 @@ DEFINE CLASS CL_DBC_FIELD_DB AS CL_DBC_BASE
lcText = ''
WITH THIS AS CL_DBC_FIELD_DB OF 'FOXBIN2PRG.PRG'
- .read_bindatatoproperties(tcTable, tcField)
+ .read_BinDataToProperties(tcTable, tcField)
TEXT TO lcText ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
<<>>
@@ -18232,7 +18233,7 @@ DEFINE CLASS CL_DBC_FIELD_DB AS CL_DBC_BASE
ENDPROC
- PROCEDURE read_bindatatoproperties
+ PROCEDURE read_BinDataToProperties
LPARAMETERS tcTable, tcField
WITH THIS AS CL_DBC_FIELD_DB OF 'FOXBIN2PRG.PRG'
@@ -18351,14 +18352,14 @@ DEFINE CLASS CL_DBC_INDEXES_DB AS CL_DBC_COL_BASE
WITH THIS AS CL_DBC_INDEXES_DB OF 'FOXBIN2PRG.PRG'
STORE NULL TO loIndex
lcText = ''
- .read_bindatatoproperties(tcTable, @toFoxBin2Prg)
+ .read_BinDataToProperties(tcTable, @toFoxBin2Prg)
IF .Count > 0 THEN
TEXT TO lcText ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
<<>>
ENDTEXT
- .KeySort = 2 && Comento para forzar modo LEGACY
+ .KeySort = 2 && Comentar para forzar modo LEGACY
FOR EACH loIndex IN THIS &&FOXOBJECT
lcText = lcText + loIndex.toText( tcTable + '.' + loIndex._Name )
ENDFOR
@@ -18392,7 +18393,7 @@ DEFINE CLASS CL_DBC_INDEXES_DB AS CL_DBC_COL_BASE
ENDPROC
- PROCEDURE read_bindatatoproperties
+ PROCEDURE read_BinDataToProperties
*---------------------------------------------------------------------------------------------------
* PARÁMETROS: (v=Pasar por valor | @=Pasar por referencia) (!=Obligatorio | ?=Opcional) (IN/OUT)
* tcTable (v! IN ) Nombre de la Tabla
@@ -18426,7 +18427,7 @@ DEFINE CLASS CL_DBC_INDEXES_DB AS CL_DBC_COL_BASE
IF lnIndex_Count > 0
FOR I = 1 TO lnIndex_Count
loIndex = CREATEOBJECT("CL_DBC_INDEX_DB")
- loIndex.read_bindatatoproperties( tcTable + '.' + laIndexes(I) )
+ loIndex.read_BinDataToProperties( tcTable + '.' + laIndexes(I) )
.ADD( loIndex, loIndex._Name )
ENDFOR
ENDIF
@@ -18546,7 +18547,7 @@ DEFINE CLASS CL_DBC_INDEX_DB AS CL_DBC_BASE
lcText = ''
WITH THIS AS CL_DBC_INDEX_DB OF 'FOXBIN2PRG.PRG'
- .read_bindatatoproperties(tcIndex)
+ .read_BinDataToProperties(tcIndex)
TEXT TO lcText ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
<<>>
@@ -18586,7 +18587,7 @@ DEFINE CLASS CL_DBC_INDEX_DB AS CL_DBC_BASE
ENDPROC
- PROCEDURE read_bindatatoproperties
+ PROCEDURE read_BinDataToProperties
LPARAMETERS tcIndex
WITH THIS AS CL_DBC_INDEX_DB OF 'FOXBIN2PRG.PRG'
@@ -18703,7 +18704,7 @@ DEFINE CLASS CL_DBC_VIEWS AS CL_DBC_COL_BASE
WITH THIS AS CL_DBC_VIEWS OF 'FOXBIN2PRG.PRG'
STORE NULL TO loView
lcText = ''
- .read_bindatatoproperties()
+ .read_BinDataToProperties()
IF .Count > 0 THEN
TEXT TO lcText ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
@@ -18746,7 +18747,7 @@ DEFINE CLASS CL_DBC_VIEWS AS CL_DBC_COL_BASE
ENDPROC
- PROCEDURE read_bindatatoproperties
+ PROCEDURE read_BinDataToProperties
*---------------------------------------------------------------------------------------------------
* PARÁMETROS: (v=Pasar por valor | @=Pasar por referencia) (!=Obligatorio | ?=Opcional) (IN/OUT)
* toFoxBin2Prg (@! IN ) Referencia de toFoxBin2Prg
@@ -18774,7 +18775,7 @@ DEFINE CLASS CL_DBC_VIEWS AS CL_DBC_COL_BASE
IF lnView_Count > 0
FOR I = 1 TO lnView_Count
loView = CREATEOBJECT("CL_DBC_VIEW")
- loView.read_bindatatoproperties( laViews(I) )
+ loView.read_BinDataToProperties( laViews(I) )
.ADD( loView, loView._Name )
ENDFOR
ENDIF
@@ -18990,7 +18991,7 @@ DEFINE CLASS CL_DBC_VIEW AS CL_DBC_BASE
STORE '' TO lcText, lcFields, lcIndexes, lcRelations
WITH THIS AS CL_DBC_VIEW OF 'FOXBIN2PRG.PRG'
- .read_bindatatoproperties(tcView)
+ .read_BinDataToProperties(tcView)
TEXT TO lcText ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
<<>>
@@ -19130,7 +19131,7 @@ DEFINE CLASS CL_DBC_VIEW AS CL_DBC_BASE
ENDPROC
- PROCEDURE read_bindatatoproperties
+ PROCEDURE read_BinDataToProperties
*---------------------------------------------------------------------------------------------------
* PARÁMETROS: (v=Pasar por valor | @=Pasar por referencia) (!=Obligatorio | ?=Opcional) (IN/OUT)
* tcView (v! IN ) Vista en evaluación
@@ -19211,7 +19212,7 @@ DEFINE CLASS CL_DBC_FIELDS_VW AS CL_DBC_COL_BASE
llBloqueEncontrado = .T.
WITH THIS AS CL_DBC_FIELDS_VW OF 'FOXBIN2PRG.PRG'
- *.n_Campos = 0 && Para forzar modo LEGACY
+ *.n_Campos = 0 && Descomentar para forzar modo LEGACY
FOR I = I + 1 TO tnCodeLines
.set_Line( @tcLine, @taCodeLines, I )
@@ -19227,13 +19228,13 @@ DEFINE CLASS CL_DBC_FIELDS_VW AS CL_DBC_COL_BASE
loField = CREATEOBJECT("CL_DBC_FIELD_VW")
loField.analizarBloque( @tcLine, @taCodeLines, @I, tnCodeLines )
- *IF .n_Campos = 0 THEN
- *-- MODO LEGACY: Cuando no existe tag de ordenamiento de campos, se agregan en el orden que se leen
- .ADD( loField, loField._Name )
- *ELSE
- * lnPos = ASCAN( .a_Campos, loField._Name, 1, 0, 1, 1+2+4+8 )
- * .a_Campos( lnPos, 2) = loField
- *ENDIF
+ IF .n_Campos = 0 THEN
+ *-- MODO LEGACY: Cuando no existe tag de ordenamiento de campos, se agregan en el orden que se leen
+ .ADD( loField, loField._Name )
+ ELSE
+ lnPos = ASCAN( .a_Campos, loField._Name, 1, 0, 1, 1+2+4+8 )
+ .a_Campos( lnPos, 2) = loField
+ ENDIF
OTHERWISE && Otro valor
*-- No hay otros valores
@@ -19241,9 +19242,9 @@ DEFINE CLASS CL_DBC_FIELDS_VW AS CL_DBC_COL_BASE
ENDFOR
*-- Restablezco el orden de los campos (Solo si n_Campos > 0, que significa que tiene el nuevo tag especial de orden)
- *FOR lnPos = 1 TO .n_Campos
- * .ADD( .a_Campos( lnPos, 2), .a_Campos( lnPos, 1) )
- *ENDFOR
+ FOR lnPos = 1 TO .n_Campos
+ .ADD( .a_Campos( lnPos, 2), .a_Campos( lnPos, 1) )
+ ENDFOR
ENDWITH && THIS
ENDIF
@@ -19299,7 +19300,7 @@ DEFINE CLASS CL_DBC_FIELDS_VW AS CL_DBC_COL_BASE
CASE C_FIELD_ORDER_F $ tcLine && Fin
EXIT
- OTHERWISE && campo
+ OTHERWISE && nombre del campo en el orden original
.n_Campos = .n_Campos + 1
DIMENSION .a_Campos(.n_Campos, 2)
.a_Campos(.n_Campos, 1) = tcLine
@@ -19345,7 +19346,7 @@ DEFINE CLASS CL_DBC_FIELDS_VW AS CL_DBC_COL_BASE
lcText = ''
WITH THIS AS CL_DBC_FIELDS_VW OF 'FOXBIN2PRG.PRG'
- .read_bindatatoproperties(tcView, @toFoxBin2Prg)
+ .read_BinDataToProperties(tcView, @toFoxBin2Prg)
IF .Count > 0 THEN
TEXT TO lcText ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
@@ -19370,7 +19371,7 @@ DEFINE CLASS CL_DBC_FIELDS_VW AS CL_DBC_COL_BASE
<<>>
ENDTEXT
- .KeySort = 2 && Comento para forzar modo LEGACY
+ .KeySort = 2 && Comentar para forzar modo LEGACY
FOR EACH loField IN THIS &&FOXOBJECT
lcText = lcText + loField.toText( tcView, loField._Name )
ENDFOR
@@ -19403,7 +19404,7 @@ DEFINE CLASS CL_DBC_FIELDS_VW AS CL_DBC_COL_BASE
ENDPROC
- PROCEDURE read_bindatatoproperties
+ PROCEDURE read_BinDataToProperties
*---------------------------------------------------------------------------------------------------
* PARÁMETROS: (v=Pasar por valor | @=Pasar por referencia) (!=Obligatorio | ?=Opcional) (IN/OUT)
* tcView (@! IN ) Nombre de la vista de la que se obtendrán los campos
@@ -19438,7 +19439,7 @@ DEFINE CLASS CL_DBC_FIELDS_VW AS CL_DBC_COL_BASE
IF lnField_Count > 0
FOR I = 1 TO lnField_Count
loField = CREATEOBJECT("CL_DBC_FIELD_VW")
- loField.read_bindatatoproperties( tcView, laFields(I) )
+ loField.read_BinDataToProperties( tcView, laFields(I) )
.ADD( loField, loField._Name )
ENDFOR
ENDIF
@@ -19643,7 +19644,7 @@ DEFINE CLASS CL_DBC_FIELD_VW AS CL_DBC_BASE
ENDPROC
- PROCEDURE read_bindatatoproperties
+ PROCEDURE read_BinDataToProperties
LPARAMETERS tcView, tcField
WITH THIS AS CL_DBC_FIELD_VW OF 'FOXBIN2PRG.PRG'
@@ -19761,7 +19762,7 @@ DEFINE CLASS CL_DBC_RELATIONS AS CL_DBC_COL_BASE
, loRelation AS CL_DBC_RELATION OF 'FOXBIN2PRG.PRG'
STORE NULL TO loRelation
lcText = ''
- .read_bindatatoproperties(tcTable, @toFoxBin2Prg)
+ .read_BinDataToProperties(tcTable, @toFoxBin2Prg)
IF .Count > 0 THEN
TEXT TO lcText ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
@@ -19796,7 +19797,7 @@ DEFINE CLASS CL_DBC_RELATIONS AS CL_DBC_COL_BASE
ENDPROC
- PROCEDURE read_bindatatoproperties
+ PROCEDURE read_BinDataToProperties
*---------------------------------------------------------------------------------------------------
* PARÁMETROS: (v=Pasar por valor | @=Pasar por referencia) (!=Obligatorio | ?=Opcional) (IN/OUT)
* tcTable (v! IN ) Tabla de la que obtener las relaciones
@@ -19826,7 +19827,7 @@ DEFINE CLASS CL_DBC_RELATIONS AS CL_DBC_COL_BASE
FOR I = 1 TO lnRelation_Count
IF laRelations(I,1) == UPPER( RTRIM( tcTable ) )
loRelation = CREATEOBJECT('CL_DBC_RELATION')
- loRelation.read_bindatatoproperties( @laRelations, I )
+ loRelation.read_BinDataToProperties( @laRelations, I )
.ADD( loRelation, loRelation._Name )
ENDIF
ENDFOR
@@ -19949,7 +19950,7 @@ DEFINE CLASS CL_DBC_RELATION AS CL_DBC_BASE
WITH THIS AS CL_DBC_RELATION OF 'FOXBIN2PRG.PRG'
LOCAL lcText, loEx AS EXCEPTION
lcText = ''
- .read_bindatatoproperties(@taRelations, X)
+ .read_BinDataToProperties(@taRelations, X)
TEXT TO lcText ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
<<>>
@@ -19998,7 +19999,7 @@ DEFINE CLASS CL_DBC_RELATION AS CL_DBC_BASE
ENDPROC
- PROCEDURE read_bindatatoproperties
+ PROCEDURE read_BinDataToProperties
*---------------------------------------------------------------------------------------------------
* PARÁMETROS: (v=Pasar por valor | @=Pasar por referencia) (!=Obligatorio | ?=Opcional) (IN/OUT)
* taRelations (!@ IN ) Array de relaciones