Bug Fix DATABASE in Table

Bug Fix: Tables without indexes cause an error that the Table ## is not marked as belonging to the ## database.
issue #58
Minor change the README.md
This commit is contained in:
Lutz
2021-04-12 10:25:11 +02:00
parent 20b2756ea3
commit b16a28b65c
13 changed files with 41 additions and 29 deletions

View File

@@ -21,6 +21,9 @@ Demo video using FoxBin2Prg with PlasticSCM: http://youtu.be/sE4wQ50Itqg
+++++++++++++++++++++++ Change History +++++++++++++++++++++++ +++++++++++++++++++++++ Change History +++++++++++++++++++++++
2021-08-12 v1.19.63
- Bug Fix: Tables without indexes cause an error that the __Table ## is not marked as belonging to the ## database.__ (jstagerGH)
2021-03-23 v1.19.62 2021-03-23 v1.19.62
- Enhancement: Debug logging, level of config file. - Enhancement: Debug logging, level of config file.
- Bug Fix: *_Conversion_Support options not read from config file. - Bug Fix: *_Conversion_Support options not read from config file.

View File

@@ -4,13 +4,13 @@
## Lutz Scheffler ## Lutz Scheffler
![VFPX Logo](https://vfpx.github.io/images/vfpxbanner_small.gif) ![VFPX Logo](https://vfpx.github.io/images/vfpxbanner_small.gif)
## Why this fork? This is the perpetuation of [Fernando D. Bozzo](https://github.com/fdbozzo) foxbin2prg.
This is a fork of [Fernando D. Bozzo](https://github.com/fdbozzo) [foxbin2prg](https://github.com/fdbozzo/foxbin2prg/). It's the main tool with some bugs fixes and some new functions. It looks like Fernando does not longer maintain FoxBin2Prg,
It's main purpose it's to fix some bugs and add some new functions. It looks like Fernando does not longer maintain FoxBin2Prg, so, with his permission, I work onto this through my [fork](https://github.com/lscheffler/foxbin2prg).
so, with his permission, I introduce this fork to [VFPX](https://vfpx.github.io/) ![VFPX Picture](./pictures/vfpxpoweredby_alternative.gif). updates may be faster there, because of the merge process.
I do not maintain the spanish documentation - it would fade. So just check Fernados repo for this information. The spanish documentation is not longer maintained - it would fade.
A quick run is [introduced](#use-foxbin2prg), more [complex](./Documentacion/github/FoxBin2prg_Run.md#usage-1), and a large [documentation](./Documentacion/github/FoxBin2prg.md) exists too. For fast acces a quick run is [introduced](#use-foxbin2prg), more [complex](./docs/FoxBin2prg_Run.md#usage-1), and a large [documentation](./docs/FoxBin2prg.md) exists too.
Remember yourself to compile the exe first. Remember yourself to compile the exe first.
--- ---
@@ -26,7 +26,7 @@ If you like to see Fernandos blog, or value his work:
--- ---
--- ---
If you like to value my work, support the Geeks at https://virtualfoxfest.com/ or www.swfox.net. If you like to value my work, support the Geeks at https://virtualfoxfest.com/ or www.swfox.net.
I also do not reject invitations to beer, Next autumn in Gilbert. I also do not reject invitations to beer, next time in Gilbert.
--- ---
--- ---
@@ -123,7 +123,7 @@ To view a copy of this license, visit http://creativecommons.org/licenses/by/4.0
--- ---
--- ---
## Changes ## Changes
See [Changes](./Documentacion/github/FoxBin2prg_Changes.md) See [Changes](./docs/FoxBin2prg_Changes.md)
## Changes in 1.19.60 ## Changes in 1.19.60
* -cC options learned to create default FoxBin2Prg._cfg file * -cC options learned to create default FoxBin2Prg._cfg file
@@ -163,7 +163,7 @@ The split of DBC the same way like VCX/SCX might not be the best choice under al
New option _OldFilesPerDBC_ is set 1, _UseFilesPerDBC_, _RedirectFilePerDBCToMain_ and _ItemPerDBCCheck_ might be used to set the handling of the DBC. New option _OldFilesPerDBC_ is set 1, _UseFilesPerDBC_, _RedirectFilePerDBCToMain_ and _ItemPerDBCCheck_ might be used to set the handling of the DBC.
Note that those options will be ignored, if _OldFilesPerDBC_ is 0 (default). Note that those options will be ignored, if _OldFilesPerDBC_ is 0 (default).
**Check that changes will be reflected on running projects.** **Check that changes will be reflected on running projects.**
See [Internals](./Documentacion/github/FoxBin2prg_Internals.md#configuration-file). See [Internals](./docs/FoxBin2prg_Internals.md#configuration-file).
### Tanscoding of table fields with NoCPTrans ### Tanscoding of table fields with NoCPTrans
The function _DBF_BinChar_Base64: 0_ must be handled with care too. The function _DBF_BinChar_Base64: 0_ must be handled with care too.
@@ -187,7 +187,7 @@ Project to generate text representations of VFP binary sources for source contro
## ./ ## ./
This folder containes the files necessary to run FoxBin2Prg.prg or to create the FoxBin2Prg.exe This folder containes the files necessary to run FoxBin2Prg.prg or to create the FoxBin2Prg.exe
For usage see [documentation](./Documentacion/github/FoxBin2prg.md) For usage see [documentation](./docs/FoxBin2prg.md)
---- ----
Last changed: _2021/03/09_ ![Picture](./pictures/vfpxpoweredby_alternative.gif) Last changed: _2021/03/09_ ![Picture](./pictures/vfpxpoweredby_alternative.gif)

Binary file not shown.

View File

@@ -10,8 +10,8 @@ local;
lcappName = "FoxBin2Prg" lcappName = "FoxBin2Prg"
*Set following two numbers on version *Set following two numbers on version
ldDate = date(2021,03,30) ldDate = date(2021,04,12)
lcmajorVersion = "1.19.62" lcmajorVersion = "1.19.63"
*lnJulian = val(sys(11, m.ldDate)) - val(sys(11, {^2000-01-01})) *lnJulian = val(sys(11, m.ldDate)) - val(sys(11, {^2000-01-01}))
*lcJulian = padl(transform(lnJulian), 4, '0') *lcJulian = padl(transform(lnJulian), 4, '0')
@@ -39,6 +39,9 @@ Demo video using FoxBin2Prg with PlasticSCM: http://youtu.be/sE4wQ50Itqg
+++++++++++++++++++++++ Change History +++++++++++++++++++++++ +++++++++++++++++++++++ Change History +++++++++++++++++++++++
2021-08-12 v1.19.63
- Bug Fix: Tables without indexes cause an error that the __Table ## is not marked as belonging to the ## database.__ (jstagerGH)
2021-03-23 v1.19.62 2021-03-23 v1.19.62
- Enhancement: Debug logging, level of config file. - Enhancement: Debug logging, level of config file.
- Bug Fix: *_Conversion_Support options not read from config file. - Bug Fix: *_Conversion_Support options not read from config file.

View File

@@ -30,6 +30,7 @@ _**Note:** you can click on the version number for downloading this version from
| Rel.Date | Developer | Version | Details | | Rel.Date | Developer | Version | Details |
| - | - | - | - | | - | - | - | - |
| 2021/04/12 | LScheffler | [v1.19.63](https://github.com/fdbozzo/foxbin2prg/releases/tag/v1.19.63) | **Bug Fix**: Tables without indexes cause an error that the __Table ## is not marked as belonging to the ## database.__ (jstagerGH) |
| 2021/03/30 | LScheffler | [v1.19.62](https://github.com/fdbozzo/foxbin2prg/releases/tag/v1.19.62) | **Enhancement**: Debug logging, level of config file. | | 2021/03/30 | LScheffler | [v1.19.62](https://github.com/fdbozzo/foxbin2prg/releases/tag/v1.19.62) | **Enhancement**: Debug logging, level of config file. |
| | | | **Bug Fix**: *_Conversion_Support options not read from config file. | | | | | **Bug Fix**: *_Conversion_Support options not read from config file. |
| | | | **Bug Fix**: Extension shift options not read from config file. (Sergej s-s-a) | | | | | **Bug Fix**: Extension shift options not read from config file. (Sergej s-s-a) |

View File

@@ -138,7 +138,7 @@ These are the FoxBin2Prg.cfg configuration file settings and their meaning:
| OldFilesPerDBC | _0_, 1 | This controls the use of the _UseFilesPerDBC_, _RedirectFilePerDBCToMain_ and _ItemPerDBCCheck_ options.<br/>Only if this option is set, the options will be read. | | OldFilesPerDBC | _0_, 1 | This controls the use of the _UseFilesPerDBC_, _RedirectFilePerDBCToMain_ and _ItemPerDBCCheck_ options.<br/>Only if this option is set, the options will be read. |
| | | 0 New version inactive, options follow:<br/>UseFilesPerDBC=UseClassPerFile<br/>RedirectFilePerDBCToMain=RedirectClassPerFileToMain<br/>ItemPerDBCCheck=ClassPerFileCheck | | | | 0 New version inactive, options follow:<br/>UseFilesPerDBC=UseClassPerFile<br/>RedirectFilePerDBCToMain=RedirectClassPerFileToMain<br/>ItemPerDBCCheck=ClassPerFileCheck |
| | | 1 New version active, options active | | | | 1 New version active, options active |
| | | Note the options will be set to old style, is option is turned off. | | | | Note the options will be set to old style, if option is turned off. |
| UseFilesPerDBC | _0_, 1 | 0=One database dc2 file, 1=Multiple file.\*.\*.dc2 files.<br/>See [Create File-Per-DBC](#create file-per-dbc)<br/>**Only if OldFilesPerDBC is 1** | | UseFilesPerDBC | _0_, 1 | 0=One database dc2 file, 1=Multiple file.\*.\*.dc2 files.<br/>See [Create File-Per-DBC](#create file-per-dbc)<br/>**Only if OldFilesPerDBC is 1** |
| | | 0 creates only a file.dc2 with all DBC (file) data | | | | 0 creates only a file.dc2 with all DBC (file) data |
| | | 1 creates a file.dc2 with DBC properties | | | | 1 creates a file.dc2 with DBC properties |

View File

@@ -1,6 +1,6 @@
*################################################################################################################ *################################################################################################################
*FOXBIN2PRG.CFG configuration options: (If no values given, these are the DEFAULTS) *FOXBIN2PRG.CFG configuration options: (If no values given, these are the DEFAULTS)
*Version: v1.19.62 *Version: v1.19.63
***************************************************************************************************************** *****************************************************************************************************************
*-- Settings for internal work, not processing *-- Settings for internal work, not processing

View File

@@ -1,6 +1,6 @@
*################################################################################################################ *################################################################################################################
*-- Individual DBF configuration file (syntax: filename.dbf.cfg) Defaults see FoxBin2prg.cfg *-- Individual DBF configuration file (syntax: filename.dbf.cfg) Defaults see FoxBin2prg.cfg
*Version: v1.19.62 *Version: v1.19.63
***************************************************************************************************************** *****************************************************************************************************************
*DBF_Conversion_Support: <0,1,2,4,8> && 0=No support, 1=Generate Header TXT only (Diff), 2=Generate Header TXT and BIN (Merge/Only Structure!), 4=Generate TXT with DATA (Diff), 8=Export and Import DATA (Merge/Structure & Data) *DBF_Conversion_Support: <0,1,2,4,8> && 0=No support, 1=Generate Header TXT only (Diff), 2=Generate Header TXT and BIN (Merge/Only Structure!), 4=Generate TXT with DATA (Diff), 8=Export and Import DATA (Merge/Structure & Data)

Binary file not shown.

View File

@@ -26,7 +26,7 @@ _LegalTrademark = "MIT License"
_ProductName = "FOXBIN2PRG" _ProductName = "FOXBIN2PRG"
_MajorVer = "1" _MajorVer = "1"
_MinorVer = "19" _MinorVer = "19"
_Revision = "62" _Revision = "63"
_LanguageID = "1034" _LanguageID = "1034"
_AutoIncrement = "0" _AutoIncrement = "0"
*</DevInfo> *</DevInfo>

Binary file not shown.

Binary file not shown.

View File

@@ -254,7 +254,6 @@
* 09/03/2021 LScheffler v1.19.59 Bug Fix: RedirectClassType = 2, UseClassPerFile = 2 failed. * 09/03/2021 LScheffler v1.19.59 Bug Fix: RedirectClassType = 2, UseClassPerFile = 2 failed.
* 09/03/2021 LScheffler v1.19.59 Enhancement: Added option to create config file template based on current values of a directory * 09/03/2021 LScheffler v1.19.59 Enhancement: Added option to create config file template based on current values of a directory
* 09/03/2021 LScheffler v1.19.59 Enhancement: Log settings object handed to execute (Debug > 0) * 09/03/2021 LScheffler v1.19.59 Enhancement: Log settings object handed to execute (Debug > 0)
* 22/03/2021 LScheffler v1.19.60 Enhancement: -cC options learned to create default FoxBin2Prg._cfg file * 22/03/2021 LScheffler v1.19.60 Enhancement: -cC options learned to create default FoxBin2Prg._cfg file
* 22/03/2021 LScheffler v1.19.60 Enhancement: -t Option learned to create default <tablename>._cfg file, if table is open. * 22/03/2021 LScheffler v1.19.60 Enhancement: -t Option learned to create default <tablename>._cfg file, if table is open.
* 22/03/2021 LScheffler v1.19.60 Enhancement: Handling of additional non structural index per DBF in Bin2Text and Text2Bin see config per DBF * 22/03/2021 LScheffler v1.19.60 Enhancement: Handling of additional non structural index per DBF in Bin2Text and Text2Bin see config per DBF
@@ -270,10 +269,13 @@
* 30/03/2021 LScheffler v1.19.62 Bug Fix: Extension shift options not read from config file * 30/03/2021 LScheffler v1.19.62 Bug Fix: Extension shift options not read from config file
* 30/03/2021 LScheffler v1.19.62 Bug Fix: RedirectFilePerDBCToMain option was defined wrong in configuration example * 30/03/2021 LScheffler v1.19.62 Bug Fix: RedirectFilePerDBCToMain option was defined wrong in configuration example
* 30/03/2021 LScheffler v1.19.62 Enhancement: Debug logging, level of config file. * 30/03/2021 LScheffler v1.19.62 Enhancement: Debug logging, level of config file.
* 12/04/2021 LScheffler v1.19.63 Bug Fix: Tables without indexes cause an error that the "Table ## is not marked as belonging to the ## database" (jstagerGH)
* 12/04/2021 LScheffler v1.19.63 Docu: Readme reworked (mattslay)
* </HISTORIAL DE CAMBIOS Y NOTAS IMPORTANTES> * </HISTORIAL DE CAMBIOS Y NOTAS IMPORTANTES>
* *
*--------------------------------------------------------------------------------------------------- *---------------------------------------------------------------------------------------------------
* <TESTEO, REPORTE DE BUGS Y MEJORAS (AGRADECIMIENTOS)> * <TESTEO, REPORTE DE BUGS Y MEJORAS (AGRADECIMIENTOS)>
* 08/04/2021 jstagerGH BUG REPORT v1.19.62 Tables without indexes cause an error that the "Table ## is not marked as belonging to the ## database"
* 30/03/2021 Sergej s-s-a BUG REPORT v1.19.61 Ignoring extention in foxbin2prg.cfg * 30/03/2021 Sergej s-s-a BUG REPORT v1.19.61 Ignoring extention in foxbin2prg.cfg
* 16/03/2021 msueping BUG REPORT v1.19.57 Variable lnFileCount in get_filesfromdirectory * 16/03/2021 msueping BUG REPORT v1.19.57 Variable lnFileCount in get_filesfromdirectory
* 23/11/2013 Luis Martínez REPORTE BUG scx v1.4: En algunos forms solo se generaba el dataenvironment (arreglado en v.1.5) * 23/11/2013 Luis Martínez REPORTE BUG scx v1.4: En algunos forms solo se generaba el dataenvironment (arreglado en v.1.5)
@@ -932,7 +934,7 @@ Define Class c_foxbin2prg As Session
Protected n_CFG_Actual, l_Main_CFG_Loaded, o_Configuration, l_CFG_CachedAccess Protected n_CFG_Actual, l_Main_CFG_Loaded, o_Configuration, l_CFG_CachedAccess
*-- *--
n_FB2PRG_Version = 1.19 n_FB2PRG_Version = 1.19
c_FB2PRG_Version_Real = '1.19.62' c_FB2PRG_Version_Real = '1.19.63'
*-- *--
c_Language = '' && EN, FR, ES, DE c_Language = '' && EN, FR, ES, DE
c_Language_In = '(auto)' c_Language_In = '(auto)'
@@ -13735,8 +13737,9 @@ Define Class c_conversor_prg_a_dbf As c_conversor_prg_a_bin
Store '' To lcIndex Store '' To lcIndex
Store .Null. To lcIndexFile Store .Null. To lcIndexFile
loDBFUtils = Createobject('CL_DBF_UTILS')
If toTable._Indexes.Count # 0 Then If toTable._Indexes.Count # 0 Then
loDBFUtils = Createobject('CL_DBF_UTILS')
loLang = _Screen.o_FoxBin2Prg_Lang loLang = _Screen.o_FoxBin2Prg_Lang
toFoxBin2Prg.writeLog( Replicate('+', 100) ) toFoxBin2Prg.writeLog( Replicate('+', 100) )
@@ -13799,19 +13802,21 @@ Define Class c_conversor_prg_a_dbf As c_conversor_prg_a_bin
toFoxBin2Prg.writeLog( Replicate('+', 100) + 0h0D0A ) toFoxBin2Prg.writeLog( Replicate('+', 100) + 0h0D0A )
Use In (Select(Juststem(.c_OutputFile))) Endif &&toTable._Indexes.COUNT # 0
Use In (Select(Juststem(.c_OutputFile)))
*-- La actualización de la fecha sirve para evitar diferencias al regenerar el DBF *-- La actualización de la fecha sirve para evitar diferencias al regenerar el DBF
If toFoxBin2Prg.l_ClearDBFLastUpdate Then If toFoxBin2Prg.l_ClearDBFLastUpdate Then
ldLastUpdate = Evaluate( '{^2013/11/04}' ) ldLastUpdate = Evaluate( '{^2013/11/04}' )
Else Else
ldLastUpdate = Evaluate( '{^' + toTable._LastUpdate + '}' ) ldLastUpdate = Evaluate( '{^' + toTable._LastUpdate + '}' )
Endif Endif
loDBFUtils.write_DBC_BackLink( .c_OutputFile, toTable._Database, ldLastUpdate ) loDBFUtils.write_DBC_BackLink( .c_OutputFile, toTable._Database, ldLastUpdate )
toFoxBin2Prg.updateProcessedFile()
toFoxBin2Prg.updateProcessedFile()
Endif &&toTable._Indexes.COUNT # 0
toFoxBin2Prg.writeLog( Replicate('+', 100) ) toFoxBin2Prg.writeLog( Replicate('+', 100) )
Endwith && THIS Endwith && THIS
@@ -30745,7 +30750,7 @@ Define Class CL_LANG As Custom
<<>> && 1 Erzeugt eine Datei <Datenbank>.dc2 mit den Eigenschaften der Datenbank <<>> && 1 Erzeugt eine Datei <Datenbank>.dc2 mit den Eigenschaften der Datenbank
<<>> && und zusätzlich eine Datei für jedes Item der Datenbank (Gespeicherte Prozeduren, Tabellen, Views, ..) <<>> && und zusätzlich eine Datei für jedes Item der Datenbank (Gespeicherte Prozeduren, Tabellen, Views, ..)
<<>> && Achtung! Diese Dateien werden nur dann in die Binädatei einbezogen, wenn RedirectFilePerDBCToMain 1 ist <<>> && Achtung! Diese Dateien werden nur dann in die Binädatei einbezogen, wenn RedirectFilePerDBCToMain 1 ist
<<>>RedirectFilePerDBCToMain: 0 && Originale Dokumntation: 0=Keine Umlenkung, 1=Erzeuge <Datenbank>.dbc, wenn <Datenbank>.item.*.dc2 gewählt wurde <<>>RedirectFilePerDBCToMain: 0 && Originale Dokumentation: 0=Keine Umlenkung, 1=Erzeuge <Datenbank>.dbc, wenn <Datenbank>.item.*.dc2 gewählt wurde
<<>> && Die Binär-Datenbank wird nur dann automatisch zusammen gefügt, wenn diese Option 1 ist! <<>> && Die Binär-Datenbank wird nur dann automatisch zusammen gefügt, wenn diese Option 1 ist!
<<>>ItemPerDBCCheck: 0 && 0=Aus, 1=Teste, ob <Datenbank>.item.*.dc2 einbezogen wird. <<>>ItemPerDBCCheck: 0 && 0=Aus, 1=Teste, ob <Datenbank>.item.*.dc2 einbezogen wird.
<<>>---------------------------------------------------------------------------------------------------------------- <<>>----------------------------------------------------------------------------------------------------------------