improvement in logging, bug fixes
- Bug Fix: For RedirectClassType = 2, Path was set wrong - Doc: Improved, Better description of ClassPerFileCheck. - Bug Fix: RedirectClassType = 2, UseClassPerFile = 2 failed. - Enhancement: Added option to create config file template based on current values of a directory - Enhancement: Log settings object handed to execute (Debug > 0)
This commit is contained in:
@@ -32,13 +32,13 @@ _**Note:** you can click on the version number for downloading this version from
|
||||
|
||||
| Rel.Date | Developer | Version | Details |
|
||||
| - | - | - | - |
|
||||
| 2021/03/05 | LScheffler | [v1.19.59]() | **Feature**: Added option to create config file template based on current values of a directory |
|
||||
| 2021/03/05 | LScheffler | [v1.19.59]() | **Bug Fix**: RedirectClassType = 2, Path was set wrong |
|
||||
| 2021/03/05 | LScheffler | [v1.19.59]() | **Bug Fix**: RedirectClassType = 2, UseClassPerFile = 2 failed |
|
||||
| 2021/xx/xx | LScheffler | [v1.19.59]() | **Doc**: Improved, Better description of ClassPerFileCheck. |
|
||||
|
||||
| 2021/03/04 | Doug Hennig | [v1.19.58]() | Added support for writing to a different folder than the source code using a new tcOutputFolder parameter |
|
||||
| | | | Added a configuration item: HomeDir, which determines if HomeDir is saved in PJ2 files (the default is 1 for Yes) |
|
||||
| 2021/03/09 | LScheffler | [v1.19.59]() | **Feature**: Logging of settings as settings object passed to execute method (Option debug > 0) |
|
||||
| 2021/03/09 | LScheffler | [v1.19.59]() | **Feature**: Added option to create config file template based on current values of a directory |
|
||||
| 2021/03/09 | LScheffler | [v1.19.59]() | **Bug Fix**: RedirectClassType = 2, Path was set wrong in special config |
|
||||
| 2021/03/09 | LScheffler | [v1.19.59]() | **Bug Fix**: RedirectClassType = 2, UseClassPerFile = 2 failed |
|
||||
| 2021/03/09 | LScheffler | [v1.19.59]() | **Doc**: Improved, Better description of ClassPerFileCheck. |
|
||||
| 2021/03/04 | Doug Hennig | [v1.19.58]() | **Feature**: Added support for writing to a different folder than the source code using a new tcOutputFolder parameter |
|
||||
| | | | **Feature**: Added a configuration option: HomeDir, which determines if HomeDir is saved in PJ2 files (the default is 1 for Yes) |
|
||||
| 2021/03/05 | LScheffler | [v1.19.57]() | **Bug Fix**: RedirectClassType = 2 mixed up PATH |
|
||||
| | | | **Doc**: Improved |
|
||||
| 2021/03/04 | LScheffler | [v1.19.56]() | **Feature**: New value 2 for option RedirectClassType = 2, just process the single class for input in form file[.baseclass].class.vc2 |
|
||||
@@ -379,4 +379,4 @@ _**Note:** you can click on the version number for downloading this version from
|
||||
This project is part of [VFPX](https://vfpx.github.io/).
|
||||
|
||||
----
|
||||
Last changed: _2021/03/05_ 
|
||||
Last changed: _2021/03/09_ 
|
||||
20
README.md
20
README.md
@@ -124,8 +124,14 @@ To view a copy of this license, visit http://creativecommons.org/licenses/by/4.0
|
||||
---
|
||||
## Changes
|
||||
See [Changes](./Documentacion/github/FoxBin2prg_Changes.md)
|
||||
* Bug fixes
|
||||
* New option -C
|
||||
|
||||
## Changes in 1.19.59
|
||||
* Added support for writing to a different folder than the source code using a new tcOutputFolder parameter
|
||||
* Added a configuration item: HomeDir, which determines if HomeDir is saved in PJ2 files (the default is 1 for Yes)
|
||||
* Logging of settings as settings object passed to execute method (Option debug > 0)
|
||||
* Bug Fixes: RedirectClassType = 2
|
||||
* Improved, Better description of ClassPerFileCheck.
|
||||
* Added option to create config file template based on current values of a directory
|
||||
To create config file (working settings) with all values set for a folder.
|
||||
Intended for storing the settings with the project.
|
||||
|
||||
@@ -133,10 +139,6 @@ See [Changes](./Documentacion/github/FoxBin2prg_Changes.md)
|
||||
DO FOXBIN2PRG.PRG WITH "-C","template.cfg" ==> Generates a file like FoxBin2Prg.cfg config file with recent settings
|
||||
```
|
||||
|
||||
## Changes in 1.19.59
|
||||
* Added support for writing to a different folder than the source code using a new tcOutputFolder parameter
|
||||
* Added a configuration item: HomeDir, which determines if HomeDir is saved in PJ2 files (the default is 1 for Yes)
|
||||
|
||||
## Changes in 1.19.58
|
||||
* Added support for writing to a different folder than the source code using a new tcOutputFolder parameter
|
||||
* Added a configuration item: HomeDir, which determines if HomeDir is saved in PJ2 files (the default is 1 for Yes)
|
||||
@@ -149,10 +151,6 @@ DO FOXBIN2PRG.PRG WITH "-c","template.cfg" ==> Generates a template for Fox
|
||||
DO FOXBIN2PRG.PRG WITH "-t","template.dbf.cfg" ==> Generates a template for table.dbf.cfg per table config file with newest settings
|
||||
```
|
||||
|
||||
### Exe file
|
||||
Removed exe file. Just a bloat of teh repo, any disciple of the Fox know how to create, if in need.
|
||||
The prg works anyway.
|
||||
|
||||
### Split of container files
|
||||
VCX, SCX and DBC are container that hold different items. There is was a single option to split them.
|
||||
The split of DBC the same way like VCX/SCX might not be the best choice under all circumstances.
|
||||
@@ -217,4 +215,4 @@ This folder containes the files necessary to run FoxBin2Prg.prg or to create the
|
||||
For usage see [documentation](./Documentacion/github/FoxBin2prg.md)
|
||||
|
||||
----
|
||||
Last changed: _2021/03/08_ 
|
||||
Last changed: _2021/03/09_ 
|
||||
@@ -1,5 +1,5 @@
|
||||
appName = FoxBin2Prg
|
||||
appID = FoxBin2Prg
|
||||
majorVersion = 1.19.59
|
||||
excludeFiles = *.bak,*.bat,*.fxp,*.tbk,*.tmp,*.dat,*.log,*.cvp,README.md,.gitignore,*.zip*,*.7z*,*- copia.*,*.private.*,test_*.*,xx*.*,*.lnk,vfp_init.*,tmp*.*,*.err, *.conflict.*, *.private.*
|
||||
excludeFiles = *.bak,*.bat,*.fxp,*.tbk,*.tmp,*.dat,*.log,*.cvp,README.md,.gitignore,*.zip*,*.7z*,*- copia.*,*.private.*,test_*.*,xx*.*,*.lnk,vfp_init.*,tmp*.*,*.err, *.conflict.*, *.private., .gitignore, *.pui. *.prj*
|
||||
excludeFolders = *.plastic*,*ThorUpdater*,*Documentacion*,*foxunit*,*foxunit_*,*pruebas varias*,*versiones*,*datos_test*
|
||||
|
||||
@@ -64,7 +64,7 @@ Developed by Fernando D. Bozzo - GitHub: https://github.com/fdbozzo/foxbin2prg
|
||||
|
||||
FoxBin2Prg is a 2-way conversor for Visual FoxPro 9 binary files intended to be used with SCM tools (Diff and Merge operations) or just for backup
|
||||
|
||||
Supported formats are: PJX, PJM, SCX, VCX, FRX, LBX, MNX, DBC, DBF
|
||||
Supported formats are: PJX, PJM, SCX, VCX, FRX, LBX, MNX, DBC, DBF, MEM, FKY
|
||||
|
||||
Demo video using FoxBin2Prg with PlasticSCM: http://youtu.be/sE4wQ50Itqg
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
*################################################################################################################
|
||||
*FOXBIN2PRG.CFG configuration options: (If no values given, these are the DEFAULTS)
|
||||
*Version: v1.19.58
|
||||
*################################################################################################################
|
||||
*Version: v1.19.59
|
||||
*****************************************************************************************************************
|
||||
|
||||
*extension: tx2=newext && Specify extensions to use. Default FoxBin2Prg extensions ends in '2' (see at the bottom)
|
||||
*ShowProgressbar: 1 && 0=Don't show, 1=Allways show, 2= Show only for multi-file processing
|
||||
@@ -18,8 +18,9 @@
|
||||
*Language: (auto) && Language of shown messages and LOGs. EN=English, FR=French, ES=Espa<70>ol, DE=German, Not defined = AUTOMATIC [DEFAULT]
|
||||
*ExcludeDBFAutoincNextval: 0 && [0=Do not exclude this value from db2], 1=Exclude this value from db2
|
||||
*PRG_Compat_Level: 0 && [0=Legacy], 1=Use HELPSTRING as Class Procedure comment
|
||||
*HomeDir: 1 && 0 = don't save HomeDir in PJ2, [1 = save HomeDir in PJ2]
|
||||
*HomeDir: 1 && 0 = don't save HomeDir in PJ2, [1 = save HomeDir in PJ2]
|
||||
|
||||
*----------------------------------------------------------------------------------------------------------------
|
||||
*-- Convertion options:
|
||||
*PJX_Conversion_Support: 2 && 0=No support, 1=Generate TXT only (Diff), 2=Generate TXT and BIN (Merge)
|
||||
*VCX_Conversion_Support: 2 && 0=No support, 1=Generate TXT only (Diff), 2=Generate TXT and BIN (Merge)
|
||||
@@ -34,6 +35,7 @@
|
||||
*DBF_Conversion_Included: * && If DBF_Conversion_Support:4, you can specify multiple filemasks: www,fb2p_free.dbf
|
||||
*DBF_Conversion_Excluded: && If DBF_Conversion_Support:4, you can specify multiple filemasks: www,fb2p_free.dbf
|
||||
|
||||
*----------------------------------------------------------------------------------------------------------------
|
||||
*-- DBC options
|
||||
*- File per DBC options (UseFilesPerDBC: 1)
|
||||
*OldFilesPerDBC: 0 && 1=Turns the File per DBC options on, 0 uses the old UseClassPerFile etc settings.
|
||||
@@ -49,29 +51,32 @@
|
||||
*DBF_BinChar_Base64: 1 && 0=For character type fields, if NoCPTrans 0=do not transform, 1=use Base64 transform (default)
|
||||
*DBF_IncludeDeleted: 0 && 0=Do not include deleted records (default), 1=Include deleted records
|
||||
|
||||
*----------------------------------------------------------------------------------------------------------------
|
||||
*-- CLASS and FORM options
|
||||
*- Class per file options (UseClassPerFile: 1)
|
||||
*UseClassPerFile: 0 && 0=One library tx2 file, 1=Multiple file.class.tx2 files, 2=Multiple file.baseclass.class.tx2 files
|
||||
*RedirectClassPerFileToMain: 0 && 0=Don't redirect to file.tx2, 1=Redirect to file.tx2 when selecting file.class.tx2
|
||||
*RedirectClassType: 0 && For classes created with UseClassPerFile>0 in the form file[.baseclass].class.tx2
|
||||
* && Those files could be imported like file.tx2::Class::import or like file[.baseclass].class.tx2
|
||||
* && For the second form:
|
||||
* && 0 Redirect file[.baseclass].class.tx2 to file.VCX and add / replace all other classes of this library
|
||||
* && 1 Redirect file[.baseclass].class.tx2 to file[.baseclass].class.VCX and do not touch file.VCX
|
||||
* && 2 Redirect file[.baseclass].class.tx2 to file.VCX and do not touch other classes of file.VCX
|
||||
* && RedirectClassType: 1 precedes
|
||||
*RedirectClassType: 0 && For classes created with UseClassPerFile>0 in the form file[.baseclass].class.tx2
|
||||
* && Those files could be imported like file.tx2::Class::import or like file[.baseclass].class.tx2
|
||||
* && For the second form:
|
||||
* && 0 Redirect file[.baseclass].class.tx2 to file.VCX and add / replace all other classes of this library
|
||||
* && 1 Redirect file[.baseclass].class.tx2 to file[.baseclass].class.VCX and do not touch file.VCX
|
||||
* && 2 Redirect file[.baseclass].class.tx2 to file.VCX and do not touch other classes of file.VCX
|
||||
*ClassPerFileCheck: 0 && 0=Don't check file.class.tx2 inclusion, 1=Check file.class.tx2 inclusion
|
||||
* && Only used if import file is in file[.baseclass].class.tx2 syntax
|
||||
* && Ignored for RedirectClassType: 2
|
||||
|
||||
*----------------------------------------------------------------------------------------------------------------
|
||||
*-- Example configuration for SourceSafe compatibility:
|
||||
*extension: pj2=pja && Text file to PJX
|
||||
*extension: vc2=vca && Text file to VCX
|
||||
*extension: sc2=sca && Text file to SCX
|
||||
*extension: fr2=fra && Text file to FRX
|
||||
*extension: lb2=lba && Text file to LBX
|
||||
*extension: mn2=mna && Text file to MNX
|
||||
*extension: db2=dba && Text file to DBF
|
||||
*extension: dc2=dca && Text file to DBC
|
||||
*-- Additional extensions
|
||||
*extension: fk2=fkx && Text file to FKY
|
||||
*extension: me2=fkx && Text file to MEM
|
||||
|
||||
*
|
||||
*extension: pj2=pja && Text file to PJX
|
||||
*extension: vc2=vca && Text file to VCX
|
||||
*extension: sc2=sca && Text file to SCX
|
||||
*extension: fr2=fra && Text file to FRX
|
||||
*extension: lb2=lba && Text file to LBX
|
||||
*extension: mn2=mna && Text file to MNX
|
||||
*extension: db2=dba && Text file to DBF
|
||||
*extension: dc2=dca && Text file to DBC
|
||||
*-- Additional extensions
|
||||
*extension: fk2=fkx && Text file to FKY
|
||||
*extension: me2=fkx && Text file to MEM
|
||||
|
||||
BIN
foxbin2prg.exe
BIN
foxbin2prg.exe
Binary file not shown.
BIN
foxbin2prg.pjt
BIN
foxbin2prg.pjt
Binary file not shown.
BIN
foxbin2prg.pjx
BIN
foxbin2prg.pjx
Binary file not shown.
@@ -249,10 +249,11 @@
|
||||
* 05/03/2021 LScheffler v1.19.57 Bug Fix: For RedirectClassType = 2, Path was set wrong
|
||||
* 2021-03-04 DH v1.19.58 Enhancement: added support for writing to a different folder than the source code (Doug Hennig)
|
||||
* 2021-03-04 DH v1.19.58 Enhancement: added configuration item: HomeDir, which determines if HomeDir is saved in PJ2 files (Doug Hennig)
|
||||
* 08/03/2021 LScheffler v1.19.59 Bug Fix: For RedirectClassType = 2, Path was set wrong
|
||||
* 08/03/2021 LScheffler v1.19.59 Doc: Improved, Better description of ClassPerFileCheck.
|
||||
* 08/03/2021 LScheffler v1.19.59 Bug Fix: RedirectClassType = 2, UseClassPerFile = 2 failed.
|
||||
* 08/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 Bug Fix: For RedirectClassType = 2, Path was set wrong
|
||||
* 09/03/2021 LScheffler v1.19.59 Doc: Improved, Better description of ClassPerFileCheck.
|
||||
* 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: Log settings object handed to execute (Debug > 0)
|
||||
* </HISTORIAL DE CAMBIOS Y NOTAS IMPORTANTES>
|
||||
*
|
||||
*---------------------------------------------------------------------------------------------------
|
||||
@@ -395,8 +396,8 @@
|
||||
* generates classlib.class.vcx and tries to recompile classlib.vcx
|
||||
* fails silent if classlib.vcx exists (compiles wrong lib), with message if not.
|
||||
* 05/03/2021 Lutz Scheffler Bug report v1.19.56 For RedirectClassType = 2, Path was set wrong
|
||||
* xx/03/2021 Lutz Scheffler Bug report v1.19.57 For RedirectClassType = 2, Path was set wrong
|
||||
* xx/03/2021 Lutz Scheffler Bug report v1.19.57 RedirectClassType = 2, UseClassPerFile = 2 failed.
|
||||
* 09/03/2021 Lutz Scheffler Bug report v1.19.57 For RedirectClassType = 2, Path was set wrong
|
||||
* 09/03/2021 Lutz Scheffler Bug report v1.19.57 RedirectClassType = 2, UseClassPerFile = 2 failed.
|
||||
|
||||
* </TESTEO Y REPORTE DE BUGS (AGRADECIMIENTOS)>
|
||||
*
|
||||
@@ -2146,9 +2147,10 @@ Define Class c_foxbin2prg As Session
|
||||
* tc_InputFile (v! IN ) Nombre completo (fullpath) del archivo a convertir o nombre del directorio a procesar
|
||||
* tc_InputFile_Type (@? IN ) Tipo de archivo de entrada: (D)irectory, (F)ile, (Q)uerySupport
|
||||
* toParentCFG (@? IN ) (Uso interno) Si se pasa un valor, el nuevo CFG copiará primero sus valores de aquí para heredarlos
|
||||
* tl_ForceLog (v? IN ) Force logging of settings. used on cfg setting as object
|
||||
*--------------------------------------------------------------------------------------------------------------
|
||||
Lparameters tcDontShowProgress, tcDontShowErrors, tcNoTimestamps, tcDebug, tcRecompile, tcExtraBackupLevels ;
|
||||
, tcClearUniqueID, tcOptimizeByFilestamp, tc_InputFile, tcInputFile_Type, toParentCFG
|
||||
, tcClearUniqueID, tcOptimizeByFilestamp, tc_InputFile, tcInputFile_Type, toParentCFG, tl_ForceLog
|
||||
|
||||
#If .F.
|
||||
Local toParentCFG As CL_CFG Of 'FOXBIN2PRG.PRG'
|
||||
@@ -2713,11 +2715,13 @@ Define Class c_foxbin2prg As Session
|
||||
.n_CFG_EvaluateFromParam = .n_CFG_Actual
|
||||
Endif
|
||||
Else
|
||||
*-- Si no es llMasterEval, es porque esta llamada es cíclica desde este mismo método,
|
||||
*-- y no hay parámetros para evaluar, ya que se mandan todos vacíos desde el inicial.
|
||||
Exit
|
||||
*-- Si no es llMasterEval, es porque esta llamada es cíclica desde este mismo método,
|
||||
*-- y no hay parámetros para evaluar, ya que se mandan todos vacíos desde el inicial.
|
||||
If Not tl_ForceLog Then
|
||||
Exit
|
||||
Endif &&NOT tl_ForceLog
|
||||
Endif
|
||||
|
||||
|
||||
.writeLog( '> ' + Upper(loLang.C_USING_THIS_SETTINGS_LOC) + ':' )
|
||||
.writeLog( C_TAB + 'n_CFG_Actual: ' + Transform(.n_CFG_Actual) + Icase(.n_CFG_Actual=1, ' [MASTER]', ' [SECONDARY]') )
|
||||
.writeLog( C_TAB + 'l_CFG_CachedAccess: ' + Transform(.l_CFG_CachedAccess) )
|
||||
@@ -3338,8 +3342,13 @@ Define Class c_foxbin2prg As Session
|
||||
|
||||
*-- ARCHIVO DE CONFIGURACIÓN PRINCIPAL
|
||||
|
||||
*!* Changed by: Lutz Scheffler 09.3.2021
|
||||
*!* change date="{^2021-03-09,08:06:00}"
|
||||
* log settings for tcCFG_File - cfg as object
|
||||
SET STEP ON
|
||||
.evaluateConfiguration( @tcDontShowProgress, @tcDontShowErrors, @tcNoTimestamps, @tcDebug, @tcRecompile, @tcBackupLevels ;
|
||||
, @tcClearUniqueID, @tcOptimizeByFilestamp, @tc_InputFile, @lcInputFile_Type )
|
||||
, @tcClearUniqueID, @tcOptimizeByFilestamp, @tc_InputFile, @lcInputFile_Type, , Vartype(tcCFG_File) = "O" )
|
||||
*!* /Changed by: Lutz Scheffler 09.3.2021
|
||||
|
||||
*!* Changed by: Lutz Scheffler 04.3.2021
|
||||
*!* change date="{^2021-03-04,13:25:00}"
|
||||
|
||||
Reference in New Issue
Block a user