From 0e07d8a4466a410e5f66beefec98c3d59ef9491e Mon Sep 17 00:00:00 2001 From: fdbozzo Date: Tue, 14 Apr 2015 01:19:21 +0200 Subject: [PATCH] =?UTF-8?q?-=20Agregado=20padr(item,128)=20en=20los=20add(?= =?UTF-8?q?),=20porque=20si=20no=20en=20las=20collections=20con=20keysort?= =?UTF-8?q?=3D2=20"estoXXX"=20est=C3=A1=20antes=20que=20"esto"=20:(?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- foxbin2prg.exe | Bin 571880 -> 571883 bytes foxbin2prg.prg | 48 ++++++++++++++++++++++++++++++------------------ 2 files changed, 30 insertions(+), 18 deletions(-) diff --git a/foxbin2prg.exe b/foxbin2prg.exe index 487407faf10a01113df131c9f36e1dc73a9d991b..cc33fe73f0024a9769c26c27a7733ea2db5b4c74 100644 GIT binary patch delta 11681 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 delta 11135 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 diff --git a/foxbin2prg.prg b/foxbin2prg.prg index 48b18a3..e2bdeef 100644 --- a/foxbin2prg.prg +++ b/foxbin2prg.prg @@ -15246,7 +15246,6 @@ DEFINE CLASS c_conversor_dbc_a_prg AS c_conversor_bin_a_prg .write_EXTERNAL_MEMBER_HEADER( @toFoxBin2Prg, .F., .F., @lcExternalHeader ) *-- Connections - toDatabase._Connections.KeySort=2 FOR EACH loConnection IN toDatabase._Connections &&FOXOBJECT lnClassCount = lnClassCount + 1 DIMENSION laClasses(lnClassCount,3) @@ -15257,7 +15256,6 @@ DEFINE CLASS c_conversor_dbc_a_prg AS c_conversor_bin_a_prg ENDFOR *-- Tables - toDatabase._Tables.KeySort=2 FOR EACH loTable IN toDatabase._Tables &&FOXOBJECT lnClassCount = lnClassCount + 1 DIMENSION laClasses(lnClassCount,3) @@ -15268,7 +15266,6 @@ DEFINE CLASS c_conversor_dbc_a_prg AS c_conversor_bin_a_prg ENDFOR *-- Views - toDatabase._Views.KeySort=2 FOR EACH loView IN toDatabase._Views &&FOXOBJECT lnClassCount = lnClassCount + 1 DIMENSION laClasses(lnClassCount,3) @@ -17803,7 +17800,8 @@ DEFINE CLASS CL_DBC_CONNECTIONS AS CL_DBC_COL_BASE CASE C_CONNECTION_I $ tcLine loConnection = CREATEOBJECT("CL_DBC_CONNECTION") loConnection.analizarBloque( @tcLine, @taCodeLines, @I, tnCodeLines ) - .ADD( loConnection, loConnection._Name ) + *-- El siguiente PADR() es porque si no "estoXXX" está antes que "esto" cuando keysort=2 (raro...) + .ADD( loConnection, PADR(loConnection._Name,128) ) CASE '' $ tcLine .analizarBloque_Comment( @tcLine, @taCodeLines, @I, tnCodeLines ) @@ -17921,7 +17919,8 @@ DEFINE CLASS CL_DBC_CONNECTIONS AS CL_DBC_COL_BASE FOR I = 1 TO lnConnection_Count loConnection = CREATEOBJECT('CL_DBC_CONNECTION') loConnection.read_BinDataToProperties( laConnections(I) ) - .ADD( loConnection, loConnection._Name ) + *-- El siguiente PADR() es porque si no "estoXXX" está antes que "esto" cuando keysort=2 (raro...) + .ADD( loConnection, PADR(loConnection._Name,128) ) ENDFOR ENDIF ENDWITH @@ -18208,7 +18207,8 @@ DEFINE CLASS CL_DBC_TABLES AS CL_DBC_COL_BASE CASE C_TABLE_I $ tcLine loTable = CREATEOBJECT("CL_DBC_TABLE") loTable.analizarBloque( @tcLine, @taCodeLines, @I, tnCodeLines ) - .ADD( loTable, loTable._Name ) + *-- El siguiente PADR() es porque si no "estoXXX" está antes que "esto" cuando keysort=2 (raro...) + .ADD( loTable, PADR(loTable._Name,128) ) OTHERWISE && Otro valor *-- No hay otros valores @@ -18329,7 +18329,8 @@ DEFINE CLASS CL_DBC_TABLES AS CL_DBC_COL_BASE FOR I = 1 TO lnTable_Count loTable = CREATEOBJECT("CL_DBC_TABLE") loTable.read_BinDataToProperties( laTables(I) ) - .ADD( loTable, loTable._Name ) + *-- El siguiente PADR() es porque si no "estoXXX" está antes que "esto" cuando keysort=2 (raro...) + .ADD( loTable, PADR(loTable._Name,128) ) ENDFOR ENDIF @@ -18674,7 +18675,8 @@ DEFINE CLASS CL_DBC_FIELDS_DB AS CL_DBC_COL_BASE 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 ) + *-- El siguiente PADR() es porque si no "estoXXX" está antes que "esto" cuando keysort=2 (raro...) + .ADD( loField, PADR(loField._Name,128) ) ELSE lnPos = ASCAN( .a_Campos, loField._Name, 1, 0, 1, 1+2+4+8 ) .a_Campos( lnPos, 2) = loField @@ -18687,7 +18689,8 @@ DEFINE CLASS CL_DBC_FIELDS_DB AS CL_DBC_COL_BASE *-- 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) ) + *-- El siguiente PADR() es porque si no "estoXXX" está antes que "esto" cuando keysort=2 (raro...) + .ADD( .a_Campos( lnPos, 2), PADR(.a_Campos( lnPos, 1),128) ) ENDFOR ENDWITH && THIS ENDIF @@ -18884,7 +18887,8 @@ DEFINE CLASS CL_DBC_FIELDS_DB AS CL_DBC_COL_BASE FOR I = 1 TO lnField_Count loField = CREATEOBJECT("CL_DBC_FIELD_DB") loField.read_BinDataToProperties( tcTable, laFields(I) ) - .ADD( loField, loField._Name ) + *-- El siguiente PADR() es porque si no "estoXXX" está antes que "esto" cuando keysort=2 (raro...) + .ADD( loField, PADR(loField._Name,128) ) ENDFOR ENDIF @@ -19144,7 +19148,8 @@ DEFINE CLASS CL_DBC_INDEXES_DB AS CL_DBC_COL_BASE loIndex = NULL loIndex = CREATEOBJECT("CL_DBC_INDEX_DB") loIndex.analizarBloque( @tcLine, @taCodeLines, @I, tnCodeLines ) - .ADD( loIndex, loIndex._Name ) + *-- El siguiente PADR() es porque si no "estoXXX" está antes que "esto" cuando keysort=2 (raro...) + .ADD( loIndex, PADR(loIndex._Name,128) ) OTHERWISE && Otro valor *-- No hay otros valores @@ -19269,7 +19274,8 @@ DEFINE CLASS CL_DBC_INDEXES_DB AS CL_DBC_COL_BASE FOR I = 1 TO lnIndex_Count loIndex = CREATEOBJECT("CL_DBC_INDEX_DB") loIndex.read_BinDataToProperties( tcTable + '.' + laIndexes(I) ) - .ADD( loIndex, loIndex._Name ) + *-- El siguiente PADR() es porque si no "estoXXX" está antes que "esto" cuando keysort=2 (raro...) + .ADD( loIndex, PADR(loIndex._Name,128) ) ENDFOR ENDIF @@ -19497,7 +19503,8 @@ DEFINE CLASS CL_DBC_VIEWS AS CL_DBC_COL_BASE loView = NULL loView = CREATEOBJECT("CL_DBC_VIEW") loView.analizarBloque( @tcLine, @taCodeLines, @I, tnCodeLines ) - .ADD( loView, loView._Name ) + *-- El siguiente PADR() es porque si no "estoXXX" está antes que "esto" cuando keysort=2 (raro...) + .ADD( loView, PADR(loView._Name,128) ) OTHERWISE && Otro valor *-- No hay otros valores @@ -19617,7 +19624,8 @@ DEFINE CLASS CL_DBC_VIEWS AS CL_DBC_COL_BASE FOR I = 1 TO lnView_Count loView = CREATEOBJECT("CL_DBC_VIEW") loView.read_BinDataToProperties( laViews(I) ) - .ADD( loView, loView._Name ) + *-- El siguiente PADR() es porque si no "estoXXX" está antes que "esto" cuando keysort=2 (raro...) + .ADD( loView, PADR(loView._Name,128) ) ENDFOR ENDIF @@ -20072,7 +20080,8 @@ DEFINE CLASS CL_DBC_FIELDS_VW AS CL_DBC_COL_BASE 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 ) + *-- El siguiente PADR() es porque si no "estoXXX" está antes que "esto" cuando keysort=2 (raro...) + .ADD( loField, PADR(loField._Name,128) ) ELSE lnPos = ASCAN( .a_Campos, loField._Name, 1, 0, 1, 1+2+4+8 ) .a_Campos( lnPos, 2) = loField @@ -20085,7 +20094,8 @@ DEFINE CLASS CL_DBC_FIELDS_VW AS CL_DBC_COL_BASE *-- 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) ) + *-- El siguiente PADR() es porque si no "estoXXX" está antes que "esto" cuando keysort=2 (raro...) + .ADD( .a_Campos( lnPos, 2), PADR(.a_Campos( lnPos, 1),128) ) ENDFOR ENDWITH && THIS ENDIF @@ -20282,7 +20292,8 @@ DEFINE CLASS CL_DBC_FIELDS_VW AS CL_DBC_COL_BASE FOR I = 1 TO lnField_Count loField = CREATEOBJECT("CL_DBC_FIELD_VW") loField.read_BinDataToProperties( tcView, laFields(I) ) - .ADD( loField, loField._Name ) + *-- El siguiente PADR() es porque si no "estoXXX" está antes que "esto" cuando keysort=2 (raro...) + .ADD( loField, PADR(loField._Name,128) ) ENDFOR ENDIF @@ -20558,7 +20569,8 @@ DEFINE CLASS CL_DBC_RELATIONS AS CL_DBC_COL_BASE loRelation.analizarBloque( @tcLine, @taCodeLines, @I, tnCodeLines ) TRY - .ADD( loRelation, loRelation._Name ) + *-- El siguiente PADR() es porque si no "estoXXX" está antes que "esto" cuando keysort=2 (raro...) + .ADD( loRelation, PADR(loRelation._Name,128) ) CATCH TO loEx WHEN loEx.ERRORNO = 2062 && The specified Key already exists. *-- Saltear este error, porque implica que la relación está duplicada ENDTRY