From 39b3ff31ec3bf16bccb47649c4772c94c86d0251 Mon Sep 17 00:00:00 2001 From: fdbozzo Date: Thu, 1 Jan 2015 20:52:43 +0100 Subject: [PATCH 1/2] Changeset: 589 fdbozzo - 01/01/2015 20:40:50: - Arreglo de algunos tests --- .../ft__foxbin2prg__c_conversor_prg_a_dbf.prg | 12 ++--- .../ft__foxbin2prg__c_conversor_prg_a_mnx.prg | 50 +++++++++---------- foxbin2prg.prg | 4 ++ 3 files changed, 35 insertions(+), 31 deletions(-) diff --git a/TESTS/ft__foxbin2prg__c_conversor_prg_a_dbf.prg b/TESTS/ft__foxbin2prg__c_conversor_prg_a_dbf.prg index 2bdc3b1..c7a48a5 100644 --- a/TESTS/ft__foxbin2prg__c_conversor_prg_a_dbf.prg +++ b/TESTS/ft__foxbin2prg__c_conversor_prg_a_dbf.prg @@ -113,7 +113,7 @@ DEFINE CLASS ft__foxbin2prg__c_conversor_prg_a_dbf AS FxuTestCase OF FxuTestCase oFXU_LIB.copiarArchivosParaTest( lc_File ) - loCnv.Ejecutar( lc_File, '', '', '', '1', '0', '1',.F.,.F.,.T. ) + loCnv.Ejecutar( lc_OutputFile, '', '', '', '1', '0', '1',.F.,.F.,.T. ) SELECT 0 USE (FORCEEXT(lc_InputFile,'DBF')) SHARED AGAIN NOUPDATE ALIAS ARCHIVOBIN_IN @@ -185,7 +185,7 @@ DEFINE CLASS ft__foxbin2prg__c_conversor_prg_a_dbf AS FxuTestCase OF FxuTestCase oFXU_LIB.copiarArchivosParaTest( lc_File ) - loCnv.Ejecutar( lc_File, '', '', '', '1', '0', '1',.F.,.F.,.T. ) + loCnv.Ejecutar( lc_OutputFile, '', '', '', '1', '0', '1',.F.,.F.,.T. ) SELECT 0 USE (FORCEEXT(lc_InputFile,'DBF')) SHARED AGAIN NOUPDATE ALIAS ARCHIVOBIN_IN @@ -258,8 +258,8 @@ DEFINE CLASS ft__foxbin2prg__c_conversor_prg_a_dbf AS FxuTestCase OF FxuTestCase oFXU_LIB.copiarArchivosParaTest( FORCEEXT(lc_File,'*') ) - loCnv.Ejecutar( FORCEEXT(lc_File,'DBF'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) - loCnv.Ejecutar( FORCEEXT(lc_File,'DB2'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) + loCnv.Ejecutar( FORCEEXT(lc_OutputFile,'DBF'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) + loCnv.Ejecutar( FORCEEXT(lc_OutputFile,'DB2'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) SELECT 0 USE (FORCEEXT(lc_InputFile,'DBF')) SHARED AGAIN NOUPDATE ALIAS ARCHIVOBIN_IN @@ -331,8 +331,8 @@ DEFINE CLASS ft__foxbin2prg__c_conversor_prg_a_dbf AS FxuTestCase OF FxuTestCase oFXU_LIB.copiarArchivosParaTest( FORCEEXT(lc_File,'*') ) - loCnv.Ejecutar( FORCEEXT(lc_File,'DBF'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) - loCnv.Ejecutar( FORCEEXT(lc_File,'DB2'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) + loCnv.Ejecutar( FORCEEXT(lc_OutputFile,'DBF'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) + loCnv.Ejecutar( FORCEEXT(lc_OutputFile,'DB2'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) SELECT 0 USE (FORCEEXT(lc_InputFile,'DBF')) SHARED AGAIN NOUPDATE ALIAS ARCHIVOBIN_IN diff --git a/TESTS/ft__foxbin2prg__c_conversor_prg_a_mnx.prg b/TESTS/ft__foxbin2prg__c_conversor_prg_a_mnx.prg index 209ff67..6fb2ccd 100644 --- a/TESTS/ft__foxbin2prg__c_conversor_prg_a_mnx.prg +++ b/TESTS/ft__foxbin2prg__c_conversor_prg_a_mnx.prg @@ -111,17 +111,17 @@ DEFINE CLASS ft__foxbin2prg__c_conversor_prg_a_mnx AS FxuTestCase OF FxuTestCase oFXU_LIB.copiarArchivosParaTest( FORCEEXT(lc_File,'*') ) *-- Genero el DC2 - loCnv.Ejecutar( FORCEEXT(lc_File,'MNX'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) + loCnv.Ejecutar( FORCEEXT(lc_OutputFile,'MNX'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) *-- Regenero el DBC - loCnv.Ejecutar( FORCEEXT(lc_File,'MN2'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) + loCnv.Ejecutar( FORCEEXT(lc_OutputFile,'MN2'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) *-- Renombro el DC2 a DC3 (ORIGINAL) RENAME (FORCEEXT(lc_OutputFile,'MN2')) TO (FORCEEXT(lc_OutputFile,'MN3')) *-- Genero el DC2 desde el DBC regenerado - loCnv.Ejecutar( FORCEEXT(lc_File,'MNX'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) + loCnv.Ejecutar( FORCEEXT(lc_OutputFile,'MNX'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) *-- Comparo los MN2 y MN3 lnLenHeader = LEN( loCnv.get_PROGRAM_HEADER() ) - lcMN2 = SUBSTR( FILETOSTR( FORCEEXT(lc_File,'MN2') ), lnLenHeader ) - lcMN3 = SUBSTR( FILETOSTR( FORCEEXT(lc_File,'MN3') ), lnLenHeader ) + lcMN2 = SUBSTR( FILETOSTR( FORCEEXT(lc_OutputFile,'MN2') ), lnLenHeader ) + lcMN3 = SUBSTR( FILETOSTR( FORCEEXT(lc_OutputFile,'MN3') ), lnLenHeader ) *-- Visualización de valores @@ -171,17 +171,17 @@ DEFINE CLASS ft__foxbin2prg__c_conversor_prg_a_mnx AS FxuTestCase OF FxuTestCase oFXU_LIB.copiarArchivosParaTest( FORCEEXT(lc_File,'*') ) *-- Genero el DC2 - loCnv.Ejecutar( FORCEEXT(lc_File,'MNX'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) + loCnv.Ejecutar( FORCEEXT(lc_OutputFile,'MNX'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) *-- Regenero el DBC - loCnv.Ejecutar( FORCEEXT(lc_File,'MN2'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) + loCnv.Ejecutar( FORCEEXT(lc_OutputFile,'MN2'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) *-- Renombro el DC2 a DC3 (ORIGINAL) RENAME (FORCEEXT(lc_OutputFile,'MN2')) TO (FORCEEXT(lc_OutputFile,'MN3')) *-- Genero el DC2 desde el DBC regenerado - loCnv.Ejecutar( FORCEEXT(lc_File,'MNX'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) + loCnv.Ejecutar( FORCEEXT(lc_OutputFile,'MNX'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) *-- Comparo los MN2 y MN3 lnLenHeader = LEN( loCnv.get_PROGRAM_HEADER() ) - lcMN2 = SUBSTR( FILETOSTR( FORCEEXT(lc_File,'MN2') ), lnLenHeader ) - lcMN3 = SUBSTR( FILETOSTR( FORCEEXT(lc_File,'MN3') ), lnLenHeader ) + lcMN2 = SUBSTR( FILETOSTR( FORCEEXT(lc_OutputFile,'MN2') ), lnLenHeader ) + lcMN3 = SUBSTR( FILETOSTR( FORCEEXT(lc_OutputFile,'MN3') ), lnLenHeader ) *-- Visualización de valores @@ -231,17 +231,17 @@ DEFINE CLASS ft__foxbin2prg__c_conversor_prg_a_mnx AS FxuTestCase OF FxuTestCase oFXU_LIB.copiarArchivosParaTest( FORCEEXT(lc_File,'*') ) *-- Genero el DC2 - loCnv.Ejecutar( FORCEEXT(lc_File,'MNX'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) + loCnv.Ejecutar( FORCEEXT(lc_OutputFile,'MNX'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) *-- Regenero el DBC - loCnv.Ejecutar( FORCEEXT(lc_File,'MN2'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) + loCnv.Ejecutar( FORCEEXT(lc_OutputFile,'MN2'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) *-- Renombro el DC2 a DC3 (ORIGINAL) RENAME (FORCEEXT(lc_OutputFile,'MN2')) TO (FORCEEXT(lc_OutputFile,'MN3')) *-- Genero el DC2 desde el DBC regenerado - loCnv.Ejecutar( FORCEEXT(lc_File,'MNX'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) + loCnv.Ejecutar( FORCEEXT(lc_OutputFile,'MNX'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) *-- Comparo los MN2 y MN3 lnLenHeader = LEN( loCnv.get_PROGRAM_HEADER() ) - lcMN2 = SUBSTR( FILETOSTR( FORCEEXT(lc_File,'MN2') ), lnLenHeader ) - lcMN3 = SUBSTR( FILETOSTR( FORCEEXT(lc_File,'MN3') ), lnLenHeader ) + lcMN2 = SUBSTR( FILETOSTR( FORCEEXT(lc_OutputFile,'MN2') ), lnLenHeader ) + lcMN3 = SUBSTR( FILETOSTR( FORCEEXT(lc_OutputFile,'MN3') ), lnLenHeader ) *-- Visualización de valores @@ -291,17 +291,17 @@ DEFINE CLASS ft__foxbin2prg__c_conversor_prg_a_mnx AS FxuTestCase OF FxuTestCase oFXU_LIB.copiarArchivosParaTest( FORCEEXT(lc_File,'*') ) *-- Genero el DC2 - loCnv.Ejecutar( FORCEEXT(lc_File,'MNX'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) + loCnv.Ejecutar( FORCEEXT(lc_OutputFile,'MNX'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) *-- Regenero el DBC - loCnv.Ejecutar( FORCEEXT(lc_File,'MN2'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) + loCnv.Ejecutar( FORCEEXT(lc_OutputFile,'MN2'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) *-- Renombro el DC2 a DC3 (ORIGINAL) RENAME (FORCEEXT(lc_OutputFile,'MN2')) TO (FORCEEXT(lc_OutputFile,'MN3')) *-- Genero el DC2 desde el DBC regenerado - loCnv.Ejecutar( FORCEEXT(lc_File,'MNX'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) + loCnv.Ejecutar( FORCEEXT(lc_OutputFile,'MNX'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) *-- Comparo los MN2 y MN3 lnLenHeader = LEN( loCnv.get_PROGRAM_HEADER() ) - lcMN2 = SUBSTR( FILETOSTR( FORCEEXT(lc_File,'MN2') ), lnLenHeader ) - lcMN3 = SUBSTR( FILETOSTR( FORCEEXT(lc_File,'MN3') ), lnLenHeader ) + lcMN2 = SUBSTR( FILETOSTR( FORCEEXT(lc_OutputFile,'MN2') ), lnLenHeader ) + lcMN3 = SUBSTR( FILETOSTR( FORCEEXT(lc_OutputFile,'MN3') ), lnLenHeader ) *-- Visualización de valores @@ -351,17 +351,17 @@ DEFINE CLASS ft__foxbin2prg__c_conversor_prg_a_mnx AS FxuTestCase OF FxuTestCase oFXU_LIB.copiarArchivosParaTest( FORCEEXT(lc_File,'*') ) *-- Genero el DC2 - loCnv.Ejecutar( FORCEEXT(lc_File,'MNX'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) + loCnv.Ejecutar( FORCEEXT(lc_OutputFile,'MNX'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) *-- Regenero el DBC - loCnv.Ejecutar( FORCEEXT(lc_File,'MN2'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) + loCnv.Ejecutar( FORCEEXT(lc_OutputFile,'MN2'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) *-- Renombro el DC2 a DC3 (ORIGINAL) RENAME (FORCEEXT(lc_OutputFile,'MN2')) TO (FORCEEXT(lc_OutputFile,'MN3')) *-- Genero el DC2 desde el DBC regenerado - loCnv.Ejecutar( FORCEEXT(lc_File,'MNX'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) + loCnv.Ejecutar( FORCEEXT(lc_OutputFile,'MNX'), '', '', '', '1', '0', '1',.F.,.F.,.T. ) *-- Comparo los MN2 y MN3 lnLenHeader = LEN( loCnv.get_PROGRAM_HEADER() ) - lcMN2 = SUBSTR( FILETOSTR( FORCEEXT(lc_File,'MN2') ), lnLenHeader ) - lcMN3 = SUBSTR( FILETOSTR( FORCEEXT(lc_File,'MN3') ), lnLenHeader ) + lcMN2 = SUBSTR( FILETOSTR( FORCEEXT(lc_OutputFile,'MN2') ), lnLenHeader ) + lcMN3 = SUBSTR( FILETOSTR( FORCEEXT(lc_OutputFile,'MN3') ), lnLenHeader ) *-- Visualización de valores diff --git a/foxbin2prg.prg b/foxbin2prg.prg index 342095b..30509dd 100644 --- a/foxbin2prg.prg +++ b/foxbin2prg.prg @@ -1654,6 +1654,10 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM ENDWITH && THIS CATCH TO loEx + loEx.UserValue = loEx.UserValue + 'lcConfigFile = [' + TRANSFORM(lcConfigFile) + ']' + CR_LF + loEx.UserValue = loEx.UserValue + 'lc_CFG_Path = [' + TRANSFORM(lc_CFG_Path) + ']' + CR_LF + loEx.UserValue = loEx.UserValue + 'lcValue = [' + TRANSFORM(lcValue) + ']' + CR_LF + IF THIS.l_Debug AND _VFP.STARTMODE = 0 SET STEP ON ENDIF From a8a68c6de184ff835d79434e24b5e3c48657db52 Mon Sep 17 00:00:00 2001 From: fdbozzo Date: Thu, 1 Jan 2015 20:55:35 +0100 Subject: [PATCH 2/2] Changeset: 590 fdbozzo - 01/01/2015 20:52:44: - Regenerar EXE --- foxbin2prg.exe | Bin 509708 -> 509905 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/foxbin2prg.exe b/foxbin2prg.exe index 00e4b7dc2efb41810b5f77e0dc3300fe54db11bd..dd4f859b7d8d9d89510036ef208a8451b4ba5aac 100644 GIT binary patch delta 13552 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 delta 13321 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