diff --git a/TESTS/DATOS_READONLY/cplgd2sg.frt b/TESTS/DATOS_READONLY/cplgd2sg.frt new file mode 100644 index 0000000..e08dace Binary files /dev/null and b/TESTS/DATOS_READONLY/cplgd2sg.frt differ diff --git a/TESTS/DATOS_READONLY/cplgd2sg.frx b/TESTS/DATOS_READONLY/cplgd2sg.frx new file mode 100644 index 0000000..b5e30fb Binary files /dev/null and b/TESTS/DATOS_READONLY/cplgd2sg.frx differ diff --git a/TESTS/DATOS_READONLY/f_checkbox.sct b/TESTS/DATOS_READONLY/f_checkbox.sct new file mode 100644 index 0000000..29f7075 Binary files /dev/null and b/TESTS/DATOS_READONLY/f_checkbox.sct differ diff --git a/TESTS/DATOS_READONLY/f_checkbox.scx b/TESTS/DATOS_READONLY/f_checkbox.scx new file mode 100644 index 0000000..59e84b1 Binary files /dev/null and b/TESTS/DATOS_READONLY/f_checkbox.scx differ diff --git a/TESTS/DATOS_READONLY/f_combobox.sct b/TESTS/DATOS_READONLY/f_combobox.sct new file mode 100644 index 0000000..4a650fd Binary files /dev/null and b/TESTS/DATOS_READONLY/f_combobox.sct differ diff --git a/TESTS/DATOS_READONLY/f_combobox.scx b/TESTS/DATOS_READONLY/f_combobox.scx new file mode 100644 index 0000000..3e537ab Binary files /dev/null and b/TESTS/DATOS_READONLY/f_combobox.scx differ diff --git a/TESTS/DATOS_READONLY/f_commandgroup.sct b/TESTS/DATOS_READONLY/f_commandgroup.sct new file mode 100644 index 0000000..a78652e Binary files /dev/null and b/TESTS/DATOS_READONLY/f_commandgroup.sct differ diff --git a/TESTS/DATOS_READONLY/f_commandgroup.scx b/TESTS/DATOS_READONLY/f_commandgroup.scx new file mode 100644 index 0000000..a9037b2 Binary files /dev/null and b/TESTS/DATOS_READONLY/f_commandgroup.scx differ diff --git a/TESTS/DATOS_READONLY/f_containers.sct b/TESTS/DATOS_READONLY/f_containers.sct new file mode 100644 index 0000000..d78ebfd Binary files /dev/null and b/TESTS/DATOS_READONLY/f_containers.sct differ diff --git a/TESTS/DATOS_READONLY/f_containers.scx b/TESTS/DATOS_READONLY/f_containers.scx new file mode 100644 index 0000000..356d46c Binary files /dev/null and b/TESTS/DATOS_READONLY/f_containers.scx differ diff --git a/TESTS/DATOS_READONLY/f_form_aa.sct b/TESTS/DATOS_READONLY/f_form_aa.sct new file mode 100644 index 0000000..c7184f0 Binary files /dev/null and b/TESTS/DATOS_READONLY/f_form_aa.sct differ diff --git a/TESTS/DATOS_READONLY/f_form_aa.scx b/TESTS/DATOS_READONLY/f_form_aa.scx new file mode 100644 index 0000000..57c92cb Binary files /dev/null and b/TESTS/DATOS_READONLY/f_form_aa.scx differ diff --git a/TESTS/DATOS_READONLY/f_form_aa2.sct b/TESTS/DATOS_READONLY/f_form_aa2.sct new file mode 100644 index 0000000..8d95d98 Binary files /dev/null and b/TESTS/DATOS_READONLY/f_form_aa2.sct differ diff --git a/TESTS/DATOS_READONLY/f_form_aa2.scx b/TESTS/DATOS_READONLY/f_form_aa2.scx new file mode 100644 index 0000000..88eb688 Binary files /dev/null and b/TESTS/DATOS_READONLY/f_form_aa2.scx differ diff --git a/TESTS/DATOS_READONLY/f_form_controles.sct b/TESTS/DATOS_READONLY/f_form_controles.sct new file mode 100644 index 0000000..bc106b1 Binary files /dev/null and b/TESTS/DATOS_READONLY/f_form_controles.sct differ diff --git a/TESTS/DATOS_READONLY/f_form_controles.scx b/TESTS/DATOS_READONLY/f_form_controles.scx new file mode 100644 index 0000000..0aa5edc Binary files /dev/null and b/TESTS/DATOS_READONLY/f_form_controles.scx differ diff --git a/TESTS/DATOS_READONLY/f_formset.sct b/TESTS/DATOS_READONLY/f_formset.sct new file mode 100644 index 0000000..dcacc10 Binary files /dev/null and b/TESTS/DATOS_READONLY/f_formset.sct differ diff --git a/TESTS/DATOS_READONLY/f_formset.scx b/TESTS/DATOS_READONLY/f_formset.scx new file mode 100644 index 0000000..40254d4 Binary files /dev/null and b/TESTS/DATOS_READONLY/f_formset.scx differ diff --git a/TESTS/DATOS_READONLY/f_listbox.sct b/TESTS/DATOS_READONLY/f_listbox.sct new file mode 100644 index 0000000..4ff7174 Binary files /dev/null and b/TESTS/DATOS_READONLY/f_listbox.sct differ diff --git a/TESTS/DATOS_READONLY/f_listbox.scx b/TESTS/DATOS_READONLY/f_listbox.scx new file mode 100644 index 0000000..7539a7f Binary files /dev/null and b/TESTS/DATOS_READONLY/f_listbox.scx differ diff --git a/TESTS/DATOS_READONLY/f_optiongroup.sct b/TESTS/DATOS_READONLY/f_optiongroup.sct new file mode 100644 index 0000000..99199f3 Binary files /dev/null and b/TESTS/DATOS_READONLY/f_optiongroup.sct differ diff --git a/TESTS/DATOS_READONLY/f_optiongroup.scx b/TESTS/DATOS_READONLY/f_optiongroup.scx new file mode 100644 index 0000000..a6334e6 Binary files /dev/null and b/TESTS/DATOS_READONLY/f_optiongroup.scx differ diff --git a/TESTS/DATOS_READONLY/f_optiongroup2.sct b/TESTS/DATOS_READONLY/f_optiongroup2.sct new file mode 100644 index 0000000..9cd109d Binary files /dev/null and b/TESTS/DATOS_READONLY/f_optiongroup2.sct differ diff --git a/TESTS/DATOS_READONLY/f_optiongroup2.scx b/TESTS/DATOS_READONLY/f_optiongroup2.scx new file mode 100644 index 0000000..45ccf2c Binary files /dev/null and b/TESTS/DATOS_READONLY/f_optiongroup2.scx differ diff --git a/TESTS/DATOS_READONLY/f_test.sct b/TESTS/DATOS_READONLY/f_test.sct new file mode 100644 index 0000000..563a6e3 Binary files /dev/null and b/TESTS/DATOS_READONLY/f_test.sct differ diff --git a/TESTS/DATOS_READONLY/f_test.scx b/TESTS/DATOS_READONLY/f_test.scx new file mode 100644 index 0000000..51df291 Binary files /dev/null and b/TESTS/DATOS_READONLY/f_test.scx differ diff --git a/TESTS/DATOS_READONLY/f_textbox.sct b/TESTS/DATOS_READONLY/f_textbox.sct new file mode 100644 index 0000000..23c1af9 Binary files /dev/null and b/TESTS/DATOS_READONLY/f_textbox.sct differ diff --git a/TESTS/DATOS_READONLY/f_textbox.scx b/TESTS/DATOS_READONLY/f_textbox.scx new file mode 100644 index 0000000..a19e3e7 Binary files /dev/null and b/TESTS/DATOS_READONLY/f_textbox.scx differ diff --git a/TESTS/DATOS_READONLY/fb2p_dbc.prg b/TESTS/DATOS_READONLY/fb2p_dbc.prg new file mode 100644 index 0000000..8b104d5 --- /dev/null +++ b/TESTS/DATOS_READONLY/fb2p_dbc.prg @@ -0,0 +1,224 @@ +* ********************************************************************* +* * +* * 2013/12/09 FB2P_DBC.DBC 22:32:26 +* * +* ********************************************************************* +* * +* * Description: +* * This program was automatically generated by GenDBCX Version 1.1, +* * a modified version of Microsoft's utility GenDBC Version 2.26.67. +* * +* ********************************************************************* + + +LPARAMETERS tcMethod +LOCAL oDBC +oDBC = CreateObject('GenDBCX') +IF TYPE('oDBC') != 'O' + RETURN +ENDIF +cExactSet = SET('EXACT') +SET EXACT ON +IF EMPTY(tcMethod) + =oDBC.GenerateAll() +ELSE + =EVALUATE('oDBC.' + tcMethod) +ENDIF +IF cExactSet = 'OFF' + SET EXACT OFF +ENDIF + + +DEFINE CLASS GenDBCX AS Custom + PROTECTED aTables[1] + PROTECTED nTables + + PROCEDURE CustomProcess + *-- Your code goes here + ENDPROC + + PROCEDURE Init + IF FILE('FB2P_DBC.DBC') + OPEN DATABASE FB2P_DBC.DBC + this.nTables = ADBOBJECTS(this.aTables, 'Table') + ENDIF + LOCAL ARRAY xx[1] + IF ADIR(xx,'*.DBC') > 0 OR ADIR(xx,'*.DBF') > 0 + IF MessageBox('Warning! This program will overwrite your existing database and tables! Continue?', 308, 'GenDBCX Warning...') != 6 + RETURN .F. + ENDIF + ENDIF + ENDPROC + + PROCEDURE CreateDBC + *-- Create the Database Container + CLOSE DATA ALL + CREATE DATABASE 'FB2P_DBC.DBC' + + ********* Procedure Re-Creation ********* + IF !FILE([FB2P_DBC.krt]) + ? [Warning! No Procedure File Found!] + ELSE + CLOSE DATABASE + USE 'FB2P_DBC.DBC' + g_SetSafety = SET('SAFETY') + SET SAFETY OFF + LOCATE FOR Objectname = 'StoredProceduresSource' + IF FOUND() + APPEND MEMO Code FROM [FB2P_DBC.krt] OVERWRITE + REPLACE Code WITH SUBSTR(Code, 70, 13140) + ENDIF + LOCATE FOR Objectname = 'StoredProceduresObject' + IF FOUND() + APPEND MEMO Code FROM [FB2P_DBC.krt] OVERWRITE + REPLACE Code WITH SUBSTR(Code, 13210) + ENDIF + IF UPPER(g_SetSafety) = 'ON' + SET SAFETY ON + ENDIF + USE + OPEN DATABASE [FB2P_DBC.DBC] + ENDIF + + ENDPROC + + + ************************************************** + ** Table setup for NOMBRELARGODELDBF + ************************************************** + PROCEDURE tbNOMBRELARGODELDBF + LPARAMETERS tnPassNumber + + DO CASE + CASE tnPassNumber = 1 + =this.RemoveTable('NOMBRELARGODELDBF', 'C:\DESA\FOXBIN2PRG\TESTS\DATOS_READONLY\FB2P_DBF.DBF') + + CREATE TABLE 'FB2P_DBF.DBF' NAME 'NOMBRELARGODELDBF' ( ; + NOMBRE C(30) NOT NULL CHECK .NOT.EMPTY(nombre) ERROR "El nombre está vacío" DEFAULT ".", ; + EDAD N(3, 0) NOT NULL, ; + ID I NOT NULL, ; + BIGTEXT M NOT NULL, ; + DEPTO C(10) NOT NULL ; + ) + ***** Create each index for NOMBRELARGODELDBF ***** + SET COLLATE TO 'MACHINE' + ALTER TABLE 'NOMBRELARGODELDBF' ADD PRIMARY KEY ID TAG ID + SET COLLATE TO 'GENERAL' + INDEX ON NOMBRE TAG I_NOMBRE + SET COLLATE TO 'MACHINE' + INDEX ON DEPTO TAG DEPTO + + CASE tnPassNumber = 2 + ***** Change properties for NOMBRELARGODELDBF ***** + DBSetProp('NOMBRELARGODELDBF.NOMBRE', 'Field', 'Caption', "'Nombre:'") + DBSetProp('NOMBRELARGODELDBF.NOMBRE', 'Field', 'Comment', "Comentario de 'Nombre'") + DBSetProp('NOMBRELARGODELDBF.NOMBRE', 'Field', 'InputMask', "!XXXXXXXXXXXXXXXXXXXXXXXXXXXXX") + DBSetProp('NOMBRELARGODELDBF.NOMBRE', 'Field', 'Format', "A") + DBSetProp('NOMBRELARGODELDBF', 'Table', 'Comment', "Comentario de la tabla 'fb2p_dbf'") + CREATE TRIGGER ON 'NOMBRELARGODELDBF' FOR DELETE AS del_trg() + CREATE TRIGGER ON 'NOMBRELARGODELDBF' FOR INSERT AS __ri_insert_nombrelargodeldbf().AND.(ins_trg()) + CREATE TRIGGER ON 'NOMBRELARGODELDBF' FOR UPDATE AS __ri_update_nombrelargodeldbf().AND.(upd_trg()) + ALTER TABLE 'NOMBRELARGODELDBF' SET CHECK edad>10 ERROR "Mensaje de error de la regla edad > 10" + ENDCASE + ENDPROC + + + ************************************************** + ** Table setup for FB2P_DEPTO + ************************************************** + PROCEDURE tbFB2P_DEPTO + LPARAMETERS tnPassNumber + + DO CASE + CASE tnPassNumber = 1 + =this.RemoveTable('FB2P_DEPTO', 'C:\DESA\FOXBIN2PRG\TESTS\DATOS_READONLY\FB2P_DEPTO.DBF') + + CREATE TABLE 'FB2P_DEPTO.DBF' NAME 'FB2P_DEPTO' ( ; + DEPTO C(10) NOT NULL, ; + DESCRIP C(50) NOT NULL ; + ) + ***** Create each index for FB2P_DEPTO ***** + SET COLLATE TO 'MACHINE' + ALTER TABLE 'FB2P_DEPTO' ADD PRIMARY KEY DEPTO TAG DEPTO + + CASE tnPassNumber = 2 + ***** Change properties for FB2P_DEPTO ***** + DBSetProp('FB2P_DEPTO', 'Table', 'Comment', "Comentario de 'fb2p_depto'") + CREATE TRIGGER ON 'FB2P_DEPTO' FOR DELETE AS __ri_delete_fb2p_depto() + ENDCASE + ENDPROC + + + ***** Relations Setup ***** + PROCEDURE SetRelations + ALTER TABLE 'NOMBRELARGODELDBF' ADD FOREIGN KEY TAG DEPTO REFERENCES FB2P_DEPTO TAG DEPTO + ENDPROC + + ***** Referential Integrity Setup ***** + PROCEDURE SetRI + CLOSE DATABASE + USE 'FB2P_DBC.DBC' + LOCATE FOR ObjectType = 'Table' AND UPPER(ALLTRIM(ObjectName)) == 'NOMBRELARGODELDBF' + IF FOUND() + nObjectID = ObjectID + LOCATE FOR ObjectType = 'Relation' AND 'depto'$Property AND 'fb2p_depto'$Property AND 'depto'$Property AND ParentID = nObjectID + IF FOUND() + REPLACE RiInfo WITH 'ICR ' + ELSE + ? "Could not set RI Information, line " + ltrim(str(lineno())) + ENDIF + ENDIF + USE + ENDPROC + + FUNCTION RemoveTable(tcTable, tcFile) + LOCAL ARRAY laTables[1] + =ADBOBJECTS(laTables,'Table') + IF ASCAN(laTables,tcTable) = 0 + *-- No such table in the current dbc, nothing to do! + RETURN .t. + ENDIF + IF !FILE(tcFile) + *-- If the file has been erased, REMOVE TABLE fails with a 'File does not + *-- exist' error, because it can't find the file to either remove its + *-- database reference or delete the file . + *-- We'll work around this problem by creating a phony file with the same + *-- name, and use REMOVE TABLE DELETE to both remove the table reference + *-- in the dbc, and erase the phony file. + LOCAL lhFile + lhFile = FCREATE(tcFile) + IF lhFile = -1 + RETURN .f. + ENDIF + =FCLOSE(lhFile) + ENDIF + REMOVE TABLE (tcTable) DELETE + =ADBOBJECTS(laTables,'Table') + RETURN ASCAN(laTables,tcTable) = 0 + ENDFUNC + + + PROCEDURE GenerateAll + =this.CreateDBC() + =this.CreateTables() + + *-- Call custom method + =this.CustomProcess() + + =this.RulesTriggersProperties() + =this.SetRelations() + =this.SetRI() + ENDPROC + + PROCEDURE CreateTables + *-- Create Tables + =this.tbNOMBRELARGODELDBF(1) + =this.tbFB2P_DEPTO(1) + ENDPROC + + PROCEDURE RulesTriggersProperties + *-- Finish Tables (add rules/triggers/properties) + =this.tbNOMBRELARGODELDBF(2) + =this.tbFB2P_DEPTO(2) + ENDPROC +ENDDEFINE diff --git a/TESTS/DATOS_READONLY/fb2p_frm_1.sc2 b/TESTS/DATOS_READONLY/fb2p_frm_1.sc2 index 06a360a..9dd38d0 100644 --- a/TESTS/DATOS_READONLY/fb2p_frm_1.sc2 +++ b/TESTS/DATOS_READONLY/fb2p_frm_1.sc2 @@ -2,12 +2,42 @@ * (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! * (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! *-------------------------------------------------------------------------------------------------------------------------------------------------------- -*< FOXBIN2PRG: Version="1.19" SourceFile="C:\DESA\foxbin2prg\TESTS\DATOS_READONLY\fb2p_frm_1.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +*< FOXBIN2PRG: Version="1.19" SourceFile="fb2p_frm_1.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) * -*< OLE: Nombre="Cl_form1.Cl_olecontrol1" Parent="Cl_form1" ObjName="Cl_olecontrol1" OLEObject="C:\Windows\system32\richtx32.ocx" Checksum="617849590" Value="0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAEAAAAgAAAAEAAAD+////AAAAAAAAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/////v////7///8EAAAA/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////1IAbwBvAHQAIABFAG4AdAByAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAUA//////////8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFBjW5n1Hc8BAwAAAIACAAAAAAAAAwBPAGwAZQBPAGIAagBlAGMAdABEAGEAdABhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAgEDAAAAAgAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2AAAAAAAAAADAEEAYwBjAGUAcwBzAE8AYgBqAFMAaQB0AGUARABhAHQAYQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJgACAP///////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAABPAAAAAAAAAAMAQwBoAGEAbgBnAGUAZABQAHIAbwBwAHMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAIA////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAOAAAAAAAAAABAAAAAIAAAD+////BQAAAAYAAAAIAAAABwAAAP7///8JAAAA/v////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9giHw7j9cbELm1BAIcAJQCIUM0EggAAACKDQAA7QYAACFDNBIBAAYArAAAAAAA//8AAP////8AAAAAAAAAAAAATwAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAABcAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgcWhqIFp0dVFoYTtqZGZuW2lhZXRyIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAACACwAAAEFwcGVhcmFuY2UACQAAAEkKAAAAAAAAAAwAAABCb3JkZXJTdHlsZQAJAAAASQoAAAABAAAADQAAAAAAAAUAAIAAAAAAAAABAAAAAAABAAIACAAAAHtccnRmMVxhbnNpXGFuc2ljcGcxMjUyXGRlZmYwe1xmb250dABCdWxsZXRJbmRlbnQAEQAAAE4NAAAABwAAAAAAAAAAAAAAEAAAAERpc2FibGVOb1Njcm9sbAAFAAAATAAAAABibHtcZjBcZm5pbFxmY2hhcnNldDAgQXJpYWw7fX0NClx2aWV3a2luZDRcdWMxXHBhcmRcbGFuZzMwODJcZnMxOCBPbGVjb250cm9sMQ0KXHBhciB9DQoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAABSaWdodE1hcmdpbgARAAAATg0AAAAHAAAAAAAAAAAAAAAFAAAAVGV4dAAUAAAASAAAAAALAAAAT2xlY29udHJvbDENAAAAQXV0b1ZlcmJNZW51AAUAAABMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" /> + * -DEFINE CLASS Cl_form1 AS cl_form OF "fb2p_test.vcx" - *< CLASSDATA: Baseclass="form" Timestamp="2014/01/30 20:58:05" Scale="" Uniqueid="_3XW0B1R2O" /> +#INCLUDE "..\..\include\principal.h" + +DEFINE CLASS cl_form1 AS cl_form OF "fb2p_test.vcx" + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Shape1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtPromotor" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="lblPromotor" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtIdenc" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="lblIdenc" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtCalific" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="lblCalific" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtFecha" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="lblFecha" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="txtResultado" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="lblResultado" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grdEncuestas" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grdEncuestas.Column1.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grdEncuestas.Column1.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grdEncuestas.Column2.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grdEncuestas.Column2.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grdEncuestas.Column3.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grdEncuestas.Column3.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grdEncuestas.Column4.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grdEncuestas.Column4.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grdEncuestas.Column5.Header1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="grdEncuestas.Column5.Text1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Commandgroup1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Optiongroup1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Cl_olecontrol1" UniqueID="" Timestamp="" /> + AllowOutput = .T. AlwaysOnBottom = .F. AlwaysOnTop = .F. @@ -66,12 +96,12 @@ DEFINE CLASS Cl_form1 AS cl_form OF "fb2p_test.vcx" MouseIcon = ..\..\ MousePointer = 0 Movable = .T. - Name = "Cl_form1" + Name = "cl_form1" OLEDragMode = 0 OLEDragPicture = ..\..\ OLEDropEffects = 3 OLEDropMode = 0 - Picture = ..\..\ + Picture = bmps\fondogris.bmp RightToLeft = .F. ScaleMode = 3 ScrollBars = 0 @@ -133,7 +163,7 @@ DEFINE CLASS Cl_form1 AS cl_form OF "fb2p_test.vcx" Name = "Cl_olecontrol1", ; Top = 256, ; Width = 131 - *< END OBJECT: ClassLib="fb2p_test.vcx" BaseClass="olecontrol" UniqueID="_3XW0BXGCR" Timestamp="2013/12/03 20:18:24" ZOrder="2900" OLEObject="C:\Windows\system32\richtx32.ocx" CheckSum="617849590" /> + *< END OBJECT: ClassLib="fb2p_test.vcx" BaseClass="olecontrol" Nombre="cl_form1.Cl_olecontrol1" Parent="cl_form1" ObjName="Cl_olecontrol1" OLEObject="C:\Windows\system32\richtx32.ocx" Value="0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAEAAAAgAAAAEAAAD+////AAAAAAAAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/////v////7///8EAAAA/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////1IAbwBvAHQAIABFAG4AdAByAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAUA//////////8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMC9jhY4as8BAwAAAIACAAAAAAAAAwBPAGwAZQBPAGIAagBlAGMAdABEAGEAdABhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAgEDAAAAAgAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2AAAAAAAAAADAEEAYwBjAGUAcwBzAE8AYgBqAFMAaQB0AGUARABhAHQAYQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJgACAP///////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAABPAAAAAAAAAAMAQwBoAGEAbgBnAGUAZABQAHIAbwBwAHMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAIA////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAOAAAAAAAAAABAAAAAIAAAD+////BQAAAAYAAAAIAAAABwAAAP7///8JAAAA/v////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9giHw7j9cbELm1BAIcAJQCIUM0EggAAACKDQAA7QYAACFDNBIBAAYArAAAAAAA//8AAP////8AAAAAAAAAAAAATwAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAABcAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgcWhqIFp0dVFoYTtqZGZuW2lhZXRyIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAACACwAAAEFwcGVhcmFuY2UACQAAAEkKAAAAAAAAAAwAAABCb3JkZXJTdHlsZQAJAAAASQoAAAABAAAADQAAAAAAAAUAAIAAAAAAAAABAAAAAAABAAIACAAAAHtccnRmMVxhbnNpXGFuc2ljcGcxMjUyXGRlZmYwe1xmb250dABCdWxsZXRJbmRlbnQAEQAAAE4NAAAABwAAAAAAAAAAAAAAEAAAAERpc2FibGVOb1Njcm9sbAAFAAAATAAAAABibHtcZjBcZm5pbFxmY2hhcnNldDAgQXJpYWw7fX0NClx2aWV3a2luZDRcdWMxXHBhcmRcbGFuZzMwODJcZnMxOCBPbGVjb250cm9sMQ0KXHBhciB9DQoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAABSaWdodE1hcmdpbgARAAAATg0AAAAHAAAAAAAAAAAAAAAFAAAAVGV4dAAUAAAASAAAAAALAAAAT2xlY29udHJvbDENAAAAQXV0b1ZlcmJNZW51AAUAAABMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" /> ADD OBJECT 'Commandgroup1' AS commandgroup WITH ; BackColor = 255,128,255, ; @@ -161,7 +191,7 @@ DEFINE CLASS Cl_form1 AS cl_form OF "fb2p_test.vcx" Command2.RightToLeft = .F., ; Command2.Top = 8, ; Command2.Width = 96 - *< END OBJECT: BaseClass="commandgroup" UniqueID="_3XW0BCM76" Timestamp="2013/12/03 20:18:24" ZOrder="2700" /> + *< END OBJECT: BaseClass="commandgroup" /> ADD OBJECT 'grdEncuestas' AS grid WITH ; ColumnCount = 5, ; @@ -197,12 +227,12 @@ DEFINE CLASS Cl_form1 AS cl_form OF "fb2p_test.vcx" Column5.Name = "Column5", ; Column5.ReadOnly = .T., ; Column5.Width = 58 - *< END OBJECT: BaseClass="grid" UniqueID="_3XW0B58PA" Timestamp="2013/12/15 18:50:25" ZOrder="1600" /> + *< END OBJECT: BaseClass="grid" /> ADD OBJECT 'grdEncuestas.Column1.Header1' AS header WITH ; Caption = "promotor", ; Name = "Header1" - *< END OBJECT: BaseClass="header" UniqueID="_3XW0B58PB" Timestamp="2013/12/03 19:56:18" ZOrder="1700" /> + *< END OBJECT: BaseClass="header" /> ADD OBJECT 'grdEncuestas.Column1.Text1' AS textbox WITH ; BackColor = 255,255,255, ; @@ -212,12 +242,12 @@ DEFINE CLASS Cl_form1 AS cl_form OF "fb2p_test.vcx" Name = "Text1", ; ReadOnly = .T., ; RightToLeft = .F. - *< END OBJECT: BaseClass="textbox" UniqueID="_3XW0B58PC" Timestamp="2013/12/15 18:50:25" ZOrder="1800" /> + *< END OBJECT: BaseClass="textbox" /> ADD OBJECT 'grdEncuestas.Column2.Header1' AS header WITH ; Caption = "idenc", ; Name = "Header1" - *< END OBJECT: BaseClass="header" UniqueID="_3XW0B58PD" Timestamp="2013/12/03 19:56:18" ZOrder="1900" /> + *< END OBJECT: BaseClass="header" /> ADD OBJECT 'grdEncuestas.Column2.Text1' AS textbox WITH ; BackColor = 255,255,255, ; @@ -227,12 +257,12 @@ DEFINE CLASS Cl_form1 AS cl_form OF "fb2p_test.vcx" Name = "Text1", ; ReadOnly = .T., ; RightToLeft = .F. - *< END OBJECT: BaseClass="textbox" UniqueID="_3XW0B58PE" Timestamp="2013/12/15 18:50:25" ZOrder="2000" /> + *< END OBJECT: BaseClass="textbox" /> ADD OBJECT 'grdEncuestas.Column3.Header1' AS header WITH ; Caption = "calific", ; Name = "Header1" - *< END OBJECT: BaseClass="header" UniqueID="_3XW0B58PF" Timestamp="2013/12/03 19:56:18" ZOrder="2100" /> + *< END OBJECT: BaseClass="header" /> ADD OBJECT 'grdEncuestas.Column3.Text1' AS textbox WITH ; BackColor = 255,255,255, ; @@ -242,12 +272,12 @@ DEFINE CLASS Cl_form1 AS cl_form OF "fb2p_test.vcx" Name = "Text1", ; ReadOnly = .T., ; RightToLeft = .F. - *< END OBJECT: BaseClass="textbox" UniqueID="_3XW0B58PG" Timestamp="2013/12/15 18:50:25" ZOrder="2200" /> + *< END OBJECT: BaseClass="textbox" /> ADD OBJECT 'grdEncuestas.Column4.Header1' AS header WITH ; Caption = "fecha", ; Name = "Header1" - *< END OBJECT: BaseClass="header" UniqueID="_3XW0B58PH" Timestamp="2013/12/03 19:56:18" ZOrder="2300" /> + *< END OBJECT: BaseClass="header" /> ADD OBJECT 'grdEncuestas.Column4.Text1' AS textbox WITH ; BackColor = 255,255,255, ; @@ -257,12 +287,12 @@ DEFINE CLASS Cl_form1 AS cl_form OF "fb2p_test.vcx" Name = "Text1", ; ReadOnly = .T., ; RightToLeft = .F. - *< END OBJECT: BaseClass="textbox" UniqueID="_3XW0B58PI" Timestamp="2013/12/15 18:50:25" ZOrder="2400" /> + *< END OBJECT: BaseClass="textbox" /> ADD OBJECT 'grdEncuestas.Column5.Header1' AS header WITH ; Caption = "resultado", ; Name = "Header1" - *< END OBJECT: BaseClass="header" UniqueID="_3XW0B58PJ" Timestamp="2013/12/03 19:56:18" ZOrder="2500" /> + *< END OBJECT: BaseClass="header" /> ADD OBJECT 'grdEncuestas.Column5.Text1' AS textbox WITH ; BackColor = 255,255,255, ; @@ -272,7 +302,7 @@ DEFINE CLASS Cl_form1 AS cl_form OF "fb2p_test.vcx" Name = "Text1", ; ReadOnly = .T., ; RightToLeft = .F. - *< END OBJECT: BaseClass="textbox" UniqueID="_3XW0B58PK" Timestamp="2013/12/15 18:50:25" ZOrder="2600" /> + *< END OBJECT: BaseClass="textbox" /> ADD OBJECT 'lblCalific' AS label WITH ; AutoSize = .T., ; @@ -286,7 +316,7 @@ DEFINE CLASS Cl_form1 AS cl_form OF "fb2p_test.vcx" Width = 34, ; WordWrap = .T., ; ZOrderSet = 10 - *< END OBJECT: BaseClass="label" UniqueID="_3XW0B58P5" Timestamp="2013/12/15 18:50:25" ZOrder="1100" /> + *< END OBJECT: BaseClass="label" /> ADD OBJECT 'lblFecha' AS label WITH ; AutoSize = .T., ; @@ -300,7 +330,7 @@ DEFINE CLASS Cl_form1 AS cl_form OF "fb2p_test.vcx" Width = 34, ; WordWrap = .T., ; ZOrderSet = 12 - *< END OBJECT: BaseClass="label" UniqueID="_3XW0B58P7" Timestamp="2013/12/15 18:50:25" ZOrder="1300" /> + *< END OBJECT: BaseClass="label" /> ADD OBJECT 'lblIdenc' AS label WITH ; AutoSize = .T., ; @@ -314,7 +344,7 @@ DEFINE CLASS Cl_form1 AS cl_form OF "fb2p_test.vcx" Width = 30, ; WordWrap = .T., ; ZOrderSet = 8 - *< END OBJECT: BaseClass="label" UniqueID="_3XW0B58P3" Timestamp="2013/12/15 18:50:25" ZOrder="900" /> + *< END OBJECT: BaseClass="label" /> ADD OBJECT 'lblPromotor' AS label WITH ; AutoSize = .T., ; @@ -328,7 +358,7 @@ DEFINE CLASS Cl_form1 AS cl_form OF "fb2p_test.vcx" Width = 51, ; WordWrap = .T., ; ZOrderSet = 6 - *< END OBJECT: BaseClass="label" UniqueID="_3XW0B58P1" Timestamp="2013/12/15 18:50:25" ZOrder="700" /> + *< END OBJECT: BaseClass="label" /> ADD OBJECT 'lblResultado' AS label WITH ; AutoSize = .T., ; @@ -342,7 +372,7 @@ DEFINE CLASS Cl_form1 AS cl_form OF "fb2p_test.vcx" Width = 57, ; WordWrap = .T., ; ZOrderSet = 14 - *< END OBJECT: BaseClass="label" UniqueID="_3XW0B58P9" Timestamp="2013/12/15 18:50:25" ZOrder="1500" /> + *< END OBJECT: BaseClass="label" /> ADD OBJECT 'Optiongroup1' AS optiongroup WITH ; BackColor = 0,128,255, ; @@ -374,7 +404,7 @@ DEFINE CLASS Cl_form1 AS cl_form OF "fb2p_test.vcx" Option2.Top = 12, ; Option2.Value = 1, ; Option2.Width = 88 - *< END OBJECT: BaseClass="optiongroup" UniqueID="_3XW0BCM77" Timestamp="2013/12/03 20:18:24" ZOrder="2800" /> + *< END OBJECT: BaseClass="optiongroup" /> ADD OBJECT 'Shape1' AS shape WITH ; BorderStyle = 2, ; @@ -387,7 +417,7 @@ DEFINE CLASS Cl_form1 AS cl_form OF "fb2p_test.vcx" Top = 284, ; Width = 101, ; ZOrderSet = 0 - *< END OBJECT: BaseClass="shape" UniqueID="_3XW0BQM70" Timestamp="2013/12/03 20:18:24" ZOrder="500" /> + *< END OBJECT: BaseClass="shape" /> ADD OBJECT 'txtCalific' AS textbox WITH ; Comment = "", ; @@ -404,7 +434,7 @@ DEFINE CLASS Cl_form1 AS cl_form OF "fb2p_test.vcx" Top = 164, ; Width = 38, ; ZOrderSet = 9 - *< END OBJECT: BaseClass="textbox" UniqueID="_3XW0B58P4" Timestamp="2013/12/15 18:50:25" ZOrder="1000" /> + *< END OBJECT: BaseClass="textbox" /> ADD OBJECT 'txtFecha' AS textbox WITH ; Comment = "", ; @@ -420,7 +450,7 @@ DEFINE CLASS Cl_form1 AS cl_form OF "fb2p_test.vcx" Top = 192, ; Width = 73, ; ZOrderSet = 11 - *< END OBJECT: BaseClass="textbox" UniqueID="_3XW0B58P6" Timestamp="2013/12/15 18:50:25" ZOrder="1200" /> + *< END OBJECT: BaseClass="textbox" /> ADD OBJECT 'txtIdenc' AS textbox WITH ; Comment = "", ; @@ -437,7 +467,7 @@ DEFINE CLASS Cl_form1 AS cl_form OF "fb2p_test.vcx" Top = 192, ; Width = 149, ; ZOrderSet = 7 - *< END OBJECT: BaseClass="textbox" UniqueID="_3XW0B58P2" Timestamp="2013/12/15 18:50:25" ZOrder="800" /> + *< END OBJECT: BaseClass="textbox" /> ADD OBJECT 'txtPromotor' AS textbox WITH ; Comment = "", ; @@ -454,7 +484,7 @@ DEFINE CLASS Cl_form1 AS cl_form OF "fb2p_test.vcx" Top = 164, ; Width = 149, ; ZOrderSet = 5 - *< END OBJECT: BaseClass="textbox" UniqueID="_3XW0B58P0" Timestamp="2013/12/15 18:50:25" ZOrder="600" /> + *< END OBJECT: BaseClass="textbox" /> ADD OBJECT 'txtResultado' AS textbox WITH ; Comment = "", ; @@ -471,7 +501,7 @@ DEFINE CLASS Cl_form1 AS cl_form OF "fb2p_test.vcx" Top = 220, ; Width = 81, ; ZOrderSet = 13 - *< END OBJECT: BaseClass="textbox" UniqueID="_3XW0B58P8" Timestamp="2013/12/15 18:50:25" ZOrder="1400" /> + *< END OBJECT: BaseClass="textbox" /> PROCEDURE grdEncuestas.AfterRowColChange LPARAMETERS nColIndex @@ -482,8 +512,12 @@ DEFINE CLASS Cl_form1 AS cl_form OF "fb2p_test.vcx" ENDDEFINE -DEFINE CLASS Dataenvironment AS dataenvironment - *< CLASSDATA: Baseclass="dataenvironment" Timestamp="2014/01/30 20:58:05" Scale="" Uniqueid="_3XW0B1R2N" ClassIcon="1" /> +DEFINE CLASS dataenvironment AS dataenvironment + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Cursor1" UniqueID="" Timestamp="" /> + AutoCloseTables = .T. AutoOpenTables = .T. Comment = "" @@ -500,31 +534,17 @@ DEFINE CLASS Dataenvironment AS dataenvironment ADD OBJECT 'Cursor1' AS cursor WITH ; Alias = "encuestas", ; - BufferModeOverride = 1, ; - Comment = "", ; CursorSource = encuestas.dbf, ; - Exclusive = .F., ; - Filter = "", ; - Height = 98, ; + Height = 90, ; Left = 10, ; Name = "Cursor1", ; - NoDataOnLoad = .F., ; - Order = "", ; - OrderDirection = 0, ; - ReadOnly = .F., ; - Tag = "", ; Top = 20, ; - Width = 102 - *< END OBJECT: BaseClass="cursor" UniqueID="_3XW0B58OZ" Timestamp="2014/01/30 20:58:05" ZOrder="300" /> + Width = 90 + *< END OBJECT: BaseClass="cursor" /> PROCEDURE BeforeOpenTables *-- Comentario en método [Dataenvironment.BeforeOpenTables] ENDPROC - PROCEDURE Cursor1.Init - *-- Comentario en método [Dataenvironment.Cursor1.Init] - - ENDPROC - ENDDEFINE diff --git a/TESTS/DATOS_READONLY/fb2p_frm_1.sct b/TESTS/DATOS_READONLY/fb2p_frm_1.sct index e948eac..0aa742d 100644 Binary files a/TESTS/DATOS_READONLY/fb2p_frm_1.sct and b/TESTS/DATOS_READONLY/fb2p_frm_1.sct differ diff --git a/TESTS/DATOS_READONLY/fb2p_frm_1.scx b/TESTS/DATOS_READONLY/fb2p_frm_1.scx index 8be9bfa..3813f51 100644 Binary files a/TESTS/DATOS_READONLY/fb2p_frm_1.scx and b/TESTS/DATOS_READONLY/fb2p_frm_1.scx differ diff --git a/TESTS/DATOS_READONLY/fb2p_frm_2.sc2 b/TESTS/DATOS_READONLY/fb2p_frm_2.sc2 index 9894332..74c0cc8 100644 --- a/TESTS/DATOS_READONLY/fb2p_frm_2.sc2 +++ b/TESTS/DATOS_READONLY/fb2p_frm_2.sc2 @@ -2,11 +2,12 @@ * (ES) AUTOGENERADO - ¡¡ATENCIÓN!! - ¡¡NO PENSADO PARA EJECUTAR!! USAR SOLAMENTE PARA INTEGRAR CAMBIOS Y ALMACENAR CON HERRAMIENTAS SCM!! * (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!! *-------------------------------------------------------------------------------------------------------------------------------------------------------- -*< FOXBIN2PRG: Version="1.19" SourceFile="C:\DESA\foxbin2prg\TESTS\DATOS_READONLY\FB2P_FRM_2.SCX" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) +*< FOXBIN2PRG: Version="1.19" SourceFile="fb2p_frm_2.scx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) * * -DEFINE CLASS Dataenvironment AS dataenvironment - *< CLASSDATA: Baseclass="dataenvironment" Timestamp="2013/12/03 19:54:07" Scale="" Uniqueid="_3XW0B26O0" ClassIcon="1" /> +DEFINE CLASS dataenvironment AS dataenvironment + *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" /> + DataSource = .NULL. Height = 0 Left = 0 @@ -16,13 +17,20 @@ DEFINE CLASS Dataenvironment AS dataenvironment ENDDEFINE -DEFINE CLASS Form1 AS form - *< CLASSDATA: Baseclass="form" Timestamp="2014/02/03 19:55:29" Scale="" Uniqueid="_3XW0B26O1" /> +DEFINE CLASS form1 AS form + *< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" /> + + *-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder + *< OBJECTDATA: ObjPath="Commandgroup1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Pageframe1" UniqueID="" Timestamp="" /> + *< OBJECTDATA: ObjPath="Optiongroup1" UniqueID="" Timestamp="" /> + * *p: a_otra - *a: ^a_prop[1,0] && array + *a: a_prop[1,0] && array *p: _prop * + AllowOutput = .T. AlwaysOnBottom = .F. AlwaysOnTop = .F. @@ -65,7 +73,7 @@ DEFINE CLASS Form1 AS form HScrollSmallChange = 10 Icon = ..\..\ KeyPreview = .F. - Left = 0 + Left = 2 LockScreen = .F. MacDesktop = 0 MaxButton = .T. @@ -96,7 +104,7 @@ DEFINE CLASS Form1 AS form Tag = "" Themes = .T. TitleBar = 1 - Top = 0 + Top = 1 Visible = .T. VScrollSmallChange = 10 WhatsThisButton = .F. @@ -177,7 +185,7 @@ DEFINE CLASS Form1 AS form Command3.Name = "Command3", ; Command3.Top = 63, ; Command3.Width = 84 - *< END OBJECT: BaseClass="commandgroup" UniqueID="_3Y813WLQU" Timestamp="2014/02/03 19:55:29" ZOrder="400" /> + *< END OBJECT: BaseClass="commandgroup" /> ADD OBJECT 'Optiongroup1' AS optiongroup WITH ; ButtonCount = 3, ; @@ -207,7 +215,7 @@ DEFINE CLASS Form1 AS form Option3.Name = "Option3", ; Option3.Top = 43, ; Option3.Width = 61 - *< END OBJECT: BaseClass="optiongroup" UniqueID="_3ZO00KYM8" Timestamp="2014/02/03 19:55:29" ZOrder="600" /> + *< END OBJECT: BaseClass="optiongroup" /> ADD OBJECT 'Pageframe1' AS pageframe WITH ; ActivePage = 2, ; @@ -224,6 +232,6 @@ DEFINE CLASS Form1 AS form Page2.Name = "Page2", ; Page3.Caption = "Page3", ; Page3.Name = "Page3" - *< END OBJECT: BaseClass="pageframe" UniqueID="_3ZO00KYM7" Timestamp="2014/02/03 19:55:29" ZOrder="500" /> + *< END OBJECT: BaseClass="pageframe" /> ENDDEFINE diff --git a/TESTS/DATOS_READONLY/fb2p_frm_2.sct b/TESTS/DATOS_READONLY/fb2p_frm_2.sct index 7523192..5638dcd 100644 Binary files a/TESTS/DATOS_READONLY/fb2p_frm_2.sct and b/TESTS/DATOS_READONLY/fb2p_frm_2.sct differ diff --git a/TESTS/DATOS_READONLY/fb2p_frm_2.scx b/TESTS/DATOS_READONLY/fb2p_frm_2.scx index 74aad01..3623de9 100644 Binary files a/TESTS/DATOS_READONLY/fb2p_frm_2.scx and b/TESTS/DATOS_READONLY/fb2p_frm_2.scx differ diff --git a/TESTS/DATOS_READONLY/fb2p_test.pjt b/TESTS/DATOS_READONLY/fb2p_test.pjt index b44124a..f88d1fa 100644 Binary files a/TESTS/DATOS_READONLY/fb2p_test.pjt and b/TESTS/DATOS_READONLY/fb2p_test.pjt differ diff --git a/TESTS/DATOS_READONLY/fb2p_test.pjx b/TESTS/DATOS_READONLY/fb2p_test.pjx index baaabd2..8ef0695 100644 Binary files a/TESTS/DATOS_READONLY/fb2p_test.pjx and b/TESTS/DATOS_READONLY/fb2p_test.pjx differ diff --git a/TESTS/DATOS_READONLY/fb2p_test.vc2 b/TESTS/DATOS_READONLY/fb2p_test.vc2 index 13c10dd..18ff8b2 100644 --- a/TESTS/DATOS_READONLY/fb2p_test.vc2 +++ b/TESTS/DATOS_READONLY/fb2p_test.vc2 @@ -5,10 +5,13 @@ *< FOXBIN2PRG: Version="1.19" SourceFile="fb2p_test.vcx" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries) * +* +*< LIBCOMMENT: Comentario principal de "fb2p_test.vcx" /> * DEFINE CLASS cl_commandgroup AS commandgroup && Descripción de cl_CommandGroup *< CLASSDATA: Baseclass="commandgroup" Timestamp="" Scale="Pixels" Uniqueid="" /> + #INCLUDE "..\..\include\principal.h" * *p: una_prop_cmgroup && Con comentario, pero sin valor * @@ -46,13 +49,13 @@ DEFINE CLASS cl_form AS form OLEPUBLIC && mi OLE server DLL * *p: chidden && Prop.Hidden *p: cprotected && Prop.Protegida - *a: ^ahidden[1,0] && Array Oculto - *a: ^aprotected[1,0] && Array Protegido + *a: ahidden[1,0] && Array Oculto + *a: aprotected[1,0] && Array Protegido *p: _memberdata && XML Metadata for customizable properties * - HIDDEN chidden - PROTECTED cprotected + HIDDEN chidden,ahidden + PROTECTED cprotected,aprotected Caption = "Form" chidden = && Prop.Hidden cprotected = && Prop.Protegida @@ -60,6 +63,7 @@ DEFINE CLASS cl_form AS form OLEPUBLIC && mi OLE server DLL Height = 345 Left = 0 Name = "cl_form" + Picture = bmps\scccheckout.bmp Top = 0 Width = 570 _memberdata = @@ -153,7 +157,7 @@ DEFINE CLASS cl_imagen AS image OLEPUBLIC && otro ole *< CLASSDATA: Baseclass="image" Timestamp="" Scale="Pixels" Uniqueid="" /> * - *m: *un_metodo_de_clase && Para testear si el código se va a la clase cl_form + *m: un_metodo_de_clase && Para testear si el código se va a la clase cl_form * Height = 16 @@ -180,8 +184,8 @@ DEFINE CLASS cl_optiongroup AS optiongroup && descripcion *< CLASSDATA: Baseclass="optiongroup" Timestamp="" Scale="Pixels" Uniqueid="" /> * - *m: *propiedad_de_clase_con_valor_access - *m: *propiedad_de_clase_con_valor_assign + *m: propiedad_de_clase_con_valor_access + *m: propiedad_de_clase_con_valor_assign *p: propiedad_de_clase_con_valor && Tiene un valor por defecto *p: propiedad_de_clase_sin_valor && Una propiedad sin valor para heredar * diff --git a/TESTS/DATOS_READONLY/fb2p_test.vct b/TESTS/DATOS_READONLY/fb2p_test.vct index a112e25..b6955e7 100644 Binary files a/TESTS/DATOS_READONLY/fb2p_test.vct and b/TESTS/DATOS_READONLY/fb2p_test.vct differ diff --git a/TESTS/DATOS_READONLY/fb2p_test.vcx b/TESTS/DATOS_READONLY/fb2p_test.vcx index e63441a..bac14b3 100644 Binary files a/TESTS/DATOS_READONLY/fb2p_test.vcx and b/TESTS/DATOS_READONLY/fb2p_test.vcx differ diff --git a/TESTS/DATOS_READONLY/fcl_optiongroup.sct b/TESTS/DATOS_READONLY/fcl_optiongroup.sct new file mode 100644 index 0000000..c0e2cc2 Binary files /dev/null and b/TESTS/DATOS_READONLY/fcl_optiongroup.sct differ diff --git a/TESTS/DATOS_READONLY/fcl_optiongroup.scx b/TESTS/DATOS_READONLY/fcl_optiongroup.scx new file mode 100644 index 0000000..26eb742 Binary files /dev/null and b/TESTS/DATOS_READONLY/fcl_optiongroup.scx differ diff --git a/TESTS/DATOS_READONLY/lib_controles.vct b/TESTS/DATOS_READONLY/lib_controles.vct new file mode 100644 index 0000000..8a748bb Binary files /dev/null and b/TESTS/DATOS_READONLY/lib_controles.vct differ diff --git a/TESTS/DATOS_READONLY/lib_controles.vcx b/TESTS/DATOS_READONLY/lib_controles.vcx new file mode 100644 index 0000000..9df962d Binary files /dev/null and b/TESTS/DATOS_READONLY/lib_controles.vcx differ diff --git a/TESTS/DATOS_READONLY/lib_controles2.vct b/TESTS/DATOS_READONLY/lib_controles2.vct new file mode 100644 index 0000000..725cf64 Binary files /dev/null and b/TESTS/DATOS_READONLY/lib_controles2.vct differ diff --git a/TESTS/DATOS_READONLY/lib_controles2.vcx b/TESTS/DATOS_READONLY/lib_controles2.vcx new file mode 100644 index 0000000..e802f54 Binary files /dev/null and b/TESTS/DATOS_READONLY/lib_controles2.vcx differ diff --git a/TESTS/FoxPro9_Order_for_Control_Properties.xlsx b/TESTS/FoxPro9_Order_for_Control_Properties.xlsx new file mode 100644 index 0000000..2f28b9b Binary files /dev/null and b/TESTS/FoxPro9_Order_for_Control_Properties.xlsx differ diff --git a/TESTS/PCT_DLL.dll b/TESTS/PCT_DLL.dll new file mode 100644 index 0000000..4ef5959 Binary files /dev/null and b/TESTS/PCT_DLL.dll differ diff --git a/TESTS/fxu_lib_objetos_y_funciones_de_soporte.prg b/TESTS/fxu_lib_objetos_y_funciones_de_soporte.prg index f12c2be..858db86 100644 --- a/TESTS/fxu_lib_objetos_y_funciones_de_soporte.prg +++ b/TESTS/fxu_lib_objetos_y_funciones_de_soporte.prg @@ -4,6 +4,46 @@ *---------------------------------------------------------------------------------------- + +FUNCTION TaskBarHeight + DECLARE INTEGER GetWindowRect IN user32; + INTEGER HWND, STRING lpRect + DECLARE INTEGER FindWindow IN user32; + STRING lpClassName,; + STRING lpWindowName + + LOCAL cBuffer + cBuffer = REPLICATE(CHR(0), 16) + hWindow= FindWindow('Shell_TrayWnd', '') + cRect = GetWinRect(hWindow) + RETURN TRANSFORM( buf2dword( SUBSTR(cRect, 13,4)) - buf2dword( SUBSTR(cRect, 5,4) ) ) +ENDFUNC + + +FUNCTION GetWinRect(hWindow) + LOCAL cBuffer + cBuffer = REPLICATE(CHR(0), 16) + = GetWindowRect(hWindow, @cBuffer) + RETURN cBuffer +ENDFUNC + + +FUNCTION buf2dword(lcBuffer) + RETURN ASC(SUBSTR(lcBuffer, 1,1)) + ; + BITLSHIFT(ASC(SUBSTR(lcBuffer, 2,1)), 8) +; + BITLSHIFT(ASC(SUBSTR(lcBuffer, 3,1)), 16) +; + BITLSHIFT(ASC(SUBSTR(lcBuffer, 4,1)), 24) +ENDFUNC + + +DEFINE CLASS cl_Column AS Column +ENDDEFINE + + +DEFINE CLASS cl_Header AS Header +ENDDEFINE + + DEFINE CLASS CL_FXU_CONFIG AS CUSTOM #IF .F. LOCAL THIS AS CL_FXU_CONFIG OF 'fxu_lib_objetos_y_funciones_de_soporte.PRG' @@ -27,12 +67,12 @@ DEFINE CLASS CL_FXU_CONFIG AS CUSTOM cPathDatosReadOnly = 'TESTS\DATOS_READONLY' cPathDatosTest = 'TESTS\DATOS_TEST' cSetDate = '' - + *---------------------------------------------------------------------------------------- PROCEDURE INIT THIS.cSetDate = SET("Date") - + SET DATE TO YMD SET HOURS TO 24 SET SAFETY OFF @@ -66,7 +106,7 @@ DEFINE CLASS CL_FXU_CONFIG AS CUSTOM *---------------------------------------------------------------------------------------- PROCEDURE copiarArchivosParaTest LPARAMETERS tcFileSpec - + COPY FILE (FORCEPATH( tcFileSpec, THIS.cPathDatosReadOnly )) TO (FORCEPATH( tcFileSpec, THIS.cPathDatosTest )) ENDPROC diff --git a/TESTS/pct_dll.txt b/TESTS/pct_dll.txt new file mode 100644 index 0000000..00ebe70 --- /dev/null +++ b/TESTS/pct_dll.txt @@ -0,0 +1,22 @@ +* http://www.tek-tips.com/viewthread.cfm?qid=769626 +* ftp://tek-tips:tek-tips@69.14.191.20/tek-tips/pct_dll/pct_dll.zip + +lcWallpaper="C:\Documents and Settings\brian\My Documents\My Pictures\Img_0011.jpg" + +Declare Integer tobmp IN "PCT_DLL.dll" ; +String jpgfilename, String bmpfilename + +retval = tobmp(lcWallpaper,JUSTPATH(lcWallpaper)+"\"+JUSTSTEM(lcWallpaper)+".bmp") + +lcWallpaper=JUSTPATH(lcWallpaper)+"\"+JUSTSTEM(lcWallpaper)+".bmp" + +DO JpgWallPaper WITH lcWallpaper + +PROCEDURE JpgWallPaper + PARAMETERS lcWallpaper + DECLARE INTEGER SystemParametersInfo IN WIN32API ; + INTEGER uiAction, INTEGER uiParam,; + STRING @pvParam, INTEGER fWinIni + + SystemParametersInfo (20 , 0, @lcWallpaper, 3) +ENDPROC diff --git a/TESTS/readme.txt b/TESTS/readme.txt new file mode 100644 index 0000000..ecc07b1 --- /dev/null +++ b/TESTS/readme.txt @@ -0,0 +1,201 @@ + +Last year, I've spend a lot of time to develop a picture treatment dll, there are 6 functions in this dll, +they are: + +1 formtobmp +2 formtobmpA +3 tojpeg +4 tobmp +5 getbmpdimension +6 getjpgdimension + +In this paper, I'll simply explain their functionality, parameters and how to use them. + +Anybody who need source code of this dll, please email to njjane@21cn.com (they are write by are C++,not vfp). + + James Khan + njjane@21cn.com + http://www.myf1.net/foxcryptor/ +==================================================================================================== + +Important : To correct use PCT_DLL.dll, you must put it to your system directory or current directory!!! + + + +1 formtobmp +-------------------------------------------------------------------------------- +Description: + capture window or screen image into a bitmap file + +Declareation: + Declare Integer formtobmp IN "PCT_DLL.dll" integer hwnd,String bmpFileName + +Parameters: + hwnd + Handle to the window to be saves to a bitmap file. if this parameter is zero, then saves desktop to a bitmap file. + + bmpFileName + The bitmap filename to be save. must include full path name. + +Note: + The function returns a zero result on success,else 1 is returned. + +Example in Visual FoxPro: + +retVal = formtobmp(0,"c:\screen.bmp") && Save screen to file c:\screen.bmp +if retval = 0 && if success + messagebox("Capture screen ok! bmp file has been saved to file c:\screen.bmp") +endif +-------------------------------------------------------------------------------- + + + +2 formtobmpA +-------------------------------------------------------------------------------- +Description: + also a function to capture window or screen image into a bitmap file,but in this function, + you can specified a area of screen/window to save. + +Declareation: + Declare Integer formtobmpA IN "PCT_DLL.dll" string bmpfilename,integer nX,integer nY,integer nX2,integer nY2 + +Parameters: + bmpFileName + The bitmap filename to be save. must include full path name. + nX + x-coord of upper-left corner of bitmap file + nX2 + x-coord of lower-right corner of bitmap file + nY + y-coord of upper-left corner of bitmap file + nY2 + y-coord of lower-right corner of bitmap file + +Note: + The function returns a zero result on success,else 1 is returned. + +Example in Visual FoxPro: + +retVal = formtobmpA("c:\screen0.bmp",20,20,400,400) && Save screen to file c:\screen.bmp +if retval = 0 + messagebox("Capture screen ok!") +endif +-------------------------------------------------------------------------------- + + +3 tojpeg +-------------------------------------------------------------------------------- +Description: + Convert a bmp file to a jpg file + +Declareation: + Declare Integer tojpeg IN "PCT_DLL.dll" String bmpfilename, String jpgfilename + +Parameters: + bmpfilename + BMP filename to be convert. + jpgfilename + JPEG filename + +Note: + The function returns a zero result on success,else 1 is returned. + +Example in Visual FoxPro: + +retval = tojpeg("c:\screen.bmp","c:\screen.jpg") && Convert c:\screen.bmp to c:\screen.jpg + +if retval = 0 + messagebox("Convert bitmap to jpeg ok!") +endif +-------------------------------------------------------------------------------- + +4 tobmp +-------------------------------------------------------------------------------- +Description: + Convert a jpg file to a bmp file + +Declareation: + Declare Integer tobmp IN "PCT_DLL.dll" String jpgfilename, String bmpfilename + +Parameters: + jpgfilename + JPEG filename to be convert. + bmpfilename + BMP filename + +Note: + The function returns a zero result on success,else 1 is returned. + +Example in Visual FoxPro: + +retval = tobmp("c:\screen.jpg","c:\screen2.bmp") && Convert c:\screen.jpg to c:\screen2.bmp +if retval = 0 + messagebox("Convert jpeg to bitmap success!") +endif +-------------------------------------------------------------------------------- + + +5 getbmpdimension +-------------------------------------------------------------------------------- +Description: + Get a dimensions of a bitmap + +Declareation: + Declare Integer getbmpdimension IN "PCT_DLL.dll" string bmpfilename, integer @ nwidth,integer @ nheight + +Parameters: + bmpfilename + origin bitmap filename. + + nwidth + bitmap's width measured in pixels. + + nheight + bitmap's height measured in pixels. + +Note: + if success, return value 0, else return 1. + if success, variable nwidth hold the bitmap's width ,variable nheight hold the bitmap's height. + +Example in Visual FoxPro: + +nwidth=0 +nheight=0 +retval = getbmpdimension("c:\screen.bmp",@ nwidth, @ nheight) +if retval = 0 + messagebox("Width:"+str(nwidth)+chr(13)+"Height:"+str(nheight)) +endif +-------------------------------------------------------------------------------- + +6 getjpgdimension +-------------------------------------------------------------------------------- +Description: + Get a dimensions of a jpeg file + +Declareation: + Declare Integer getjpgdimension IN "PCT_DLL.dll" string jpgfilename, integer @ nwidth,integer @ nheight + +Parameters: + jpgfilename + origin jpeg filename. + + nwidth + jpeg's width measured in pixels. + + nheight + jpeg's height measured in pixels. + +Note: + if success, return value 0, else return 1. + if success, variable nwidth hold the jpeg's width ,variable nheight hold the jpeg's height. + +Example in Visual FoxPro: + +nwidth=0 +nheight=0 +retval = getjpgdimension("c:\screen.jpg",@ nwidth, @ nheight) +if retval = 0 + messagebox("Width:"+str(nwidth)+chr(13)+"Height:"+str(nheight)) +endif + +clear dlls \ No newline at end of file diff --git a/TESTS/ut__foxbin2prg.prg b/TESTS/ut__foxbin2prg.prg index 982e33f..3a5139c 100644 --- a/TESTS/ut__foxbin2prg.prg +++ b/TESTS/ut__foxbin2prg.prg @@ -25,6 +25,8 @@ DEFINE CLASS ut__foxbin2prg AS FxuTestCase OF FxuTestCase.prg FUNCTION SETUP PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' *LOCAL loObj AS c_conversor_base OF "FOXBIN2PRG.PRG" + *DOEVENTS FORCE + MOUSE AT 0,0 SET PROCEDURE TO 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' oFXU_LIB = CREATEOBJECT('CL_FXU_CONFIG') oFXU_LIB.setup_comun() @@ -48,6 +50,7 @@ DEFINE CLASS ut__foxbin2prg AS FxuTestCase OF FxuTestCase.prg oFXU_LIB = NULL ENDIF RELEASE PROCEDURE 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + SYS(1104) ENDFUNC @@ -79,8 +82,8 @@ DEFINE CLASS ut__foxbin2prg AS FxuTestCase OF FxuTestCase.prg THIS.messageout( LOWER(PROGRAM(PROGRAM(-1)-1)) ) THIS.messageout( 'Recno#' + TRANSFORM(tnRecno) + ' UniqueID="' + toReg_Esperado.UniqueID + '" ObjType=' + TRANSFORM(toReg_Esperado.ObjType) ; - + ' ObjCode=' + TRANSFORM(toReg_Esperado.ObjCode) + ' Expr=[' + LEFT(toReg_Esperado.Expr,20) ; - + IIF(LEN(toReg_Esperado.Expr)>20,'...]',']') ; + + ' ObjCode=' + TRANSFORM(toReg_Esperado.ObjCode) + ' Expr=[' + LEFT(toReg_Esperado.EXPR,20) ; + + IIF(LEN(toReg_Esperado.EXPR)>20,'...]',']') ; + ' vpos=' + TRANSFORM(toReg_Esperado.VPOS) + ' hpos=' + TRANSFORM(toReg_Esperado.HPOS) ; + ' height=' + TRANSFORM(toReg_Esperado.HEIGHT) + ' width=' + TRANSFORM(toReg_Esperado.WIDTH) ) @@ -306,7 +309,7 @@ DEFINE CLASS ut__foxbin2prg AS FxuTestCase OF FxuTestCase.prg STORE 0 TO lnCodError_Esperado lnRecno = RECNO() SCATTER MEMO NAME loReg_Esperado - lcUniqueID = loReg_Esperado.UNIQUEID + lcUniqueID = loReg_Esperado.UniqueID *-- TEST IF FILE(lc_OutputFile) @@ -316,7 +319,7 @@ DEFINE CLASS ut__foxbin2prg AS FxuTestCase OF FxuTestCase.prg ERROR 'No se encontró el archivo "' + lc_OutputFile + '"' ENDIF - LOCATE FOR UNIQUEID==lcUniqueID + LOCATE FOR UniqueID==lcUniqueID IF NOT FOUND() ERROR 'No se encontró el registro #' + TRANSFORM(RECNO('ARCHIVOBIN_IN')) + ' con UniqueID "' + lcUniqueID + '" en el archivo "' + lc_OutputFile + '"' @@ -382,7 +385,7 @@ DEFINE CLASS ut__foxbin2prg AS FxuTestCase OF FxuTestCase.prg STORE 0 TO lnCodError_Esperado lnRecno = RECNO() SCATTER MEMO NAME loReg_Esperado - lcUniqueID = loReg_Esperado.UNIQUEID + lcUniqueID = loReg_Esperado.UniqueID *-- TEST IF FILE(lc_OutputFile) @@ -392,7 +395,7 @@ DEFINE CLASS ut__foxbin2prg AS FxuTestCase OF FxuTestCase.prg ERROR 'No se encontró el archivo "' + lc_OutputFile + '"' ENDIF - LOCATE FOR UNIQUEID==lcUniqueID + LOCATE FOR UniqueID==lcUniqueID IF NOT FOUND() ERROR 'No se encontró el registro #' + TRANSFORM(RECNO('ARCHIVOBIN_IN')) + ' con UniqueID "' + lcUniqueID + '" en el archivo "' + lc_OutputFile + '"' @@ -451,7 +454,7 @@ DEFINE CLASS ut__foxbin2prg AS FxuTestCase OF FxuTestCase.prg SELECT 0 USE (lc_InputFile) SHARED AGAIN NOUPDATE ALIAS ARCHIVOBIN_IN - SCAN ALL FOR NOT DELETED() AND ( UNIQUEID==PADR('Form',10) OR PLATFORM==PADR("WINDOWS",8) ) + SCAN ALL FOR NOT DELETED() AND ( UniqueID==PADR('Form',10) OR PLATFORM==PADR("WINDOWS",8) ) *-- DATOS ESPERADOS STORE 0 TO lnCodError_Esperado SCATTER MEMO NAME loReg_Esperado @@ -468,9 +471,9 @@ DEFINE CLASS ut__foxbin2prg AS FxuTestCase OF FxuTestCase.prg ENDIF IF EMPTY(lcParent) AND EMPTY(lcClass) AND EMPTY(lcObjName) - LOCATE FOR PLATFORM==PADR("COMMENT",8) AND UNIQUEID==PADR("Screen",10) + LOCATE FOR PLATFORM==PADR("COMMENT",8) AND UniqueID==PADR("Screen",10) IF NOT FOUND() - ERROR 'No se encontró el registro de cabecera "' + UNIQUEID + '"' + ERROR 'No se encontró el registro de cabecera "' + UniqueID + '"' ENDIF ELSE LOCATE FOR LOWER(CLASS)==lcClass AND LOWER(PARENT)==lcParent AND LOWER(objName)==lcObjName @@ -532,13 +535,13 @@ DEFINE CLASS ut__foxbin2prg AS FxuTestCase OF FxuTestCase.prg SELECT 0 USE (lc_OutputFile) SHARED AGAIN NOUPDATE ALIAS TABLABIN - LOCATE FOR ObjName = 'Pageframe1' AND NOT DELETED() AND PLATFORM==PADR("WINDOWS",8) - - this.assertequals( .T., FOUND(), 'No se ha encontrado el objeto "Pageframe1" que se iba a testear' ) + LOCATE FOR objName = 'Pageframe1' AND NOT DELETED() AND PLATFORM==PADR("WINDOWS",8) + + THIS.assertequals( .T., FOUND(), 'No se ha encontrado el objeto "Pageframe1" que se iba a testear' ) *-- DATOS ESPERADOS STORE 0 TO lnCodError_Esperado - SCATTER FIELDS Properties MEMO NAME loReg + SCATTER FIELDS PROPERTIES MEMO NAME loReg DIMENSION laProps_Esperado(8) laProps_Esperado( 1) = 'ErasePage' laProps_Esperado( 2) = 'PageCount' @@ -548,27 +551,27 @@ DEFINE CLASS ut__foxbin2prg AS FxuTestCase OF FxuTestCase.prg laProps_Esperado( 6) = 'Height' laProps_Esperado( 7) = 'Width' laProps_Esperado( 8) = 'Name' - + *-- TEST - =ALINES(laProps, loReg.Properties) - - this.messageout( 'Línea : Valor esperado => Valor actual' ) - this.messageout( REPLICATE('-',50) ) + =ALINES(laProps, loReg.PROPERTIES) + + THIS.messageout( 'Línea : Valor esperado => Valor actual' ) + THIS.messageout( REPLICATE('-',50) ) FOR I = 1 TO ALEN(laProps_Esperado) lcProp = GETWORDNUM(laProps(I),1) - this.messageout( 'Línea ' + TRANSFORM(I) + ': ' + laProps_Esperado(I) + ' => ' + lcProp ) + THIS.messageout( 'Línea ' + TRANSFORM(I) + ': ' + laProps_Esperado(I) + ' => ' + lcProp ) ENDFOR FOR I = 1 TO ALEN(laProps_Esperado) lcProp = GETWORDNUM(laProps(I),1) - this.assertequals( laProps_Esperado(I), lcProp, 'Elemento (' + TRANSFORM(I) + ') del Memo Properties' ) + THIS.assertequals( laProps_Esperado(I), lcProp, 'Elemento (' + TRANSFORM(I) + ') del Memo Properties' ) ENDFOR *USE IN (SELECT("TABLABIN")) *THIS.Evaluate_results( loEx, lnCodError_Esperado, lc_OutputFile, lcParent, lcClass, lcObjName ; - , loReg_Esperado, loReg, lcTipoBinario ) + , loReg_Esperado, loReg, lcTipoBinario ) CATCH TO loEx THIS.Evaluate_results( loEx, lnCodError_Esperado, lc_OutputFile, lcParent, lcClass, lcObjName, loReg_Esperado ) @@ -615,42 +618,49 @@ DEFINE CLASS ut__foxbin2prg AS FxuTestCase OF FxuTestCase.prg SELECT 0 USE (lc_OutputFile) SHARED AGAIN NOUPDATE ALIAS TABLABIN - LOCATE FOR ObjName = 'Optiongroup1' AND NOT DELETED() AND PLATFORM==PADR("WINDOWS",8) - - this.assertequals( .T., FOUND(), 'No se ha encontrado el objeto "Optiongroup1" que se iba a testear' ) + LOCATE FOR objName = 'Optiongroup1' AND NOT DELETED() AND PLATFORM==PADR("WINDOWS",8) + + THIS.assertequals( .T., FOUND(), 'No se ha encontrado el objeto "Optiongroup1" que se iba a testear' ) *-- DATOS ESPERADOS STORE 0 TO lnCodError_Esperado - SCATTER FIELDS Properties MEMO NAME loReg + SCATTER FIELDS PROPERTIES MEMO NAME loReg DIMENSION laProps_Esperado(7) laProps_Esperado( 1) = 'ButtonCount' - laProps_Esperado( 2) = 'Value' - laProps_Esperado( 3) = 'Top' - laProps_Esperado( 4) = 'Left' - laProps_Esperado( 5) = 'Height' - laProps_Esperado( 6) = 'Width' + *laProps_Esperado( 2) = 'Value' + *laProps_Esperado( 3) = 'Top' + *laProps_Esperado( 4) = 'Left' + *laProps_Esperado( 5) = 'Height' + *laProps_Esperado( 6) = 'Width' + *laProps_Esperado( 7) = 'Name' + *-- 13/05/2014. v1.19.22 - Reordenamiento de todas propiedades + laProps_Esperado( 2) = 'Top' + laProps_Esperado( 3) = 'Left' + laProps_Esperado( 4) = 'Height' + laProps_Esperado( 5) = 'Width' + laProps_Esperado( 6) = 'Value' laProps_Esperado( 7) = 'Name' - + *-- TEST - =ALINES(laProps, loReg.Properties) - - this.messageout( 'Línea : Valor esperado => Valor actual' ) - this.messageout( REPLICATE('-',50) ) + =ALINES(laProps, loReg.PROPERTIES) + + THIS.messageout( 'Línea : Valor esperado => Valor actual' ) + THIS.messageout( REPLICATE('-',50) ) FOR I = 1 TO ALEN(laProps_Esperado) lcProp = GETWORDNUM(laProps(I),1) - this.messageout( 'Línea ' + TRANSFORM(I) + ': ' + laProps_Esperado(I) + ' => ' + lcProp ) + THIS.messageout( 'Línea ' + TRANSFORM(I) + ': ' + laProps_Esperado(I) + ' => ' + lcProp ) ENDFOR FOR I = 1 TO ALEN(laProps_Esperado) lcProp = GETWORDNUM(laProps(I),1) - this.assertequals( laProps_Esperado(I), lcProp, 'Elemento (' + TRANSFORM(I) + ') del Memo Properties' ) + THIS.assertequals( laProps_Esperado(I), lcProp, 'Elemento (' + TRANSFORM(I) + ') del Memo Properties' ) ENDFOR *USE IN (SELECT("TABLABIN")) *THIS.Evaluate_results( loEx, lnCodError_Esperado, lc_OutputFile, lcParent, lcClass, lcObjName ; - , loReg_Esperado, loReg, lcTipoBinario ) + , loReg_Esperado, loReg, lcTipoBinario ) CATCH TO loEx THIS.Evaluate_results( loEx, lnCodError_Esperado, lc_OutputFile, lcParent, lcClass, lcObjName, loReg_Esperado ) @@ -700,7 +710,7 @@ DEFINE CLASS ut__foxbin2prg AS FxuTestCase OF FxuTestCase.prg SELECT 0 USE (lc_InputFile) SHARED AGAIN NOUPDATE ALIAS ARCHIVOBIN_IN - SCAN ALL FOR NOT DELETED() AND ( UNIQUEID==PADR('Class',10) OR PLATFORM==PADR("WINDOWS",8) ) + SCAN ALL FOR NOT DELETED() AND ( UniqueID==PADR('Class',10) OR PLATFORM==PADR("WINDOWS",8) ) *-- DATOS ESPERADOS STORE 0 TO lnCodError_Esperado SCATTER MEMO NAME loReg_Esperado @@ -717,9 +727,9 @@ DEFINE CLASS ut__foxbin2prg AS FxuTestCase OF FxuTestCase.prg ENDIF IF EMPTY(lcParent) AND EMPTY(lcClass) AND EMPTY(lcObjName) - LOCATE FOR PLATFORM==PADR("COMMENT",8) AND UNIQUEID==PADR("Class",10) + LOCATE FOR PLATFORM==PADR("COMMENT",8) AND UniqueID==PADR("Class",10) IF NOT FOUND() - ERROR 'No se encontró el registro de cabecera "' + UNIQUEID + '"' + ERROR 'No se encontró el registro de cabecera "' + UniqueID + '"' ENDIF ELSE LOCATE FOR LOWER(CLASS)==lcClass AND LOWER(PARENT)==lcParent AND LOWER(objName)==lcObjName @@ -782,7 +792,7 @@ DEFINE CLASS ut__foxbin2prg AS FxuTestCase OF FxuTestCase.prg SELECT 0 USE (lc_InputFile) SHARED AGAIN NOUPDATE ALIAS ARCHIVOBIN_IN - SCAN ALL FOR NOT DELETED() AND ( UNIQUEID==PADR('Class',10) OR PLATFORM==PADR("WINDOWS",8) ) + SCAN ALL FOR NOT DELETED() AND ( UniqueID==PADR('Class',10) OR PLATFORM==PADR("WINDOWS",8) ) *-- DATOS ESPERADOS STORE 0 TO lnCodError_Esperado SCATTER MEMO NAME loReg_Esperado @@ -799,9 +809,9 @@ DEFINE CLASS ut__foxbin2prg AS FxuTestCase OF FxuTestCase.prg ENDIF IF EMPTY(lcParent) AND EMPTY(lcClass) AND EMPTY(lcObjName) - LOCATE FOR PLATFORM==PADR("COMMENT",8) AND UNIQUEID==PADR("Class",10) + LOCATE FOR PLATFORM==PADR("COMMENT",8) AND UniqueID==PADR("Class",10) IF NOT FOUND() - ERROR 'No se encontró el registro de cabecera "' + UNIQUEID + '"' + ERROR 'No se encontró el registro de cabecera "' + UniqueID + '"' ENDIF ELSE LOCATE FOR LOWER(CLASS)==lcClass AND LOWER(PARENT)==lcParent AND LOWER(objName)==lcObjName @@ -864,7 +874,7 @@ DEFINE CLASS ut__foxbin2prg AS FxuTestCase OF FxuTestCase.prg SELECT 0 USE (lc_InputFile) SHARED AGAIN NOUPDATE ALIAS ARCHIVOBIN_IN - SCAN ALL FOR NOT DELETED() AND ( UNIQUEID==PADR('Class',10) OR PLATFORM==PADR("WINDOWS",8) ) + SCAN ALL FOR NOT DELETED() AND ( UniqueID==PADR('Class',10) OR PLATFORM==PADR("WINDOWS",8) ) *-- DATOS ESPERADOS STORE 0 TO lnCodError_Esperado SCATTER MEMO NAME loReg_Esperado @@ -881,9 +891,9 @@ DEFINE CLASS ut__foxbin2prg AS FxuTestCase OF FxuTestCase.prg ENDIF IF EMPTY(lcParent) AND EMPTY(lcClass) AND EMPTY(lcObjName) - LOCATE FOR PLATFORM==PADR("COMMENT",8) AND UNIQUEID==PADR("Class",10) + LOCATE FOR PLATFORM==PADR("COMMENT",8) AND UniqueID==PADR("Class",10) IF NOT FOUND() - ERROR 'No se encontró el registro de cabecera "' + UNIQUEID + '"' + ERROR 'No se encontró el registro de cabecera "' + UniqueID + '"' ENDIF ELSE LOCATE FOR LOWER(CLASS)==lcClass AND LOWER(PARENT)==lcParent AND LOWER(objName)==lcObjName @@ -911,4 +921,277 @@ DEFINE CLASS ut__foxbin2prg AS FxuTestCase OF FxuTestCase.prg ENDFUNC + ******************************************************************************************************************************************* + FUNCTION Evaluate_Bitmap_Test + LPARAMETERS tcTestName, tcControlName, tcFormName + + IF PCOUNT() = 0 + THIS.messageout( "* Support method, not a valid test." ) + RETURN .T. + ENDIF + + LOCAL lnCodError, lnCodError_Esperado ; + , lc_File, lcFile2, lc_OutputFile, lcTipoBinario, lcLib, lcBMP0, lcBMP1 ; + , lcParent, lcClass, lcObjName, loReg_Esperado ; + , loCtl AS f_optiongroup OF "TESTS\DATOS_READONLY\LIB_CONTROLES.VCX" ; + , loCnv AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loCnv = NEWOBJECT("c_foxbin2prg", "FOXBIN2PRG.PRG") + *loCnv.l_Debug = .F. + *loCnv.l_ShowErrors = .F. + *loCnv.l_Test = .T. + *loCnv.l_PropSort_Enabled = .F. && Para buscar diferencias + *loCnv.l_MethodSort_Enabled = .F. && Para buscar diferencias + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError, lnCodError_Esperado + + lcTipoBinario = EVL( UPPER(JUSTEXT(EVL(tcFormName,''))), 'VCX' ) + + *-- Copio la librería en DATOS_TEST + lcLib = FORCEPATH( "LIB_CONTROLES.VCX", oFXU_LIB.cPathDatosTest ) + lc_File2 = 'LIB_CONTROLES.VCX' + lc_OutputFile = FORCEPATH( lc_File2, oFXU_LIB.cPathDatosTest ) + + IF lcTipoBinario = 'SCX' + lc_File = UPPER(tcFormName) + lc_OutputFile = FORCEPATH( lc_File, oFXU_LIB.cPathDatosTest ) + ENDIF + + loCnv.l_NoTimestamps = .F. + loCnv.l_ClearUniqueID = .F. + + IF lcTipoBinario = 'SCX' + oFXU_LIB.copiarArchivosParaTest( FORCEEXT( lc_File, LEFT( JUSTEXT(lc_File),2 ) + 'X' ) ) + oFXU_LIB.copiarArchivosParaTest( FORCEEXT( lc_File, LEFT( JUSTEXT(lc_File),2 ) + 'T' ) ) + ENDIF + + oFXU_LIB.copiarArchivosParaTest( FORCEEXT( lc_File2, LEFT( JUSTEXT(lc_File2),2 ) + 'X' ) ) + oFXU_LIB.copiarArchivosParaTest( FORCEEXT( lc_File2, LEFT( JUSTEXT(lc_File2),2 ) + 'T' ) ) + + *-- Genero TX2 + loCnv.Ejecutar( lc_OutputFile, .F., .F., .F., '1', '0', '1', '', '', .T., '', SYS(5)+CURDIR(), '1', '0' ) + + *-- Genero BMP con libreria original + SET CLASSLIB TO (lcLib) ADDITIVE + IF lcTipoBinario = 'SCX' + DO FORM (lc_OutputFile) NAME loCtl LINKED NOSHOW + ELSE + loCtl = CREATEOBJECT( tcControlName ) + ENDIF + loCtl.c_testname = tcTestName + '_0' + IF loCtl.BaseClass = 'Formset' + loCtl.Forms(1).ALWAYSONTOP= .T. + loCtl.SHOW() + loCtl.REFRESH() + ELSE + loCtl.ALWAYSONTOP= .T. + loCtl.SHOW() + ENDIF + loCtl.HIDE() + loCtl.RELEASE() + loCtl = NULL + RELEASE CLASSLIB (lcLib) + CLEAR CLASSLIB (lcLib) + + *-- Genero BIN + loCnv.Ejecutar( FORCEEXT(lc_OutputFile, LEFT( JUSTEXT(lc_OutputFile),2 ) + '2' ), .F., .F., .F., '1', '0', '1', '', '', .T., '', SYS(5)+CURDIR(), '1', '0' ) + + *-- Genero BMP con libreria regenerada + SET CLASSLIB TO (lcLib) ADDITIVE + IF lcTipoBinario = 'SCX' + DO FORM (lc_OutputFile) NAME loCtl LINKED NOSHOW + ELSE + loCtl = CREATEOBJECT( tcControlName ) + ENDIF + loCtl.c_testname = tcTestName + '_1' + IF loCtl.BaseClass = 'Formset' + loCtl.Forms(1).ALWAYSONTOP= .T. + loCtl.SHOW() + loCtl.REFRESH() + ELSE + loCtl.ALWAYSONTOP= .T. + loCtl.SHOW() + ENDIF + loCtl.HIDE() + loCtl.RELEASE() + loCtl = NULL + RELEASE CLASSLIB (lcLib) + CLEAR CLASSLIB (lcLib) + + *-- Comparo resultados + lcBMP0 = FORCEPATH( tcTestName + '_0.bmp', oFXU_LIB.cPathDatosTest ) + lcBMP1 = FORCEPATH( tcTestName + '_1.bmp', oFXU_LIB.cPathDatosTest ) + + THIS.messageout( "Se comparan bitmaps de pantalla, para saber si hay cambios estéticos y detectar fallos al ensamblar el binario" ) + THIS.messageout( "lcBMP0 = " + lcBMP0 ) + THIS.messageout( "lcBMP1 = " + lcBMP1 ) + THIS.asserttrue( FILETOSTR( lcBMP0 ) == FILETOSTR( lcBMP1 ), "COMPARACIÓN DE BITMAPS" ) + + + CATCH TO loEx + THIS.Evaluate_results( loEx, lnCodError_Esperado, lc_OutputFile, lcParent, lcClass, lcObjName, loReg_Esperado ) + + FINALLY + * USE IN (SELECT("ARCHIVOBIN_IN")) + * USE IN (SELECT("TABLABIN")) + STORE NULL TO loCnv, loCtl + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Ejecutar_FOXBIN2PRG_ParaLaClase__LIB_CONTROLES__F_OptionGroup__YValidarLaVisualizacionDePantalla + + THIS.evaluate_bitmap_test( 'OptionGroup_Test', 'f_OptionGroup', '' ) + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Ejecutar_FOXBIN2PRG_ParaElForm__F_OptionGroup__YValidarLaVisualizacionDePantalla + + THIS.evaluate_bitmap_test( 'OptionGroup_Test', 'f_OptionGroup', 'F_OPTIONGROUP.SCX' ) + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Ejecutar_FOXBIN2PRG_ParaLaClase__LIB_CONTROLES__F_Checkbox__YValidarLaVisualizacionDePantalla + + THIS.evaluate_bitmap_test( 'Checkbox_Test', 'f_Checkbox', '' ) + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Ejecutar_FOXBIN2PRG_ParaElForm__F_Checkbox__YValidarLaVisualizacionDePantalla + + THIS.evaluate_bitmap_test( 'Checkbox_Test', 'f_Checkbox', 'F_CHECKBOX.SCX' ) + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Ejecutar_FOXBIN2PRG_ParaLaClase__LIB_CONTROLES__F_Textbox__YValidarLaVisualizacionDePantalla + + THIS.evaluate_bitmap_test( 'Textbox_Test', 'f_Textbox', '' ) + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Ejecutar_FOXBIN2PRG_ParaElForm__F_Textbox__YValidarLaVisualizacionDePantalla + + THIS.evaluate_bitmap_test( 'Textbox_Test', 'f_Textbox', 'F_TEXTBOX.SCX' ) + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Ejecutar_FOXBIN2PRG_ParaLaClase__LIB_CONTROLES__F_Combobox__YValidarLaVisualizacionDePantalla + + THIS.evaluate_bitmap_test( 'Combobox_Test', 'f_Combobox', '' ) + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Ejecutar_FOXBIN2PRG_ParaElForm__F_Combobox__YValidarLaVisualizacionDePantalla + + THIS.evaluate_bitmap_test( 'Combobox_Test', 'f_Combobox', 'F_Combobox.SCX' ) + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Ejecutar_FOXBIN2PRG_ParaLaClase__LIB_CONTROLES__F_CommandGroup__YValidarLaVisualizacionDePantalla + + THIS.evaluate_bitmap_test( 'CommandGroup_Test', 'f_CommandGroup', '' ) + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Ejecutar_FOXBIN2PRG_ParaElForm__F_CommandGroup__YValidarLaVisualizacionDePantalla + + THIS.evaluate_bitmap_test( 'CommandGroup_Test', 'f_CommandGroup', 'F_CommandGroup.SCX' ) + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Ejecutar_FOXBIN2PRG_ParaLaClase__LIB_CONTROLES__F_ListBox__YValidarLaVisualizacionDePantalla + + THIS.evaluate_bitmap_test( 'ListBox_Test', 'f_ListBox', '' ) + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Ejecutar_FOXBIN2PRG_ParaElForm__F_ListBox__YValidarLaVisualizacionDePantalla + + THIS.evaluate_bitmap_test( 'ListBox_Test', 'f_ListBox', 'F_ListBox.SCX' ) + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Ejecutar_FOXBIN2PRG_ParaLaClase__LIB_CONTROLES__F_Form_Controles__YValidarLaVisualizacionDePantalla + + THIS.evaluate_bitmap_test( 'Form_Controles_Test', 'f_Form_Controles', '' ) + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Ejecutar_FOXBIN2PRG_ParaElForm__F_Form_Controles__YValidarLaVisualizacionDePantalla + + THIS.evaluate_bitmap_test( 'Form_Controles_Test', 'f_Form_Controles', 'F_Form_Controles.SCX' ) + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Ejecutar_FOXBIN2PRG_ParaElForm__F_Formset__YValidarLaVisualizacionDePantalla + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + oFXU_LIB.copiarArchivosParaTest( 'encuestas.*' ) + THIS.evaluate_bitmap_test( 'Formset_Test', 'f_Formset', 'F_Formset.SCX' ) + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Ejecutar_FOXBIN2PRG_ParaElForm__F_Form_AA__YValidarLaVisualizacionDePantalla + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + THIS.evaluate_bitmap_test( 'Form_Test_Eventos_y_Controles', 'f_Form_AA', 'F_Form_AA.SCX' ) + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Ejecutar_FOXBIN2PRG_ParaElForm__F_Form_AA2__YValidarLaVisualizacionDePantalla + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + THIS.evaluate_bitmap_test( 'Form_Test_Eventos_y_Controles2', 'f_Form_AA2', 'F_Form_AA2.SCX' ) + + ENDFUNC + + ENDDEFINE diff --git a/TESTS/ut__foxbin2prg__c_foxbin2prg__EvaluarConfiguracion.prg b/TESTS/ut__foxbin2prg__c_foxbin2prg__EvaluarConfiguracion.prg new file mode 100644 index 0000000..d8de2b0 --- /dev/null +++ b/TESTS/ut__foxbin2prg__c_foxbin2prg__EvaluarConfiguracion.prg @@ -0,0 +1,2169 @@ +DEFINE CLASS ut__foxbin2prg__c_foxbin2prg__EvaluarConfiguracion AS FxuTestCase OF FxuTestCase.prg + + #IF .F. + LOCAL THIS AS ut__foxbin2prg__c_foxbin2prg__EvaluarConfiguracion OF ut__foxbin2prg__c_foxbin2prg__EvaluarConfiguracion.PRG + #ENDIF + + #DEFINE CR_LF CHR(13) + CHR(10) + #DEFINE C_CR CHR(13) + #DEFINE C_LF CHR(10) + #DEFINE C_TAB CHR(9) + ioFB2P = NULL + + + ******************************************************************************************************************************************* + FUNCTION SETUP + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + *LOCAL loFB2P AS c_conversor_base OF "FOXBIN2PRG.PRG" + SET PROCEDURE TO 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG', 'FOXBIN2PRG.PRG' + oFXU_LIB = CREATEOBJECT('CL_FXU_CONFIG') + oFXU_LIB.setup_comun() + + THIS.ioFB2P = NEWOBJECT("c_foxbin2prg", "FOXBIN2PRG.PRG") + *loFB2P = THIS.ioFB2P + *loFB2P.l_Test = .F. + + ERASE ('TESTS\DATOS_TEST\foxbin2prg.cfg') + ERASE ('TESTS\DATOS_TEST\foxbin2prg.cfg.bak') + ERASE ('TESTS\DATOS_TEST\foxbin2prg.cfg.1.bak') + ERASE ('TESTS\DATOS_TEST\foxbin2prg.cfg.2.bak') + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION TearDown + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + THIS.ioFB2P = NULL + + IF VARTYPE(oFXU_LIB) = "O" + oFXU_LIB.teardown_comun() + oFXU_LIB = NULL + ENDIF + RELEASE PROCEDURE 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG', 'FOXBIN2PRG.PRG' + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Evaluate_results + LPARAMETERS toEx AS EXCEPTION, tnCodError_Esperado, tcSeteo, teValorEsperado, teValor + + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + IF PCOUNT() = 0 + THIS.messageout( "* Support method, not a valid test." ) + RETURN .T. + ENDIF + + + IF ISNULL(toEx) + *-- Visualización de valores + LOCAL loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" + loFB2P = THIS.ioFB2P + THIS.messageout( LOWER(PROGRAM(PROGRAM(-1)-1)) ) + THIS.messageout( '.' ) + THIS.messageout( 'Archivo ' + loFB2P.c_Foxbin2prg_ConfigFile + IIF(FILE(loFB2P.c_Foxbin2prg_ConfigFile),': EXISTE', ': NO EXISTE') ) + THIS.messageout( TRANSFORM(tcSeteo) ) + THIS.messageout( 'Valor esperado: ' + TRANSFORM(teValorEsperado) ) + THIS.messageout( 'Valor: ' + TRANSFORM(teValor) ) + + *-- Formateo + * '[' + oFXU_LIB.mejorarPresentacionCaracteresEspeciales( TRANSFORM( EVALUATE('toReg_Esperado.'+laProps(I)) ) ) + ']' ) + + *-- COMPARO + THIS.assertequals( TRANSFORM(teValorEsperado), TRANSFORM(teValor), tcSeteo ) + + + ELSE + *-- Evaluación de errores + THIS.messageout( "Error " + TRANSFORM(toEx.ERRORNO) + ', ' + TRANSFORM(toEx.MESSAGE) ) + THIS.messageout( toEx.PROCEDURE + ', ' + TRANSFORM(toEx.LINENO) ) + IF NOT INLIST( toEx.ERRORNO, 1098, 2071 ) && Error del usuario (ERROR y THROW) + THIS.messageout( TRANSFORM(toEx.LINECONTENTS) ) + ENDIF + + THIS.assertequals( tnCodError_Esperado, toEx.ERRORNO, 'Error' ) + ENDIF + + THIS.messageout( '' ) + THIS.messageout( REPLICATE('*',80) ) + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_GenerarExtension_BAK_Cuando_ExtraBackupLevels_EsteComentado_UseElValorPorDefecto_YNoExistaBAK + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + loFB2P.l_ShowErrors = .F. + STRTOFILE('', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'Extensión de Backup' + leValorEsperado = '.BAK' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.getNext_BAK('TESTS\DATOS_TEST\foxbin2prg.cfg') + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_GenerarExtension_BAK_Cuando_ExtraBackupLevels_EsteComentado_UseElValorPorDefecto_YExistaBAK + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + loFB2P.l_ShowErrors = .F. + STRTOFILE('', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + STRTOFILE('', 'TESTS\DATOS_TEST\foxbin2prg.cfg.BAK') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'Extensión de Backup' + leValorEsperado = '.BAK' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.getNext_BAK('TESTS\DATOS_TEST\foxbin2prg.cfg') + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_GenerarExtension_BAK_Cuando_ExtraBackupLevels_Sea_0_YNoExistaBAK + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + loFB2P.l_ShowErrors = .F. + STRTOFILE('ExtraBackupLevels:0', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'Extensión de Backup' + leValorEsperado = '.BAK' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.getNext_BAK('TESTS\DATOS_TEST\foxbin2prg.cfg') + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_GenerarExtension_BAK_Cuando_ExtraBackupLevels_Sea_0_YExistaBAK + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + loFB2P.l_ShowErrors = .F. + STRTOFILE('ExtraBackupLevels:0', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + STRTOFILE('ExtraBackupLevels:0', 'TESTS\DATOS_TEST\foxbin2prg.cfg.bak') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'Extensión de Backup' + leValorEsperado = '.BAK' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.getNext_BAK('TESTS\DATOS_TEST\foxbin2prg.cfg') + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_GenerarExtension_BAK_Cuando_ExtraBackupLevels_Sea_1_YNoExistaBAK + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + loFB2P.l_ShowErrors = .F. + STRTOFILE('ExtraBackupLevels:1', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'Extensión de Backup' + leValorEsperado = '.BAK' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.getNext_BAK('TESTS\DATOS_TEST\foxbin2prg.cfg') + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_GenerarExtension_1_BAK_Cuando_ExtraBackupLevels_Sea_1_YExistaBAK + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + loFB2P.l_ShowErrors = .F. + STRTOFILE('ExtraBackupLevels:1', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + STRTOFILE('ExtraBackupLevels:1', 'TESTS\DATOS_TEST\foxbin2prg.cfg.bak') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'Extensión de Backup' + leValorEsperado = '.BAK' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.getNext_BAK('TESTS\DATOS_TEST\foxbin2prg.cfg') + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_GenerarExtension_BAK_Cuando_ExtraBackupLevels_Sea_2_YExista_1_BAK + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + loFB2P.l_ShowErrors = .F. + STRTOFILE('ExtraBackupLevels:2', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + STRTOFILE('ExtraBackupLevels:2', 'TESTS\DATOS_TEST\foxbin2prg.cfg.bak') + STRTOFILE('ExtraBackupLevels:2', 'TESTS\DATOS_TEST\foxbin2prg.cfg.1.bak') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'Extensión de Backup' + leValorEsperado = '.BAK' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.getNext_BAK('TESTS\DATOS_TEST\foxbin2prg.cfg') + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_GenerarExtension_BAK_Cuando_ExtraBackupLevels_Sea_2_YExista_2_BAK + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + loFB2P.l_ShowErrors = .F. + STRTOFILE('ExtraBackupLevels:2', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + STRTOFILE('ExtraBackupLevels:2', 'TESTS\DATOS_TEST\foxbin2prg.cfg.bak') + STRTOFILE('ExtraBackupLevels:2', 'TESTS\DATOS_TEST\foxbin2prg.cfg.1.bak') + STRTOFILE('ExtraBackupLevels:2', 'TESTS\DATOS_TEST\foxbin2prg.cfg.2.bak') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'Extensión de Backup' + leValorEsperado = '.BAK' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.getNext_BAK('TESTS\DATOS_TEST\foxbin2prg.cfg') + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ******************************************************************************************************************************************* + FUNCTION Deberia_Setear_Debug_False_CuandoNoExistaElArhivo_foxbin2prg_cfg + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + loFB2P.l_ShowErrors = .F. + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'l_Debug' + leValorEsperado = .F. + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.l_Debug + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Setear_Debug_False_CuandoElArhivo_foxbin2prg_cfg_Tenga_Debug_0 + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + loFB2P.l_ShowErrors = .F. + STRTOFILE('Debug:0', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'l_Debug' + leValorEsperado = .F. + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.l_Debug + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Setear_Debug_True_CuandoElArhivo_foxbin2prg_cfg_Tenga_Debug_1 + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + loFB2P.l_ShowErrors = .F. + STRTOFILE('Debug:1', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'l_Debug' + leValorEsperado = .T. + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.l_Debug + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Setear_NoTimestamps_True_CuandoNoExistaElArhivo_foxbin2prg_cfg + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + loFB2P.l_ShowErrors = .F. + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'l_NoTimestamps' + leValorEsperado = .T. + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.l_NoTimestamps + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Setear_NoTimestamps_False_CuandoElArhivo_foxbin2prg_cfg_Tenga_NoTimestamps_0 + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + loFB2P.l_ShowErrors = .F. + STRTOFILE('NoTimestamps:0', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'l_NoTimestamps' + leValorEsperado = .F. + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.l_NoTimestamps + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Setear_NoTimestamps_True_CuandoElArhivo_foxbin2prg_cfg_Tenga_NoTimestamps_1 + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + loFB2P.l_ShowErrors = .F. + STRTOFILE('NoTimestamps:1', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'l_NoTimestamps' + leValorEsperado = .T. + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.l_NoTimestamps + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Setear_ClearUniqueID_False_CuandoNoExistaElArhivo_foxbin2prg_cfg + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + loFB2P.l_ShowErrors = .F. + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'l_ClearUniqueID' + leValorEsperado = .F. + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.l_ClearUniqueID + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Setear_ClearUniqueID_False_CuandoElArhivo_foxbin2prg_cfg_Tenga_ClearUniqueID_0 + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + loFB2P.l_ShowErrors = .F. + STRTOFILE('ClearUniqueID:0', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'l_ClearUniqueID' + leValorEsperado = .F. + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.l_ClearUniqueID + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Setear_ClearUniqueID_True_CuandoElArhivo_foxbin2prg_cfg_Tenga_ClearUniqueID_1 + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + loFB2P.l_ShowErrors = .F. + STRTOFILE('ClearUniqueID:1', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'l_ClearUniqueID' + leValorEsperado = .T. + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.l_ClearUniqueID + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Setear_ShowProgress_True_CuandoNoExistaElArhivo_foxbin2prg_cfg + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + loFB2P.l_ShowErrors = .F. + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'l_ShowProgress' + leValorEsperado = .T. + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.l_ShowProgress + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Setear_ShowProgress_True_CuandoElArhivo_foxbin2prg_cfg_Tenga_DontShowProgress_0 + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + loFB2P.l_ShowErrors = .F. + STRTOFILE('DontShowProgress:0', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'l_ShowProgress' + leValorEsperado = .T. + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.l_ShowProgress + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Setear_ShowProgress_False_CuandoElArhivo_foxbin2prg_cfg_Tenga_DontShowProgress_1 + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + loFB2P.l_ShowErrors = .F. + STRTOFILE('DontShowProgress:1', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'l_ShowProgress' + leValorEsperado = .F. + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.l_ShowProgress + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Setear_ShowErrors_True_CuandoNoExistaElArhivo_foxbin2prg_cfg + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'l_ShowErrors' + leValorEsperado = .T. + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.l_ShowErrors + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Setear_ShowErrors_True_CuandoElArhivo_foxbin2prg_cfg_Tenga_DontShowErrors_0 + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + STRTOFILE('DontShowErrors:0', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'l_ShowErrors' + leValorEsperado = .T. + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.l_ShowErrors + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_Setear_ShowErrors_False_CuandoElArhivo_foxbin2prg_cfg_Tenga_DontShowErrors_1 + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + STRTOFILE('DontShowErrors:1', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'l_ShowErrors' + leValorEsperado = .F. + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.l_ShowErrors + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearLaExtension_DB2_Como_DB2_CuandoNoExistaElArhivo_foxbin2prg_cfg + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'DB2 Extension:' + leValorEsperado = 'DB2' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.c_DB2 + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearLaExtension_DB2_Como_DBA_CuandoElArhivo_foxbin2prg_cfg_TengaExtension_DB2_igual_DBA + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + STRTOFILE('Extension:db2=dba', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'DB2 Extension:' + leValorEsperado = 'DBA' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.c_DB2 + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearLaExtension_DC2_Como_DC2_CuandoNoExistaElArhivo_foxbin2prg_cfg + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'DC2 Extension:' + leValorEsperado = 'DC2' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.c_DC2 + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearLaExtension_DC2_Como_DCA_CuandoElArhivo_foxbin2prg_cfg_TengaExtension_DC2_igual_DCA + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + STRTOFILE('Extension:dc2=dca', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'DC2 Extension:' + leValorEsperado = 'DCA' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.c_DC2 + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearLaExtension_FR2_Como_FR2_CuandoNoExistaElArhivo_foxbin2prg_cfg + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'FR2 Extension:' + leValorEsperado = 'FR2' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.c_FR2 + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearLaExtension_FR2_Como_FRA_CuandoElArhivo_foxbin2prg_cfg_TengaExtension_FR2_igual_FRA + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + STRTOFILE('Extension:fr2=fra', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'FR2 Extension:' + leValorEsperado = 'FRA' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.c_FR2 + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearLaExtension_LB2_Como_LB2_CuandoNoExistaElArhivo_foxbin2prg_cfg + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'LB2 Extension:' + leValorEsperado = 'LB2' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.c_LB2 + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearLaExtension_LB2_Como_LBA_CuandoElArhivo_foxbin2prg_cfg_TengaExtension_LB2_igual_LBA + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + STRTOFILE('Extension:lb2=lba', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'LB2 Extension:' + leValorEsperado = 'LBA' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.c_LB2 + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearLaExtension_MN2_Como_MN2_CuandoNoExistaElArhivo_foxbin2prg_cfg + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'MN2 Extension:' + leValorEsperado = 'MN2' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.c_MN2 + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearLaExtension_MN2_Como_MNA_CuandoElArhivo_foxbin2prg_cfg_TengaExtension_MN2_igual_MNA + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + STRTOFILE('Extension:mn2=mna', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'MN2 Extension:' + leValorEsperado = 'MNA' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.c_MN2 + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearLaExtension_PJ2_Como_PJ2_CuandoNoExistaElArhivo_foxbin2prg_cfg + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'PJ2 Extension:' + leValorEsperado = 'PJ2' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.c_PJ2 + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearLaExtension_PJ2_Como_PJA_CuandoElArhivo_foxbin2prg_cfg_TengaExtension_PJ2_igual_PJA + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + STRTOFILE('Extension:pj2=pja', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'PJ2 Extension:' + leValorEsperado = 'PJA' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.c_PJ2 + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearLaExtension_SC2_Como_SC2_CuandoNoExistaElArhivo_foxbin2prg_cfg + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'SC2 Extension:' + leValorEsperado = 'SC2' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.c_SC2 + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearLaExtension_SC2_Como_SCA_CuandoElArhivo_foxbin2prg_cfg_TengaExtension_SC2_igual_SCA + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + STRTOFILE('Extension:sc2=sca', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'SC2 Extension:' + leValorEsperado = 'SCA' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.c_SC2 + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearLaExtension_VC2_Como_VC2_CuandoNoExistaElArhivo_foxbin2prg_cfg + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'VC2 Extension:' + leValorEsperado = 'VC2' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.c_VC2 + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearLaExtension_VC2_Como_VCA_CuandoElArhivo_foxbin2prg_cfg_TengaExtension_VC2_igual_VCA + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + STRTOFILE('Extension:vc2=vca', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'VC2 Extension:' + leValorEsperado = 'VCA' + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.c_VC2 + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearElSoporte_DBF_Como_1_CuandoNoExistaElArhivo_foxbin2prg_cfg + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'DBF_Conversion_Support:' + leValorEsperado = 1 + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.DBF_Conversion_Support + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearElSoporte_DBF_Como_0_CuandoElArhivo_foxbin2prg_cfg_Y_DBF_Conversion_Support_Sea_0 + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + STRTOFILE('DBF_Conversion_Support:0', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'DBF_Conversion_Support:' + leValorEsperado = 0 + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.DBF_Conversion_Support + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearElSoporte_DBC_Como_2_CuandoNoExistaElArhivo_foxbin2prg_cfg + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'DBC_Conversion_Support:' + leValorEsperado = 2 + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.DBC_Conversion_Support + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearElSoporte_DBC_Como_0_CuandoElArhivo_foxbin2prg_cfg_Y_DBC_Conversion_Support_Sea_0 + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + STRTOFILE('DBC_Conversion_Support:0', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'DBC_Conversion_Support:' + leValorEsperado = 0 + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.DBC_Conversion_Support + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearElSoporte_PJX_Como_2_CuandoNoExistaElArhivo_foxbin2prg_cfg + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'PJX_Conversion_Support:' + leValorEsperado = 2 + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.PJX_Conversion_Support + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearElSoporte_PJX_Como_0_CuandoElArhivo_foxbin2prg_cfg_Y_PJX_Conversion_Support_Sea_0 + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + STRTOFILE('PJX_Conversion_Support:0', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'PJX_Conversion_Support:' + leValorEsperado = 0 + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.PJX_Conversion_Support + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearElSoporte_SCX_Como_2_CuandoNoExistaElArhivo_foxbin2prg_cfg + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'SCX_Conversion_Support:' + leValorEsperado = 2 + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.SCX_Conversion_Support + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearElSoporte_SCX_Como_0_CuandoElArhivo_foxbin2prg_cfg_Y_SCX_Conversion_Support_Sea_0 + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + STRTOFILE('SCX_Conversion_Support:0', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'SCX_Conversion_Support:' + leValorEsperado = 0 + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.SCX_Conversion_Support + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearElSoporte_VCX_Como_2_CuandoNoExistaElArhivo_foxbin2prg_cfg + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'VCX_Conversion_Support:' + leValorEsperado = 2 + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.VCX_Conversion_Support + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearElSoporte_VCX_Como_0_CuandoElArhivo_foxbin2prg_cfg_Y_VCX_Conversion_Support_Sea_0 + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + STRTOFILE('VCX_Conversion_Support:0', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'VCX_Conversion_Support:' + leValorEsperado = 0 + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.VCX_Conversion_Support + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearElSoporte_MNX_Como_2_CuandoNoExistaElArhivo_foxbin2prg_cfg + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'MNX_Conversion_Support:' + leValorEsperado = 2 + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.MNX_Conversion_Support + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearElSoporte_MNX_Como_0_CuandoElArhivo_foxbin2prg_cfg_Y_MNX_Conversion_Support_Sea_0 + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + STRTOFILE('MNX_Conversion_Support:0', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'MNX_Conversion_Support:' + leValorEsperado = 0 + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.MNX_Conversion_Support + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearElSoporte_FRX_Como_2_CuandoNoExistaElArhivo_foxbin2prg_cfg + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'FRX_Conversion_Support:' + leValorEsperado = 2 + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.FRX_Conversion_Support + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearElSoporte_FRX_Como_0_CuandoElArhivo_foxbin2prg_cfg_Y_FRX_Conversion_Support_Sea_0 + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + STRTOFILE('FRX_Conversion_Support:0', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'FRX_Conversion_Support:' + leValorEsperado = 0 + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.FRX_Conversion_Support + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearElSoporte_LBX_Como_2_CuandoNoExistaElArhivo_foxbin2prg_cfg + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'LBX_Conversion_Support:' + leValorEsperado = 2 + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.LBX_Conversion_Support + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + + ******************************************************************************************************************************************* + FUNCTION Deberia_SetearElSoporte_LBX_Como_0_CuandoElArhivo_foxbin2prg_cfg_Y_LBX_Conversion_Support_Sea_0 + LOCAL lnCodError, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ; + , loFB2P AS c_foxbin2prg OF "FOXBIN2PRG.PRG" ; + , loEx AS EXCEPTION + #IF .F. + PUBLIC oFXU_LIB AS CL_FXU_CONFIG OF 'TESTS\fxu_lib_objetos_y_funciones_de_soporte.PRG' + #ENDIF + + TRY + loEx = NULL + loFB2P = THIS.ioFB2P + loFB2P.l_ShowErrors = .F. + loFB2P.c_Foxbin2prg_ConfigFile = 'TESTS\DATOS_TEST\foxbin2prg.cfg' + STRTOFILE('LBX_Conversion_Support:0', 'TESTS\DATOS_TEST\foxbin2prg.cfg') + + + *-- DATOS DE ENTRADA + STORE 0 TO lnCodError + lcSeteo = 'LBX_Conversion_Support:' + leValorEsperado = 0 + + + *-- TEST + loFB2P.EvaluarConfiguracion() + leValor = loFB2P.LBX_Conversion_Support + + + CATCH TO loEx + + FINALLY + THIS.Evaluate_results( loEx, lnCodError_Esperado, lcSeteo, leValorEsperado, leValor ) + + ENDTRY + + ENDFUNC + + +ENDDEFINE diff --git a/change_file_type.bat b/change_file_type.bat new file mode 100644 index 0000000..559ff47 --- /dev/null +++ b/change_file_type.bat @@ -0,0 +1,4 @@ +FOR /F "tokens=*" %%i IN ('dir /S /B *.prg') DO cm chgrevtype %%i -type=txt +FOR /F "tokens=*" %%i IN ('dir /S /B *.??2') DO cm chgrevtype %%i -type=txt +FOR /F "tokens=*" %%i IN ('dir /S /B *.??a') DO cm chgrevtype %%i -type=txt +FOR /F "tokens=*" %%i IN ('dir /S /B *.cfg*') DO cm chgrevtype %%i -type=txt diff --git a/clean_copied_memo.prg b/clean_copied_memo.prg new file mode 100644 index 0000000..659160f --- /dev/null +++ b/clean_copied_memo.prg @@ -0,0 +1,23 @@ +LOCAL I, lcStrIn, lcStrOut, laStr(1), lcLeftDelim, lcRightDelim, lcStr, lnLines, lnPosDlr +ON KEY LABEL CTRL+R DO clean_copied_memo.prg +lcStrOut = '' +lcStrIn = _CLIPTEXT +lnLines = ALINES(laStr, lcStrIn) +lnPosDlr = AT('.',laStr(1)) + +*-- +lcLeftDelim = IIF(lnPosDlr > 0 AND lnPosDlr < AT('=', laStr(1)), LEFT(laStr(1), lnPosDlr), '') +lcRightDelim = ' =' +*-- +MESSAGEBOX( "LeftDelim = " + lcLeftDelim) + +FOR I = 1 TO lnLines + lcStr = STREXTRACT( laStr(I), lcLeftDelim, lcRightDelim ) + *IF EMPTY(lcStr) + * lcStr = STREXTRACT( laStr(I), '', lcRightDelim ) + *ENDIF + laStr(I) = lcStr + lcStrOut = lcStrOut + CHR(13) + laStr(I) +ENDFOR + +_CLIPTEXT = SUBSTR( lcStrOut, 2 ) diff --git a/foxbin2prg.pj2 b/foxbin2prg.pj2 index 04756a4..f1ac3f1 100644 --- a/foxbin2prg.pj2 +++ b/foxbin2prg.pj2 @@ -23,10 +23,10 @@ _CompanyName = "Fernando D. Bozzo" _FileDescription = "Conversor bidireccional de binarios FoxPro 9 (scx,vcx,pjx) a texto para sustituir al scctext :-)" _LegalCopyright = "Creative Commons 4: Reconocimiento - CompartirIgual (by-sa): http://creativecommons.org/licenses/by/4.0/" _LegalTrademark = "Creative Commons 4: Reconocimiento - CompartirIgual (by-sa): http://creativecommons.org/licenses/by/4.0/" -_ProductName = " FOXBIN2PRG v1.19.20" +_ProductName = " FOXBIN2PRG v1.19.22" _MajorVer = "1" _MinorVer = "19" -_Revision = " 319" +_Revision = " 321" _LanguageID = "1034" _AutoIncrement = "1" * diff --git a/foxbin2prg.pjt b/foxbin2prg.pjt index ba70a3b..a53c674 100644 Binary files a/foxbin2prg.pjt and b/foxbin2prg.pjt differ diff --git a/foxbin2prg.pjx b/foxbin2prg.pjx index 2a8633d..32c19e6 100644 Binary files a/foxbin2prg.pjx and b/foxbin2prg.pjx differ diff --git a/foxbin2prg.prg b/foxbin2prg.prg index 19e5a41..add386e 100644 --- a/foxbin2prg.prg +++ b/foxbin2prg.prg @@ -83,6 +83,7 @@ * 29/03/2014 FDBOZZO v1.19.19 Nueva característica: Hooks al regenerar DBF para poder realizar procesos intermedios, como la carga de datos del DBF regenerado desde una fuente externa * 17/04/2014 FDBOZZO v1.19.20 Relativización de directorios de CDX dentro de los DB2 para minimizar diferencias * 29/04/2014 FDBOZZO v1.19.21 Agregada posibilidad de convertir un proyecto entero a tx2 // Optimizaciones en generación según timestamps // AGAIN en aperturas // Simplificación sección PAM +* 08/05/2014 FDBOZZO v1.19.22 Arreglo bug vcx/scx: La propiedad Picture de una clase form se pierde y no muestra la imagen * * *--------------------------------------------------------------------------------------------------- @@ -109,6 +110,7 @@ * 24/03/2014 Ryan Harris REPORTE BUG vcx/scx v1.19.17: El comentario a nivel de librería se pierde (Solucionado en v1.19.18) * 29/04/2014 Matt Slay MEJORA v1.19.20: Posibilidad de convertir un proyecto entero a tx2 // Optimización de generación según timestamps (Agregado en v1.19.21) * 30/04/2014 Jim Nelson MEJORA v1.19.20: Agregado de AGAIN en apertura de tablas (Agregado en v1.19.21) +* 07/05/2014 Fidel Charny REPORTE BUG vcx/scx v1.19.21: La propiedad Picture de una clase form se pierde y no muestra la imagen. No ocurre con la propiedad Picture de los controles (Arreglado en v1.19.22) * * *--------------------------------------------------------------------------------------------------- @@ -503,6 +505,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM PROCEDURE INIT + LOCAL lcSys16, lnPosProg SET DELETED ON SET DATE YMD SET HOURS TO 24 @@ -511,7 +514,15 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM SET TABLEPROMPT OFF SET POINT TO '.' SET SEPARATOR TO ',' - THIS.c_Foxbin2prg_FullPath = SUBSTR( SYS(16), AT( 'C_FOXBIN2PRG.INIT', SYS(16) ) + LEN('C_FOXBIN2PRG.INIT') + 1 ) + + lcSys16 = SYS(16) + IF LEFT(lcSys16,10) == 'PROCEDURE ' + lnPosProg = AT(" ", lcSys16, 2) + 1 + ELSE + lnPosProg = 1 + ENDIF + + THIS.c_Foxbin2prg_FullPath = SUBSTR( lcSys16, lnPosProg ) THIS.c_Foxbin2prg_ConfigFile = FORCEEXT( THIS.c_Foxbin2prg_FullPath, 'CFG' ) THIS.c_CurDir = SYS(5) + CURDIR() THIS.o_FSO = NEWOBJECT("Scripting.FileSystemObject") @@ -1806,6 +1817,7 @@ DEFINE CLASS c_conversor_base AS SESSION + [] ; + [] ; + [] ; + + [] ; + [] ; + [] ; + [] ; @@ -1824,7 +1836,7 @@ DEFINE CLASS c_conversor_base AS SESSION + [] - DIMENSION a_SpecialProps(1) + DIMENSION a_SpecialProps(1), a_SpecialProps_Form(1) l_Debug = .F. l_Test = .F. c_InputFile = '' @@ -1841,11 +1853,13 @@ DEFINE CLASS c_conversor_base AS SESSION l_PropSort_Enabled = .T. l_ReportSort_Enabled = .T. c_OriginalFileName = '' + c_ClaseActual = '' oFSO = NULL ******************************************************************************************************************* PROCEDURE INIT + LOCAL lcSys16, lnPosProg SET DELETED ON SET DATE YMD SET HOURS TO 24 @@ -1858,7 +1872,15 @@ DEFINE CLASS c_conversor_base AS SESSION C_FB2PRG_CODE = '' && Contendrá todo el código generado THIS.c_CurDir = SYS(5) + CURDIR() THIS.oFSO = CREATEOBJECT( "Scripting.FileSystemObject") + lcSys16 = SYS(16) + IF LEFT(lcSys16,10) == 'PROCEDURE ' + lnPosProg = AT(" ", lcSys16, 2) + 1 + ELSE + lnPosProg = 1 + ENDIF + + THIS.c_Foxbin2prg_FullPath = SUBSTR( lcSys16, lnPosProg ) THIS.SortSpecialProps() ENDPROC @@ -2514,7 +2536,12 @@ DEFINE CLASS c_conversor_base AS SESSION lcPropName = 'A999' + lcPropName OTHERWISE - lnPos = ASCAN( THIS.a_SpecialProps, lcPropName, 1, 0, 1, 1+2+4 ) + *-- Soporte de evaluación de propiedades por clase evaluada + *IF THIS.c_ClaseActual == 'form' + * lnPos = ASCAN( THIS.a_SpecialProps_Form, lcPropName, 1, 0, 1, 1+2+4 ) + *ELSE + lnPos = ASCAN( THIS.a_SpecialProps, lcPropName, 1, 0, 1, 1+2+4 ) + *ENDIF lcPropName = 'A' + PADL( EVL(lnPos,998), 3, '0' ) + lcPropName ENDCASE @@ -2668,11 +2695,34 @@ DEFINE CLASS c_conversor_base AS SESSION + PROTECTED PROCEDURE SortSpecialProps_Form_Add + LPARAMETERS tcPropName, I + I = I + 1 + DIMENSION THIS.a_SpecialProps_Form(I) + THIS.a_SpecialProps_Form(I) = tcPropName + ENDPROC + + + PROCEDURE SortSpecialProps - LOCAL I - I = 0 + TRY + LOCAL I, loEx as Exception, lcPropsFile + lcPropsFile = '' WITH THIS AS conversor_base OF "FOXBIN2PRG.PRG" + *-- (TODAS) => Antes era solo FORM + I = 0 + + lcPropsFile = FORCEPATH( "props_all.txt", JUSTPATH( .c_Foxbin2prg_FullPath ) ) + + I = ALINES( THIS.a_SpecialProps, FILETOSTR( lcPropsFile ), 1+4 ) + + + + + *-- DEMÁS CLASES + IF .F. + I = 0 .SortSpecialProps_Add( 'FRXDataSession', @I ) && En un VCX lo ví primero de todo y también luego de Height ¿? .SortSpecialProps_Add( 'ErasePage', @I ) && PageFrame: Debe estar antes que PageCount .SortSpecialProps_Add( 'PageCount', @I ) && PageFrame: Debe estar antes que ActivePage @@ -2806,7 +2856,21 @@ DEFINE CLASS c_conversor_base AS SESSION .SortSpecialProps_Add( '_memberdata', @I ) .SortSpecialProps_Add( 'Themes', @I ) *.SortSpecialProps_Add( 'Name', @I ) && System "Name" property + ENDIF ENDWITH + + CATCH TO loEx + loEx.UserValue = 'lcPropsFile = ' + lcPropsFile + + IF THIS.l_Debug AND _VFP.STARTMODE = 0 + SET STEP ON + ENDIF + + THROW + + ENDTRY + + RETURN ENDPROC @@ -3536,6 +3600,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base lcMemo = '' IF toClase._Prop_Count > 0 + THIS.c_ClaseActual = LOWER(toClase._BaseClass) DIMENSION laPropsAndValues( toClase._Prop_Count, 3 ) ACOPY( toClase._Props, laPropsAndValues ) lnPropsAndValues_Count = toClase._Prop_Count @@ -3578,6 +3643,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base lcMemo = '' IF toObjeto._Prop_Count > 0 + THIS.c_ClaseActual = LOWER(toObjeto._BaseClass) DIMENSION laPropsAndValues( toObjeto._Prop_Count, 2 ) ACOPY( toObjeto._Props, laPropsAndValues ) diff --git a/getrevisions.prg b/getrevisions.prg new file mode 100644 index 0000000..2edd527 --- /dev/null +++ b/getrevisions.prg @@ -0,0 +1,21 @@ +*-- Para Fidel +#DEFINE HISTORIAL_I '* ' +#DEFINE HISTORIAL_F '* ' + +LOCAL lcHistorial, laLinea(1), laHistorial(1,4) +lcHistorial = STREXTRACT( FILETOSTR('FOXBIN2PRG.PRG'), HISTORIAL_I, HISTORIAL_F ) +SET MEMOWIDTH TO 220 && Solo para prueba. Quitar en la función +CLEAR && Solo para prueba. Quitar en la función +*-- Formato a leer: +*-- [* 04/11/2013 FDBOZZO v1.0 Creación inicial de las clases y soporte de los archivos VCX/SCX/PJX] +FOR I = 1 TO ALINES(laLinea, lcHistorial, 1+4+8) + DIMENSION laHistorial(I,4) + laHistorial(I,1) = GETWORDNUM( laLinea(I), 2 ) + laHistorial(I,2) = GETWORDNUM( laLinea(I), 3 ) + laHistorial(I,3) = GETWORDNUM( laLinea(I), 4 ) + laHistorial(I,4) = SUBSTR( laLinea(I), AT(laHistorial(I,3), laLinea(I)) + LEN(laHistorial(I,3)) + 1 ) + *-- Este '?' es solo de prueba + ? '['+laHistorial(I,1)+']', '['+laHistorial(I,2)+']', '['+laHistorial(I,3)+']', '['+laHistorial(I,4)+']' +ENDFOR + +*-- En este punto tenés el array laHistorial con 1 columna para cada dato. \ No newline at end of file diff --git a/preparar_SpecialProps_desde_Lista.prg b/preparar_SpecialProps_desde_Lista.prg new file mode 100644 index 0000000..69ab508 --- /dev/null +++ b/preparar_SpecialProps_desde_Lista.prg @@ -0,0 +1,12 @@ +LOCAL I, lcStrIn, lcStrOut, laStr(1), lcLeftDelim, lcRightDelim, lcStr, lnLines, lnPosDlr +ON KEY LABEL CTRL+R DO preparar_specialprops_desde_lista.prg +lcStrOut = '' +lcStrIn = _CLIPTEXT +lnLines = ALINES(laStr, lcStrIn) +lnPosDlr = AT('.',laStr(1)) + +FOR I = 1 TO lnLines + lcStrOut = lcStrOut + CHR(13) + ".SortSpecialProps_Form_Add( '" + laStr(I) + "', @I )" +ENDFOR + +_CLIPTEXT = SUBSTR( lcStrOut, 2 ) diff --git a/props_all.txt b/props_all.txt new file mode 100644 index 0000000..82585a2 --- /dev/null +++ b/props_all.txt @@ -0,0 +1,401 @@ +DEClassLibrary +DEClass +DataSession +ScaleMode +ErasePage +AutoSize +MemberClassLibrary +MemberClass +PageCount +ColumnCount +ButtonCount +TabStretch +DefTop +DefLeft +DefHeight +DefWidth +Desktop +ShowWindow +ScrollBars +ShowInTaskBar +DoCreate +Comment +Tag +OLEDragMode +OLEDragPicture +OLEDropMode +OLEDropEffects +DragMode +DragIcon +TabStyle +ShowTips +BufferMode +AutoCenter +Picture +ControlBox +Closable +ActivePage +Top +Left +Height +Width +FontBold +FontItalic +FontName +FontOutline +FontShadow +FontSize +FontStrikethru +FontUnderline +FontCondense +FontExtend +FontCharSet +DateFormat +DateMark +Century +Hours +Seconds +StrictDateEntry +Anchor +HalfHeightCaption +MaxButton +MinButton +Tabs +Movable +MaxHeight +MaxWidth +MinHeight +MinWidth +MaxTop +MaxLeft +MaxLength +WordWrap +Stretch +DownPicture +DisabledPicture +PicturePosition +PictureMargin +PictureSpacing +MDIForm +AddLineFeeds +ClipControls +HeaderClassLibrary +HeaderClass +Alignment +AllowTabs +Centered +BackStyle +BorderStyle +BorderWidth +BoundColumn +Curvature +PictureSelectionDisplay +Caption +Bound +ColumnOrder +DrawMode +DrawStyle +DrawWidth +ColumnCount +ColumnWidths +RowSourceType +RowSource +DisplayValue +Value +ControlSource +CurrentControl +AllowAddNew +AllowHeaderSizing +AllowRowSizing +ChildOrder +DeleteMark +Cancel +Default +Enabled +KeySort +FillStyle +Icon +KeyPreview +TitleBar +WindowType +WindowState +LockScreen +AlwaysOnTop +AlwaysOnBottom +SizeBox +ZoomBox +Resizable +GridLines +GridLineWidth +HeaderHeight +FirstElement +Format +HelpContextID +WhatsThisHelpID +WhatsThisHelp +WhatsThisButton +RightToLeft +DefOleLCID +MacDesktop +Highlight +HighlightRow +HighlightRowLineWidth +HideSelection +ColumnLines +IncrementalSearch +Increment +InputMask +KeyboardHighValue +KeyboardLowValue +HostName +AutoVerbMenu +AutoActivate +LinkMaster +Margin +MaxLength +MousePointer +MouseIcon +Panel +PanelLink +ReadOnly +RecordMark +RecordSource +RecordSourceType +RelationalExpr +RowHeight +Sparse +SelectOnEntry +DynamicBackColor +DynamicForeColor +DynamicFontBold +DynamicFontItalic +DynamicFontName +DynamicFontOutline +DynamicFontSize +DynamicFontShadow +DynamicFontStrikethru +DynamicFontUnderline +DynamicAlignment +DynamicCurrentControl +DynamicInputMask +MoverBars +MultiSelect +NumberOfElements +SelectOnEntry +Sorted +SpecialEffect +PageOrder +TabOrientation +SpinnerHighValue +SpinnerLowValue +StatusBarText +Style +TabIndex +TabStop +TerminateRead +ToolTipText +WordWrap +Sizable +Interval +BufferMode +AutoRelease +Visible +MemoWindow +OpenWindow +PasswordChar +EnableHyperlinks +PicturePosition +PictureMargin +PictureSpacing +LineSlant +ColorSource +ColorScheme +ForeColor +BackColor +FillColor +BorderColor +WordWrap +SplitBar +View +WindowList +ReadSave +ReadTimeout +ReadMouse +ReadCycle +ReadLock +PolyPoints +Partition +GridLineColor +HighlightBackColor +HighlightForeColor +ItemForeColor +ItemBackColor +DisabledItemBackColor +DisabledBackColor +SelectedForeColor +DisabledForeColor +SelectedBackColor +ItemForeColor +ItemBackColor +DisabledItemBackColor +SelectedItemForeColor +SelectedItemBackColor +DisabledItemForeColor +RightToLeft +LockColumns +LockColumnsLeft +AllowAutoColumnFit +AllowCellSelection +RightToLeft +NullDisplay +IntegralHeight +ItemTips +BoundTo +IMEMode +Rotation +DisplayCount +OLEDropTextInsertion +HScrollSmallChange +VScrollSmallChange +ContinuousScroll +Themes +AutoHideScrollbar +AutoComplete +AutoCompSource +AutoCompTable +BindControls +AllowOutput +Dockable +Optimize +UseDeDataSource +SelectCmd +UpdateCmd +InsertCmd +DeleteCmd +AllowUpdate +AllowInsert +AllowDelete +CursorSchema +Alias +BufferModeOverride +DataSource +DataSourceType +InsertCmdDataSource +InsertCmdDataSourceType +UpdateCmdDataSource +UpdateCmdDataSourceType +DeleteCmdDataSource +DeleteCmdDataSourceType +Flags +CompareMemo +OpenViews +AutoOpenTables +AutoCloseTables +InitialSelectedAlias +DataSource +DataSourceType +Order +OrderDirection +Database +CursorSource +Exclusive +Filter +NoDataOnLoad +FetchAsNeeded +FetchMemo +Prepared +SendUpdates +BatchUpdateCount +FetchSize +MaxRecords +UseMemoSize +UpdateType +WhereType +KeyFieldList +Tables +UpdatableFieldList +UpdateNameList +ConversionFunc +AllowSimultaneousFetch +BreakOnError +UpdateGramSchemaLocation +ConflictCheckType +ConflictCheckCmd +PreserveWhiteSpace +MapN19_4ToCurrency +IsDiffgram +XMLName +XMLNamespace +XMLPrefix +XSDtype +XSDtotalDigits +XSDfractionDigits +XSDmaxLength +IsAttribute +DataType +FractionDigits +NoCpTrans +Unicode +IsNull +IsBinary +IsBase64 +WrapInCDATA +DisableEncode +Keyfield +ChildTable +NestedInto +FirstNestedTable +NextSiblingTable +FormattedOutput +ForceCloseTag +RespectCursorCP +UTF8Encoded +XMLSchemaLocation +WrapMemoInCDATA +WrapCharInCDATA +Unicode +MapVarchar +MapBinary +RespectNesting +SelectionNamespaces +XMLNameIsXPath +DeclareXMLPrefix +CurrentPass +TwoPassProcess +FRXDataSession +PreviewContainer +DynamicLineHeight +CommandClauses +AllowModalMessages +QuietMode +CurrentDataSession +SendGDIPlusImage +PrintJobName +CallAdjustObjectSize +CallEvaluateContents +ParentAlias +RelationalExpr +ChildAlias +ChildOrder +OneToMany +UseCursorSchema +NoData +TimestampFieldList +InsertCmdRefreshFieldList +InsertCmdRefreshKeyFieldList +UpdateCmdRefreshFieldList +UpdateCmdRefreshKeyFieldList +RefreshTimestamp +RefreshCmd +RefreshCmdDataSource +RefreshCmdDataSourceType +InsertCmdRefreshCmd +UpdateCmdRefreshCmd +RefreshIgnoreFieldList +FetchMemoDataSource +FetchMemoDataSourceType +FetchMemoCmdList +UseTransactions +ADOCodePage +CodePage +UseCodePage diff --git a/props_checkbox.txt b/props_checkbox.txt new file mode 100644 index 0000000..9424396 --- /dev/null +++ b/props_checkbox.txt @@ -0,0 +1,64 @@ +Comment +Tag +OLEDragMode +OLEDragPicture +OLEDropMode +OLEDropEffects +DragMode +DragIcon +DefTop +DefLeft +DefHeight +DefWidth +Top +Left +Height +Width +FontBold +FontItalic +FontName +FontOutline +FontShadow +FontSize +FontStrikethru +FontUnderline +FontCondense +FontExtend +FontCharSet +Anchor +WordWrap +AutoSize +Picture +DownPicture +DisabledPicture +Alignment +Centered +BackStyle +Caption +Value +ControlSource +Enabled +HelpContextID +WhatsThisHelpID +MousePointer +MouseIcon +SpecialEffect +StatusBarText +Style +TabStop +ToolTipText +TerminateRead +Visible +PicturePosition +PictureMargin +PictureSpacing +ColorSource +ColorScheme +ForeColor +BackColor +DisabledForeColor +DisabledBackColor +RightToLeft +ReadOnly +Themes +Name diff --git a/props_collection.txt b/props_collection.txt new file mode 100644 index 0000000..ef9663c --- /dev/null +++ b/props_collection.txt @@ -0,0 +1,8 @@ +Comment +Tag +Top +Left +Height +Width +KeySort +Name diff --git a/props_combobox.txt b/props_combobox.txt new file mode 100644 index 0000000..874d812 --- /dev/null +++ b/props_combobox.txt @@ -0,0 +1,89 @@ +Comment +Tag +OLEDragMode +OLEDragPicture +OLEDropMode +OLEDropEffects +DragMode +DragIcon +FontBold +FontItalic +FontName +FontOutline +FontShadow +FontSize +FontStrikethru +FontUnderline +FontCondense +FontExtend +FontCharSet +Anchor +MaxLength +DefTop +DefLeft +DefHeight +DefWidth +Alignment +BoundColumn +Picture +PictureSelectionDisplay +ColumnCount +ColumnWidths +RowSourceType +RowSource +DisplayValue +Value +ControlSource +Enabled +FirstElement +Height +HelpContextID +WhatsThisHelpID +ColumnLines +IncrementalSearch +Left +Margin +MousePointer +MouseIcon +NumberOfElements +SelectOnEntry +Sorted +SpecialEffect +StatusBarText +Style +TabIndex +TabStop +TerminateRead +ToolTipText +Top +Visible +Width +RightToLeft +HideSelection +ColorSource +ColorScheme +ForeColor +BackColor +SelectedForeColor +ItemForeColor +ItemBackColor +SelectedItemForeColor +DisabledItemBackColor +DisabledBackColor +DisabledForeColor +SelectedBackColor +SelectedItemBackColor +DisabledItemForeColor +BorderColor +NullDisplay +Format +InputMask +ItemTips +BorderStyle +BoundTo +IMEMode +ReadOnly +DisplayCount +OLEDropTextInsertion +Themes +Name diff --git a/props_commandbutton.txt b/props_commandbutton.txt new file mode 100644 index 0000000..1e26968 --- /dev/null +++ b/props_commandbutton.txt @@ -0,0 +1,62 @@ +AutoSize +Comment +Tag +OLEDragMode +OLEDragPicture +OLEDropMode +OLEDropEffects +DragMode +DragIcon +DefTop +DefLeft +DefHeight +DefWidth +Top +Left +Height +Width +FontBold +FontItalic +FontName +FontOutline +FontShadow +FontSize +FontStrikethru +FontUnderline +FontCondense +FontExtend +FontCharSet +Anchor +WordWrap +Picture +DownPicture +DisabledPicture +Cancel +Caption +Default +Enabled +HelpContextID +WhatsThisHelpID +MousePointer +MouseIcon +StatusBarText +Style +TabIndex +TabStop +ToolTipText +TerminateRead +Visible +SpecialEffect +PicturePosition +PictureMargin +PictureSpacing +ColorSource +ColorScheme +ForeColor +BackColor +DisabledForeColor +DisabledBackColor +RightToLeft +Themes +Alignment +Name diff --git a/props_commandgroup.txt b/props_commandgroup.txt new file mode 100644 index 0000000..7331c06 --- /dev/null +++ b/props_commandgroup.txt @@ -0,0 +1,70 @@ +AutoSize +MemberClassLibrary +MemberClass +ButtonCount +Comment +Tag +OLEDragMode +OLEDragPicture +OLEDropMode +OLEDropEffects +DragMode +DragIcon +Anchor +DefTop +DefLeft +DefHeight +DefWidth +Top +Left +Height +Width +FontBold +FontItalic +FontName +FontOutline +FontShadow +FontSize +FontStrikethru +FontUnderline +FontCondense +FontExtend +FontCharSet +BackStyle +BorderStyle +Value +ControlSource +WordWrap +Picture +DownPicture +DisabledPicture +Cancel +Caption +Default +Enabled +HelpContextID +WhatsThisHelpID +MousePointer +MouseIcon +SpecialEffect +Style +TabIndex +TabStop +TerminateRead +Visible +PicturePosition +PictureMargin +PictureSpacing +ColorSource +ColorScheme +ForeColor +BackColor +BorderColor +DisabledForeColor +DisabledBackColor +RightToLeft +ToolTipText +StatusBarText +Themes +Alignment +Name diff --git a/props_container.txt b/props_container.txt new file mode 100644 index 0000000..b74ef4e --- /dev/null +++ b/props_container.txt @@ -0,0 +1,36 @@ +Comment +Tag +OLEDragMode +OLEDragPicture +OLEDropMode +OLEDropEffects +DragMode +DragIcon +Anchor +DefTop +DefLeft +DefHeight +DefWidth +Top +Left +Width +Height +Picture +BackStyle +BorderWidth +SpecialEffect +Enabled +Visible +MousePointer +MouseIcon +TabStop +HelpContextID +WhatsThisHelpID +ColorSource +ForeColor +BackColor +BorderColor +Style +ToolTipText +StatusBarText +Name diff --git a/props_control.txt b/props_control.txt new file mode 100644 index 0000000..0733799 --- /dev/null +++ b/props_control.txt @@ -0,0 +1,36 @@ +Comment +Tag +OLEDragMode +OLEDragPicture +OLEDropMode +OLEDropEffects +DragMode +DragIcon +Anchor +DefTop +DefLeft +DefHeight +DefWidth +Top +Left +Width +Height +Picture +BackStyle +BorderWidth +SpecialEffect +Enabled +Visible +MousePointer +MouseIcon +TabIndex +TabStop +HelpContextID +WhatsThisHelpID +ColorSource +ForeColor +BackColor +BorderColor +Style +ToolTipText +Name diff --git a/props_cursor.txt b/props_cursor.txt new file mode 100644 index 0000000..e912240 --- /dev/null +++ b/props_cursor.txt @@ -0,0 +1,17 @@ +Comment +Tag +Top +Left +Height +Width +Alias +BufferModeOverride +Order +OrderDirection +Database +CursorSource +Exclusive +Filter +ReadOnly +NoDataOnLoad +Name diff --git a/props_cursoradapter.txt b/props_cursoradapter.txt new file mode 100644 index 0000000..cd075d5 --- /dev/null +++ b/props_cursoradapter.txt @@ -0,0 +1,67 @@ +Comment +Tag +Height +Width +UseDeDataSource +SelectCmd +UpdateCmd +InsertCmd +DeleteCmd +AllowUpdate +AllowInsert +AllowDelete +CursorSchema +Alias +BufferModeOverride +DataSource +DataSourceType +InsertCmdDataSource +InsertCmdDataSourceType +UpdateCmdDataSource +UpdateCmdDataSourceType +DeleteCmdDataSource +DeleteCmdDataSourceType +Flags +CompareMemo +FetchAsNeeded +FetchMemo +Prepared +SendUpdates +BatchUpdateCount +FetchSize +MaxRecords +UseMemoSize +UpdateType +WhereType +KeyFieldList +Tables +UpdatableFieldList +UpdateNameList +ConversionFunc +AllowSimultaneousFetch +BreakOnError +UpdateGramSchemaLocation +ConflictCheckType +ConflictCheckCmd +MapVarchar +MapBinary +UseCursorSchema +NoData +TimestampFieldList +InsertCmdRefreshFieldList +InsertCmdRefreshKeyFieldList +UpdateCmdRefreshFieldList +UpdateCmdRefreshKeyFieldList +RefreshTimestamp +RefreshCmd +RefreshCmdDataSource +RefreshCmdDataSourceType +InsertCmdRefreshCmd +UpdateCmdRefreshCmd +RefreshIgnoreFieldList +FetchMemoDataSource +FetchMemoDataSourceType +FetchMemoCmdList +UseTransactions +ADOCodePage +Name diff --git a/props_dataenvironment.txt b/props_dataenvironment.txt new file mode 100644 index 0000000..816a86a --- /dev/null +++ b/props_dataenvironment.txt @@ -0,0 +1,13 @@ +Comment +Tag +Top +Left +Width +Height +OpenViews +AutoOpenTables +AutoCloseTables +InitialSelectedAlias +DataSource +DataSourceType +Name diff --git a/props_editbox.txt b/props_editbox.txt new file mode 100644 index 0000000..20da34b --- /dev/null +++ b/props_editbox.txt @@ -0,0 +1,72 @@ +Comment +Tag +OLEDragMode +OLEDragPicture +OLEDropMode +OLEDropEffects +DragMode +DragIcon +FontBold +FontItalic +FontName +FontOutline +FontShadow +FontSize +FontStrikethru +FontUnderline +FontCondense +FontExtend +FontCharSet +Anchor +DefTop +DefLeft +DefHeight +DefWidth +AddLineFeeds +Alignment +AllowTabs +BackStyle +BorderStyle +Enabled +Format +Height +HelpContextID +WhatsThisHelpID +HideSelection +Left +Margin +MaxLength +MousePointer +MouseIcon +ReadOnly +ScrollBars +SelectOnEntry +SpecialEffect +StatusBarText +TabIndex +TabStop +TerminateRead +ToolTipText +Top +Visible +Width +PasswordChar +EnableHyperlinks +ColorSource +ColorScheme +ForeColor +BackColor +DisabledBackColor +SelectedForeColor +DisabledForeColor +SelectedBackColor +BorderColor +Value +ControlSource +RightToLeft +NullDisplay +IntegralHeight +IMEMode +OLEDropTextInsertion +Themes +Name diff --git a/props_form.txt b/props_form.txt new file mode 100644 index 0000000..6997a24 --- /dev/null +++ b/props_form.txt @@ -0,0 +1,91 @@ +DataSession +ScaleMode +DefTop +DefLeft +DefHeight +DefWidth +Top +Left +Height +Width +Desktop +ShowWindow +ScrollBars +ShowInTaskBar +DoCreate +Comment +Tag +OLEDragMode +OLEDragPicture +OLEDropMode +OLEDropEffects +ShowTips +BufferMode +AutoCenter +Picture +BorderStyle +Caption +ControlBox +Closable +FontBold +FontCondense +FontExtend +FontItalic +FontName +FontOutline +FontShadow +FontSize +FontStrikethru +FontUnderline +FontCharSet +HalfHeightCaption +MaxButton +MinButton +Movable +MaxHeight +MaxWidth +MinHeight +MinWidth +MaxTop +MaxLeft +MDIForm +MousePointer +MouseIcon +Visible +ClipControls +DrawMode +DrawStyle +DrawWidth +FillStyle +Enabled +Icon +KeyPreview +TabIndex +TabStop +TitleBar +WindowType +WindowState +LockScreen +AlwaysOnTop +AlwaysOnBottom +SizeBox +ZoomBox +HelpContextID +WhatsThisHelpID +WhatsThisHelp +WhatsThisButton +RightToLeft +DefOleLCID +MacDesktop +ColorSource +ForeColor +BackColor +FillColor +HScrollSmallChange +VScrollSmallChange +ContinuousScroll +Themes +BindControls +AllowOutput +Dockable +Name diff --git a/props_formset.txt b/props_formset.txt new file mode 100644 index 0000000..942e07d --- /dev/null +++ b/props_formset.txt @@ -0,0 +1,14 @@ +DataSession +Comment +Tag +BufferMode +AutoRelease +Visible +WindowList +WindowType +ReadSave +ReadTimeout +ReadMouse +ReadCycle +ReadLock +Name diff --git a/props_grid.txt b/props_grid.txt new file mode 100644 index 0000000..795de87 --- /dev/null +++ b/props_grid.txt @@ -0,0 +1,111 @@ +MemberClassLibrary +MemberClass +ColumnCount +Comment +Tag +OLEDragPicture +OLEDropMode +OLEDropEffects +DragMode +DragIcon +FontBold +FontItalic +FontName +FontOutline +FontShadow +FontSize +FontStrikethru +FontUnderline +FontCondense +FontExtend +FontCharSet +Anchor +DefTop +DefLeft +DefHeight +DefWidth +HeaderClassLibrary +HeaderClass +Alignment +Caption +Bound +ColumnOrder +ControlSource +CurrentControl +AllowAddNew +AllowHeaderSizing +AllowRowSizing +ChildOrder +DeleteMark +Enabled +Width +Movable +Resizable +GridLines +GridLineWidth +HeaderHeight +Height +HelpContextID +WhatsThisHelpID +Highlight +HighlightRow +HighlightRowLineWidth +Left +LinkMaster +MousePointer +MouseIcon +Panel +PanelLink +ReadOnly +RecordMark +RecordSource +RecordSourceType +RelationalExpr +RowHeight +Sparse +Visible +SelectOnEntry +DynamicBackColor +DynamicForeColor +DynamicFontBold +DynamicFontItalic +DynamicFontName +DynamicFontOutline +DynamicFontSize +DynamicFontShadow +DynamicFontStrikethru +DynamicFontUnderline +DynamicAlignment +DynamicCurrentControl +DynamicInputMask +Format +InputMask +ForeColor +BackColor +Picture +WordWrap +ScrollBars +SplitBar +StatusBarText +TabIndex +TabStop +ToolTipText +Top +Value +View +Width +Partition +GridLineColor +HighlightBackColor +HighlightForeColor +SelectedItemBackColor +SelectedItemForeColor +HighlightStyle +RightToLeft +LockColumns +LockColumnsLeft +AllowAutoColumnFit +AllowCellSelection +Themes +Optimize +Name diff --git a/props_grid_column.txt b/props_grid_column.txt new file mode 100644 index 0000000..e4a4d58 --- /dev/null +++ b/props_grid_column.txt @@ -0,0 +1,50 @@ +Comment +Tag +FontBold +FontItalic +FontName +FontOutline +FontShadow +FontSize +FontStrikethru +FontUnderline +FontCondense +FontExtend +FontCharSet +HeaderClassLibrary +HeaderClass +Alignment +Bound +ColumnOrder +ControlSource +CurrentControl +Enabled +Width +Movable +Resizable +ReadOnly +Sparse +Visible +SelectOnEntry +DynamicBackColor +DynamicForeColor +DynamicFontBold +DynamicFontItalic +DynamicFontName +DynamicFontOutline +DynamicFontSize +DynamicFontShadow +DynamicFontStrikethru +DynamicFontUnderline +DynamicAlignment +DynamicCurrentControl +DynamicInputMask +Format +InputMask +ForeColor +BackColor +ToolTipText +StatusBarText +MousePointer +MouseIcon +Name diff --git a/props_grid_header.txt b/props_grid_header.txt new file mode 100644 index 0000000..5e95df5 --- /dev/null +++ b/props_grid_header.txt @@ -0,0 +1,24 @@ +Comment +Tag +FontBold +FontItalic +FontName +FontOutline +FontShadow +FontSize +FontStrikethru +FontUnderline +FontCondense +FontExtend +FontCharSet +Alignment +Caption +ForeColor +BackColor +Picture +WordWrap +ToolTipText +StatusBarText +MousePointer +MouseIcon +Name diff --git a/props_hyperlink.txt b/props_hyperlink.txt new file mode 100644 index 0000000..43fb29e --- /dev/null +++ b/props_hyperlink.txt @@ -0,0 +1,7 @@ +Comment +Tag +Top +Left +Height +Width +Name diff --git a/props_image.txt b/props_image.txt new file mode 100644 index 0000000..76ab678 --- /dev/null +++ b/props_image.txt @@ -0,0 +1,31 @@ +Comment +Tag +OLEDragMode +OLEDragPicture +OLEDropMode +OLEDropEffects +DragMode +DragIcon +Anchor +DefTop +DefLeft +DefHeight +DefWidth +Picture +BackStyle +BorderStyle +Height +HelpContextID +WhatsThisHelpID +Left +MousePointer +MouseIcon +Top +Visible +Width +ColorSource +BorderColor +ToolTipText +StatusBarText +Themes +Name diff --git a/props_label.txt b/props_label.txt new file mode 100644 index 0000000..18bbd2f --- /dev/null +++ b/props_label.txt @@ -0,0 +1,51 @@ +AutoSize +Comment +Tag +OLEDragMode +OLEDragPicture +OLEDropMode +OLEDropEffects +DragMode +DragIcon +FontBold +FontItalic +FontName +FontOutline +FontShadow +FontSize +FontStrikethru +FontUnderline +FontCondense +FontExtend +FontCharSet +Anchor +WordWrap +DefTop +DefLeft +DefHeight +DefWidth +Alignment +BackStyle +BorderStyle +Caption +Height +HelpContextID +WhatsThisHelpID +Left +MousePointer +MouseIcon +Top +Visible +Width +ColorSource +ColorScheme +ForeColor +BackColor +DisabledForeColor +DisabledBackColor +RightToLeft +ToolTipText +StatusBarText +Style +Rotation +Name diff --git a/props_line.txt b/props_line.txt new file mode 100644 index 0000000..ef86948 --- /dev/null +++ b/props_line.txt @@ -0,0 +1,33 @@ +Comment +Tag +OLEDragMode +OLEDragPicture +OLEDropMode +OLEDropEffects +DragMode +DragIcon +Anchor +DefTop +DefLeft +DefHeight +DefWidth +BorderStyle +BorderWidth +DrawMode +Height +HelpContextID +WhatsThisHelpID +Left +MousePointer +MouseIcon +Top +Visible +Width +LineSlant +ColorSource +BorderColor +ToolTipText +StatusBarText +PolyPoints +Rotation +Name diff --git a/props_listbox.txt b/props_listbox.txt new file mode 100644 index 0000000..654619e --- /dev/null +++ b/props_listbox.txt @@ -0,0 +1,74 @@ +Comment +Tag +DragMode +DragIcon +OLEDragMode +OLEDragPicture +OLEDropMode +OLEDropEffects +FontBold +FontItalic +FontName +FontOutline +FontShadow +FontSize +FontStrikethru +FontUnderline +FontCondense +FontExtend +FontCharSet +Anchor +DefTop +DefLeft +DefHeight +DefWidth +BoundColumn +Picture +ColumnCount +ColumnWidths +RowSourceType +RowSource +Value +ControlSource +Enabled +FirstElement +Height +HelpContextID +WhatsThisHelpID +ColumnLines +IncrementalSearch +Left +MousePointer +MouseIcon +MoverBars +MultiSelect +NumberOfElements +Sorted +SpecialEffect +StatusBarText +TabIndex +TabStop +TerminateRead +ToolTipText +Top +Visible +Width +ColorSource +ColorScheme +DisabledBackColor +ItemForeColor +ItemBackColor +DisabledItemBackColor +SelectedItemForeColor +SelectedItemBackColor +DisabledItemForeColor +DisabledForeColor +BorderColor +RightToLeft +IntegralHeight +NullDisplay +ItemTips +BoundTo +Themes +AutoHideScrollbar +Name diff --git a/props_olebound.txt b/props_olebound.txt new file mode 100644 index 0000000..2ea478d --- /dev/null +++ b/props_olebound.txt @@ -0,0 +1,30 @@ +Comment +Tag +DragMode +DragIcon +DefTop +DefLeft +DefHeight +DefWidth +Top +Left +Height +Width +Visible +Enabled +TabStop +Anchor +ControlSource +Stretch +MousePointer +MouseIcon +AutoSize +Sizable +HelpContextID +WhatsThisHelpID +HostName +AutoVerbMenu +AutoActivate +ToolTipText +StatusBarText +Name diff --git a/props_optiongroup.txt b/props_optiongroup.txt new file mode 100644 index 0000000..42333d4 --- /dev/null +++ b/props_optiongroup.txt @@ -0,0 +1,71 @@ +AutoSize +MemberClassLibrary +MemberClass +ButtonCount +Comment +Tag +OLEDragMode +OLEDragPicture +OLEDropMode +OLEDropEffects +DragMode +DragIcon +FontBold +FontItalic +FontName +FontOutline +FontShadow +FontSize +FontStrikethru +FontUnderline +FontCondense +FontExtend +FontCharSet +Anchor +Picture +DownPicture +DisabledPicture +PicturePosition +PictureMargin +PictureSpacing +DefTop +DefLeft +DefHeight +DefWidth +Alignment +BackStyle +BorderStyle +Caption +Value +ControlSource +Enabled +Height +HelpContextID +WhatsThisHelpID +Left +MousePointer +MouseIcon +SpecialEffect +StatusBarText +Style +TabIndex +TabStop +TerminateRead +ToolTipText +Top +Width +WordWrap +TabIndex +Visible +AutoSize +ColorSource +ColorScheme +ForeColor +BackColor +DisabledForeColor +DisabledBackColor +RightToLeft +ToolTipText +StatusBarText +Themes +Name diff --git a/props_optiongroup_option.txt b/props_optiongroup_option.txt new file mode 100644 index 0000000..b9301f9 --- /dev/null +++ b/props_optiongroup_option.txt @@ -0,0 +1,61 @@ +Comment +Tag +OLEDragMode +OLEDragPicture +OLEDropMode +OLEDropEffects +DragMode +DragIcon +FontBold +FontItalic +FontName +FontOutline +FontShadow +FontSize +FontStrikethru +FontUnderline +FontCondense +FontExtend +FontCharSet +Anchor +Picture +DownPicture +DisabledPicture +PicturePosition +PictureMargin +PictureSpacing +DefTop +DefWidth +Alignment +BackStyle +Caption +Value +ControlSource +Enabled +Height +HelpContextID +WhatsThisHelpID +Left +MousePointer +MouseIcon +SpecialEffect +StatusBarText +Style +TabIndex +TabStop +TerminateRead +ToolTipText +Top +Visible +Width +WordWrap +AutoSize +ColorSource +ColorScheme +ForeColor +BackColor +DisabledForeColor +DisabledBackColor +RightToLeft +Themes +Name diff --git a/props_pageframe.txt b/props_pageframe.txt new file mode 100644 index 0000000..09ddc53 --- /dev/null +++ b/props_pageframe.txt @@ -0,0 +1,39 @@ +ErasePage +MemberClassLibrary +MemberClass +PageCount +TabStretch +Comment +Tag +OLEDragMode +OLEDragPicture +OLEDropMode +OLEDropEffects +DragMode +DragIcon +Anchor +TabStyle +DefTop +DefLeft +DefHeight +DefWidth +ActivePage +Enabled +Top +Left +Width +Height +MousePointer +MouseIcon +Tabs +TabStop +Visible +ColorSource +RightToLeft +HelpContextID +WhatsThisHelpID +TabOrientation +Themes +ToolTipText +StatusBarText +Name diff --git a/props_pageframe_page.txt b/props_pageframe_page.txt new file mode 100644 index 0000000..239147d --- /dev/null +++ b/props_pageframe_page.txt @@ -0,0 +1,33 @@ +Comment +Tag +OLEDragMode +OLEDragPicture +OLEDropMode +OLEDropEffects +DragMode +DragIcon +FontBold +FontItalic +FontName +FontOutline +FontShadow +FontSize +FontStrikethru +FontUnderline +FontCondense +FontExtend +FontCharSet +Caption +Picture +Enabled +HelpContextID +WhatsThisHelpID +PageOrder +ColorSource +BackColor +ForeColor +ToolTipText +StatusBarText +MousePointer +MouseIcon +Name diff --git a/props_pre_v1_19_22.txt b/props_pre_v1_19_22.txt new file mode 100644 index 0000000..2b7babd --- /dev/null +++ b/props_pre_v1_19_22.txt @@ -0,0 +1,132 @@ +FRXDataSession +ErasePage +PageCount +ActivePage +ButtonCount +ColumnCount +Value +Comment +ControlSource +DataSession +DeleteMark +ScaleMode +Tag +OLEDragMode +OLEDragPicture +OLEDropMode +OLEDropEffects +DragMode +DragIcon +Anchor +DefTop +DefLeft +DefHeight +DefWidth +Picture +Stretch +BackStyle +BorderStyle +BorderWidth +Enabled +Top +Left +Height +Width +MousePointer +MouseIcon +Visible +MaxLength +Alias +BufferModeOverride +Order +OrderDirection +CursorSource +Exclusive +Filter +Panel +ReadOnly +RecordSource +RecordSourceType +NoDataOnLoad +OpenViews +AutoOpenTables +AutoCloseTables +InitialSelectedAlias +DataSource +DataSourceType +Desktop +ShowWindow +ScrollBars +ShowInTaskBar +DoCreate +Tag +ShowTips +BufferMode +AutoCenter +AutoSize +WordWrap +Caption +ControlBox +Closable +Curvature +FontBold +FontCondense +FontExtend +FontItalic +FontName +FontOutline +FontShadow +FontSize +FontStrikethru +FontUnderline +HalfHeightCaption +Margin +MaxButton +MinButton +Movable +MaxHeight +MaxWidth +MinHeight +MinWidth +MaxTop +MaxLeft +MDIForm +ClipControls +DrawMode +DrawStyle +DrawWidth +FillStyle +Icon +KeyPreview +TabIndex +TabStop +TitleBar +WindowType +WindowState +LockScreen +AlwaysOnTop +AlwaysOnBottom +SizeBox +SpecialEffect +ZoomBox +ZOrderSet +HelpContextID +WhatsThisHelpID +WhatsThisHelp +WhatsThisButton +RightToLeft +DefOleLCID +MacDesktop +ColorSource +ForeColor +DisableForeColor +BackColor +FillColor +HScrollSmallChange +VScrollSmallChange +ContinuousScroll +BindControls +AllowOutput +Dockable +_memberdata +Themes diff --git a/props_projecthook.txt b/props_projecthook.txt new file mode 100644 index 0000000..02118a4 --- /dev/null +++ b/props_projecthook.txt @@ -0,0 +1,7 @@ +Comment +Tag +Height +Width +OLEDropMode +OLEDropEffects +Name diff --git a/props_relation.txt b/props_relation.txt new file mode 100644 index 0000000..dfefa06 --- /dev/null +++ b/props_relation.txt @@ -0,0 +1,10 @@ +Comment +Tag +Height +Width +ParentAlias +RelationalExpr +ChildAlias +ChildOrder +OneToMany +Name diff --git a/props_reportlistener.txt b/props_reportlistener.txt new file mode 100644 index 0000000..87a798d --- /dev/null +++ b/props_reportlistener.txt @@ -0,0 +1,18 @@ +Comment +Tag +Height +Width +CurrentPass +TwoPassProcess +FRXDataSession +PreviewContainer +DynamicLineHeight +CommandClauses +AllowModalMessages +QuietMode +CurrentDataSession +SendGDIPlusImage +PrintJobName +CallAdjustObjectSize +CallEvaluateContents +Name diff --git a/props_separator.txt b/props_separator.txt new file mode 100644 index 0000000..71d1cc1 --- /dev/null +++ b/props_separator.txt @@ -0,0 +1,10 @@ +Comment +Tag +Top +Left +Height +Width +Enabled +Style +Visible +Name diff --git a/props_shape.txt b/props_shape.txt new file mode 100644 index 0000000..4fb2aae --- /dev/null +++ b/props_shape.txt @@ -0,0 +1,40 @@ +Comment +Tag +OLEDragMode +OLEDragPicture +OLEDropMode +OLEDropEffects +DragMode +DragIcon +DefTop +DefLeft +DefHeight +DefWidth +Top +Left +Height +Width +Anchor +BackStyle +BorderStyle +BorderWidth +Curvature +DrawMode +FillStyle +HelpContextID +WhatsThisHelpID +MousePointer +MouseIcon +ToolTipText +StatusBarText +Visible +SpecialEffect +ColorSource +ColorScheme +BackColor +FillColor +BorderColor +Style +PolyPoints +Rotation +Name diff --git a/props_spinner.txt b/props_spinner.txt new file mode 100644 index 0000000..32f3700 --- /dev/null +++ b/props_spinner.txt @@ -0,0 +1,69 @@ +Comment +Tag +OLEDragMode +OLEDragPicture +OLEDropMode +OLEDropEffects +DragMode +DragIcon +FontBold +FontItalic +FontName +FontOutline +FontShadow +FontSize +FontStrikethru +FontUnderline +FontCondense +FontExtend +FontCharSet +Anchor +DefTop +DefLeft +DefHeight +DefWidth +Alignment +BorderStyle +Enabled +Height +HelpContextID +WhatsThisHelpID +HideSelection +Increment +InputMask +KeyboardHighValue +KeyboardLowValue +Left +Margin +MousePointer +MouseIcon +ReadOnly +SelectOnEntry +SpecialEffect +SpinnerHighValue +SpinnerLowValue +StatusBarText +TabIndex +TabStop +TerminateRead +ToolTipText +Top +Visible +Width +Format +ColorSource +ColorScheme +BackColor +ForeColor +DisabledBackColor +SelectedForeColor +DisabledForeColor +SelectedBackColor +BorderColor +Value +ControlSource +RightToLeft +NullDisplay +OLEDropTextInsertion +Themes +Name diff --git a/props_textbox.txt b/props_textbox.txt new file mode 100644 index 0000000..cc41cd4 --- /dev/null +++ b/props_textbox.txt @@ -0,0 +1,82 @@ +Comment +Tag +OLEDragMode +OLEDragPicture +OLEDropMode +OLEDropEffects +DragMode +DragIcon +FontBold +FontItalic +FontName +FontOutline +FontShadow +FontSize +FontStrikethru +FontUnderline +FontCondense +FontExtend +FontCharSet +DateFormat +DateMark +Century +Hours +Seconds +StrictDateEntry +Anchor +DefTop +DefLeft +DefHeight +DefWidth +Alignment +BackStyle +BorderStyle +Value +ControlSource +Enabled +Format +Height +HelpContextID +WhatsThisHelpID +HideSelection +InputMask +Left +Margin +MaxLength +MousePointer +MouseIcon +ReadOnly +SelectOnEntry +SpecialEffect +StatusBarText +TabIndex +TabStop +TerminateRead +ToolTipText +Top +Visible +Width +Style +MemoWindow +OpenWindow +PasswordChar +EnableHyperlinks +ColorSource +ColorScheme +ForeColor +BackColor +DisabledBackColor +SelectedForeColor +DisabledForeColor +SelectedBackColor +BorderColor +RightToLeft +NullDisplay +IntegralHeight +IMEMode +OLEDropTextInsertion +Themes +AutoComplete +AutoCompSource +AutoCompTable +Name diff --git a/props_timer.txt b/props_timer.txt new file mode 100644 index 0000000..043b06d --- /dev/null +++ b/props_timer.txt @@ -0,0 +1,13 @@ +Comment +Tag +DefTop +DefLeft +DefHeight +DefWidth +Top +Left +Height +Width +Enabled +Interval +Name diff --git a/props_toolbar.txt b/props_toolbar.txt new file mode 100644 index 0000000..6d5328f --- /dev/null +++ b/props_toolbar.txt @@ -0,0 +1,31 @@ +ScaleMode +Comment +Tag +OLEDragMode +OLEDragPicture +OLEDropMode +OLEDropEffects +DefTop +DefLeft +Caption +DataSession +Enabled +HelpContextID +WhatsThisHelpID +KeyPreview +Left +LockScreen +MousePointer +MouseIcon +Movable +ShowTips +Sizable +Top +Visible +ColorSource +ForeColor +BackColor +ControlBox +ShowWindow +Themes +Name diff --git a/props_xmladapter.txt b/props_xmladapter.txt new file mode 100644 index 0000000..6e869f4 --- /dev/null +++ b/props_xmladapter.txt @@ -0,0 +1,29 @@ +Comment +Tag +Height +Width +PreserveWhiteSpace +NoCpTrans +MapN19_4ToCurrency +DisableEncode +IsDiffgram +XMLName +XMLNamespace +XMLPrefix +FormattedOutput +ForceCloseTag +RespectCursorCP +UTF8Encoded +XMLSchemaLocation +WrapMemoInCDATA +WrapCharInCDATA +Unicode +MapVarchar +MapBinary +RespectNesting +SelectionNamespaces +XMLNameIsXPath +DeclareXMLPrefix +CodePage +UseCodePage +Name diff --git a/props_xmlfield.txt b/props_xmlfield.txt new file mode 100644 index 0000000..d276fa2 --- /dev/null +++ b/props_xmlfield.txt @@ -0,0 +1,25 @@ +Comment +Tag +Height +Width +Alias +XMLName +XSDtype +XSDtotalDigits +XSDfractionDigits +XSDmaxLength +IsAttribute +DataType +MaxLength +FractionDigits +NoCpTrans +Unicode +IsNull +IsBinary +IsBase64 +WrapInCDATA +DisableEncode +Keyfield +XMLNameIsXPath +CodePage +Name diff --git a/props_xmltable.txt b/props_xmltable.txt new file mode 100644 index 0000000..0ebf1e5 --- /dev/null +++ b/props_xmltable.txt @@ -0,0 +1,16 @@ +Comment +Tag +Height +Width +Alias +XMLName +XMLNamespace +XMLPrefix +ChildTable +NestedInto +FirstNestedTable +NextSiblingTable +XMLNameIsXPath +DeclareXMLPrefix +CodePage +Name