Patch 1.19.60
Bug fixes and enhancements. See docs/FoxBin2Prg_Changes.md for full list
57
.github/CONTRIBUTING.md
vendored
Normal file
@@ -0,0 +1,57 @@
|
|||||||
|
# How to contribute to FoxBin2Prg
|
||||||
|
## Bug report?
|
||||||
|
- Please check [issues](https://github.com/fdbozzo/foxbin2prg/issues) if the bug is reported
|
||||||
|
- If you're unable to find an open issue addressing the problem, open a new one. Be sure to include a title and clear description, as much relevant information as possible, and a code sample or an executable test case demonstrating the expected behavior that is not occurring.
|
||||||
|
### Did you write a patch that fixes a bug?
|
||||||
|
- Open a new GitHub merge request with the patch.
|
||||||
|
- Ensure the PR description clearly describes the problem and solution.
|
||||||
|
- Include the relevant version number if applicable.
|
||||||
|
|
||||||
|
## Coding conventions
|
||||||
|
|
||||||
|
Start reading our code and you'll get the hang of it. We optimize for readability:
|
||||||
|
|
||||||
|
- Beautification is done like:
|
||||||
|
- Keywords: Mixed case
|
||||||
|
- Symbols: First occurence
|
||||||
|
- Indentation Tabs, 1
|
||||||
|
- Indent anything then Comments
|
||||||
|
- Please do not run BeautifyX with mDots insertion against the code.
|
||||||
|
- We ALWAYS put spaces after list items and method parameters (`[1, 2, 3]`, not `[1,2,3]`), around operators (`x = 1`, not `x=1`).
|
||||||
|
- This is open source software. Consider the people who will read your code, and make it look nice for them. It's sort of like driving a car: Perhaps you love doing donuts when you're alone, but with passengers the goal is to make the ride as smooth as possible.
|
||||||
|
- Please kindly add comments where and what you change
|
||||||
|
|
||||||
|
## New version
|
||||||
|
Please note, there are some tasks to set up a new version.
|
||||||
|
Stuff is a bit scattered, so this is where to look up.
|
||||||
|
1. Please create a fork at github
|
||||||
|
0. In _FoxBin2prg.prg_ there are two version numbers in properties:
|
||||||
|
`n_FB2PRG_Version = 1.19`
|
||||||
|
`c_FB2PRG_Version_Real = '1.19.60'`
|
||||||
|
1. Please set the **minor** part of _c_FB2PRG_Version_Real_ to a new number.
|
||||||
|
**Do not** alter the **1.19** part. This is written to the text files.
|
||||||
|
Alteration might force that the files must be newly commited, what is not everybodies taste.
|
||||||
|
3. Add a meaningfull description of the change in the changes list on top of _FoxBin2prg.prg_.
|
||||||
|
4. Add a description to _FoxBin2Prg_Changes.md_
|
||||||
|
4. If a change to the config files is made please add the description to the various properties (multi lang)
|
||||||
|
- _C_FOXBIN2PRG_SYNTAX_INFO_EXAMPLE_LOC_cfg:_ for general settings
|
||||||
|
- _C_FOXBIN2PRG_SYNTAX_INFO_EXAMPLE_LOC_tab_cfg:_ for settings per table
|
||||||
|
- Create a template _foxbin2prg.cfg.txt_ for general settings or _foxbin2prg.dbf.cfg.txt_ for the settings per table.
|
||||||
|
5. If a change to the parameters is made, change _C_FOXBIN2PRG_SYNTAX_INFO_EXAMPLE_LOC_ properties.
|
||||||
|
4. For changed functionality, add descriptive text on the appropriate _.md_ file.
|
||||||
|
4. Highlight the change on _README.md_ in projects root
|
||||||
|
2. Alter the version number for the EXE to the version used above.
|
||||||
|
0. Compile to EXE
|
||||||
|
1. Change Thor (see below)
|
||||||
|
|
||||||
|
## Thor conventions
|
||||||
|
This project is part of [VFPX](https://vfpx.github.io/) and published via [Thor](https://github.com/VFPX/Thor).
|
||||||
|
There are some considerations to make to add a new version to Thor.
|
||||||
|
Please check [Supporting Thor Updater](https://vfpx.github.io/thorupdate/)
|
||||||
|
In special:
|
||||||
|
- Update _Project.txt_, in special the version number
|
||||||
|
- Run the script included, or
|
||||||
|
- add files to _FoxBin2Prg.zip_, namly FoxBin2Prg.prg, FoxBin2Prg.exe and the config files templates
|
||||||
|
- Update the version number in _FoxBin2PrgVersion.txt_
|
||||||
|
|
||||||
|
Thanks
|
||||||
2
.gitignore
vendored
@@ -1,10 +1,10 @@
|
|||||||
# we use the exclude-all-include-special approach, easier then excluding any odd stuff later
|
|
||||||
#exclude general
|
#exclude general
|
||||||
*.bak
|
*.bak
|
||||||
*.tmp
|
*.tmp
|
||||||
*.prj
|
*.prj
|
||||||
*.pui
|
*.pui
|
||||||
*.orig
|
*.orig
|
||||||
|
*.err
|
||||||
/*.dbf
|
/*.dbf
|
||||||
/*.CDX
|
/*.CDX
|
||||||
/*.fxp
|
/*.fxp
|
||||||
|
|||||||
@@ -19,8 +19,31 @@ Supported formats are: PJX, PJM, SCX, VCX, FRX, LBX, MNX, DBC, DBF, FKY, MEM
|
|||||||
|
|
||||||
Demo video using FoxBin2Prg with PlasticSCM: http://youtu.be/sE4wQ50Itqg
|
Demo video using FoxBin2Prg with PlasticSCM: http://youtu.be/sE4wQ50Itqg
|
||||||
|
|
||||||
Change History -------------------------------------------------------------
|
Change History-------------------------------------------------------------
|
||||||
************
|
************
|
||||||
|
2021-03-22 v1.19.60
|
||||||
|
- Enhancement: FoxBin2Prg template and debug output: Completed and ordered, order synched, grouped and groups named at template. (LScheffler)
|
||||||
|
- Enhancement: Option BackgroundImage was read, but not in template (LScheffler)
|
||||||
|
- Enhancement: -cC options learned to create default FoxBin2Prg._cfg file (LScheffler)
|
||||||
|
- Enhancement: -t Option learned to create default \<tablename\>._cfg file, if table is open. (LScheffler)
|
||||||
|
- Enhancement: Handling of additional non structural index per DBF in Bin2Text and Text2Bin. See [Config per DBF](./FoxBin2Prg_Internals.md#configuration-per-table). (LScheffler)
|
||||||
|
- Enhancement: Debug-Logging for Index (LScheffler)
|
||||||
|
- Bug Fix: DBF_Conversion_Condition was read, but never used (LScheffler)
|
||||||
|
- Bug Fix: DBF_Conversion_Order sets an index that later would be stored as structural index (LScheffler)
|
||||||
|
- Bug Fix: config options with text value fail, if line comment is set (LScheffler)
|
||||||
|
- Bug Fix: issue #53 Variable lnFileCount in get_filesfromdirectory (LScheffler)
|
||||||
|
|
||||||
|
2021-03-09 v1.19.59
|
||||||
|
- Feature: Logging of settings as settings object passed to execute method (Option debug > 0) (LScheffler)
|
||||||
|
- Feature: Added option to create config file template based on current values of a directory (LScheffler)
|
||||||
|
- Bug Fix: RedirectClassType = 2, Path was set wrong in special config (LScheffler)
|
||||||
|
- Bug Fix: RedirectClassType = 2, UseClassPerFile = 2 failed (LScheffler)
|
||||||
|
- Doc: Improved, Better description of ClassPerFileCheck, tcOutputFolder. (LScheffler)
|
||||||
|
|
||||||
|
2021-03-04 v1.19.58
|
||||||
|
- Feature: Added support for writing to a different folder than the source code using a new tcOutputFolder parameter (Doug Hennig)
|
||||||
|
- Feature: Added a configuration option: HomeDir, which determines if HomeDir is saved in PJ2 files (the default is 1 for Yes) (Doug Hennig)
|
||||||
|
|
||||||
2021-03-05 v1.19.57.0
|
2021-03-05 v1.19.57.0
|
||||||
- Bug Fix: RedirectClassType = 2 mixed up PATH (LScheffler)
|
- Bug Fix: RedirectClassType = 2 mixed up PATH (LScheffler)
|
||||||
- Doc: improved (LScheffler)
|
- Doc: improved (LScheffler)
|
||||||
|
|||||||
49
README.md
@@ -125,6 +125,15 @@ 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](./Documentacion/github/FoxBin2prg_Changes.md)
|
||||||
|
|
||||||
|
## Changes in 1.19.60
|
||||||
|
* -cC options learned to create default FoxBin2Prg._cfg file
|
||||||
|
* -t Option learned to create default \<TableName\>._cfg file, if table is open.
|
||||||
|
* Handling of additional non structural index per DBF in Bin2Text and Text2Bin
|
||||||
|
* Debug-Logging for Index
|
||||||
|
* Bug Fix: DBF_Conversion_Condition was read, but never used
|
||||||
|
* Bug Fix: DBF_Conversion_Order sets an index that later would be stored as structural index
|
||||||
|
* Bug Fix: config options with text value fail, if line comment is set
|
||||||
|
|
||||||
## Changes in 1.19.59
|
## Changes in 1.19.59
|
||||||
* Added support for writing to a different folder than the source code using a new tcOutputFolder parameter
|
* 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)
|
* Added a configuration item: HomeDir, which determines if HomeDir is saved in PJ2 files (the default is 1 for Yes)
|
||||||
@@ -139,15 +148,12 @@ 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
|
DO FOXBIN2PRG.PRG WITH "-C","template.cfg" ==> Generates a file like FoxBin2Prg.cfg config file with recent settings
|
||||||
```
|
```
|
||||||
|
|
||||||
## Changes in 1.19.58
|
## Changes to Settings
|
||||||
* 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 pre 1.19.58
|
|
||||||
To get the new settings in config file, use the new create-a-template function:
|
To get the new settings in config file, use the new create-a-template function:
|
||||||
|
|
||||||
```
|
```
|
||||||
DO FOXBIN2PRG.PRG WITH "-c","template.cfg" ==> Generates a template for FoxBin2Prg.cfg config file with newest settings
|
DO FOXBIN2PRG.PRG WITH "-c","template.cfg" ==> Generates a template for FoxBin2Prg.cfg config file with newest default settings
|
||||||
|
DO FOXBIN2PRG.PRG WITH "-C","template.cfg" ==> Generates a template for FoxBin2Prg.cfg config file with active settings
|
||||||
DO FOXBIN2PRG.PRG WITH "-t","template.dbf.cfg" ==> Generates a template for table.dbf.cfg per table config file with newest settings
|
DO FOXBIN2PRG.PRG WITH "-t","template.dbf.cfg" ==> Generates a template for table.dbf.cfg per table config file with newest settings
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -173,37 +179,6 @@ It's a good idea to have the _FoxBin2Prg.cfg_ per projekt and and source control
|
|||||||
old commits / versions would have the old config.
|
old commits / versions would have the old config.
|
||||||
So the settings would fit the data and FoxBin2Prg could generate according to it.
|
So the settings would fit the data and FoxBin2Prg could generate according to it.
|
||||||
|
|
||||||
### Fixes
|
|
||||||
| Details |
|
|
||||||
| - |
|
|
||||||
| Added MEM and FKY options to config template and internal documentation |
|
|
||||||
| Conversion prg -> vcx, files per class could create one class multiple times |
|
|
||||||
| Processing directory, flush log file after loop instead of file |
|
|
||||||
| Conversion prg -> dbf, fields with .NULL. value are incorectly recreated |
|
|
||||||
| Minor translations |
|
|
||||||
| Conversion dbf -> prg, error if only test mode (toFoxBin2Prg.l_ProcessFiles is false) |
|
|
||||||
| DBF_Conversion_Condition, problem with macro expansion |
|
|
||||||
| Bug on special setting for import in form file[.baseclass].class.vc2 |
|
|
||||||
| Bug on RedirectClassType = 2 mixed up PATH |
|
|
||||||
| Bug on RedirectClassType = 2, UseClassPerFile = 2 failed |
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
| Details |
|
|
||||||
| - |
|
|
||||||
| [Documentation](./Documentacion/github/FoxBin2prg.md) reworked. |
|
|
||||||
| German translation improved |
|
|
||||||
| Info screen-doc improved |
|
|
||||||
| Inserted option DBF_IncludeDeleted to allow including deleted records of DBF |
|
|
||||||
| Inserted option DBF_BinChar_Base64 to allow processing of NoCPTrans fields in non base64 way |
|
|
||||||
| Inserted option OldFilesPerDBC to control split of DBC, the options below are controled by this |
|
|
||||||
| Inserted option UseFilesPerDBC to split DBC processing from vcx / scx |
|
|
||||||
| Inserted option RedirectFilePerDBCToMain to split DBC processing from vcx / scx |
|
|
||||||
| Inserted option ItemPerDBCCheck to split DBC processing from vcx / scx |
|
|
||||||
| added option to create config file template |
|
|
||||||
| New value 2 for option RedirectClassType. Alter single class for input form file[.baseclass].class.vc2 |
|
|
||||||
|
|
||||||
|
|
||||||
---
|
---
|
||||||
---
|
---
|
||||||
# Folder information
|
# Folder information
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
lparameters toUpdateObject
|
lparameters toUpdateObject
|
||||||
local ldDate
|
local ldDate
|
||||||
ldDate = date()
|
ldDate = date()
|
||||||
toUpdateObject.AvailableVersion = 'FoxBin2Prg-1.19.59' + ;
|
toUpdateObject.AvailableVersion = 'FoxBin2Prg-1.19.60' + ;
|
||||||
'-update-' + dtoc(ldDate, 1)
|
'-update-' + dtoc(ldDate, 1)
|
||||||
return toUpdateObject
|
return toUpdateObject
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
appName = FoxBin2Prg
|
appName = FoxBin2Prg
|
||||||
appID = FoxBin2Prg
|
appID = FoxBin2Prg
|
||||||
majorVersion = 1.19.59
|
majorVersion = 1.19.60
|
||||||
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*
|
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*
|
excludeFolders = *.plastic*,*ThorUpdater*,*Documentacion*,*foxunit*,*foxunit_*,*pruebas varias*,*versiones*,*datos_test*
|
||||||
|
|||||||
@@ -19,9 +19,7 @@ As far as possible these are the original documents. Changes are added where fun
|
|||||||
The older links point to Fernandos repository.
|
The older links point to Fernandos repository.
|
||||||
|
|
||||||
For recent verisons see
|
For recent verisons see
|
||||||
 [Fernandos FoxBin2PRG](https://github.com/fdbozzo/foxbin2prg)
|
 [FoxBin2PRG](https://github.com/fdbozzo/foxbin2prg)
|
||||||
 [This fork](https://github.com/lscheffler/foxbin2prg/tree/fork_mod)
|
|
||||||
 [Just the bug fixes of this fork](https://github.com/lscheffler/foxbin2prg/tree/fork)
|
|
||||||
|
|
||||||
## Full Change History
|
## Full Change History
|
||||||
This page is not only to get the history of the changes, but to keep a permanent list of people that have contributed to enhance FoxBin2Prg and that I feel as part of the ADN of this tool.
|
This page is not only to get the history of the changes, but to keep a permanent list of people that have contributed to enhance FoxBin2Prg and that I feel as part of the ADN of this tool.
|
||||||
@@ -32,31 +30,41 @@ _**Note:** you can click on the version number for downloading this version from
|
|||||||
|
|
||||||
| Rel.Date | Developer | Version | Details |
|
| Rel.Date | Developer | Version | Details |
|
||||||
| - | - | - | - |
|
| - | - | - | - |
|
||||||
| 2021/03/09 | LScheffler | [v1.19.59]() | **Feature**: Logging of settings as settings object passed to execute method (Option debug > 0) |
|
| 2021/03/22 | LScheffler | [v1.19.60](https://github.com/fdbozzo/foxbin2prg/releases/tag/v1.19.60) | **Enhancement**: FoxBin2Prg template and debug output: Completed and ordered, order synched, grouped and groups named at template. |
|
||||||
| 2021/03/09 | LScheffler | [v1.19.59]() | **Feature**: Added option to create config file template based on current values of a directory |
|
| | | | **Enhancement**: Option BackgroundImage was read, but not in template |
|
||||||
| 2021/03/09 | LScheffler | [v1.19.59]() | **Bug Fix**: RedirectClassType = 2, Path was set wrong in special config |
|
| | | | **Enhancement**: -cC options learned to create default FoxBin2Prg._cfg file |
|
||||||
| 2021/03/09 | LScheffler | [v1.19.59]() | **Bug Fix**: RedirectClassType = 2, UseClassPerFile = 2 failed |
|
| | | | **Enhancement**: -t Option learned to create default \<tablename\>._cfg file, if table is open. |
|
||||||
| 2021/03/09 | LScheffler | [v1.19.59]() | **Doc**: Improved, Better description of ClassPerFileCheck, tcOutputFolder. |
|
| | | | **Enhancement**: Handling of additional non structural index per DBF in Bin2Text and Text2Bin. See [Config per DBF](./FoxBin2Prg_Internals.md#configuration-per-table). |
|
||||||
| 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 |
|
| | | | **Enhancement**: Debug-Logging for Index |
|
||||||
|
| | | | **Bug Fix**: DBF_Conversion_Condition was read, but never used |
|
||||||
|
| | | | **Bug Fix**: DBF_Conversion_Order sets an index that later would be stored as structural index |
|
||||||
|
| | | | **Bug Fix**: config options with text value fail, if line comment is set |
|
||||||
|
| | | | **Bug Fix**: issue #53 Variable lnFileCount in get_filesfromdirectory |
|
||||||
|
| 2021/03/09 | LScheffler | v1.19.59 | **Feature**: Logging of settings as settings object passed to execute method (Option debug > 0) |
|
||||||
|
| | | | **Feature**: Added option to create config file template based on current values of a directory |
|
||||||
|
| | | | **Bug Fix**: RedirectClassType = 2, Path was set wrong in special config |
|
||||||
|
| | | | **Bug Fix**: RedirectClassType = 2, UseClassPerFile = 2 failed |
|
||||||
|
| | | | **Doc**: Improved, Better description of ClassPerFileCheck, tcOutputFolder. |
|
||||||
|
| 2021/03/04 | Doug Hennig | [v1.19.58](https://github.com/fdbozzo/foxbin2prg/releases/tag/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) |
|
| | | | **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 |
|
| 2021/03/05 | LScheffler | v1.19.57 | **Bug Fix**: RedirectClassType = 2 mixed up PATH |
|
||||||
| | | | **Doc**: Improved |
|
| | | | **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 |
|
| 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 |
|
||||||
| | | | **Bug Fix**:<br>Inputfile in form classlib.class.vc2 AND RedirectClassType = 1 and Execute param tcRecompile = 1<br>generates classlib.class.vcx and tries to recompile classlib.vcx<br>fails silent if classlib.vcx exists (compiles wrong lib), with message if not. |
|
| | | | **Bug Fix**:<br>Inputfile in form classlib.class.vc2 AND RedirectClassType = 1 and Execute param tcRecompile = 1<br>generates classlib.class.vcx and tries to recompile classlib.vcx<br>fails silent if classlib.vcx exists (compiles wrong lib), with message if not. |
|
||||||
| 2021/03/03 | LScheffler | [v1.19.55]() | **Doc**: Documentation from CodePlex integrated |
|
| 2021/03/03 | LScheffler | v1.19.55 | **Doc**: Documentation from CodePlex integrated |
|
||||||
| | | | **Feature**: added option to create config file template |
|
| | | | **Feature**: added option to create config file template |
|
||||||
| | | | **Doc**: Info screen-doc improved |
|
| | | | **Doc**: Info screen-doc improved |
|
||||||
| | | | **Doc**: German translation improved |
|
| | | | **Doc**: German translation improved |
|
||||||
| 2021/03/03 | LScheffler | [v1.19.54]() | **Bug Fix**: DBF_Conversion_Condition, problem with macro expansion |
|
| 2021/03/03 | LScheffler | v1.19.54 | **Bug Fix**: DBF_Conversion_Condition, problem with macro expansion |
|
||||||
| 2021/02/20 | LScheffler | | **Feature**: inserted option DBF_IncludeDeleted to allow including deleted records of DBF |
|
| 2021/02/20 | LScheffler | | **Feature**: inserted option DBF_IncludeDeleted to allow including deleted records of DBF |
|
||||||
| 2021/02/19 | LScheffler | | **Feature**: inserted option DBF_BinChar_Base64 to allow processing of NoCPTrans fields in non base64 way |
|
| 2021/02/19 | LScheffler | | **Feature**: inserted option DBF_BinChar_Base64 to allow processing of NoCPTrans fields in non base64 way |
|
||||||
| 2021/02/15 | LScheffler | | **Feature**: inserted option ItemPerDBCCheck to split DBC processing from vcx / scx |
|
| 2021/02/15 | LScheffler | | **Feature**: inserted option ItemPerDBCCheck to split DBC processing from vcx / scx |
|
||||||
| | | | **Feature**: inserted option RedirectFilePerDBCToMain to split DBC processing from vcx / scx |
|
| | | | **Feature**: inserted option RedirectFilePerDBCToMain to split DBC processing from vcx / scx |
|
||||||
| 2021/02/14 | LScheffler | | **Feature**: inserted option UseFilesPerDBC to split DBC processing from vcx / scx |
|
| 2021/02/14 | LScheffler | | **Feature**: inserted option UseFilesPerDBC to split DBC processing from vcx / scx |
|
||||||
| 2021/02/23 | LScheffler | [v1.19.53]() | **Doc**: For Info screen and config-template, usage of MEM and FRX added |
|
| 2021/02/23 | LScheffler | v1.19.53 | **Doc**: For Info screen and config-template, usage of MEM and FRX added |
|
||||||
| | | | **Bug Fix**: conversion prg -> vcx, files per class could create one class multiple times |
|
| | | | **Bug Fix**: conversion prg -> vcx, files per class could create one class multiple times |
|
||||||
| 2021/02/15 | | | **Bug Fix**: processing directory, flush log file after loop instead of file |
|
| 2021/02/15 | | | **Bug Fix**: processing directory, flush log file after loop instead of file |
|
||||||
| 2021/02/14 | LScheffler | [v1.19.52]() | **Bug Fix**: conversion prg -> dbf, fields with .NULL. value are incorectly recreated |
|
| 2021/02/14 | LScheffler | v1.19.52 | **Bug Fix**: conversion prg -> dbf, fields with .NULL. value are incorectly recreated |
|
||||||
| | | | **Doc**: minor translations |
|
| | | | **Doc**: minor translations |
|
||||||
| | | | **Bug Fix**: conversion dbf -> prg, error if only test mode (toFoxBin2Prg.l_ProcessFiles is false) |
|
| | | | **Bug Fix**: conversion dbf -> prg, error if only test mode (toFoxBin2Prg.l_ProcessFiles is false) |
|
||||||
| 2020/04/01 | FDBOZZO | [v1.19.51.6](https://github.com/fdbozzo/foxbin2prg/tree/v1.19.51.6) | Add some fixes to existent ut_tests |
|
| 2020/04/01 | FDBOZZO | [v1.19.51.6](https://github.com/fdbozzo/foxbin2prg/tree/v1.19.51.6) | Add some fixes to existent ut_tests |
|
||||||
@@ -379,4 +387,4 @@ _**Note:** you can click on the version number for downloading this version from
|
|||||||
This project is part of [VFPX](https://vfpx.github.io/).
|
This project is part of [VFPX](https://vfpx.github.io/).
|
||||||
|
|
||||||
----
|
----
|
||||||
Last changed: _2021/03/09_ 
|
Last changed: _2021/03/22_ 
|
||||||
@@ -11,6 +11,7 @@ As far as possible these are the original documents. Changes are added where fun
|
|||||||
----
|
----
|
||||||
## Table of contents
|
## Table of contents
|
||||||
- [Why to use this tool](#why-to-use-this-tool)
|
- [Why to use this tool](#why-to-use-this-tool)
|
||||||
|
- [Limitations](#limitations)
|
||||||
- [Configuration file](#configuration-file)
|
- [Configuration file](#configuration-file)
|
||||||
- [Configuration file per table](#configuration-file-per-table)
|
- [Configuration file per table](#configuration-file-per-table)
|
||||||
- [FoxBin2Prg Internals](#foxbin2prg-internals)
|
- [FoxBin2Prg Internals](#foxbin2prg-internals)
|
||||||
@@ -66,11 +67,33 @@ and this require that generated text files can be manipulated manually or automa
|
|||||||
|
|
||||||
No problem, just convert the .pjm to .pjx/.pjt sending to FoxBin2Prg, and it generates the real project again.
|
No problem, just convert the .pjm to .pjx/.pjt sending to FoxBin2Prg, and it generates the real project again.
|
||||||
|
|
||||||
|
## Limitations
|
||||||
|
Most of the files look like prg or XML data. Please note, those files are only look alike.
|
||||||
|
The parsing to generate the binary depends highly on the position of data.
|
||||||
|
So if a file is defined like
|
||||||
|
```
|
||||||
|
<FIELDS>
|
||||||
|
<FIELD>
|
||||||
|
<Name>I1</Name>
|
||||||
|
```
|
||||||
|
this
|
||||||
|
```
|
||||||
|
<FIELDS><FIELD><Name>I1</Name>.
|
||||||
|
```
|
||||||
|
will be nice XML, but not readable to FoxBin2Prg. This is a line by line parser.
|
||||||
|
Leading and trailing spaces are mostly no problem.
|
||||||
|
|
||||||
|
You might freely change and merge code inside the text files, or data in a table-XML,
|
||||||
|
but the result must be compilable and keep the structure.
|
||||||
|
All limitations that occur to a binary format must be kept on the text representation -
|
||||||
|
the definition of a HEADER class to a VCX will fail.
|
||||||
|
|
||||||
|
|
||||||
## Configuration file
|
## Configuration file
|
||||||
It is possible to create a template or a config with all options and comments via
|
It is possible to create a template or a config with all options and comments via
|
||||||
```
|
```
|
||||||
DO FOXBIN2PRG.PRG WITH "-c","template.cfg" ==> Generates a template for FoxBin2Prg.cfg config file with newest settings
|
DO FOXBIN2PRG.PRG WITH "-c","template.cfg" &&==> Generates a template for FoxBin2Prg.cfg config file with newest settings
|
||||||
DO FOXBIN2PRG.PRG WITH "-C","config.cfg" ==> Generates a config file like FoxBin2Prg.cfg with recent settings of path of second parameter
|
DO FOXBIN2PRG.PRG WITH "-C","config.cfg" &&==> Generates a config file like FoxBin2Prg.cfg with recent settings of path of second parameter
|
||||||
```
|
```
|
||||||
See [command line](./FoxBin2Prg_Run.md#usage-2).
|
See [command line](./FoxBin2Prg_Run.md#usage-2).
|
||||||
The config file is used to move local setting to a different comupter or for changes while branching.
|
The config file is used to move local setting to a different comupter or for changes while branching.
|
||||||
@@ -81,17 +104,15 @@ These are the FoxBin2Prg.cfg configuration file settings and their meaning:
|
|||||||
|
|
||||||
| FoxBin2Prg.cfg keywords | Value (_Default_) | Description |
|
| FoxBin2Prg.cfg keywords | Value (_Default_) | Description |
|
||||||
| ----- | ----- | ----- |
|
| ----- | ----- | ----- |
|
||||||
| extension: xx2 | | FoxBin2Prg extensions ends in '2' (pj2, vc2, sc2, etc), but you can change that.<br/>For example you can change pj2 to pja using this: "extension: pj2=pja" for making it SourceSafe (sccapi v1) compatible.<br/>It could be any pair, used sources are:<br/>pj2, vc2, sc2, fr2, lb2, mn2, db2, dc2, fk2, me2 |
|
| Language | _(auto)_, EN, FR, ES, DE | Language of templates, shown messages and LOGs. EN=English, FR=French, ES=Español, DE=German, Not defined = AUTOMATIC (using VERSION(3)) ||
|
||||||
| DontShowProgress | 0 | **Deprecated**. Replaced by ShowProgressbar option from v1.19.40 |
|
| DontShowProgress | 0 | **Deprecated**. Replaced by ShowProgressbar option from v1.19.40 |
|
||||||
| ShowProgressbar | 0, _1_, 2 | 1=Always show a progress bar,<br/>2=Only show it when processing multiple-files,<br/>0=Don't show progressbar |
|
| ShowProgressbar | 0, _1_, 2 | 1=Always show a progress bar,<br/>2=Only show it when processing multiple-files,<br/>0=Don't show progressbar |
|
||||||
| DontShowErrors | _0_, 1 | By default, show message errors in a modal messagebox.<br/>Specify "1" if don't want to show errors |
|
| DontShowErrors | _0_, 1 | By default, show message errors in a modal messagebox.<br/>Specify "1" if don't want to show errors |
|
||||||
| NoTimestamps | 0, _1_ | By default, timestamp fields are cleared on _Text_ files, because a lot of differencies are generated on _Binaries_ and _Text_ files with Timestamps activated. This timestamp field is part of the vcx, scx and other Foxpro binary source code files |
|
|
||||||
| Debug | _0_, 1, 2 | By default, don't generate individual <file>.Log with process hints.<br/>Activate with "1" to find possible error causes and for debugging,<br/>"2" is special logging |
|
|
||||||
| ExtraBackupLevels | 0, _1_, n | By default, one _filename_.BAK file is created.<br/>With this setting you can make more _filename_.n.BAK files,<br/>or none at all using 0 |
|
| ExtraBackupLevels | 0, _1_, n | By default, one _filename_.BAK file is created.<br/>With this setting you can make more _filename_.n.BAK files,<br/>or none at all using 0 |
|
||||||
| ClearUniqueID | 0, _1_ | 0=Keep UniqueID,<br/>1=Clear Unique ID.<br/>Very useful for Diff and Merge. By default, UniqueID fields are cleared on _Text_ files, because a lot of differencies are generated with UniqueID activated |
|
| Debug | _0_, 1, 2 | By default, don't generate individual <file>.Log with process hints.<br/>Activate with "1" to find possible error causes and for debugging,<br/>"2" is special logging |
|
||||||
| OptimizeByFilestamp | _0_, 1 | 0=Don't optimize (always generate),<br/>1=Optimize (generate only when destination filestamp es older). By default this optimization is deactivated, and it is not recommended if using for merge, so _Bin_ and _Text_ files can be modified seperately.<br/><span style="background-color: gold;">Dangerous while working with branches!</span> |
|
| BackgroundImage | <cFile> | Backgroundimage for process form |
|
||||||
| RemoveNullCharsFromCode | 0, _1_ | 1=Drop NULL chars from source code,<br/>0=Leave NULLs in source code |
|
| HomeDir | 0, _1_ | 0=don't save HomeDir in PJ2,<br/>1=save HomeDir in PJ2.<br/>Setting this to 0 prevents the PJ2 file from changing just because two developers have the project in different folders |
|
||||||
| RemoveZOrderSetFromProps | _0_, 1 | 1=Remove ZOrderSet from the properties,<br/>0=Leave ZOrderSet in the properties |
|
|||
|
||||||
| XXX_Conversion_Support | n | Defines the conversion operation per filetype |
|
| XXX_Conversion_Support | n | Defines the conversion operation per filetype |
|
||||||
| | | For code:<br/> 0=No support,<br/>1=Generate _Text_ (Diff),<br/>2=Generate _Text_ and _Bin_ (Merge) |
|
| | | For code:<br/> 0=No support,<br/>1=Generate _Text_ (Diff),<br/>2=Generate _Text_ and _Bin_ (Merge) |
|
||||||
| | | For complex data:<br/> (PJX / DBC / DBF): 0=No support,<br/>1=Generate Header _Text_ only (Diff),<br/>2=Generate Header _Text_ and _Bin_ (Merge/Only Structure!),<br/>4=Generate _Text_ with DATA (Diff),<br/>8=Export and Import DATA (Merge/Structure & Data) |
|
| | | For complex data:<br/> (PJX / DBC / DBF): 0=No support,<br/>1=Generate Header _Text_ only (Diff),<br/>2=Generate Header _Text_ and _Bin_ (Merge/Only Structure!),<br/>4=Generate _Text_ with DATA (Diff),<br/>8=Export and Import DATA (Merge/Structure & Data) |
|
||||||
@@ -101,12 +122,19 @@ These are the FoxBin2Prg.cfg configuration file settings and their meaning:
|
|||||||
| FRX_Conversion_Support | 0, 1, _2_ | Default value is 2 - Bidirectional (_Text_ and _bin_) support activated |
|
| FRX_Conversion_Support | 0, 1, _2_ | Default value is 2 - Bidirectional (_Text_ and _bin_) support activated |
|
||||||
| LBX_Conversion_Support | 0, 1, _2_ | Default value is 2 - Bidirectional (_Text_ and _bin_) support activated |
|
| LBX_Conversion_Support | 0, 1, _2_ | Default value is 2 - Bidirectional (_Text_ and _bin_) support activated |
|
||||||
| MNX_Conversion_Support | 0, 1, _2_ | Default value is 2 - Bidirectional (_Text_ and _bin_) support activated |
|
| MNX_Conversion_Support | 0, 1, _2_ | Default value is 2 - Bidirectional (_Text_ and _bin_) support activated |
|
||||||
| FKY_Conversion_Support | 0, _1_ | Default value is 1 - _Text_ support activated |
|
|
||||||
| MEM_Conversion_Support | 0, _1_ | Default value is 1 - _Text_ support activated |
|
|
||||||
| DBC_Conversion_Support | 0, 1, _2_ | Default value is 2 - Bidirectional (_Text_ and _bin_) support activated |
|
| DBC_Conversion_Support | 0, 1, _2_ | Default value is 2 - Bidirectional (_Text_ and _bin_) support activated |
|
||||||
| DBF_Conversion_Support | 0, _1_, 2, 4, 8 | Default value is 1 - just _Text_ support activated.<br/>The support for regenerating DBFs structures (value = 2) are disabled by default to not overrite data accidentally. When activating bidirectional support, keep in mind that Data is not restored, just the structure and indexes!.<br/>A value of 4 is used to export Structure and Data, but exported data is not imported again.<br/>A value of 8 is used for bidirectional support (No General fields!). <br/> **Note:** This can be [changed per table](#configuration-file-per-table). |
|
| DBF_Conversion_Support | 0, _1_, 2, 4, 8 | Default value is 1 - just _Text_ support activated.<br/>The support for regenerating DBFs structures (value = 2) are disabled by default to not overrite data accidentally. When activating bidirectional support, keep in mind that Data is not restored, just the structure and indexes!.<br/>A value of 4 is used to export Structure and Data, but exported data is not imported again.<br/>A value of 8 is used for bidirectional support (No General fields!). <br/> **Note:** This can be [changed per table](#configuration-file-per-table). |
|
||||||
| DBF_Conversion_Included | * | If DBF_Conversion_Support:4, you can specify multiple filemasks: www,fb2p_free.dbf.<br/>See [Order and range of records](#order-and-range-of-records). |
|
| FKY_Conversion_Support | 0, _1_ | Default value is 1 - _Text_ support activated |
|
||||||
| DBF_Conversion_Excluded | | If DBF_Conversion_Support:4, you can specify multiple filemasks: www,fb2p_free.dbf.<br/>See [Order and range of records](#order-and-range-of-records). |
|
| MEM_Conversion_Support | 0, _1_ | Default value is 1 - _Text_ support activated |
|
||||||
|
|||
|
||||||
|
| UseClassPerFile | _0_, 1, 2 | 0=One library _Text_ file,<br/>1=Multiple file.class.vc2 files,<br/>2=Multiple file.baseclass.class.vc2 files<br/>See [Create Class-Per-File](#create-class-per-file) |
|
||||||
|
| [RedirectClassPerFileToMain:](#redirectclassperfiletomain:) | _0_, 1 | 0=Don't redirect to file.vc2,<br/>1=Redirect to file.vc2 when selecting file.class.vc2<br/>RedirectClassType: 1 precedes this setting |
|
||||||
|
| RedirectClassType | _0_, 1, 2 | For classes created with UseClassPerFile>0 in the form file[.baseclass].class.tx2 (vcx only) |
|
||||||
|
| | | 0 creates / refresh class in file.VCX and add / replace all other classes of this library |
|
||||||
|
| | | 1 creates / refresh class file[.baseclass].class.VCX and do not touch file.VCX |
|
||||||
|
| | | 2 creates / refresh class in file.VCX and do not touch other classes of file.VCX |
|
||||||
|
| [ClassPerFileCheck](#classperfilecheck) | _0_, 1 | 0=Don't check file.class.vc2 inclusion,<br/>1=Check file.class.vc2 inclusion<br/>Only used if import file is in file[.baseclass].class.tx2 syntax.<br/>Ignored for RedirectClassType: 2 |
|
||||||
|
|||
|
||||||
| 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 |
|
||||||
@@ -118,19 +146,33 @@ These are the FoxBin2Prg.cfg configuration file settings and their meaning:
|
|||||||
| | | Note: recration only if RedirectFilePerDBCToMain is 1 |
|
| | | Note: recration only if RedirectFilePerDBCToMain is 1 |
|
||||||
| [RedirectFilePerDBCToMain](#redirectfileperdbctomain) | _0_, 1 | 0=Don't redirect to file.dc2,<br/>1=Redirect to file.tx2 when selecting file.item.*.dc2<br/>**Only if OldFilesPerDBC is 1** |
|
| [RedirectFilePerDBCToMain](#redirectfileperdbctomain) | _0_, 1 | 0=Don't redirect to file.dc2,<br/>1=Redirect to file.tx2 when selecting file.item.*.dc2<br/>**Only if OldFilesPerDBC is 1** |
|
||||||
| [ItemPerDBCCheck](#itemperdbccheck) | _0_, 1 | 0=Don't check file.item.*.dc2 inclusion,<br/> 1=Check file.item.*.dc2 inclusion<br/>**Only if OldFilesPerDBC is 1**|
|
| [ItemPerDBCCheck](#itemperdbccheck) | _0_, 1 | 0=Don't check file.item.*.dc2 inclusion,<br/> 1=Check file.item.*.dc2 inclusion<br/>**Only if OldFilesPerDBC is 1**|
|
||||||
| DBF_BinChar_Base64 | 0, _1_ | 0=For character type fields, if NoCPTrans 0=do not transform, 1=use Base64 transform (default) <br/> **Note:** This can be [changed per table](#configuration-file-per-table). |
|
|||
|
||||||
|
| NoTimestamps | 0, _1_ | By default, timestamp fields are cleared on _Text_ files, because a lot of differencies are generated on _Binaries_ and _Text_ files with Timestamps activated. This timestamp field is part of the vcx, scx and other Foxpro binary source code files |
|
||||||
|
| ClearUniqueID | 0, _1_ | 0=Keep UniqueID,<br/>1=Clear Unique ID.<br/>Very useful for Diff and Merge. By default, UniqueID fields are cleared on _Text_ files, because a lot of differencies are generated with UniqueID activated |
|
||||||
|
| OptimizeByFilestamp | _0_, 1 | 0=Don't optimize (always generate),<br/>1=Optimize (generate only when destination filestamp es older). By default this optimization is deactivated, and it is not recommended if using for merge, so _Bin_ and _Text_ files can be modified seperately.<br/><span style="background-color: gold;">Dangerous while working with branches!</span> |
|
||||||
|
| RemoveNullCharsFromCode | 0, _1_ | 1=Drop NULL chars from source code,<br/>0=Leave NULLs in source code |
|
||||||
|
| RemoveZOrderSetFromProps | _0_, 1 | 1=Remove ZOrderSet from the properties,<br/>0=Leave ZOrderSet in the properties |
|
||||||
|
|||
|
||||||
|
| ClearDBFLastUpdate | 0, _1_ | 0=Keep DBF LastUpdate, 1=Clear DBF LastUpdate. Useful for Diff, minimizes differences. |
|
||||||
|
| ExcludeDBFAutoincNextval | _0_, 1 | 0=Do not exclude this value from db2, 1=Exclude this value from db2 |
|
||||||
|
| DBF_Conversion_Included | * | If DBF_Conversion_Support:4, you can specify multiple filemasks: www,fb2p_free.dbf.<br/>See [Order and range of records](#order-and-range-of-records).<br/>**Note:** This can be [changed per table](#configuration-file-per-table). |
|
||||||
|
| DBF_Conversion_Excluded | | If DBF_Conversion_Support:4, you can specify multiple filemasks: www,fb2p_free.dbf.<br/>See [Order and range of records](#order-and-range-of-records).<br/>**Note:** This can be [changed per table](#configuration-file-per-table). |
|
||||||
|
| DBF_BinChar_Base64 | 0, _1_ | 0=For character type fields, if NoCPTrans 0=do not transform, 1=use Base64 transform (default)<br/>**Note:** This can be [changed per table](#configuration-file-per-table). |
|
||||||
| DBF_IncludeDeleted | _0_, 1 | 0=Do not include deleted records (default),<br/>1=Include deleted records<br/>**Note:** This can be [changed per table](#configuration-file-per-table). |
|
| DBF_IncludeDeleted | _0_, 1 | 0=Do not include deleted records (default),<br/>1=Include deleted records<br/>**Note:** This can be [changed per table](#configuration-file-per-table). |
|
||||||
| | | **Note:**<br/>This is only true for tables. Generating DBC to _Text_ and back to _Binary_ will act as PACK DATABASE.<br/>The data added by _DBF_IncludeDeleted: 1_ will be ignored by old versions generating _Binary_ files. |
|
| | | **Note:**<br/>This is only true for tables. Generating DBC to _Text_ and back to _Binary_ will act as PACK DATABASE.<br/>The data added by _DBF_IncludeDeleted: 1_ will be ignored by old versions generating _Binary_ files. |
|
||||||
| UseClassPerFile | _0_, 1, 2 | 0=One library _Text_ file,<br/>1=Multiple file.class.vc2 files,<br/>2=Multiple file.baseclass.class.vc2 files<br/>See [Create Class-Per-File](#create-class-per-file) |
|
|||
|
||||||
| [RedirectClassPerFileToMain:](#redirectclassperfiletomain:) | _0_, 1 | 0=Don't redirect to file.vc2,<br/>1=Redirect to file.vc2 when selecting file.class.vc2<br/>RedirectClassType: 1 precedes this setting |
|
| extension: xx2 | | FoxBin2Prg extensions ends in '2' (pj2, vc2, sc2, etc), but you can change that. |
|
||||||
| RedirectClassType | _0_, 1, 2 | For classes created with UseClassPerFile>0 in the form file[.baseclass].class.tx2 (vcx only) |
|
| extension: pj2= | \<extension\> | Text file for project PJX |
|
||||||
| | | 0 creates / refresh class in file.VCX and add / replace all other classes of this library |
|
| extension: vc2= | \<extension\> | Text file for classlibray VCX, or a class out of a VCX |
|
||||||
| | | 1 creates / refresh class file[.baseclass].class.VCX and do not touch file.VCX |
|
| extension: sc2= | \<extension\> | Text file for form SCX, or a class out of a SCX (Form; Dataenbironment) |
|
||||||
| | | 2 creates / refresh class in file.VCX and do not touch other classes of file.VCX |
|
| extension: fr2= | \<extension\> | Text file for report FRX |
|
||||||
| [ClassPerFileCheck](#classperfilecheck) | _0_, 1 | 0=Don't check file.class.vc2 inclusion,<br/>1=Check file.class.vc2 inclusion<br/>Only used if import file is in file[.baseclass].class.tx2 syntax.<br/>Ignored for RedirectClassType: 2 |
|
| extension: lb2= | \<extension\> | Text file for label LBX |
|
||||||
| ClearDBFLastUpdate | 0, _1_ | 0=Keep DBF LastUpdate, 1=Clear DBF LastUpdate. Useful for Diff, minimizes differences. |
|
| extension: mn2= | \<extension\> | Text file for menu MNX |
|
||||||
| Language | _(auto)_, EN, FR, ES, DE | Language of templates, shown messages and LOGs. EN=English, FR=French, ES=Español, DE=German, Not defined = AUTOMATIC (using VERSION(3)) ||
|
| extension: db2= | \<extension\> | Text file for table DBF, free or DBC bound |
|
||||||
| HomeDir | 0, _1_ | 0=don't save HomeDir in PJ2,<br/>1=save HomeDir in PJ2.<br/>Setting this to 0 prevents the PJ2 file from changing just because two developers have the project in different folders |
|
| extension: dc2= | \<extension\> | Text file for database container DBC, or records from database container DBC |
|
||||||
|
| extension: fk2= | \<extension\> | Text file for macro file FKY |
|
||||||
|
| extension: me2= | \<extension\> | Text file for variable memory MEM, created with SAVE TO |
|
||||||
|
| | | **Example for for making it SourceSafe (sccapi v1) compatible:**<br/>extension: pj2=pja<br/>extension: vc2=vca<br/>extension: sc2=sca<br/>extension: fr2=fra<br/>extension: lb2=lba<br/>extension: mn2=mna<br/>extension: db2=dba<br/>extension: dc2=dca |
|
||||||
|
|
||||||
### Note
|
### Note
|
||||||
The options will be read outside in, top to down. See [Multi-config](#multi-config)
|
The options will be read outside in, top to down. See [Multi-config](#multi-config)
|
||||||
@@ -139,7 +181,7 @@ The options will be read outside in, top to down. See [Multi-config](#multi-conf
|
|||||||
Those configuration files are valid for a single table only. The idea is to have special settings for single tables.
|
Those configuration files are valid for a single table only. The idea is to have special settings for single tables.
|
||||||
It is possible to create a template with all options and comments via
|
It is possible to create a template with all options and comments via
|
||||||
```
|
```
|
||||||
DO FOXBIN2PRG.PRG WITH "-t","template.dbf.cfg" ==> Generates a template for table.dbf.cfg per table config file with newest settings
|
DO FOXBIN2PRG.PRG WITH "-t","template.dbf.cfg" &&==> Generates a template for table.dbf.cfg per table config file with newest settings
|
||||||
```
|
```
|
||||||
|
|
||||||
See [command line](./FoxBin2Prg_Run.md#usage-2).
|
See [command line](./FoxBin2Prg_Run.md#usage-2).
|
||||||
@@ -147,14 +189,16 @@ The options in the template (or in the config that ships with FoxBin2Prg) are co
|
|||||||
To activate an option remove the asterix and set appropriate value.
|
To activate an option remove the asterix and set appropriate value.
|
||||||
These are the Table.dbf.cfg configuration file settings and their meaning:
|
These are the Table.dbf.cfg configuration file settings and their meaning:
|
||||||
|
|
||||||
| FoxBin2Prg.cfg keywords | Value | Description |
|
| FoxBin2Prg.cfg keywords | Value | per<br/>file | Description |
|
||||||
| ----- | ----- | ----- |
|
| ----- | ----- | ----- | ----- |
|
||||||
| DBF_Conversion_Support | 0, 1, 2, 4, 8 | 0=No support,<br/>1=Generate Header _Text_ only (Diff),<br/>2=Generate Header _Text_ and _Bin_ (Merge/Only Structure!),<br/>4=Generate _Text_ with DATA (Diff),<br/>8=Export and Import DATA (Merge/Structure & Data) |
|
| DBF_Conversion_Support | 0, 1, 2, 4, 8 | | 0=No support,<br/>1=Generate Header _Text_ only (Diff),<br/>2=Generate Header _Text_ and _Bin_ (Merge/Only Structure!),<br/>4=Generate _Text_ with DATA (Diff),<br/>8=Export and Import DATA (Merge/Structure & Data) |
|
||||||
| DBF_Conversion_Order | c_Expression | Field expresion (For _INDEX ON_). ie: name+str(age,3),<br/>Empty means no sort order. <br/> usefull only if _DBF_Conversion_Support_>0 |
|
| DBF_Conversion_Order | c_Expression | x | Field expresion (For _INDEX ON_). ie: name+str(age,3),<br/>Empty means no sort order. <br/> usefull only if _DBF_Conversion_Support_>0 |
|
||||||
| DBF_Conversion_Condition | c_Expression | Logical expression (For _SCAN FOR_). ie: age > 10 AND NOT DELETED(),<br/>empty means all files, except _DBF_IncludeDeleted_ <br/> usefull only if _DBF_Conversion_Support_>0 |
|
| DBF_Conversion_Condition | c_Expression | x | Logical expression (For _SCAN FOR_). ie: age > 10 AND NOT DELETED(),<br/>empty means all files, except _DBF_IncludeDeleted_ <br/> usefull only if _DBF_Conversion_Support_>0 |
|
||||||
| DBF_BinChar_Base64 | 0, 1 | 0=For character type fields, if NoCPTrans 0=do not transform,<br/>1=use Base64 transform <br/> usefull only if _DBF_Conversion_Support_>2 |
|
| DBF_IndexList | c_FileList | x | A comma delimited list of additional index files ( cdx or idx ). **Not the structural index file.** |
|
||||||
| DBF_IncludeDeleted | 0, 1 | 0=Do not include deleted records,<br/>1=Include deleted records <br/> usefull only if _DBF_Conversion_Support_>2 |
|
| DBF_BinChar_Base64 | 0, 1 | | 0=For character type fields, if NoCPTrans 0=do not transform,<br/>1=use Base64 transform <br/> usefull only if _DBF_Conversion_Support_>2 |
|
||||||
|
| DBF_IncludeDeleted | 0, 1 | | 0=Do not include deleted records,<br/>1=Include deleted records <br/> usefull only if _DBF_Conversion_Support_>2 |
|
||||||
|
|
||||||
|
Setting **per file** could only be used via this configuration file.
|
||||||
For defaults, see [Configuration file](#configuration-file).
|
For defaults, see [Configuration file](#configuration-file).
|
||||||
|
|
||||||
## FoxBin2Prg Internals
|
## FoxBin2Prg Internals
|
||||||
@@ -674,9 +718,12 @@ because anyway you will generate them later from their _Text_ files._
|
|||||||
For options on integrating FoxBin2Prg with SCM tools, look at this topic:
|
For options on integrating FoxBin2Prg with SCM tools, look at this topic:
|
||||||
**> [FoxBin2Prg and use with SCM tools](./FoxBin2Prg_SCM.md)**
|
**> [FoxBin2Prg and use with SCM tools](./FoxBin2Prg_SCM.md)**
|
||||||
|
|
||||||
|
## How to use with _git_
|
||||||
|
See [FoxBin2Prg and use with git](./FoxBin2Prg_git.md)
|
||||||
|
|
||||||
----
|
----
|
||||||

|

|
||||||
This project is part of [VFPX](https://vfpx.github.io/).
|
This project is part of [VFPX](https://vfpx.github.io/).
|
||||||
|
|
||||||
----
|
----
|
||||||
Last changed: _2021/03/04_ 
|
Last changed: _2021/03/20_ 
|
||||||
@@ -56,6 +56,9 @@ Some settings will overwrite configuration. Using an object as cCFG_File will ov
|
|||||||
| | * | If _cInputFile_ is a project (pj[x2]) all files of the project, **including** the pjx, will be processed. The extension defines direction of operation. |
|
| | * | If _cInputFile_ is a project (pj[x2]) all files of the project, **including** the pjx, will be processed. The extension defines direction of operation. |
|
||||||
| | \*\- | If _cInputFile_ is a project (pj[x2]) all files of the project, **excluding** the pjx, will be processed. The extension defines direction of operation. |
|
| | \*\- | If _cInputFile_ is a project (pj[x2]) all files of the project, **excluding** the pjx, will be processed. The extension defines direction of operation. |
|
||||||
| | d, D, K, B, M, R, V | SCCAPI (SCCTEXT.PRG) compatibility mode, query the conversion support for the file type specified <br /> Types: d=DBC, D=DBF, K=Form, B=Label, M=Menu, R=Report, V=Class |
|
| | d, D, K, B, M, R, V | SCCAPI (SCCTEXT.PRG) compatibility mode, query the conversion support for the file type specified <br /> Types: d=DBC, D=DBF, K=Form, B=Label, M=Menu, R=Report, V=Class |
|
||||||
|
| | -C | Create configuration file \<cInputFile\> or, if first parameter is empty, FoxBin2Prg._cfg in default folder. With recent values. |
|
||||||
|
| | -c | Create configuration file template \<cInputFile\> or, if first parameter is empty, FoxBin2Prg._cfg in default folder. With inactive default values. |
|
||||||
|
| | -t | Create per-table configuration file template <cInputFile> or, if first parameter is empty and a table open, \<tablename\>._cfg in table folder. With inactive default values. |
|
||||||
| cTextName | Text filename. | Only for SCCAPI (SCCTEXT.PRG) compatibility mode. File to use. |
|
| cTextName | Text filename. | Only for SCCAPI (SCCTEXT.PRG) compatibility mode. File to use. |
|
||||||
| lGenText | .T., .F. | Only for SCCAPI (SCCTEXT.PRG) compatibility mode. .T.=Generates Text, .F.=Generates Binary. <br/> **Note:** _cType_ have predominance over _lGenText_ |
|
| lGenText | .T., .F. | Only for SCCAPI (SCCTEXT.PRG) compatibility mode. .T.=Generates Text, .F.=Generates Binary. <br/> **Note:** _cType_ have predominance over _lGenText_ |
|
||||||
| cDontShowErrors | _0_, 1 | '1' for NOT showing errors in MESSAGEBOX |
|
| cDontShowErrors | _0_, 1 | '1' for NOT showing errors in MESSAGEBOX |
|
||||||
@@ -90,6 +93,7 @@ The _BIN2PRG, PRG2BIN, INTERACTIVE, SHOWMSG_ cTypes might be mixed freely like:
|
|||||||
|
|
||||||
#### Note
|
#### Note
|
||||||
- The swap of _cInputFile_ and _cType_ is not possible here.
|
- The swap of _cInputFile_ and _cType_ is not possible here.
|
||||||
|
- If cType is -cCt, then only the first both parameters are allowed.
|
||||||
- Setting _cInputFile_ and _cType_ appropriate, info screen and generation of configuration templates is possible too. See [command line](./FoxBin2Prg_Run.md#usage_1)
|
- Setting _cInputFile_ and _cType_ appropriate, info screen and generation of configuration templates is possible too. See [command line](./FoxBin2Prg_Run.md#usage_1)
|
||||||
- While possibe, the SCCAPI (SCCTEXT.PRG) compatibility mode is more an idea of the [command line](./FoxBin2Prg_Run.md).
|
- While possibe, the SCCAPI (SCCTEXT.PRG) compatibility mode is more an idea of the [command line](./FoxBin2Prg_Run.md).
|
||||||
|
|
||||||
@@ -101,4 +105,4 @@ Return value is 0=OK, 1=Error.
|
|||||||
This project is part of [VFPX](https://vfpx.github.io/).
|
This project is part of [VFPX](https://vfpx.github.io/).
|
||||||
|
|
||||||
----
|
----
|
||||||
Last changed: _2021/03/09_ 
|
Last changed: _2021/03/18_ 
|
||||||
@@ -107,14 +107,16 @@ on which fixed parameters must be in the shortcut.
|
|||||||
The filename is an external variable parameter received when SendingTo FoxBin2Prg with right-click on File Manager.
|
The filename is an external variable parameter received when SendingTo FoxBin2Prg with right-click on File Manager.
|
||||||
|
|
||||||
### Usage 2
|
### Usage 2
|
||||||
`FoxBin2Prg.EXE [-c cOutputFile] [-C cOutputFile] [-t cOutputFile]`
|
`FoxBin2Prg.EXE [-cCt [cOutputFile]]`
|
||||||
|
|
||||||
| Parameter | Description |
|
| Parameter | Description |
|
||||||
| ----- | ----- |
|
| ----- | ----- |
|
||||||
| none | Call Info screen |
|
| none | Call Info screen |
|
||||||
| -c | creates a template config-file _cOutputFile_ ( like FOXBIN2PRG.CFG ) |
|
| -c | creates a template config-file _cOutputFile_ ( like FOXBIN2PRG.CFG ) |
|
||||||
| -C | creates a config-file _cOutputFile_ ( like FOXBIN2PRG.CFG ) with the recent options used on the path of cOutputFile |
|
| -C | creates a config-file _cOutputFile_ ( like FOXBIN2PRG.CFG ) with the recent options used on the path of cOutputFile |
|
||||||
|
| | If cOutputFile is empty, a file FOXBIN2PRG._CFG will be created in default foder. |
|
||||||
| -t | creates a template table-config-file _cOutputFile_ ( like _TableName_.dbf.cfg ) |
|
| -t | creates a template table-config-file _cOutputFile_ ( like _TableName_.dbf.cfg ) |
|
||||||
|
| | If cOutputFile is empty and a table is open is workarea, a file \<tablename\>._CFG will be created in table foder. |
|
||||||
|
|
||||||
## Return values
|
## Return values
|
||||||
Return value via _ErrorLevel_ is 0=OK, 1=Error.
|
Return value via _ErrorLevel_ is 0=OK, 1=Error.
|
||||||
@@ -163,4 +165,4 @@ FoxBin2Prg.lnk <path>\foxbin2prg.exe "INTERACTIVE-SHOWMSG"
|
|||||||
This project is part of [VFPX](https://vfpx.github.io/).
|
This project is part of [VFPX](https://vfpx.github.io/).
|
||||||
|
|
||||||
----
|
----
|
||||||
Last changed: _2021/03/09_ 
|
Last changed: _2021/03/18_ 
|
||||||
@@ -43,6 +43,7 @@ generating bidirectional PRG-Style versions that allow recreating the original b
|
|||||||
- Out of the _Text_ versions you can **generate the original binaries**, so it is useful as backup
|
- Out of the _Text_ versions you can **generate the original binaries**, so it is useful as backup
|
||||||
- The extensions are configurable if you create a FOXBIN2PRG.CFG file
|
- The extensions are configurable if you create a FOXBIN2PRG.CFG file
|
||||||
- Inheritance of CFG configuration files between directories
|
- Inheritance of CFG configuration files between directories
|
||||||
|
- Special configuration per table, allowing additional non structural index files, sorting and ranges of records to include
|
||||||
- Methods and properties of _Text_ version are alphabetically sorted for easy comparison
|
- Methods and properties of _Text_ version are alphabetically sorted for easy comparison
|
||||||
- Can set _UseClassPerFile_ setting to create individual files by class
|
- Can set _UseClassPerFile_ setting to create individual files by class
|
||||||
- Can set _UseFilesPerDBC_ setting to create individual files by DBC member
|
- Can set _UseFilesPerDBC_ setting to create individual files by DBC member
|
||||||
@@ -84,4 +85,4 @@ FoxBin2Prg can be used in tree ways:
|
|||||||
This project is part of [VFPX](https://vfpx.github.io/).
|
This project is part of [VFPX](https://vfpx.github.io/).
|
||||||
|
|
||||||
----
|
----
|
||||||
Last changed: _2021/03/03_ 
|
Last changed: _2021/03/18_ 
|
||||||
|
Before Width: | Height: | Size: 940 B After Width: | Height: | Size: 940 B |
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.3 KiB |
|
Before Width: | Height: | Size: 46 KiB After Width: | Height: | Size: 46 KiB |
|
Before Width: | Height: | Size: 38 KiB After Width: | Height: | Size: 38 KiB |
|
Before Width: | Height: | Size: 940 B After Width: | Height: | Size: 940 B |
|
Before Width: | Height: | Size: 940 B After Width: | Height: | Size: 940 B |
|
Before Width: | Height: | Size: 6.2 KiB After Width: | Height: | Size: 6.2 KiB |
|
Before Width: | Height: | Size: 5.6 KiB After Width: | Height: | Size: 5.6 KiB |
|
Before Width: | Height: | Size: 519 B After Width: | Height: | Size: 519 B |
@@ -1,58 +1,33 @@
|
|||||||
*################################################################################################################
|
*################################################################################################################
|
||||||
*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.59
|
*Version: v1.19.60
|
||||||
*****************************************************************************************************************
|
*****************************************************************************************************************
|
||||||
|
|
||||||
*extension: tx2=newext && Specify extensions to use. Default FoxBin2Prg extensions ends in '2' (see at the bottom)
|
*-- Settings for internal work, not processing
|
||||||
|
*Language: (auto) && Language of shown messages and LOGs. EN=English, FR=French, ES=Espa<70>ol, DE=German, Not defined = AUTOMATIC [DEFAULT]
|
||||||
*ShowProgressbar: 1 && 0=Don't show, 1=Allways show, 2= Show only for multi-file processing
|
*ShowProgressbar: 1 && 0=Don't show, 1=Allways show, 2= Show only for multi-file processing
|
||||||
*DontShowErrors: 0 && Show message errors by default
|
*DontShowErrors: 0 && Show message errors by default
|
||||||
*NoTimestamps: 1 && Clear timestamps by default for minimize differences
|
|
||||||
*Debug: 0 && Don't Activate individual <file>.Log by default
|
|
||||||
*BodyDevInfo: 0 && [0=Don't keep DevInfo for body pjx records], 1=Keep DevInfo
|
|
||||||
*ExtraBackupLevels: 1 && By default 1 BAK is created. With this you can make more .N.BAK, or none
|
*ExtraBackupLevels: 1 && By default 1 BAK is created. With this you can make more .N.BAK, or none
|
||||||
*ClearUniqueID: 1 && 0=Keep UniqueID in text files, 1=Clear Unique ID. Useful for Diff and Merge
|
*Debug: 0 && Don't Activate individual <file>.Log by default
|
||||||
*ClearDBFLastUpdate: 1 && 0=Keep DBF LastUpdate, 1=Clear DBF LastUpdate. Useful for Diff.
|
*BackgroundImage: <cFile> && Backgroundimage for process form. Empty for empty Background. File not found uses default.
|
||||||
*OptimizeByFilestamp: 0 && 1=Optimize file regeneration depending on file timestamp. Dangerous while working with branches!
|
|
||||||
*RemoveNullCharsFromCode: 1 && 1=Drop NULL chars from source code
|
|
||||||
*RemoveZOrderSetFromProps: 0 && 0=Do not remove ZOrderSet property from object, 1=Remove ZOrderSet property from object
|
|
||||||
*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:
|
|
||||||
|
*-- Conversion operation by type
|
||||||
*PJX_Conversion_Support: 2 && 0=No support, 1=Generate TXT only (Diff), 2=Generate TXT and BIN (Merge)
|
*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)
|
*VCX_Conversion_Support: 2 && 0=No support, 1=Generate TXT only (Diff), 2=Generate TXT and BIN (Merge)
|
||||||
*SCX_Conversion_Support: 2 && 0=No support, 1=Generate TXT only (Diff), 2=Generate TXT and BIN (Merge)
|
*SCX_Conversion_Support: 2 && 0=No support, 1=Generate TXT only (Diff), 2=Generate TXT and BIN (Merge)
|
||||||
*FRX_Conversion_Support: 2 && 0=No support, 1=Generate TXT only (Diff), 2=Generate TXT and BIN (Merge)
|
*FRX_Conversion_Support: 2 && 0=No support, 1=Generate TXT only (Diff), 2=Generate TXT and BIN (Merge)
|
||||||
*LBX_Conversion_Support: 2 && 0=No support, 1=Generate TXT only (Diff), 2=Generate TXT and BIN (Merge)
|
*LBX_Conversion_Support: 2 && 0=No support, 1=Generate TXT only (Diff), 2=Generate TXT and BIN (Merge)
|
||||||
*MNX_Conversion_Support: 2 && 0=No support, 1=Generate TXT only (Diff), 2=Generate TXT and BIN (Merge)
|
*MNX_Conversion_Support: 2 && 0=No support, 1=Generate TXT only (Diff), 2=Generate TXT and BIN (Merge)
|
||||||
*FKY_Conversion_Support: 1 && 0=No support, 1=Generate TXT only (Diff)
|
|
||||||
*MEM_Conversion_Support: 1 && 0=No support, 1=Generate TXT only (Diff)
|
|
||||||
*DBC_Conversion_Support: 2 && 0=No support, 1=Generate TXT only (Diff), 2=Generate TXT and BIN (Merge)
|
*DBC_Conversion_Support: 2 && 0=No support, 1=Generate TXT only (Diff), 2=Generate TXT and BIN (Merge)
|
||||||
*DBF_Conversion_Support: 1 && 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: 1 && 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_Included: * && If DBF_Conversion_Support:4, you can specify multiple filemasks: www,fb2p_free.dbf
|
*FKY_Conversion_Support: 1 && 0=No support, 1=Generate TXT only (Diff)
|
||||||
*DBF_Conversion_Excluded: && If DBF_Conversion_Support:4, you can specify multiple filemasks: www,fb2p_free.dbf
|
*MEM_Conversion_Support: 1 && 0=No support, 1=Generate TXT only (Diff)
|
||||||
|
|
||||||
*----------------------------------------------------------------------------------------------------------------
|
*----------------------------------------------------------------------------------------------------------------
|
||||||
*-- 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.
|
|
||||||
* && Options below will only read if OldFilesPerDBC is set 1 before!
|
|
||||||
* && If OldFilesPerDBC is set 0 later, alle setting will be lost
|
|
||||||
*UseFilesPerDBC: 0 && 0=One database dc2 file, 1=Multiple file.*.*.dc2 files
|
|
||||||
* && 0 creates only a file.dc2 with all DBC (file) data
|
|
||||||
* && 1 creates a file.dc2 with DBC properties
|
|
||||||
* && and additional DBC files per DBC item (stored-proc, table, ..)
|
|
||||||
* && Note: recration only if RedirectFilePerDBCToMain is 1
|
|
||||||
*RedirectFilePerDBCToMain 0 && 0=Don't redirect to file.dc2, 1=Redirect to file.tx2 when selecting file.item.*.dc2
|
|
||||||
*ItemPerDBCCheck: 0 && 0=Don't check file.item.*.dc2 inclusion, 1=Check file.item.*.dc2 inclusion
|
|
||||||
*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
|
|
||||||
|
|
||||||
*----------------------------------------------------------------------------------------------------------------
|
*Setting for container files (not pjx)
|
||||||
*-- CLASS and FORM options
|
*-- CLASS and FORM options (tx2 is to read as vc2 or sc2, VCX might be SCX)
|
||||||
*- Class per file options (UseClassPerFile: 1)
|
*- 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
|
*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
|
*RedirectClassPerFileToMain: 0 && 0=Don't redirect to file.tx2, 1=Redirect to file.tx2 when selecting file.class.tx2
|
||||||
@@ -66,8 +41,46 @@
|
|||||||
*ClassPerFileCheck: 0 && 0=Don't check file.class.tx2 inclusion, 1=Check file.class.tx2 inclusion
|
*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
|
* && Only used if import file is in file[.baseclass].class.tx2 syntax
|
||||||
* && Ignored for RedirectClassType: 2
|
* && Ignored for RedirectClassType: 2
|
||||||
|
*- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
|
||||||
|
*-- 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.
|
||||||
|
* && Options below will only read if OldFilesPerDBC is set 1 before!
|
||||||
|
* && If OldFilesPerDBC is set 0 later, alle setting will be lost
|
||||||
|
*UseFilesPerDBC: 0 && 0=One database dc2 file, 1=Multiple file.*.*.dc2 files
|
||||||
|
* && 0 creates only a file.dc2 with all DBC (file) data
|
||||||
|
* && 1 creates a file.dc2 with DBC properties
|
||||||
|
* && and additional DBC files per DBC item (stored-proc, table, ..)
|
||||||
|
* && Note: recration only if RedirectFilePerDBCToMain is 1
|
||||||
|
*RedirectFilePerDBCToMain 0 && 0=Don't redirect to file.dc2, 1=Redirect to file.tx2 when selecting file.item.*.dc2
|
||||||
|
*ItemPerDBCCheck: 0 && 0=Don't check file.item.*.dc2 inclusion, 1=Check file.item.*.dc2 inclusion
|
||||||
*----------------------------------------------------------------------------------------------------------------
|
*----------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
*-- General files
|
||||||
|
*NoTimestamps: 1 && Clear timestamps of several file types by default for minimize text-file differences
|
||||||
|
*ClearUniqueID: 1 && 0=Keep UniqueID in text files, 1=Clear Unique ID. Useful for Diff and Merge
|
||||||
|
*OptimizeByFilestamp: 0 && 1=Optimize file regeneration depending on file timestamp. Dangerous while working with branches!
|
||||||
|
*RemoveNullCharsFromCode: 1 && 1=Drop NULL chars from source code
|
||||||
|
*RemoveZOrderSetFromProps: 0 && 0=Do not remove ZOrderSet property from object, 1=Remove ZOrderSet property from object
|
||||||
|
*PRG_Compat_Level: 0 && [0=Legacy], 1=Use HELPSTRING as Class Procedure comment
|
||||||
|
*----------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
*-- PJX special
|
||||||
|
*BodyDevInfo: 0 && [0=Don't keep DevInfo for body pjx records], 1=Keep DevInfo
|
||||||
|
*----------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
*-- DBF special
|
||||||
|
*ClearDBFLastUpdate: 1 && 0=Keep DBF LastUpdate, 1=Clear DBF LastUpdate. Useful for Diff.
|
||||||
|
*ExcludeDBFAutoincNextval: 0 && [0=Do not exclude this value from db2], 1=Exclude this value from db2
|
||||||
|
*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
|
||||||
|
*DBF_BinChar_Base64: 1 && 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
|
||||||
|
*----------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
*-- Text file extensions
|
||||||
|
*extension: tx2=newext && Specify extensions to use. Default FoxBin2Prg extensions ends in '2' (see at the bottom)
|
||||||
*-- Example configuration for SourceSafe compatibility:
|
*-- Example configuration for SourceSafe compatibility:
|
||||||
*extension: pj2=pja && Text file to PJX
|
*extension: pj2=pja && Text file to PJX
|
||||||
*extension: vc2=vca && Text file to VCX
|
*extension: vc2=vca && Text file to VCX
|
||||||
@@ -80,3 +93,4 @@
|
|||||||
*-- Additional extensions
|
*-- Additional extensions
|
||||||
*extension: fk2=fkx && Text file to FKY
|
*extension: fk2=fkx && Text file to FKY
|
||||||
*extension: me2=fkx && Text file to MEM
|
*extension: me2=fkx && Text file to MEM
|
||||||
|
*
|
||||||
12
foxbin2prg.dbf.cfg.txt
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
*################################################################################################################
|
||||||
|
*-- Individual DBF configuration file (syntax: filename.dbf.cfg) Defaults see FoxBin2prg.cfg
|
||||||
|
*Version: v1.19.60
|
||||||
|
*****************************************************************************************************************
|
||||||
|
|
||||||
|
*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_Order: <c_Expression> && Field expresion. ie: name+str(age,3)
|
||||||
|
*DBF_Conversion_Condition: <c_Expression> && Logical expression. ie: age > 10 AND NOT DELETED()
|
||||||
|
*DBF_IndexList: <cFile_List> && comma delimited list of additonal non structural index files, cdx or idx
|
||||||
|
*DBF_BinChar_Base64: <0,1> && For character type fields, if NoCPTrans 0=do not transform, 1=use Base64 transform
|
||||||
|
*DBF_IncludeDeleted: <0,1> && 0=Do not include deleted records, 1=Include deleted records
|
||||||
|
*
|
||||||
BIN
foxbin2prg.exe
@@ -26,14 +26,14 @@ _LegalTrademark = "MIT License"
|
|||||||
_ProductName = "FOXBIN2PRG"
|
_ProductName = "FOXBIN2PRG"
|
||||||
_MajorVer = "1"
|
_MajorVer = "1"
|
||||||
_MinorVer = "19"
|
_MinorVer = "19"
|
||||||
_Revision = "51"
|
_Revision = "60"
|
||||||
_LanguageID = "1034"
|
_LanguageID = "1034"
|
||||||
_AutoIncrement = "0"
|
_AutoIncrement = "0"
|
||||||
*</DevInfo>
|
*</DevInfo>
|
||||||
|
|
||||||
|
|
||||||
*<BuildProj>
|
*<BuildProj>
|
||||||
*<.HomeDir = 'c:\desa\foxbin2prg' />
|
*<.HomeDir = 'e:\se\vfpx\foxbin2prg' />
|
||||||
|
|
||||||
FOR EACH loProject IN _VFP.Projects FOXOBJECT
|
FOR EACH loProject IN _VFP.Projects FOXOBJECT
|
||||||
loProject.Close()
|
loProject.Close()
|
||||||
|
|||||||