Clipper/FiveWin - Tengo un programa en clipper, pero no se como abrirlo

   
Vista:

Tengo un programa en clipper, pero no se como abrirlo

Publicado por es_binario (2 intervenciones) el 13/02/2012 23:01:59
Buenas tardes, antes que nada quiero mencionar que yo soy un progamador de Visual foxpro, sin embargo tengo un programa en clipper, " En relidad el programa es de uno de mis clientes ", el caso es que dicho programa tiene los siguientes archivos.

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
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
Volume in drive F has no label.
 Volume Serial Number is CC3E-F08B
 
 Directory of F:\SAPA\CLIPPER
 
13/02/2012  04:00 p.m.    <DIR>          .
13/02/2012  04:00 p.m.    <DIR>          ..
23/02/1994  12:26 p.m.               221 AUTOEXEC.BAT
18/10/1991  02:07 p.m.               137 AUTOEXEC.CHG
26/05/1992  10:02 p.m.                52 BL.BAT
24/05/1991  02:00 a.m.            62,146 BLINKER.EXE
04/02/2009  02:43 p.m.            15,170 CGENPO09.DBF
15/04/1991  02:00 a.m.                46 CL.BAT
15/04/1991  02:00 a.m.            54,225 CLD.EXE
15/04/1991  02:00 a.m.            79,183 CLD.LIB
15/04/1991  03:00 a.m.           188,609 CLIPPER.EXE
15/04/1991  03:00 a.m.           491,279 CLIPPER.LIB
28/04/2006  12:28 p.m.             1,446 CONCEP09.DBF
18/10/1991  02:08 p.m.                22 CONFIG.CHG
16/12/2008  05:45 p.m.                28 CONFIG.DB
07/08/2009  01:16 p.m.           309,248 CPMH.EXE
07/08/2009  01:16 p.m.            36,894 CPMH.OBJ
07/08/2009  10:20 a.m.            43,041 CPMH.PRG
04/02/2009  02:42 p.m.             8,514 CYOPAG09.DBF
07/08/2009  01:45 p.m.             5,120 CYOPAG09.NTX
07/08/2009  01:45 p.m.             2,048 CYPAFX09.NTX
04/02/2009  02:42 p.m.             6,787 CYPAGO09.DBF
15/04/1991  02:00 a.m.            26,665 DBFNTX.LIB
15/04/1991  02:00 a.m.             8,257 DBT50.EXE
15/04/1991  02:00 a.m.           176,258 DEBUGGER.DOC
16/01/2009  11:03 a.m.            13,312 DQCANX09.NTX
12/02/2009  12:34 p.m.            13,616 dqCATM09.dbf
16/01/2009  11:03 a.m.             5,120 DQCATX09.NTX
16/01/2009  11:04 a.m.             4,096 DQCONX09.NTX
16/01/2009  11:04 a.m.             7,168 DQDOMX09.NTX
16/01/2009  11:04 a.m.             4,096 DQFECX09.NTX
03/11/2008  03:05 p.m.               462 dqMATE09.dbf
16/01/2009  11:03 a.m.             2,048 DQMATE09.NTX
16/01/2009  11:03 a.m.             2,048 DQMATQ09.NTX
16/01/2009  11:03 a.m.             4,096 DQPERC09.NTX
16/01/2009  11:03 a.m.            10,240 DQPERN09.NTX
07/08/2009  10:12 a.m.             1,441 dqPERS09.dbf
16/01/2009  11:04 a.m.             4,096 DQREPX09.NTX
16/01/2009  11:04 a.m.             4,096 DQSECX09.NTX
07/08/2009  10:17 a.m.               802 dqUEJA09.dbf
16/01/2009  11:04 a.m.             4,096 DQUEJX09.NTX
07/08/2009  10:07 a.m.               290 DQUSUA.DBF
25/11/2009  09:08 a.m.             1,545 dyCATA09.dbf
30/11/2010  09:15 a.m.             2,194 dYCATA10.dbf
05/06/2010  10:30 a.m.             2,048 DYCATA10.NTX
17/02/2011  12:24 p.m.             2,253 DYCATA11.DBF
27/10/2009  11:34 a.m.             5,378 dyCONC09.dbf
28/05/2010  10:59 a.m.             5,432 dyCONC10.dbf
28/05/2010  11:00 a.m.             5,432 DYCONC11.DBF
07/08/2009  01:52 p.m.             4,096 DYCONX09.NTX
24/04/2009  01:47 p.m.               194 dyDPAG09.dbf
24/04/2009  01:47 p.m.               194 dyDPAG10.dbf
24/04/2009  01:48 p.m.               194 DYDPAG11.DBF
02/09/2009  01:27 p.m.               269 dyDRFC09.dbf
14/09/2010  02:31 p.m.               409 dyDRFC10.dbf
14/09/2010  02:31 p.m.               409 DYDRFC11.DBF
07/08/2009  01:52 p.m.             2,048 DYDRFX09.NTX
24/12/2010  04:14 p.m.               956 DYEMPR.DBF
04/02/2009  10:35 a.m.             6,299 dyGIRO09.dbf
04/02/2009  10:35 a.m.             6,299 dyGIRO10.dbf
04/02/2009  10:35 a.m.             6,299 DYGIRO11.DBF
07/08/2009  01:52 p.m.             5,120 DYGIRX09.NTX
21/08/2009  01:39 p.m.               275 dyINFO09.dbf
21/08/2009  01:39 p.m.               275 dyINFO10.dbf
21/08/2009  01:39 p.m.               275 DYINFO11.DBF
09/10/2009  02:29 p.m.             2,048 DYINFX09.NTX
05/06/2010  09:40 a.m.             2,048 DYINFX10.NTX
18/02/2011  12:52 p.m.             2,048 DYINFX11.NTX
09/10/2009  02:29 p.m.           739,328 DYMECX09.NTX
05/06/2010  09:40 a.m.           739,328 DYMECX10.NTX
18/02/2011  12:50 p.m.           739,328 DYMECX11.NTX
19/01/2009  09:35 p.m.         1,469,946 dyMEDI09.dbf
19/01/2009  09:35 p.m.         1,469,946 dyMEDI10.dbf
19/01/2009  09:35 p.m.         1,469,946 DYMEDI11.DBF
09/10/2009  02:29 p.m.         1,038,336 DYMEPX09.NTX
05/06/2010  09:40 a.m.         1,038,336 DYMEPX10.NTX
18/02/2011  12:50 p.m.         1,038,336 DYMEPX11.NTX
04/12/2009  12:16 p.m.         1,192,147 dyMODI09.dbf
23/12/2010  03:02 p.m.         1,480,303 dyMODI10.dbf
18/02/2011  10:40 a.m.         1,542,013 DYMODI11.DBF
19/10/2009  12:43 p.m.           130,889 dyNOTI09.dbf
15/12/2010  10:25 a.m.           366,765 dyNOTI10.dbf
30/12/2010  12:07 p.m.           367,201 DYNOTI11.DBF
05/06/2010  10:33 a.m.            34,816 DYOTCX10.NTX
05/06/2010  10:33 a.m.            29,696 DYOTFX10.NTX
03/12/2009  11:08 a.m.           152,641 dyOTRP09.dbf
24/12/2010  04:14 p.m.           232,429 dyOTRP10.dbf
18/02/2011  12:46 p.m.           266,833 DYOTRP11.DBF
09/10/2009  02:29 p.m.           219,136 DYPACX09.NTX
05/06/2010  10:29 a.m.           266,240 DYPACX10.NTX
18/02/2011  12:52 p.m.           338,944 DYPACX11.NTX
04/12/2009  12:16 p.m.         1,545,733 dyPADR09.dbf
24/12/2010  04:29 p.m.         1,604,037 dyPADR10.dbf
18/02/2011  12:48 p.m.         1,643,022 DYPADR11.DBF
09/10/2009  02:29 p.m.           247,808 DYPAFX09.NTX
05/06/2010  10:29 a.m.           304,128 DYPAFX10.NTX
18/02/2011  12:52 p.m.           389,120 DYPAFX11.NTX
04/12/2009  12:16 p.m.         2,310,220 dyPAGO09.dbf
24/12/2010  04:29 p.m.         3,157,354 dyPAGO10.dbf
18/02/2011  12:48 p.m.         3,427,363 DYPAGO11.DBF
07/08/2009  01:50 p.m.           190,464 DYPALX09.NTX
05/06/2010  10:29 a.m.           198,656 DYPALX10.NTX
18/02/2011  12:50 p.m.           206,848 DYPALX11.NTX
09/10/2009  02:29 p.m.           219,136 DYPARX09.NTX
05/06/2010  10:29 a.m.           266,240 DYPARX10.NTX
18/02/2011  12:52 p.m.           338,944 DYPARX11.NTX
07/08/2009  01:50 p.m.            86,016 DYPCOX09.NTX
05/06/2010  10:29 a.m.            90,112 DYPCOX10.NTX
18/02/2011  12:50 p.m.            94,208 DYPCOX11.NTX
07/08/2009  01:50 p.m.           227,328 DYPDOX09.NTX
05/06/2010  10:29 a.m.           238,592 DYPDOX10.NTX
18/02/2011  12:50 p.m.           249,856 DYPDOX11.NTX
07/08/2009  01:50 p.m.           112,640 DYPSEX09.NTX
05/06/2010  10:29 a.m.           238,592 DYPSEX10.NTX
18/02/2011  12:50 p.m.           118,784 DYPSEX11.NTX
07/08/2009  01:50 p.m.             2,048 DYSECA09.NTX
05/06/2010  09:40 a.m.             2,048 DYSECA10.NTX
18/02/2011  12:50 p.m.             2,048 DYSECA11.NTX
04/09/2001  12:11 p.m.               161 dySECT09.dbf
07/08/2009  01:50 p.m.             2,048 DYSECT09.NTX
04/09/2001  12:11 p.m.               161 dySECT10.dbf
05/06/2010  09:40 a.m.             2,048 DYSECT10.NTX
04/09/2001  12:11 p.m.               161 DYSECT11.DBF
18/02/2011  12:50 p.m.             2,048 DYSECT11.NTX
17/12/2008  06:27 p.m.             4,644 DYSTRHUA.DBF
17/12/2008  06:27 p.m.             4,732 DYSTRHUA.TXT
16/12/2008  05:50 p.m.             3,204 DYSTRU.DBF
16/12/2008  05:47 p.m.             3,212 DYSTRU.TXT
01/01/2009  11:00 p.m.             9,971 DYTARI09.009
07/08/2009  01:58 p.m.            12,393 dyTARI09.dbf
07/08/2009  01:52 p.m.             2,048 DYTARI09.NTX
13/09/2010  03:37 p.m.            13,431 dyTARI10.dbf
05/06/2010  09:40 a.m.             2,048 DYTARI10.NTX
11/02/2011  01:00 p.m.            13,950 DYTARI11.DBF
18/02/2011  12:52 p.m.             2,048 DYTARI11.NTX
24/12/2010  04:29 p.m.               482 DYUSUA.DBF
15/04/1991  02:00 a.m.            21,970 ERRATA.DOC
01/07/1987  12:00 p.m.               287 EUROPEAN.MEM
15/04/1991  02:00 a.m.           119,639 EXTEND.LIB
01/07/1987  12:00 p.m.            24,496 FOXBIND.EXE
01/07/1987  12:00 p.m.            72,448 FOXPCOMP.EXE
01/07/1987  12:00 p.m.           149,909 FOXPHELP.HLP
15/06/1993  10:06 a.m.           238,608 FOXPLUS.EXE
01/07/1987  12:00 p.m.           136,320 FOXPLUS.OVL
13/02/2012  04:00 p.m.                 0 hugo.txt
07/02/1995  05:25 a.m.             8,579 INKEY.CH
29/12/2008  02:49 p.m.         1,038,336 PRU.NTX
23/12/2010  07:24 p.m.           121,856 PY2010.EXE
23/12/2010  07:24 p.m.               712 PY2010.OBJ
23/12/2010  07:24 p.m.                40 PY2010.PRG
29/12/2011  01:49 p.m.           121,856 PY2012.EXE
29/12/2011  01:49 p.m.               712 PY2012.OBJ
29/12/2011  01:49 p.m.                42 PY2012.PRG
29/12/2008  02:09 p.m.            23,568 PYACT.BAK
12/01/2012  01:42 p.m.            23,568 PYACT.PRG
18/02/2011  01:04 p.m.            16,304 PYAVI.BAK
18/02/2011  01:04 p.m.           260,096 PYAVI.EXE
18/02/2011  01:04 p.m.            11,391 PYAVI.OBJ
18/02/2011  01:07 p.m.            16,304 PYAVI.PRG
02/04/2003  11:38 p.m.             1,273 PYBDSTRU.PRG
23/03/2001  04:24 p.m.             1,082 PYCAT.PRG
12/10/2000  11:56 p.m.             4,172 PYCGIR.PRG
07/11/2000  12:36 a.m.            13,532 PYCOB.PRG
16/12/2008  01:07 p.m.             2,035 PYCOBANT.PRG
16/12/2008  01:02 p.m.             2,335 PYCOBB.PRG
16/12/2008  01:00 p.m.             5,323 PYCOBC.PRG
01/03/2001  05:46 p.m.            13,536 PYCOBE.PRG
16/12/2008  01:01 p.m.             3,103 PYCOBF.PRG
17/01/2003  12:09 p.m.            22,325 PYCOBP.PRG
16/12/2008  01:03 p.m.             6,942 PYCOBR.PRG
12/10/2000  11:59 p.m.             4,738 PYCONC.PRG
09/10/2009  01:51 p.m.             5,053 PYCPAG.BAK
09/10/2009  02:08 p.m.             5,045 PYCPAG.PRG
13/10/2000  12:00 a.m.             6,796 pyCRFC.prg
12/10/2000  11:53 p.m.             6,844 PYCSEC.PRG
27/02/2006  10:51 a.m.            18,084 PYCTAR.PRG
22/12/2008  03:36 p.m.             9,948 PYCUI.PRG
01/01/2009  11:09 p.m.             3,326 PYCUIHUA.BAK
01/01/2009  11:46 p.m.           241,664 PYCUIHUA.EXE
01/01/2009  11:46 p.m.             3,600 PYCUIHUA.OBJ
16/12/2008  12:09 p.m.            14,711 PYM.BAK
05/05/2010  10:56 a.m.           413,696 PYM.EXE
13/01/2012  06:36 p.m.           155,298 PYM.OBJ
09/10/2009  02:29 p.m.            14,733 PYM.PRG
16/12/2008  01:38 p.m.            14,932 PYMA.BAK
18/02/2011  01:07 p.m.           416,768 PYMA.EXE
13/01/2012  06:36 p.m.           161,087 PYMA.OBJ
09/10/2009  02:29 p.m.            14,954 PYMA.PRG
01/01/2009  10:50 p.m.           418,816 pymal.exe
14/06/2001  02:24 p.m.            13,817 PYME.PRG
26/02/2004  04:09 p.m.            24,669 PYMEDI.PRG
22/05/2001  08:28 p.m.               645 PYMOVTAR.PRG
12/11/2002  03:38 p.m.             2,885 PYMR.PRG
24/04/2009  01:27 p.m.            26,065 PYNOT.BAK
24/04/2009  01:06 p.m.           300,032 PYNOT.EXE
24/04/2009  01:06 p.m.            25,648 PYNOT.OBJ
24/04/2009  01:33 p.m.            26,066 PYNOT.PRG
02/04/2002  02:05 p.m.             7,337 PYNOTC.PRG
05/06/2010  10:37 a.m.            23,988 PYOPAG.BAK
05/05/2010  10:53 a.m.            23,988 PYOPAG.PRG
03/12/2003  04:03 p.m.            14,532 PYOTR.PRG
22/04/2009  09:59 a.m.            22,731 PYPAD.BAK
12/01/2012  01:27 p.m.            22,731 PYPAD.PRG
27/06/2001  11:36 a.m.            11,273 PYPAG.PRG
13/04/2009  02:06 p.m.            16,826 PYPAGC.BAK
24/04/2009  12:40 p.m.            16,826 PYPAGC.PRG
05/06/2010  10:24 a.m.            21,023 PYPAGP.BAK
05/05/2010  10:53 a.m.            21,023 PYPAGP.PRG
01/01/2009  11:34 p.m.            12,432 PYPRO.PRG
16/12/2008  01:35 p.m.            45,691 PYPROC.BAK
12/01/2012  01:31 p.m.            45,729 PYPROC.PRG
05/12/2000  10:36 p.m.               151 PYPRU.PRG
07/08/2009  01:14 p.m.           356,352 PYQM.EXE
07/08/2009  01:14 p.m.            89,656 PYQM.OBJ
27/03/2002  03:39 p.m.            10,457 PYQM.PRG
17/10/2000  12:30 p.m.            12,734 PYQMAT.PRG
17/10/2000  04:42 p.m.             6,007 PYQPAD.PRG
17/10/2000  12:32 p.m.             5,371 PYQPER.PRG
24/04/2002  11:42 a.m.            28,982 PYQUEJA.PRG
12/03/2001  03:45 p.m.             8,879 PYRADE.PRG
24/09/2003  02:52 p.m.             8,944 PYRADEC.PRG
24/09/2003  02:07 p.m.             5,330 PYREP.PRG
26/12/2007  09:41 p.m.             1,888 PYRESP.PRG
27/03/2001  02:26 p.m.               278 PYREZA.PRG
07/01/2003  12:45 p.m.             3,504 PYRMES.PRG
28/08/2001  03:54 p.m.             6,241 PYRPAD.PRG
19/12/2000  04:21 p.m.             5,055 PYRPAG.PRG
12/10/2000  11:33 p.m.             3,248 PYRSEC.PRG
17/12/2001  09:03 p.m.             4,188 PYRTAR.PRG
17/12/2008  06:25 p.m.             2,291 PYSTRHUA.PRG
31/12/2002  10:34 p.m.               430 pyTAR.prg
24/04/2009  01:46 p.m.             3,398 PYTUX.BAK
24/04/2009  01:47 p.m.           241,664 PYTUX.EXE
24/04/2009  01:47 p.m.             3,654 PYTUX.OBJ
24/04/2009  01:47 p.m.             3,398 PYTUX.PRG
31/10/2000  09:56 p.m.               865 PYVERPAG.PRG
03/06/1997  06:46 p.m.            44,864 Q.EXE
06/01/1992  02:15 a.m.            10,519 QCONFIG.B
06/01/1992  02:15 a.m.             7,348 QCONFIG.DAT
06/01/1992  02:15 a.m.            23,620 QCONFIG.EXE
06/01/1992  02:15 a.m.            21,572 QCONFIG.NE
06/01/1992  02:15 a.m.            17,645 QCONFIG.PE2
06/01/1992  02:15 a.m.            11,326 QCONFIG.WP
06/01/1992  02:15 a.m.            10,720 QCONFIG.WS
06/01/1992  02:15 a.m.             5,976 QCP.DAT
06/01/1992  02:15 a.m.            42,655 QCP.DOC
06/01/1992  02:15 a.m.            24,288 QCP.EXE
06/01/1992  02:15 a.m.             1,147 QCP.TXT
06/01/1992  02:15 a.m.             1,834 QDISK.EXE
06/01/1992  02:15 a.m.             1,978 QHELP.NE
06/01/1992  02:15 a.m.             1,756 QHELP.PE2
06/01/1992  02:15 a.m.             1,953 QHELP.TXT
06/01/1992  02:15 a.m.             1,861 QHELP.WP
06/01/1992  02:15 a.m.             2,048 QHELP.WS
06/01/1992  02:15 a.m.             9,069 QM.COM
06/01/1992  02:15 a.m.             5,786 QM.DOC
06/01/1992  02:15 a.m.            28,376 QMAC.DOC
06/01/1992  02:15 a.m.            19,494 QMAC.EXE
06/01/1992  02:15 a.m.             5,394 QUPDATE.EXE
15/04/1991  02:00 a.m.            27,007 README
24/04/2009  12:39 p.m.             1,810 REPORTE1.TXT
15/04/1991  02:00 a.m.            39,105 RMAKE.EXE
15/04/1991  02:00 a.m.             1,133 RO.COM
15/04/1991  02:00 a.m.            42,540 RTLINK.DAT
15/04/1991  02:00 a.m.           354,701 RTLINK.EXE
15/04/1991  02:00 a.m.             8,429 RTLINK.HLP
15/04/1991  02:00 a.m.             7,877 RTLINKST.COM
15/04/1991  02:00 a.m.            53,919 RTLUTILS.LIB
15/04/1991  02:00 a.m.            13,857 TERMINAL.LIB
             267 File(s)     42,416,895 bytes
               2 Dir(s)   3,789,381,632 bytes free


perdon por poner, todo me gustaria saber si pueden uds que son programadores de clipper saber si dentro de ese directorio existe algun proyecto que pueda ver para entender un poco mejor el uso de las tablas sobre todo de la informacion que estas contienen, para el proyecto que me estan pidiendo mis clientes.

y tambien que clipper me tengo que bajar y de donde.

muchas gracias por cualquier ayuda que me proporcionen.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana

Tengo un programa en clipper, pero no se como abrirlo

Publicado por Antoni Masana (39 intervenciones) el 14/02/2012 07:54:50
Los programas de CLIPPER se modifican con un editor de textos tipo Block de Notas o EDIT de MS-DOS.

La extensión de los fuentes es PRG.

A diferencia de visual no existe un fichero de proyecto, ten encuenta que clipper tiene más de 25 años de existencia y la forma de programar a cambiado mucho.

Los ficheros CL.BAT y BL.BAT podrian ser el compilador y el linkador, para estar seguro tendria que ver el contenido.

El compilador es el CLIPPER.EXE y en el directorio tienes uno.
El Linkador podria ser el RTLINK o el BLINKER

Para saber la version del compilador ejecutalo sin parametros.

Podria ser que tuvieses el compilador completo para compilar la aplicación pero no estoy seguro.

En este directorio veo el compilador las librerias, los fuentes, la aplicación (los ejecutables) y los ficheros de datos y otras cosas que no se donde encajan.

Para ver el contenido de los ficheros existe en clipper una utilidad que si no recuendo mal se llama DU.EXE pero aqui no la tienes.

Yo utilizo una aplicación que se llama:

dbMax Version 1.33

de David A. Kennedy


La encontre en internet, te la puedo enviar si la necesitas.

Y recuerda: Olvida todo lo que sabes de Visual para manejar clipper, esto es otro mundo. Se parecen como un churro a comer pescado.

Saludos y buena suerte.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Tengo un programa en clipper, pero no se como abrirlo

Publicado por hymplus (152 intervenciones) el 14/02/2012 17:32:01
Contacte por MS y te ayudo a configurarlo por Remoto .

hymplus @ h o t m a i l . com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

gracias a ambos

Publicado por es_binario (2 intervenciones) el 14/02/2012 23:16:00
Efectivamente el Bl es el compilador, o mas bien es el que lo llama, y si los prg contienen el codigo

el Bl.bat
1
2
CLIPPER %1 /b
IF NOT ERRORLEVEL 1 BLINKER FILE %1


el cl.bat
1
2
clipper %1
if not errorlevel 1 rtlink file %1


este es el codigo del pym.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
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
* Program.: PYMP.PRG
* Date....: Enero, 2008
* Notes...: Main menu
* Set working environment
RUN SET CLIPPER=F100
# INCLUDE "INKEY.CH"
SET SOFTSEEK ON
SET TALK OFF
SET DELE ON
SET CENT ON
SET EPOCH TO 1950
*SET DATE ITAL
SET MESS TO 23 CENTER
* initialize new variables
XTECLA='Pulse cualquier tecla para continuar'
ESC='Para salir pulse [ Esc ]'
PUBLIC PNAO,PMES,PDIA,PSIS,PUSO,CLA,PATRIB,P_RECI
FECHA=DATE()
STORE MONTH(FECHA)  TO PNMES
PNAO=YEAR(FECHA)
DECLARE MES[13]
DECLARE MES_NUM[13]
DO LLENAR_MES
DO DIA_MES
PMES=ALLTRIM(MES[PNMES])
PDIA=STR(DAY(FECHA),2)
PNAO=STR(YEAR(FECHA),4)
PAO=SUBS(PNAO,3)
PAO1=PAO+'.NTX'
*  Pide clave de usuario
SELE 7
IF NET_USE("DYUSUA", .F., 5)
ELSE
   DO MTECLA WITH 'Archivo DYUSUA.DBF no disponible'
   RETURN
ENDIF
IF ISCOLOR()
   COLOR2='W+/B,GR+/BG,W/N,W+/B,GR+/BG'
ELSE
   COLOR2='W/N'
ENDIF
CLEAR
SET COLO TO &COLOR2
@  0, 0 TO 23,79 DOUB
@ 02,22 TO 06,58 DOUB
@ 03,23 SAY " Ûßßßß  ÛßßßÛ  ÛßßßÛ  ÛßßßÛ  Ûßßßß "
@ 04,23 SAY " ßßßßÛ  ÛßßßÛ  Ûßßßß  ÛßßßÛ  ßßßßÛ "
@ 05,23 SAY " ßßßßß  ß   ß  ß      ß   ß  ßßßßß "
 
@ 08,29 TO 10,50
@ 09,30 SAY '   S I S T E M A    '
 
*@ 12,07 TO 16,73 DOUB
*@ 13,8 SAY " Ûßßßß ÛßßßÛ Ûßßßß ßßÛßß Û   Û ÛßßßÛ ÛßßßÛ Ûßßßß ßÛß ÛßßßÛ ÛÜ  Û "
*@ 14,8 SAY " Ûßßß  ÛßßßÛ Û       Û   Û   Û ÛßÛßß ÛßßßÛ Û      Û  Û   Û Û ßÜÛ "
*@ 15,8 SAY " ß     ß   ß ßßßßß   ß   ßßßßß ß  ß  ß   ß ßßßßß ßßß ßßßßß ß   ß "
 
CLA='        '
@ 18,26  TO 21,53
@ 19,27 SAY 'NOMBRE USUARIO..'
@ ROW(),COL()+1 GET CLA
READ
CLA=UPPER(CLA)
SET EXAC ON
LOCATE FOR NOMB=CLA
IF !EOF()
   CLA_AUX=CLAVE
ELSE
   CLEAR
   @ 12,29 SAY 'USUARIO NO IDENTIFICADO'
   @ 13,29 SAY '***********************'
   RETURN
ENDIF
CLA='    '
@ 20,27 SAY 'TECLEE LA CLAVE'
SET INTE OFF
SET COLOR TO N/N
@ ROW(),COL()+1 GET CLA
READ
SET INTE ON
SET COLOR TO &COLOR2
CLA=UPPER(CLA)
IF CLA=CLA_AUX
   PATRIB=SUBS(ATRIB,1,2)
   PRECIBO=RECIB+1
   PCAJA=RECNO()
   K_CAJA=STRZERO(PCAJA,2)
   COLOR =COLOR
ELSE
   CLEAR
   @ 12,27 SAY 'CLAVE DE USUARIO INCORRECTA'
   @ 13,27 SAY '***************************'
   RETURN
ENDIF
*  Pide clave de usuario
SELE 8
IF NET_USE("DYEMPR", .F., 5)
ELSE
   DO MTECLA WITH 'Archivo DYEMPR.DBF no disponible'
   RETURN
ENDIF
PSIS=N_EMP
P_RECI=1
P_IVA=POR_IVA
P_ALC=POR_ALC
PS_MIN=S_MINIMO
PF_INI=F_INI
PF_FIN=F_FIN
PF_LIM=F_LIM
PN_PAG=N_PAG
PP_ANU=P_ANU
PDIRE=DIRECTOR
PJURI=JURIDICO
SW_CHECAR=SPAC(1)
PUSO=.F.
SELE 8
USE
 
***  OBTENCION MES INICIAL DE SANEAMIENTO .........
MBIMESTRE='0205'     // Bimestre a partir del cual se empieza ha cobrar saneamiento
AOO=YEAR(PF_FIN)
IF VAL(SUBS(MBIMESTRE,1,2))<10
   MAOO   =VAL(SUBS(MBIMESTRE,1,2))+2000
   MBIM   =VAL(SUBS(MBIMESTRE,3))
   PMES_SAN=(AOO-MAOO)*12-MBIM+PN_PAG
ELSE
   MAOO   =VAL(SUBS(MBIMESTRE,1,2))+1900
   MBIM   =VAL(SUBS(MBIMESTRE,3))
   PMES_SAN=(AOO-MAOO)*12-MBIM+PN_PAG
ENDIF
***  OBTIENE MES INICIAL DE SANEAMIENTO .........
* clear
* ? pmes_san,pn_pag,pf_fin
* wait ' '
* return
IF ISCOLOR()
   DO CASE
      CASE COLOR='1'
           COLOR2='W+/B,GR+/BG,W/N,W+/B,GR+/BG'
      CASE COLOR='2'
           COLOR2='GR+/B,BG+/R,BG'
      CASE COLOR='3'
           COLOR2='G+/B,W/BR'
      CASE COLOR='4'
           COLOR2='W+/B,W/BR,N,N,W/BR'
      CASE COLOR='5'
           COLOR2='W+/B,GR+/G,W/N,W+/B,GR+/BG'
      CASE COLOR='6'
           COLOR2='W+/B,GR+/BG,W/N,W+/B,GR+/BG'
      CASE COLOR='7'
           COLOR2='W+/B,GR+/BG,W/N,W+/B,GR+/BG'
      CASE COLOR='8'
           COLOR2='W+/B,GR+/BG,W/N,W+/B,GR+/BG'
      CASE COLOR='9'
           COLOR2='W+/B,GR+/BG,W/N,W+/B,GR+/BG'
      OTHE
           COLOR2='W/N'
   ENDCASE
ELSE
   COLOR2='W/N'
ENDIF
SET COLOR TO &COLOR2
SET EXACT OFF
DO WHILE .T.
   DO CUADRO
   @ 06,10 TO 12,40 DOUB
   @ 07,12       PROM "1).- Usuarios"        MESS "Consultas, Cambios"
   @ ROW()+1,12  PROM "2).- Cobranza"        MESS "Registro de pagos por servicio de agua y otros conceptos"
   @ ROW()+1,12  PROM "3).- Lecturas"        MESS "Servicio medido"
   @ ROW()+1,12  PROM "4).- Notificaciones"  MESS "Notificaciones"
   @ ROW()+1,12  PROM "0).- Terminar"        MESS "S A L I R    D E L    S I S T E M A"
   MENU TO OP
   DO CASE
      CASE OP=1
           DO ABRIR1;DO ABRIR2;DO ABRIR3;DO ABRIR8;DO ABRIR9;DO ABRIR13;DO ABRIR15
           DO ABRIR11;DO ABRIR10
           SELE 1
           AREA=1
           DO PYPAD
           SELE 1;USE;SELE 2;USE;SELE 3;USE;SELE 8;USE;SELE 9;USE;SELE 13;USE;SELE 15;USE
           SELE 11;USE;SELE 10;USE
      CASE OP=2
           DO ABRIR1;DO ABRIR2;DO ABRIR3;DO ABRIR5;DO ABRIR7;DO ABRIR15;DO ABRIR8
           AREA=1
           DO PYPAGC
           SELE 1;USE;SELE 2;USE;SELE 3;USE;SELE 5;USE;SELE 7;USE;SELE 15;USE;SELE 8;USE
      CASE OP=3
           DO ABRIR1;DO ABRIR2;DO ABRIR8
           DO PYMEDI
           SELE 1;USE;SELE 2;USE;SELE 8;USE
      CASE OP=4
           DO ABRIR2;DO ABRIR3;DO ABRIR12;DO ABRIR1
           DO PYNOT
           USE;SELE 2;USE;SELE 3;USE;SELE 12;USE;SELE 1;USE
      CASE OP=5
       CLOSE ALL
       CLEAR
       EXIT
   ENDCASE
ENDDO
 
PROCEDURE CUADRO
   CLEAR
   @  0, 0 TO 24,79
   @  22,1  SAY REPL("Ä",78)
   @  1,(80-LEN(PSIS))/2 SAY PSIS
   @  2,2  SAY TIME()
   @  2,70 SAY PDIA+'-'+SUBS(PMES,1,3)+'-'+SUBS(PNAO,3)
   @  3,1  SAY REPL("Ä",78)
   RETURN
 
PROCEDURE L_ESC21
   @ 4 ,1 CLEAR TO 21,78
   @ 23,1 CLEAR TO 23,78
   @ 23,5 SAY ESC
   RETURN
 
FUNCTION NET_USE
  PARAMETERS ARCHIVO,USO,SEG
  PRIVATE SIGUE
  SIGUE = (SEG = 0)
*  ?? SIGUE, SEG
  DO WHILE (SIGUE .OR. SEG > 0)
     IF USO
        USE &ARCHIVO EXCLUSIVE
     ELSE
        USE &ARCHIVO SHARED
     ENDIF
     IF .NOT. NETERR()
        RETURN(.T.)
     ENDIF
     INKEY(1)
     SEG=SEG-1
  ENDDO
  RETURN(.F.)
 
FUNCTION REC_LOCK
   PARAMETERS SEG
   PRIVATE SEGUN
   IF RLOCK()
      RETURN(.T.)     && LOCKED
   ENDIF
   SEGUN = (SEG = 0)
   DO WHILE (SEGUN .OR. SEG > 0)
      IF RLOCK()
         RETURN(.T.)  && LOCKED
      ENDIF
      INKEY(.5)       && WAIT 1/2 SEGUNDOS
      SEG = SEG - .5
   ENDDO
   RETURN(.F.)        && NOT LOCKED
 
FUNCTION FIL_LOCK
   PARAMETERS SEG
   PRIVATE SEGUN
   IF FLOCK()
      RETURN(.T.)     && LOCKED
   ENDIF
   SEGUN = (SEG = 0)
   DO WHILE (SEGUN .OR. SEG > 0)
      IF FLOCK()
         RETURN(.T.)  && LOCKED
      ENDIF
      INKEY(.5)       && WAIT 1/2 SEGUNDOS
      SEG = SEG - .5
   ENDDO
   RETURN(.F.)        && NOT LOCKED
 
FUNCTION ADD_REC
   PARAMETERS SEG
   PRIVATE SEGUN
   APPEND BLANK
   IF .NOT. NETERR()
      RETURN(.T.)      && LOCKED
   ENDIF
   SEGUN = (WAIT = 0)
   DO WHILE (SEGUN .OR. SEG = 0)
      APPEND BLANK
      IF .NOT. NETERR()
         RETURN(.T.)   && LOCKED
      ENDIF
      INKEY(.5)
      SEG = SEG - .5
   ENDDO
   RETURN(.F.)          && NOT LOCKED
 
PROCEDURE PRUEBATECLA(TECLA)
  DO CASE
     CASE TECLA==K_UP           ;oTAB:UP()
     CASE TECLA==K_DOWN         ;oTAB:DOWN()
     CASE TECLA==K_LEFT         ;oTAB:LEFT()
     CASE TECLA==K_CTRL_LEFT    ;oTAB:PANLEFT()
     CASE TECLA==K_RIGHT        ;oTAB:RIGHT()
     CASE TECLA==K_CTRL_RIGHT   ;oTAB:PANRIGHT()
     CASE TECLA==K_PGUP         ;oTAB:PAGEUP()
     CASE TECLA==K_CTRL_PGUP    ;oTAB:GOTOP()
     CASE TECLA==K_PGDN         ;oTAB:PAGEDOWN()
     CASE TECLA==K_CTRL_PGDN    ;oTAB:GOBOTTOM()
     CASE TECLA==K_HOME         ;oTAB:HOME()
     CASE TECLA==K_CTRL_HOME    ;oTAB:PANHOME()
     CASE TECLA==K_END          ;oTAB:END()
     CASE TECLA==K_CTRL_END     ;oTAB:PANEND()
     OTHERWISE
         TONE(125) ; TONE(300)
  ENDCASE
 
PROCEDURE ABRIR1
   SELE 1
   IF NET_USE("DYPADR&PAO", PUSO , 5)
      IF FILE("DYPCOX&PAO1")
      ELSE
         DO MENSAJE WITH 'Indexando por contrato...'
         INDEX ON CONTRATO TO DYPCOX&PAO
      ENDIF
      IF FILE("DYPALX&PAO1")
      ELSE
         DO MENSAJE WITH 'Indexando por nombre.....'
         INDEX ON NOMBRE TO DYPALX&PAO
      ENDIF
      IF FILE("DYPDOX&PAO1")
      ELSE
         DO MENSAJE WITH 'Indexando por domicilio..'
         INDEX ON DOMICILIO+N_EXT TO DYPDOX&PAO
      ENDIF
      IF FILE("DYPSEX&PAO1")
      ELSE
         DO MENSAJE WITH 'Indexando por sector.....'
         INDEX ON SECTOR+DOMICILIO+N_EXT TO DYPSEX&PAO
      ENDIF
      SET INDEX TO DYPCOX&PAO,DYPALX&PAO,DYPDOX&PAO,DYPSEX&PAO
   ELSE
      DO MTECLA WITH 'Archivo DYPAD&PAO.DBF no disponible'
      RETURN
   ENDIF
   RETURN
 
PROCEDURE ABRIR2
   SELE 2
   IF NET_USE("DYTARI&PAO", PUSO, 5)
      IF FILE("DYTARI&PAO1")
         SET INDEX TO DYTARI&PAO
      ELSE
         INDEX ON TARIFA TO DYTARI&PAO
      ENDIF
   ELSE
      DO MTECLA WITH 'Archivo DYTARI&PAO no disponible'
      RETURN
   ENDIF
   RETURN
 
PROCEDURE ABRIR3
   SELE 3
   IF NET_USE("DYSECT&PAO", PUSO, 5)
      IF FILE("DYSECT&PAO1") .AND. FILE("DYSECA&PAO1")
      ELSE
         INDEX ON SECCOL TO DYSECT&PAO
         INDEX ON DESC   TO DYSECA&PAO
      ENDIF
      SET INDEX TO DYSECT&PAO,DYSECA&PAO
   ELSE
      DO MTECLA WITH 'Archivo DYSECT&PAO no disponible'
      RETURN
   ENDIF
   RETURN
 
PROCEDURE ABRIR4
    SELE 4
    IF NET_USE("DYCATA&PAO", PUSO, 5)
       IF FILE("DYCATA&PAO1")
          SET INDEX TO DYCATA&PAO
       ELSE
          INDEX ON CLAVE TO DYCATA&PAO
       ENDIF
    ELSE
       DO MTECLA WITH 'Archivo DYCATA&PAO no disponible'
       RETURN
    ENDIF
 
PROCEDURE ABRIR5
   SELE 5
   IF NET_USE("DYPAGO&PAO", PUSO , 5)
      IF FILE("DYPAFX&PAO1")
      ELSE
         DO MENSAJE WITH 'Indexando pagos por fecha...'
         INDEX ON FEC_PAG TO DYPAFX&PAO
      ENDIF
      IF FILE("DYPARX&PAO1")
      ELSE
         DO MENSAJE WITH 'Indexando pagos por recibo...'
         INDEX ON RECIBO TO DYPARX&PAO
      ENDIF
      IF FILE("DYPACX&PAO1")
      ELSE
         DO MENSAJE WITH 'Indexando pagos por contrato...'
         INDEX ON CONTRATO TO DYPACX&PAO
      ENDIF
      SET INDEX TO DYPAFX&PAO,DYPARX&PAO,DYPACX&PAO
   ELSE
      DO MTECLA WITH 'Archivo DYPAGO&PAO.DBF no disponible'
   ENDIF
   RETURN
 
PROCEDURE ABRIR6
   SELE 6
   IF NET_USE("DYOTRP&PAO", PUSO , 5)
      IF FILE("DYOTFX&PAO1")
      ELSE
         DO MENSAJE WITH 'Indexando otros pagos por fecha...'
         INDEX ON OFECHA TO DYOTFX&PAO
      ENDIF
      IF FILE("DYOTCX&PAO1")
      ELSE
         DO MENSAJE WITH 'Indexando otros pagos clave, fecha...'
         INDEX ON OCLAVE+DTOC(OFECHA) TO DYOTCX&PAO
      ENDIF
      SET INDEX TO DYOTFX&PAO,DYOTCX&PAO
   ELSE
      DO MTECLA WITH 'Archivo DYOTRP&PAO.DBF no disponible'
   ENDIF
 
PROCEDURE ABRIR7
   SELE 7
   IF NET_USE("DYUSUA", .F., 5)
   ELSE
      DO MTECLA WITH 'Archivo DYUSUA.DBF no disponible'
      RETURN
   ENDIF
   GO PCAJA
   RETURN
 
PROCEDURE ABRIR8
   SELE 8
   IF NET_USE("DYMEDI&PAO", PUSO , 5)
      IF !FILE("DYMECX&PAO1")
         DO MENSAJE WITH 'Indexando por contrato'
         INDEX ON CONTRATO TO DYMECX&PAO
      ENDIF
      IF !FILE("DYMEPX&PAO1")
         DO MENSAJE WITH 'Indexando por Contrato + periodo'
         INDEX ON CONTRATO+PERIODO TO DYMEPX&PAO
      ENDIF
      SET INDEX TO DYMEPX&PAO,DYMECX&PAO
   ELSE
      DO MTECLA WITH 'Archivo DYMEDI&PAO.DBF no disponible'
   ENDIF
   RETURN
 
PROCEDURE ABRIR9
   SELE 9
   IF NET_USE("DYMODI&PAO", PUSO , 5)
   ELSE
      DO MTECLA WITH 'Archivo DYOTRP&PAO.DBF no disponible'
   ENDIF
 
PROCEDURE ABRIR10
   SELE 10
   IF NET_USE("DYCONC&PAO", PUSO , 5)
      IF FILE("DYCONX&PAO1")
         SET INDEX TO DYCONX&PAO
      ELSE
         DO MENSAJE WITH 'IndexandoPOR CONCEPTO'
         INDEX ON CLAVE TO DYCONX&PAO
      ENDIF
   ELSE
      DO MTECLA WITH 'Archivo DYCONX&PAO.DBF no disponible'
   ENDIF
   RETURN
 
PROCEDURE ABRIR11
   SELE 11
   IF NET_USE("DYGIRO&PAO", PUSO , 5)
      IF FILE("DYGIRX&PAO1")
         SET INDEX TO DYGIRX&PAO
      ELSE
         DO MENSAJE WITH 'Indexando por giro comercial'
         INDEX ON CVE_GIRO TO DYGIRX&PAO
      ENDIF
   ELSE
      DO MTECLA WITH 'Archivo DYGIRX&PAO.DBF no disponible'
   ENDIF
   RETURN
 
PROCEDURE ABRIR12
   SELE 12
   IF NET_USE("DYNOTI&PAO", PUSO , 5)
      IF FILE("DYNCOX&PAO1")
      ELSE
         DO MENSAJE WITH 'Indexando por contrato...'
         INDEX ON CONTRATO TO DYNCOX&PAO
      ENDIF
      IF FILE("DYNALX&PAO1")
      ELSE
         DO MENSAJE WITH 'Indexando por nombre.....'
         INDEX ON NOMBRE TO DYNALX&PAO
      ENDIF
      IF FILE("DYNDOX&PAO1")
      ELSE
         DO MENSAJE WITH 'Indexando por domicilio.......'
         INDEX ON DOMICILIO+N_EXT TO DYNDOX&PAO
      ENDIF
      IF FILE("DYNSEX&PAO1")
      ELSE
         DO MENSAJE WITH 'Indexando por sector.....'
         INDEX ON SECTOR+COLONIA+CALLE+N_EXT TO DYNSEX&PAO
      ENDIF
      IF FILE("DYNONX&PAO1")
      ELSE
         DO MENSAJE WITH 'Indexando por Notificacion'
         INDEX ON CVE_NOT TO DYNONX&PAO
      ENDIF
      IF FILE("DYNOFX&PAO1")
         SET INDEX TO DYNOFX&PAO
      ELSE
         DO MENSAJE WITH 'Indexando por fecha'
         INDEX ON FEC_MOV TO DYNOFX&PAO
      ENDIF
      SET INDEX TO DYNCOX&PAO,DYNALX&PAO,DYNDOX&PAO,DYNSEX&PAO,DYNONX&PAO,DYNOFX&PAO
   ELSE
      DO MTECLA WITH 'Archivo DYNOTI&PAO.DBF no disponible'
   ENDIF
   RETURN
 
PROCEDURE ABRIR13
   SELE 13
   IF NET_USE("DYEMPR", PUSO , 5)
   ELSE
      DO MTECLA WITH 'Archivo DYEMPR.DBF no disponible'
   ENDIF
   RETURN
 
PROCEDURE ABRIR14
   SELE 14
   IF NET_USE("DYDRFC&PAO", PUSO , 5)
      IF FILE("DYDRFX&PAO1")
         SET INDEX TO DYDRFX&PAO
      ELSE
         DO MENSAJE WITH 'Indexando por R.F.C.'
         INDEX ON CONTRATO TO DYDRFX&PAO
      ENDIF
   ELSE
      DO MTECLA WITH 'Archivo DYDRFC&PAO.DBF no disponible'
   ENDIF
   RETURN
 
 
PROCEDURE ABRIR15
   SELE 15
   IF NET_USE("DYINFO&PAO", PUSO , 5)
      IF FILE("DYINFX&PAO1")
         SET INDEX TO DYINFX&PAO
      ELSE
         DO MENSAJE WITH 'Indexando informacion por contrato'
         INDEX ON CONTRATO TO DYINFX&PAO
      ENDIF
   ELSE
      DO MTECLA WITH 'Archivo DYINFO&PAO.DBF no disponible'
   ENDIF
   RETURN
 
PROCEDURE ABRIR16
   SELE 16
   IF NET_USE("DYDPAG&PAO", PUSO , 5)
      IF FILE("DYDPAX&PAO1")
         SET INDEX TO DYDPAX&PAO
      ELSE
         DO MENSAJE WITH 'Indexando por contrato de pagos pendientes'
         INDEX ON CONTRATO TO DYDPAX&PAO
      ENDIF
   ELSE
      DO MTECLA WITH 'Archivo DYDPAG&PAO.DBF no disponible'
   ENDIF
   RETURN
 
# INCLUDE "PYPROC.PRG"


ya con lo que me dieron ambos de informacion voy a poder hacer algo, lo que me sorprende es que usen este lenguaje, en el 2008 que fue cuando lo desarrollaron.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar