Changeset: 364 fdbozzo - 15/07/2014 20:47:01:

This commit is contained in:
fdbozzo
2014-07-15 21:17:18 +02:00
parent 88022ebf8e
commit 78abb0380f

View File

@@ -1230,7 +1230,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM
CASE LEFT( laConfig(I), 23 ) == LOWER('DBF_Conversion_Support:')
lcValue = ALLTRIM( SUBSTR( laConfig(I), 24 ) )
IF INLIST( lcValue, '0', '1', '2' ) THEN
IF INLIST( lcValue, '0', '1', '2', '4' ) THEN
lo_CFG.DBF_Conversion_Support = INT( VAL( lcValue ) )
.writeLog( JUSTFNAME(lcConfigFile) + ' > DBF_Conversion_Support: ' + TRANSFORM(lo_CFG.DBF_Conversion_Support) )
ENDIF
@@ -1370,14 +1370,14 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM
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 ;
, tcExt == .c_SC2, .SCX_Conversion_Support >= 2 ;
, tcExt == .c_FR2, .FRX_Conversion_Support >= 2 ;
, tcExt == .c_LB2, .LBX_Conversion_Support >= 2 ;
, tcExt == .c_MN2, .MNX_Conversion_Support >= 2 ;
, tcExt == .c_DB2, .DBF_Conversion_Support >= 2 ;
, tcExt == .c_DC2, .DBC_Conversion_Support >= 2 ;
llTieneSoporte = ICASE( tcExt == .c_PJ2, .PJX_Conversion_Support = 2 ;
, tcExt == .c_VC2, .VCX_Conversion_Support = 2 ;
, tcExt == .c_SC2, .SCX_Conversion_Support = 2 ;
, tcExt == .c_FR2, .FRX_Conversion_Support = 2 ;
, tcExt == .c_LB2, .LBX_Conversion_Support = 2 ;
, tcExt == .c_MN2, .MNX_Conversion_Support = 2 ;
, tcExt == .c_DB2, .DBF_Conversion_Support = 2 ;
, tcExt == .c_DC2, .DBC_Conversion_Support = 2 ;
, .F. )
ENDWITH && THIS
RETURN llTieneSoporte
@@ -1853,7 +1853,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM
.ChangeFileAttribute( FORCEEXT( .c_InputFile, .c_LB2 ), '+N' )
CASE lcExtension = 'DBF'
IF NOT INLIST(.DBF_Conversion_Support, 1, 2)
IF NOT INLIST(.DBF_Conversion_Support, 1, 2, 4)
ERROR (TEXTMERGE(C_FILE_NAME_IS_NOT_SUPPORTED_LOC))
ENDIF
.c_OutputFile = FORCEEXT( .c_InputFile, .c_DB2 )
@@ -11149,7 +11149,7 @@ DEFINE CLASS c_conversor_dbf_a_prg AS c_conversor_bin_a_prg
*-- Header
loTable = CREATEOBJECT('CL_DBF_TABLE')
C_FB2PRG_CODE = C_FB2PRG_CODE + loTable.toText( ln_HexFileType, ll_FileHasCDX, ll_FileHasMemo, ll_FileIsDBC, lc_DBC_Name, .c_InputFile, lc_FileTypeDesc )
C_FB2PRG_CODE = C_FB2PRG_CODE + loTable.toText( ln_HexFileType, ll_FileHasCDX, ll_FileHasMemo, ll_FileIsDBC, lc_DBC_Name, .c_InputFile, lc_FileTypeDesc, @toFoxBin2Prg )
*-- Genero el DB2
@@ -15889,17 +15889,23 @@ DEFINE CLASS CL_DBF_TABLE AS CL_CUS_BASE
* tc_DBC_Name (v! IN ) Nombre del DBC (si tiene)
* tc_InputFile (v! IN ) Nombre del archivo de salida
* tc_FileTypeDesc (v! IN ) Descripci<63>n del Tipo de archivo
* toFoxBin2Prg (@! IN ) Referencia de toFoxBin2Prg
*---------------------------------------------------------------------------------------------------
LPARAMETERS tn_HexFileType, tl_FileHasCDX, tl_FileHasMemo, tl_FileIsDBC, tc_DBC_Name, tc_InputFile, tc_FileTypeDesc
LPARAMETERS tn_HexFileType, tl_FileHasCDX, tl_FileHasMemo, tl_FileIsDBC, tc_DBC_Name, tc_InputFile, tc_FileTypeDesc, toFoxBin2Prg
#IF .F.
LOCAL toFoxBin2Prg AS c_foxbin2prg OF 'FOXBIN2PRG.PRG'
#ENDIF
TRY
LOCAL lcText, loEx AS EXCEPTION ;
, loRecords AS CL_DBF_RECORDS OF 'FOXBIN2PRG.PRG' ;
, loFields AS CL_DBF_FIELDS OF 'FOXBIN2PRG.PRG' ;
, loIndexes AS CL_DBF_INDEXES OF 'FOXBIN2PRG.PRG'
*** DH 06/02/2014: created variables
LOCAL laFields[1], lnFieldCount
STORE NULL TO loIndexes, loFields
STORE NULL TO loIndexes, loFields, loRecords
lcText = ''
TEXT TO lcText ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
@@ -15916,8 +15922,12 @@ DEFINE CLASS CL_DBF_TABLE AS CL_CUS_BASE
*-- Fields
loFields = THIS._Fields
DO CASE
CASE INLIST(toFoxBin2Prg.DBF_Conversion_Support, 1, 2) && BIN2PRG o PRG2BIN
lcText = lcText + loFields.toText()
CASE toFoxBin2Prg.DBF_Conversion_Support = 4 && BIN2PRG (DATA EXPORT FOR DIFF)
*** DH 06/02/2014: passed variables to toText
*lcText = lcText + loFields.toText()
lcText = lcText + loFields.toText(@laFields, @lnFieldCount)
*-- Indexes
@@ -15925,7 +15935,12 @@ DEFINE CLASS CL_DBF_TABLE AS CL_CUS_BASE
lcText = lcText + loIndexes.toText( '', '', tc_InputFile )
*** DH 06/02/2014: added _Records
lcText = lcText + THIS._Records.toText(@laFields, lnFieldCount)
loRecords = THIS._Records
lcText = lcText + loRecords.toText(@laFields, lnFieldCount)
OTHERWISE
*-- Ignorar soporte no contemplado
ENDCASE
TEXT TO lcText ADDITIVE TEXTMERGE NOSHOW FLAGS 1+2 PRETEXT 1+2
<<C_TABLE_F>>
@@ -15941,8 +15956,8 @@ DEFINE CLASS CL_DBF_TABLE AS CL_CUS_BASE
THROW
FINALLY
STORE NULL TO loIndexes, loFields
RELEASE loFields, loIndexes
STORE NULL TO loIndexes, loFields, loRecords
RELEASE loFields, loIndexes, loRecords
ENDTRY
RETURN lcText
@@ -16519,8 +16534,8 @@ DEFINE CLASS CL_DBF_RECORDS AS CL_COL_BASE
PROCEDURE toText
*---------------------------------------------------------------------------------------------------
* PAR<41>METROS: (!=Obligatorio | ?=Opcional) (@=Pasar por referencia | v=Pasar por valor) (IN/OUT)
* taFields (@? OUT) Array de informaci<63>n de campos
* tnField_Count (@? OUT) Cantidad de campos
* taFields (@! IN ) Array de informaci<63>n de campos
* tnField_Count (v! IN ) Cantidad de campos
*---------------------------------------------------------------------------------------------------
LPARAMETERS taFields, tnField_Count
@@ -16592,8 +16607,8 @@ DEFINE CLASS CL_DBF_RECORD AS CL_CUS_BASE
PROCEDURE toText
*---------------------------------------------------------------------------------------------------
* PAR<41>METROS: (!=Obligatorio | ?=Opcional) (@=Pasar por referencia | v=Pasar por valor) (IN/OUT)
* taFields (@? OUT) Array de informaci<63>n de campos
* tnField_Count (@? OUT) Cantidad de campos
* taFields (@! IN ) Array de informaci<63>n de campos
* tnField_Count (@! IN ) Cantidad de campos
*---------------------------------------------------------------------------------------------------
LPARAMETERS taFields, tnField_Count