diff --git a/Create_FoxBin2Prg.cfg b/Create_FoxBin2Prg.cfg
index 4e8b3cb..c7daeac 100644
--- a/Create_FoxBin2Prg.cfg
+++ b/Create_FoxBin2Prg.cfg
@@ -32,7 +32,7 @@ HomeDir: 1 && Home Directory in PJX
* && 0 don't save HomeDir in PJ2
* && 1 save HomeDir in PJ2
*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-*-- Settings for config file via parameter only
+
*-- Settings for config file via parameter only
InhibitInheritance: 3 && 0=Allow scanning "regular" config files (file via parameter is just additional default)
* && 1=Only read tree from root of the file given by parameter, not FoxBin2Prg default
diff --git a/FOXBIN2PRG.DBF.CFG.TXT b/FOXBIN2PRG.DBF.CFG.TXT
index 9de1450..86facd8 100644
--- a/FOXBIN2PRG.DBF.CFG.TXT
+++ b/FOXBIN2PRG.DBF.CFG.TXT
@@ -1,6 +1,6 @@
*################################################################################################################
*-- Individual DBF configuration file (syntax: filename.dbf.cfg) Defaults see FoxBin2prg.cfg
-*Version: v1.21.01
+*Version: v1.21.02
*****************************************************************************************************************
*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)
diff --git a/README.md b/README.md
index 8b47b0d..d58c81e 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,5 @@
# FoxBin2Prg
-## Version 1.21.01
+## Version 1.21.02
**Binary/Text Converting program for Microsoft Visual FoxPro**
## Lutz Scheffler
@@ -175,4 +175,4 @@ If you like to see Fernando's blog, or value his work:
----
-Last changed: _2023/12/05_ 
+Last changed: _2024/01/03_ 
diff --git a/TESTS/DATOS_READONLY/f_checkbox.dataenvironment.sct b/TESTS/DATOS_READONLY/f_checkbox.dataenvironment.sct
new file mode 100644
index 0000000..bec4fd4
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_checkbox.dataenvironment.sct differ
diff --git a/TESTS/DATOS_READONLY/f_checkbox.dataenvironment.scx b/TESTS/DATOS_READONLY/f_checkbox.dataenvironment.scx
new file mode 100644
index 0000000..57c4513
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_checkbox.dataenvironment.scx differ
diff --git a/TESTS/DATOS_READONLY/f_checkbox.f_base1.sct b/TESTS/DATOS_READONLY/f_checkbox.f_base1.sct
new file mode 100644
index 0000000..aa65f0e
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_checkbox.f_base1.sct differ
diff --git a/TESTS/DATOS_READONLY/f_checkbox.f_base1.scx b/TESTS/DATOS_READONLY/f_checkbox.f_base1.scx
new file mode 100644
index 0000000..017d7e4
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_checkbox.f_base1.scx differ
diff --git a/TESTS/DATOS_READONLY/f_combobox.dataenvironment.sct b/TESTS/DATOS_READONLY/f_combobox.dataenvironment.sct
new file mode 100644
index 0000000..bec4fd4
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_combobox.dataenvironment.sct differ
diff --git a/TESTS/DATOS_READONLY/f_combobox.dataenvironment.scx b/TESTS/DATOS_READONLY/f_combobox.dataenvironment.scx
new file mode 100644
index 0000000..cdaab0c
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_combobox.dataenvironment.scx differ
diff --git a/TESTS/DATOS_READONLY/f_combobox.f_base1.sct b/TESTS/DATOS_READONLY/f_combobox.f_base1.sct
new file mode 100644
index 0000000..c96abf3
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_combobox.f_base1.sct differ
diff --git a/TESTS/DATOS_READONLY/f_combobox.f_base1.scx b/TESTS/DATOS_READONLY/f_combobox.f_base1.scx
new file mode 100644
index 0000000..cd4510c
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_combobox.f_base1.scx differ
diff --git a/TESTS/DATOS_READONLY/f_commandgroup.dataenvironment.sct b/TESTS/DATOS_READONLY/f_commandgroup.dataenvironment.sct
new file mode 100644
index 0000000..bec4fd4
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_commandgroup.dataenvironment.sct differ
diff --git a/TESTS/DATOS_READONLY/f_commandgroup.dataenvironment.scx b/TESTS/DATOS_READONLY/f_commandgroup.dataenvironment.scx
new file mode 100644
index 0000000..445d654
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_commandgroup.dataenvironment.scx differ
diff --git a/TESTS/DATOS_READONLY/f_commandgroup.f_base1.sct b/TESTS/DATOS_READONLY/f_commandgroup.f_base1.sct
new file mode 100644
index 0000000..e66406c
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_commandgroup.f_base1.sct differ
diff --git a/TESTS/DATOS_READONLY/f_commandgroup.f_base1.scx b/TESTS/DATOS_READONLY/f_commandgroup.f_base1.scx
new file mode 100644
index 0000000..a561b24
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_commandgroup.f_base1.scx differ
diff --git a/TESTS/DATOS_READONLY/f_containers.dataenvironment.sct b/TESTS/DATOS_READONLY/f_containers.dataenvironment.sct
new file mode 100644
index 0000000..bec4fd4
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_containers.dataenvironment.sct differ
diff --git a/TESTS/DATOS_READONLY/f_containers.dataenvironment.scx b/TESTS/DATOS_READONLY/f_containers.dataenvironment.scx
new file mode 100644
index 0000000..13d54cf
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_containers.dataenvironment.scx differ
diff --git a/TESTS/DATOS_READONLY/f_containers.f_base1.sct b/TESTS/DATOS_READONLY/f_containers.f_base1.sct
new file mode 100644
index 0000000..e6f1623
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_containers.f_base1.sct differ
diff --git a/TESTS/DATOS_READONLY/f_containers.f_base1.scx b/TESTS/DATOS_READONLY/f_containers.f_base1.scx
new file mode 100644
index 0000000..d47e4be
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_containers.f_base1.scx differ
diff --git a/TESTS/DATOS_READONLY/f_form_aa.dataenvironment.sct b/TESTS/DATOS_READONLY/f_form_aa.dataenvironment.sct
new file mode 100644
index 0000000..5279a87
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_form_aa.dataenvironment.sct differ
diff --git a/TESTS/DATOS_READONLY/f_form_aa.dataenvironment.scx b/TESTS/DATOS_READONLY/f_form_aa.dataenvironment.scx
new file mode 100644
index 0000000..1e6cbf3
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_form_aa.dataenvironment.scx differ
diff --git a/TESTS/DATOS_READONLY/f_form_aa.f_form_aa.sct b/TESTS/DATOS_READONLY/f_form_aa.f_form_aa.sct
new file mode 100644
index 0000000..845910b
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_form_aa.f_form_aa.sct differ
diff --git a/TESTS/DATOS_READONLY/f_form_aa.f_form_aa.scx b/TESTS/DATOS_READONLY/f_form_aa.f_form_aa.scx
new file mode 100644
index 0000000..8599e42
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_form_aa.f_form_aa.scx differ
diff --git a/TESTS/DATOS_READONLY/f_form_aa2.dataenvironment.sct b/TESTS/DATOS_READONLY/f_form_aa2.dataenvironment.sct
new file mode 100644
index 0000000..5279a87
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_form_aa2.dataenvironment.sct differ
diff --git a/TESTS/DATOS_READONLY/f_form_aa2.dataenvironment.scx b/TESTS/DATOS_READONLY/f_form_aa2.dataenvironment.scx
new file mode 100644
index 0000000..9658918
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_form_aa2.dataenvironment.scx differ
diff --git a/TESTS/DATOS_READONLY/f_form_aa2.f_form_aa1.sct b/TESTS/DATOS_READONLY/f_form_aa2.f_form_aa1.sct
new file mode 100644
index 0000000..af1d6dc
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_form_aa2.f_form_aa1.sct differ
diff --git a/TESTS/DATOS_READONLY/f_form_aa2.f_form_aa1.scx b/TESTS/DATOS_READONLY/f_form_aa2.f_form_aa1.scx
new file mode 100644
index 0000000..ee56249
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_form_aa2.f_form_aa1.scx differ
diff --git a/TESTS/DATOS_READONLY/f_form_controles.dataenvironment.sct b/TESTS/DATOS_READONLY/f_form_controles.dataenvironment.sct
new file mode 100644
index 0000000..95b4f5d
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_form_controles.dataenvironment.sct differ
diff --git a/TESTS/DATOS_READONLY/f_form_controles.dataenvironment.scx b/TESTS/DATOS_READONLY/f_form_controles.dataenvironment.scx
new file mode 100644
index 0000000..1270684
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_form_controles.dataenvironment.scx differ
diff --git a/TESTS/DATOS_READONLY/f_form_controles.f_base1.sct b/TESTS/DATOS_READONLY/f_form_controles.f_base1.sct
new file mode 100644
index 0000000..d230c4b
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_form_controles.f_base1.sct differ
diff --git a/TESTS/DATOS_READONLY/f_form_controles.f_base1.scx b/TESTS/DATOS_READONLY/f_form_controles.f_base1.scx
new file mode 100644
index 0000000..3665e37
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_form_controles.f_base1.scx differ
diff --git a/TESTS/DATOS_READONLY/f_formset.dataenvironment.sct b/TESTS/DATOS_READONLY/f_formset.dataenvironment.sct
new file mode 100644
index 0000000..6324662
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_formset.dataenvironment.sct differ
diff --git a/TESTS/DATOS_READONLY/f_formset.dataenvironment.scx b/TESTS/DATOS_READONLY/f_formset.dataenvironment.scx
new file mode 100644
index 0000000..fb3a8ad
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_formset.dataenvironment.scx differ
diff --git a/TESTS/DATOS_READONLY/f_formset.formset.sct b/TESTS/DATOS_READONLY/f_formset.formset.sct
new file mode 100644
index 0000000..b712de5
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_formset.formset.sct differ
diff --git a/TESTS/DATOS_READONLY/f_formset.formset.scx b/TESTS/DATOS_READONLY/f_formset.formset.scx
new file mode 100644
index 0000000..70013b4
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_formset.formset.scx differ
diff --git a/TESTS/DATOS_READONLY/f_listbox.dataenvironment.sct b/TESTS/DATOS_READONLY/f_listbox.dataenvironment.sct
new file mode 100644
index 0000000..bec4fd4
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_listbox.dataenvironment.sct differ
diff --git a/TESTS/DATOS_READONLY/f_listbox.dataenvironment.scx b/TESTS/DATOS_READONLY/f_listbox.dataenvironment.scx
new file mode 100644
index 0000000..d7bc0ab
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_listbox.dataenvironment.scx differ
diff --git a/TESTS/DATOS_READONLY/f_listbox.f_listbox_test.sct b/TESTS/DATOS_READONLY/f_listbox.f_listbox_test.sct
new file mode 100644
index 0000000..6838be1
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_listbox.f_listbox_test.sct differ
diff --git a/TESTS/DATOS_READONLY/f_listbox.f_listbox_test.scx b/TESTS/DATOS_READONLY/f_listbox.f_listbox_test.scx
new file mode 100644
index 0000000..9b04ce2
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_listbox.f_listbox_test.scx differ
diff --git a/TESTS/DATOS_READONLY/f_nullchars_incode.dataenvironment.sct b/TESTS/DATOS_READONLY/f_nullchars_incode.dataenvironment.sct
new file mode 100644
index 0000000..bec4fd4
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_nullchars_incode.dataenvironment.sct differ
diff --git a/TESTS/DATOS_READONLY/f_nullchars_incode.dataenvironment.scx b/TESTS/DATOS_READONLY/f_nullchars_incode.dataenvironment.scx
new file mode 100644
index 0000000..3e32482
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_nullchars_incode.dataenvironment.scx differ
diff --git a/TESTS/DATOS_READONLY/f_nullchars_incode.form1.sct b/TESTS/DATOS_READONLY/f_nullchars_incode.form1.sct
new file mode 100644
index 0000000..d6ab62a
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_nullchars_incode.form1.sct differ
diff --git a/TESTS/DATOS_READONLY/f_nullchars_incode.form1.scx b/TESTS/DATOS_READONLY/f_nullchars_incode.form1.scx
new file mode 100644
index 0000000..5756251
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_nullchars_incode.form1.scx differ
diff --git a/TESTS/DATOS_READONLY/f_optiongroup.dataenvironment.sct b/TESTS/DATOS_READONLY/f_optiongroup.dataenvironment.sct
new file mode 100644
index 0000000..bec4fd4
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_optiongroup.dataenvironment.sct differ
diff --git a/TESTS/DATOS_READONLY/f_optiongroup.dataenvironment.scx b/TESTS/DATOS_READONLY/f_optiongroup.dataenvironment.scx
new file mode 100644
index 0000000..1ff6659
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_optiongroup.dataenvironment.scx differ
diff --git a/TESTS/DATOS_READONLY/f_optiongroup.f_optiongroup_test.sct b/TESTS/DATOS_READONLY/f_optiongroup.f_optiongroup_test.sct
new file mode 100644
index 0000000..59a5794
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_optiongroup.f_optiongroup_test.sct differ
diff --git a/TESTS/DATOS_READONLY/f_optiongroup.f_optiongroup_test.scx b/TESTS/DATOS_READONLY/f_optiongroup.f_optiongroup_test.scx
new file mode 100644
index 0000000..7e25294
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_optiongroup.f_optiongroup_test.scx differ
diff --git a/TESTS/DATOS_READONLY/f_optiongroup2.dataenvironment.sct b/TESTS/DATOS_READONLY/f_optiongroup2.dataenvironment.sct
new file mode 100644
index 0000000..bec4fd4
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_optiongroup2.dataenvironment.sct differ
diff --git a/TESTS/DATOS_READONLY/f_optiongroup2.dataenvironment.scx b/TESTS/DATOS_READONLY/f_optiongroup2.dataenvironment.scx
new file mode 100644
index 0000000..3e8c326
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_optiongroup2.dataenvironment.scx differ
diff --git a/TESTS/DATOS_READONLY/f_optiongroup2.f_optiongroup1.sct b/TESTS/DATOS_READONLY/f_optiongroup2.f_optiongroup1.sct
new file mode 100644
index 0000000..b0fb054
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_optiongroup2.f_optiongroup1.sct differ
diff --git a/TESTS/DATOS_READONLY/f_optiongroup2.f_optiongroup1.scx b/TESTS/DATOS_READONLY/f_optiongroup2.f_optiongroup1.scx
new file mode 100644
index 0000000..9732d1c
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_optiongroup2.f_optiongroup1.scx differ
diff --git a/TESTS/DATOS_READONLY/f_test.dataenvironment.sct b/TESTS/DATOS_READONLY/f_test.dataenvironment.sct
new file mode 100644
index 0000000..95b4f5d
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_test.dataenvironment.sct differ
diff --git a/TESTS/DATOS_READONLY/f_test.dataenvironment.scx b/TESTS/DATOS_READONLY/f_test.dataenvironment.scx
new file mode 100644
index 0000000..f811e23
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_test.dataenvironment.scx differ
diff --git a/TESTS/DATOS_READONLY/f_test.f_form_controles1.sct b/TESTS/DATOS_READONLY/f_test.f_form_controles1.sct
new file mode 100644
index 0000000..2a3e64a
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_test.f_form_controles1.sct differ
diff --git a/TESTS/DATOS_READONLY/f_test.f_form_controles1.scx b/TESTS/DATOS_READONLY/f_test.f_form_controles1.scx
new file mode 100644
index 0000000..df510b2
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_test.f_form_controles1.scx differ
diff --git a/TESTS/DATOS_READONLY/f_textbox.dataenvironment.sct b/TESTS/DATOS_READONLY/f_textbox.dataenvironment.sct
new file mode 100644
index 0000000..bec4fd4
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_textbox.dataenvironment.sct differ
diff --git a/TESTS/DATOS_READONLY/f_textbox.dataenvironment.scx b/TESTS/DATOS_READONLY/f_textbox.dataenvironment.scx
new file mode 100644
index 0000000..d2eca73
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_textbox.dataenvironment.scx differ
diff --git a/TESTS/DATOS_READONLY/f_textbox.f_textbox_test.sct b/TESTS/DATOS_READONLY/f_textbox.f_textbox_test.sct
new file mode 100644
index 0000000..fe61273
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_textbox.f_textbox_test.sct differ
diff --git a/TESTS/DATOS_READONLY/f_textbox.f_textbox_test.scx b/TESTS/DATOS_READONLY/f_textbox.f_textbox_test.scx
new file mode 100644
index 0000000..bf80433
Binary files /dev/null and b/TESTS/DATOS_READONLY/f_textbox.f_textbox_test.scx differ
diff --git a/TESTS/DATOS_READONLY/fb2p_dbc.dbc b/TESTS/DATOS_READONLY/fb2p_dbc.dbc
index 7ee3aa2..4652a41 100644
Binary files a/TESTS/DATOS_READONLY/fb2p_dbc.dbc and b/TESTS/DATOS_READONLY/fb2p_dbc.dbc differ
diff --git a/TESTS/DATOS_READONLY/fb2p_dbc.dct b/TESTS/DATOS_READONLY/fb2p_dbc.dct
index 5ff8b9d..04387b8 100644
Binary files a/TESTS/DATOS_READONLY/fb2p_dbc.dct and b/TESTS/DATOS_READONLY/fb2p_dbc.dct differ
diff --git a/TESTS/DATOS_READONLY/fb2p_frm_1.cl_form1.sct b/TESTS/DATOS_READONLY/fb2p_frm_1.cl_form1.sct
new file mode 100644
index 0000000..1a7f8ee
Binary files /dev/null and b/TESTS/DATOS_READONLY/fb2p_frm_1.cl_form1.sct differ
diff --git a/TESTS/DATOS_READONLY/fb2p_frm_1.cl_form1.scx b/TESTS/DATOS_READONLY/fb2p_frm_1.cl_form1.scx
new file mode 100644
index 0000000..0b6fd93
Binary files /dev/null and b/TESTS/DATOS_READONLY/fb2p_frm_1.cl_form1.scx differ
diff --git a/TESTS/DATOS_READONLY/fb2p_frm_1.dataenvironment.sct b/TESTS/DATOS_READONLY/fb2p_frm_1.dataenvironment.sct
new file mode 100644
index 0000000..e20f35a
Binary files /dev/null and b/TESTS/DATOS_READONLY/fb2p_frm_1.dataenvironment.sct differ
diff --git a/TESTS/DATOS_READONLY/fb2p_frm_1.dataenvironment.scx b/TESTS/DATOS_READONLY/fb2p_frm_1.dataenvironment.scx
new file mode 100644
index 0000000..ff76639
Binary files /dev/null and b/TESTS/DATOS_READONLY/fb2p_frm_1.dataenvironment.scx differ
diff --git a/TESTS/DATOS_READONLY/fb2p_frm_2.dataenvironment.sct b/TESTS/DATOS_READONLY/fb2p_frm_2.dataenvironment.sct
new file mode 100644
index 0000000..bec4fd4
Binary files /dev/null and b/TESTS/DATOS_READONLY/fb2p_frm_2.dataenvironment.sct differ
diff --git a/TESTS/DATOS_READONLY/fb2p_frm_2.dataenvironment.scx b/TESTS/DATOS_READONLY/fb2p_frm_2.dataenvironment.scx
new file mode 100644
index 0000000..c731482
Binary files /dev/null and b/TESTS/DATOS_READONLY/fb2p_frm_2.dataenvironment.scx differ
diff --git a/TESTS/DATOS_READONLY/fb2p_frm_2.form1.sct b/TESTS/DATOS_READONLY/fb2p_frm_2.form1.sct
new file mode 100644
index 0000000..960d611
Binary files /dev/null and b/TESTS/DATOS_READONLY/fb2p_frm_2.form1.sct differ
diff --git a/TESTS/DATOS_READONLY/fb2p_frm_2.form1.scx b/TESTS/DATOS_READONLY/fb2p_frm_2.form1.scx
new file mode 100644
index 0000000..90be13c
Binary files /dev/null and b/TESTS/DATOS_READONLY/fb2p_frm_2.form1.scx differ
diff --git a/TESTS/DATOS_READONLY/form1.dataenvironment.sct b/TESTS/DATOS_READONLY/form1.dataenvironment.sct
new file mode 100644
index 0000000..a0d238b
Binary files /dev/null and b/TESTS/DATOS_READONLY/form1.dataenvironment.sct differ
diff --git a/TESTS/DATOS_READONLY/form1.dataenvironment.scx b/TESTS/DATOS_READONLY/form1.dataenvironment.scx
new file mode 100644
index 0000000..19e3a9c
Binary files /dev/null and b/TESTS/DATOS_READONLY/form1.dataenvironment.scx differ
diff --git a/TESTS/DATOS_READONLY/form1.frm_form1.sct b/TESTS/DATOS_READONLY/form1.frm_form1.sct
new file mode 100644
index 0000000..dbe4c8c
Binary files /dev/null and b/TESTS/DATOS_READONLY/form1.frm_form1.sct differ
diff --git a/TESTS/DATOS_READONLY/form1.frm_form1.scx b/TESTS/DATOS_READONLY/form1.frm_form1.scx
new file mode 100644
index 0000000..45093d4
Binary files /dev/null and b/TESTS/DATOS_READONLY/form1.frm_form1.scx differ
diff --git a/TESTS/DATOS_READONLY/github_issues.vcx b/TESTS/DATOS_READONLY/github_issues.vcx
new file mode 100644
index 0000000..91b2d3d
Binary files /dev/null and b/TESTS/DATOS_READONLY/github_issues.vcx differ
diff --git a/ThorUpdater/FoxBin2Prg.zip b/ThorUpdater/FoxBin2Prg.zip
index b5eb391..e78ca13 100644
Binary files a/ThorUpdater/FoxBin2Prg.zip and b/ThorUpdater/FoxBin2Prg.zip differ
diff --git a/ThorUpdater/FoxBin2PrgVersion.txt b/ThorUpdater/FoxBin2PrgVersion.txt
index 0264993..32483b3 100644
--- a/ThorUpdater/FoxBin2PrgVersion.txt
+++ b/ThorUpdater/FoxBin2PrgVersion.txt
@@ -3,8 +3,8 @@ lparameters toUpdateObject
* Set the properties of the passed updater object.
with toUpdateObject
- .VersionNumber = '1.21.01 - 20231205'
- .AvailableVersion = 'FoxBin2PRG-1.21.01-update-20231205'
+ .VersionNumber = '1.21.02 - 20240103'
+ .AvailableVersion = 'FoxBin2PRG-1.21.02-update-20240103'
.Notes = GetNotes()
.RegisterWithThor = GetRegisterWithThor()
endwith
@@ -63,4 +63,4 @@ text to lcCommand noshow
endtext
return lcCommand
-*created by VFPX Deployment, 05.12.2023 16:03:02
\ No newline at end of file
+*created by VFPX Deployment, 03.01.2024 11:25:38
\ No newline at end of file
diff --git a/docs/ChangeLog.md b/docs/ChangeLog.md
index a7013f1..1c56a89 100644
--- a/docs/ChangeLog.md
+++ b/docs/ChangeLog.md
@@ -27,26 +27,27 @@ _**Note:** you can click on the version number for downloading this version from
| Rel.Date | Developer | Version | Details |
| - | - | - | - |
-| 2023/11/19 | LScheffler | [v1.21.01](https://github.com/lscheffler/foxbin2prg/releases/tag/v1.21.01) | **Enhancement**: Source files not longer included in Thor. The file you will found are old and will be removed with subsequent installs. (LScheffler) |
-| 2023/11/19 | LScheffler | [v1.21.01](https://github.com/lscheffler/foxbin2prg/releases/tag/v1.21.01) | **Bug Fix**: Problems regenerating databases with splited contents due to the removed Spanish characters in comment. (LScheffler) |
-| 2023/10/20 | LScheffler | [v1.21.00](https://github.com/lscheffler/foxbin2prg/releases/tag/v1.21.00) | **Bug Fix**: Problems with Spanish characters in comment. (ccantrell72) |
-| 2023/09/06 | LScheffler | [v1.20.07](https://github.com/lscheffler/foxbin2prg/releases/tag/v1.20.07) | **Enhancement**: Option to block processing of directories. If file ".FoxBin2Prg_Ignore" is existing, this directories and all subdirectries will be ignored. (Mainly set up to ignore local GoFish settings) (LScheffler) |
-| 2023/09/06 | LScheffler | [v1.20.06](https://github.com/lscheffler/foxbin2prg/releases/tag/v1.20.06) | **Bug Fix**: Problems recreating tables (LScheffler) |
-| 2023/09/03 | LScheffler | [v1.20.05](https://github.com/lscheffler/foxbin2prg/releases/tag/v1.20.05) | **Bug Fix**: Problems recreating menu files (introduced with codepage) (LScheffler) |
+| 2024/01/03 | LScheffler | [v1.21.02](https://github.com/fdbozzo/foxbin2prg/releases/tag/v1.21.01) | **Bug Fix**: Problems regenerating single classes and forms from text files in class-per-file form; #105 (LScheffler) |
+| 2023/11/19 | LScheffler | [v1.21.01](https://github.com/fdbozzo/foxbin2prg/releases/tag/v1.21.01) | **Enhancement**: Source files not longer included in Thor. The file you will found are old and will be removed with subsequent installs. (LScheffler) |
+| 2023/11/19 | LScheffler | [v1.21.01](https://github.com/fdbozzo/foxbin2prg/releases/tag/v1.21.01) | **Bug Fix**: Problems regenerating databases with splited contents due to the removed Spanish characters in comment. (LScheffler) |
+| 2023/10/20 | LScheffler | [v1.21.00](https://github.com/fdbozzo/foxbin2prg/releases/tag/v1.21.00) | **Bug Fix**: Problems with Spanish characters in comment. (ccantrell72) |
+| 2023/09/06 | LScheffler | [v1.20.07](https://github.com/fdbozzo/foxbin2prg/releases/tag/v1.20.07) | **Enhancement**: Option to block processing of directories. If file ".FoxBin2Prg_Ignore" is existing, this directories and all subdirectries will be ignored. (Mainly set up to ignore local GoFish settings) (LScheffler) |
+| 2023/09/06 | LScheffler | [v1.20.06](https://github.com/fdbozzo/foxbin2prg/releases/tag/v1.20.06) | **Bug Fix**: Problems recreating tables (LScheffler) |
+| 2023/09/03 | LScheffler | [v1.20.05](https://github.com/fdbozzo/foxbin2prg/releases/tag/v1.20.05) | **Bug Fix**: Problems recreating menu files (introduced with codepage) (LScheffler) |
| | | | **Enhancement:** Inserted options to allow splitting of SCX handling from VCX. |
-| 2023/09/01 | LScheffler | [v1.20.04](https://github.com/lscheffler/foxbin2prg/releases/tag/v1.20.04) | **Enhancement**: New option "tcDebug" for get_DirSettings method. |
+| 2023/09/01 | LScheffler | [v1.20.04](https://github.com/fdbozzo/foxbin2prg/releases/tag/v1.20.04) | **Enhancement**: New option "tcDebug" for get_DirSettings method. |
| | | | **Enhancement:** For better clearance, renamed setting AllowInheritance to InhibitInheritance. |
| | | | **Enhancement:** The debug option set via parameter has precedence over value from config file. |
| | | | **Enhancement:** For debug option set via parameter only first valid call is used. |
-| 2023/08/31 | LScheffler | [v1.20.03](https://github.com/lscheffler/foxbin2prg/releases/tag/v1.20.03) | **Enhancement**: New option "tcCFG_File" for get_DirSettings method. |
-| 2023/08/31 | LScheffler | [v1.20.02](https://github.com/lscheffler/foxbin2prg/releases/tag/v1.20.02) | New option for parameter set config file to control the use of "regular" config files enhanced |
-| 2023/08/30 | LScheffler | [v1.20.01](https://github.com/lscheffler/foxbin2prg/releases/tag/v1.20.01) | **Bug Fix**: Some values of config file would not be read, if the inline comment "&&" was not in the line (LScheffler) |
+| 2023/08/31 | LScheffler | [v1.20.03](https://github.com/fdbozzo/foxbin2prg/releases/tag/v1.20.03) | **Enhancement**: New option "tcCFG_File" for get_DirSettings method. |
+| 2023/08/31 | LScheffler | [v1.20.02](https://github.com/fdbozzo/foxbin2prg/releases/tag/v1.20.02) | New option for parameter set config file to control the use of "regular" config files enhanced |
+| 2023/08/30 | LScheffler | [v1.20.01](https://github.com/fdbozzo/foxbin2prg/releases/tag/v1.20.01) | **Bug Fix**: Some values of config file would not be read, if the inline comment "&&" was not in the line (LScheffler) |
| | | | **Bug Fix**: Bug Fix: config file set by parameter would be ignored, if the folder contains FoxBin2Prg.cfg (LScheffler) |
| | | | **Bug Fix**: Bug Fix: Fixed problems with table config files (LScheffler) |
| | | | **Enhancement**: For config file template new options to set config file and debug added |
| | | | **Enhancement**: New option for parameter set config file to control the use of "regular" config files |
-| 2023/08/27 | LScheffler | [v1.20.00](https://github.com/lscheffler/foxbin2prg/releases/tag/v1.20.00) | **Enhancement**: Source now ships without binary source files. See [README.md](../README.md) how to regenerate. |
-| 2023/08/26 | LScheffler | [v1.20.00](https://github.com/lscheffler/foxbin2prg/releases/tag/v1.20.00) | **Bug Fix**: Issues with form charsets ( national letters in form and controls Caption field) (KestasL)
This fixes also: Forms with ole controls conversion error (also: any vcx) #95 (KestasL) |
+| 2023/08/27 | LScheffler | [v1.20.00](https://github.com/fdbozzo/foxbin2prg/releases/tag/v1.20.00) | **Enhancement**: Source now ships without binary source files. See [README.md](../README.md) how to regenerate. |
+| 2023/08/26 | LScheffler | [v1.20.00](https://github.com/fdbozzo/foxbin2prg/releases/tag/v1.20.00) | **Bug Fix**: Issues with form charsets ( national letters in form and controls Caption field) (KestasL)
This fixes also: Forms with ole controls conversion error (also: any vcx) #95 (KestasL) |
| | | | **Enhancement**: Added option to return version number |
| | | | **Bug Fix**: Bug Fix: codepage is lost on recreation, issue #96, fixes issue #95 (OLE) as well (KestasL) |
| | | | Since all files will be rewritten due to the codepage stored, it's a good time to change version number too. |
@@ -448,4 +449,4 @@ Last changed: _2023/11/19_
This project is part of [VFPX](https://vfpx.github.io/).
----
-Last changed: _2023/11/26_ 
\ No newline at end of file
+Last changed: _2024/01/03_ 
\ No newline at end of file
diff --git a/foxbin2prg.cfg.txt b/foxbin2prg.cfg.txt
index f01666e..bc11d9d 100644
--- a/foxbin2prg.cfg.txt
+++ b/foxbin2prg.cfg.txt
@@ -1,6 +1,6 @@
*################################################################################################################
*FOXBIN2PRG.CFG configuration options: (If no values given, these are the DEFAULTS)
-*Version: v1.21.01
+*Version: v1.21.02
*****************************************************************************************************************
* Note, configuration files will follow an inheritance.
diff --git a/foxbin2prg.prg b/foxbin2prg.prg
index eb7739b..72d389b 100644
--- a/foxbin2prg.prg
+++ b/foxbin2prg.prg
@@ -1,5 +1,5 @@
#DEFINE DN_FB2PRG_VERSION 1.21
-#DEFINE DC_FB2PRG_VERSION_REAL '1.21.01'
+#DEFINE DC_FB2PRG_VERSION_REAL '1.21.02'
*---------------------------------------------------------------------------------------------------
* Module.........: FOXBIN2PRG.PRG - FOR VISUAL FOXPRO 9.0
@@ -323,6 +323,7 @@
* 06/09/2023 LScheffler v1.20.07 Enhancement: Option to block processing of directories. If file ".FoxBin2Prg_Ignore" is existing, this directories and all subdirectries will be ignored. (Mainly set up to ignore local GoFish settings) (LScheffler)
* 20/10/2023 LScheffler v1.21.00 Problems with Spanish characters in comment. (ccantrell72)
* 19/11/2023 LScheffler v1.21.01 Problems regenerating databases with splited contents due to the removed Spanish characters in comment. (LScheffler)
+* 03/01/2024 LScheffler v1.21.02 Problems regenerating single classes and forms from text files in class-per-file form; #105 (LScheffler)
*
*
*---------------------------------------------------------------------------------------------------
@@ -496,13 +497,14 @@
* 08/06/2022 JoergSchneider Bug REPORT v1.19.74 Multiple text2bin and bin2text conversion on MNX causes space grow (JoergSchneider)
* 10/06/2022 JoergSchneider Bug REPORT v1.19.75 On operation per folder, change of folder must change configuration (JoergSchneider)
* 16/03/2023 JoergSchneider Bug REPORT v1.19.76 Bin2Txt Operation on VCX loses leading spaces in Property Values #90 (JoergSchneider)
-* 16/03/2023 LScheffler Bug REPORT v1.19.76 Txt2Bin Operation on VCX looses double ampersand in Property Values #91 (LScheffler)
-* 17/03/2023 ericbarte Bug REPORT v1.19.76 Text2Bin on PJX errors out for projects with an attach icon that has a drive letter on its path. #93 (ericbarte)
-* 04/08/2023 KestasL Bug REPORT v1.19.78 Bin2Text: Forms with ole controls conversion error issue #95 (also: any vcx) (KestasL)
-* 04/08/2023 KestasL Bug REPORT v1.19.78 Codepage is lost on recreation, issue #96 (KestasL)
-* 28/08/2023 LScheffler Bug REPORT v1.20.00 Sometimes Language is not changed fitting to conmfig file
-* 20/10/2023 ccantrell72 Bug REPORT v1.20.07 Problems with Spanish characters in comment.
-* 19/09/2023 LScheffler Bug REPORT v1.21.00 Splitted database file is not regenerated. Problem with removed Spanish comment.
+* 16/03/2023 LScheffler Bug REPORT v1.19.76 Txt2Bin Operation on VCX looses double ampersand in Property Values #91 (LScheffler)
+* 17/03/2023 ericbarte Bug REPORT v1.19.76 Text2Bin on PJX errors out for projects with an attach icon that has a drive letter on its path. #93 (ericbarte)
+* 04/08/2023 KestasL Bug REPORT v1.19.78 Bin2Text: Forms with ole controls conversion error issue #95 (also: any vcx) (KestasL)
+* 04/08/2023 KestasL Bug REPORT v1.19.78 Codepage is lost on recreation, issue #96 (KestasL)
+* 28/08/2023 LScheffler Bug REPORT v1.20.00 Sometimes Language is not changed fitting to conmfig file
+* 20/10/2023 ccantrell72 Bug REPORT v1.20.07 Problems with Spanish characters in comment.
+* 19/09/2023 LScheffler Bug REPORT v1.21.00 Splitted database file is not regenerated. Problem with removed Spanish comment.
+* 03/01/2024 LScheffler Bug REPORT v1.21.01 Problems regenerating single classes and forms from text files in class-per-file form; #105
*
*
@@ -4113,12 +4115,20 @@ Define Class c_foxbin2prg As Session
Endcase
*!* /Changed by: LScheffler 04.3.2021
+*!* Changed By LScheffler 3.1.2024
+*!*
+*!* Changed By LScheffler
+*!* Problem recreating ingle classes
+*!*
+*!*
+
* Redefinir nombre archivo de entrada según el tipo de conversión (IMPORT/EXPORT)
If .c_ClassOperationType = 'I'
* En el caso de importar, debo cambiar la sintaxis de tc_InputFile para poder usar
* la conversión existente de clase vc2.
* Esto deja un archivo con sintaxis "classlib.vcx::classname::import" en "classlib.classname.vc2"
- IF .ATC(lcExt,c_VC2,"VCX")
+* IF .ATC(lcExt,c_VC2,"VCX")
+ IF INLIST(lcExt,.c_VC2,"VCX")
If .n_UseClassPerFile = 2
tc_InputFile = Forceext(tc_InputFile, '') + '.*.' + .c_ClassToConvert + '.' + .c_VC2
@@ -4132,7 +4142,8 @@ Define Class c_foxbin2prg As Session
Endif
Endif
- IF .ATC(lcExt,c_SC2,"SCX")
+* IF .ATC(lcExt,c_SC2,"SCX")
+ IF INLIST(lcExt,.c_SC2,"SCX")
If .n_UseFormPerFile = 2
tc_InputFile = Forceext(tc_InputFile, '') + '.*.' + .c_ClassToConvert + '.' + .c_VC2
@@ -4146,6 +4157,7 @@ Define Class c_foxbin2prg As Session
Endif
Endif
Endif
+*!* /Changed By LScheffler 3.1.2024
loLang = _Screen.o_FoxBin2Prg_Lang