-
Notifications
You must be signed in to change notification settings - Fork 0
/
ifox.prg
163 lines (106 loc) · 2.36 KB
/
ifox.prg
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
If .F.
? "Creado por Pablo Pioli"
Endif
#include IFOX.H
************************** IFOX CLASS **********************************
****************************************************************************
Define Class iFox as Custom
***
* Function Init
* Initialize iFox
***
Hidden Function Init()
* Disable wait states
Sys(2335, 0)
* Initialize environment
* These a the default values for VFP7
* kept for VFP6 compatibility
Set Exclusive Off
Set Talk Off
Set Safety Off
* General settings
Set Deleted On
Set Date to DMY
Set Multilocks On
Set Century to 19 RollOver 80
Set Century Off
Set Near On
Set Decimals to 2
Set Separator to "."
Set Point to ","
Set UDFParms to Value
Set ANSI On
Set Exact On
Set Escape Off
Set Reprocess to 1
Set Refresh to 5, 30
Set Collate to "Spanish"
Set Hours to 24
Set Notify Off
Set CPDialog Off
Set LogErrors Off
* Initialize properties
* Set a reference to the axuiliar files
Set Procedure to AUXILIAR.PRG Additive
* This way any object can call another without the overhead
* of going thru COM
Set Procedure to SOCKETS.PRG Additive
Set Procedure to FTP.PRG Additive
Set Procedure to HTTP.PRG Additive
Set Procedure to POP3.PRG Additive
Set Procedure to SMTP.PRG Additive
Set Procedure to CONNECT.PRG Additive
* Initialize random number generator
Rand(-1)
* So each subclass can make it's own initialization
this.eInit()
EndFunc
***
* Function eInit
***
Protected Function eInit()
EndFunc
***
* Function Destroy
***
Hidden Function Destroy()
this.eDestroy()
EndFunc
***
* Function eDestroy
***
Protected Function eDestroy()
EndFunc
***
* Function GetVersion()
***
Function GetVersion()
Local cRes, cName, aVersion
cName = SubStr(Sys(16, 0), 23)
Dimension aVersion[1]
If AGetFileVersion(aVersion, cName) >= 4
cRes = aVersion[4]
else
cRes = "Error"
Endif
Return(cRes)
#ifdef FINAL_VERSION
***
* Function Error
***
Protected Function Error(nError, cMethod, nLine, cDesc)
Local cMssg, cCode, cErrorFile
* Get error message description
If Type("cDesc") <> "C"
cDesc = Message()
Endif
* Generate error text
cMssg = "Número de error: " + LTrim(Str(nError, 6, 0)) + " - "
cMssg = cMssg + "Método: " + cMethod + " - "
cMssg = cMssg + "Línea: " + LTrim(Str(nLine, 6, 0)) + " - "
cMssg = cMssg + "Descripción: " + cDesc
* Generate a COM error and stop execution
ComReturnError("iFox", cMssg)
EndFunc
#endif
EndDefine