v1.19.49.8
- Bug Fix: When converting a VCX corrupted with duplicated objects to text, "The specified key already exists" error is thrown (Kirides)
This commit is contained in:
@@ -2,8 +2,8 @@ Lparameters toUpdateInfo
|
||||
|
||||
Local lcNote
|
||||
With toUpdateInfo
|
||||
.VersionNumber = 'v1.19.49.7'
|
||||
.VersionDate = Date(2018,01,11)
|
||||
.VersionNumber = 'v1.19.49.8'
|
||||
.VersionDate = Date(2018,02,03)
|
||||
.SourceFileUrl = 'http://vfpxrepository.com/dl/thorupdate/Projects/FoxBin2Prg/FoxBin2Prg.Zip'
|
||||
|
||||
.Link = 'http://vfpx.codeplex.com/wikipage?title=FoxBin2PRG'
|
||||
@@ -21,6 +21,9 @@ Demo video using FoxBin2Prg with PlasticSCM: http://youtu.be/sE4wQ50Itqg
|
||||
|
||||
Change History -------------------------------------------------------------
|
||||
|
||||
2018-02-03 v1.19.49.8
|
||||
- Bug Fix: When converting a VCX corrupted with duplicated objects to text, "The specified key already exists" error is thrown (Kirides)
|
||||
|
||||
2018-01-11 v1.19.49.7
|
||||
- Bug Fix: When converting a DBF an error is thrown if there is a field called X or I (Francisco Prieto)
|
||||
|
||||
|
||||
Binary file not shown.
@@ -2,10 +2,10 @@ lparameters toUpdateObject
|
||||
local ldDate, ;
|
||||
lnJulian, ;
|
||||
lcJulian
|
||||
ldDate = date(2018,1,11)
|
||||
ldDate = date(2018,2,3)
|
||||
lnJulian = val(sys(11, ldDate)) - val(sys(11, {^2000-01-01}))
|
||||
lcJulian = padl(transform(lnJulian), 4, '0')
|
||||
toUpdateObject.AvailableVersion = 'FoxBin2Prg-1.19.49.7' + lcJulian + ;
|
||||
toUpdateObject.AvailableVersion = 'FoxBin2Prg-1.19.49.8' + lcJulian + ;
|
||||
'-update-' + dtoc(ldDate, 1)
|
||||
return toUpdateObject
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
appName = FoxBin2Prg
|
||||
appID = FoxBin2Prg
|
||||
majorVersion = 1.19.49.7
|
||||
majorVersion = 1.19.49.8
|
||||
excludeFiles = *.bak,*.bat,*.fxp,*.tbk,*.tmp,*.dat,*.log,*.cvp,README.md,.gitignore,*.zip*,*.7z*,*- copia.*,*.private.*,test_*.*,xx*.*,*.lnk,vfp_init.*,tmp*.*,*.err
|
||||
excludeFolders = *.plastic*,*ThorUpdater*,*Documentacion*,*foxunit*,*foxunit_*,*pruebas varias*,*versiones*,*datos_test*
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
## This is a directory/file filter template for WinMerge
|
||||
name: FoxBin2Prg (Visual FoxPro 9)
|
||||
desc: Exclusive filter for FoxBin2Prg text files
|
||||
|
||||
## Select if filter is inclusive or exclusive
|
||||
## Inclusive (loose) filter lets through all items not matching rules
|
||||
## Exclusive filter lets through only items that match to rule
|
||||
## include or exclude
|
||||
def: exclude
|
||||
|
||||
## Filters for filenames begin with f:
|
||||
## Filters for directories begin with d:
|
||||
## (Inline comments begin with " ##" and extend to the end of the line)
|
||||
|
||||
f: \.vc2$ ## Class libraries text views
|
||||
f: \.sc2$ ## Screens text views
|
||||
f: \.db2$ ## DBF database files text views
|
||||
f: \.dc2$ ## DBC Database containers text views
|
||||
f: \.mn2$ ## Menus text views
|
||||
f: \.pj2$ ## Projects text views
|
||||
f: \.h$ ## Include files
|
||||
f: \.xml$ ## XML files
|
||||
f: \.cfg$ ## CFG configuration files
|
||||
f: \.txt$ ## Text files
|
||||
f: \.fpw$ ## VFP configuration files
|
||||
f: \.prg$ ## Programs
|
||||
|
||||
##d: \\subdir$ ## Filter for directory
|
||||
|
||||
BIN
foxbin2prg.exe
BIN
foxbin2prg.exe
Binary file not shown.
@@ -207,6 +207,7 @@
|
||||
* 04/01/2018 FDBOZZO v1.19.49.6 Bug Fix vcx/scx: FoxBin2Prg debería ignorar los registros que el diseñador de FoxPro ignora (Doug Hennig)
|
||||
* 04/01/2018 FDBOZZO v1.19.49.6 Bug Fix vcx/scx: Cuando se regenera la propiedad _MemberData se agregan CR/LF por cada miembro, pudiendo provocar un error de "valor muy largo" (Doug Hennnig)
|
||||
* 11/01/2018 FDBOZZO v1.19.49.7 Bug Fix: Cuando se convierte la estructura de un DBF puede dar error si existe un campo llamado I o X (Francisco Prieto)
|
||||
* 30/01/2018 FDBOZZO v1.19.49.8 Bug Fix: Cuando se convierte a texto una libreria corrupta con registros duplicados, se genera el error "The specified key already exists" (Kirides)
|
||||
* </HISTORIAL DE CAMBIOS Y NOTAS IMPORTANTES>
|
||||
*
|
||||
*---------------------------------------------------------------------------------------------------
|
||||
@@ -327,6 +328,7 @@
|
||||
* 04/01/2018 Doug Hennnig Reporte Bug vcx/scx v1.19.49: FoxBin2Prg debería ignorar los registros que el diseñador de FoxPro ignora (Arreglado en v1.19.49.6)
|
||||
* 04/01/2018 Doug Hennnig Reporte Bug vcx/scx v1.19.49: Cuando se regenera la propiedad _MemberData se agregan CR/LF por cada miembro, pudiendo provocar un error de "valor muy largo" (Arreglado en v1.19.49.6)
|
||||
* 11/01/2018 Francisco Prieto Reporte Bug v1.19.49: Cuando se convierte la estructura de un DBF puede dar error si existe un campo llamado I o X (Arreglado en v1.19.49.7)
|
||||
* 30/01/2018 Kirides Reporte Bug v1.19.49: Cuando se convierte a texto una libreria corrupta con registros duplicados, se genera el error "The specified key already exists" (Arreglado en v1.19.49.9)
|
||||
* </TESTEO Y REPORTE DE BUGS (AGRADECIMIENTOS)>
|
||||
*
|
||||
*---------------------------------------------------------------------------------------------------
|
||||
@@ -13927,6 +13929,29 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base
|
||||
|
||||
|
||||
|
||||
PROCEDURE ignoreCorruptedObjects(lcCursor)
|
||||
* Issue#17 - Error, The specified key already exists
|
||||
* Para evitar este error se deben ignorar los objetos corruptos (duplicados)
|
||||
* Se identifican porque la clase principal el campo Reserved1 tiene vacio en vez de "Class"
|
||||
LOCAL lcParentObjName, lcSetDeleted
|
||||
SELECT (lcCursor)
|
||||
lcSetDeleted = SET("Deleted")
|
||||
SET DELETED OFF
|
||||
|
||||
SCAN FOR PLATFORM = "WINDOWS" AND EMPTY(Parent) AND EMPTY(Reserved1)
|
||||
lcParentObjName = LOWER(OBJNAME)
|
||||
DELETE
|
||||
SKIP
|
||||
DELETE REST WHILE GETWORDNUM(LOWER(PARENT) + '.', 1, '.') == lcParentObjName
|
||||
SKIP -1
|
||||
ENDSCAN
|
||||
|
||||
SET DELETED &lcSetDeleted.
|
||||
RETURN
|
||||
ENDPROC
|
||||
|
||||
|
||||
|
||||
PROCEDURE ignoreIncorrectDefinedObjects(lcCursor)
|
||||
* Issue#15 - VFP Designer ignored objects should be ignored by FoxBin2Prg
|
||||
LOCAL lcObjName, lcParent, lcParentObjName, loObjs as Collection
|
||||
@@ -13948,7 +13973,10 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base
|
||||
* NOTA: Del parent solo se puede comprobar el objeto primario.
|
||||
IF loObjs.GetKey(GETWORDNUM(lcParent + '.', 1, '.')) > 0
|
||||
* Existe: se agrega al array el nuevo objeto
|
||||
loObjs.Add( '', lcParentObjName )
|
||||
* NOTA: Podría estar duplicado, pero no se trata ese caso aquí
|
||||
IF NOT EMPTY(lcParentObjName) AND loObjs.GetKey(lcParentObjName) = 0
|
||||
loObjs.Add( '', lcParentObjName )
|
||||
ENDIF
|
||||
ELSE
|
||||
* No existe: se ignora
|
||||
DELETE
|
||||
@@ -15353,7 +15381,10 @@ DEFINE CLASS c_conversor_vcx_a_prg AS c_conversor_bin_a_prg
|
||||
lnStepCount = 7
|
||||
USE IN (SELECT("_TABLAORIG"))
|
||||
|
||||
* Issue#15: Ignorar objetos mal definidos
|
||||
* Issue#17: Error, The Specified Key already exists (Kirides)
|
||||
.ignoreCorruptedObjects('TABLABIN')
|
||||
|
||||
* Issue#15: Ignorar objetos mal definidos (Doug Hennig)
|
||||
.ignoreIncorrectDefinedObjects('TABLABIN')
|
||||
|
||||
INDEX ON PADR(LOWER(PLATFORM + IIF(EMPTY(PARENT),'',ALLTRIM(PARENT)+'.')+OBJNAME),240) TAG PARENT_OBJ ADDITIVE
|
||||
|
||||
Reference in New Issue
Block a user