Ayuda por fravor - Fox p/ Windows y VFP 9.0 Tori
Publicado por Eduardo Daniel (123 intervenciones) el 01/04/2009 03:15:33
Es lo que decía Ernesto, es un viejo programa desarrollado originalmente en Foxpro 2.6 y adaptado a Fox para Windows, y ahora generado con VFP 9.0
Paso el código de uno de los programas, en todos pasa lo mismo
IF USED("tmpsini")
SELECT tmpsini
SET ORDER TO TAG matricula
ELSE
SELECT 0
USE (LOCFILE("tmpsini.dbf","DBF","Donde est la base tmpsini?"));
AGAIN ALIAS tmpsini;
ORDER TAG matricula
ENDIF
IF USED("datos")
SELECT datos
ELSE
SELECT 0
USE (LOCFILE("datos.dbf","DBF","Donde est la base Datos?"));
AGAIN ALIAS datos
ENDIF
IF USED("impre")
SELECT impre
ELSE
SELECT 0
USE (LOCFILE("impre.dbf","DBF","Donde est la base impre?"));
AGAIN ALIAS impre
ENDIF
IF USED("propuest")
SELECT propuest
SET ORDER TO TAG fec_emis
ELSE
SELECT 0
USE (LOCFILE("propuest.dbf","DBF","Donde est la base Propuestas?"));
AGAIN ALIAS propuest;
ORDER TAG fec_emis
ENDIF
IF USED("compania")
SELECT compania
SET ORDER TO TAG compania
ELSE
SELECT 0
USE (LOCFILE("compania.dbf","DBF","Donde est la base Compania?"));
AGAIN ALIAS compania;
ORDER TAG compania
ENDIF
IF USED("seccione")
SELECT seccione
SET ORDER TO TAG seccion
ELSE
SELECT 0
USE (LOCFILE("seccione.dbf","DBF","Donde est la base Secciones?"));
AGAIN ALIAS seccione;
ORDER TAG seccION
ENDIF
v_pap = "C"
vsi_no = " "
comp_des = 0
orga_des = "0"
prod_des = "0"
comp_has = 99
orga_has = "9999999"
prod_has = "9999999"
v_produ = 0
fec_des = { / / }
fec_has = { / / }
matri_nro = 0
libro_nro = 0
v_reng = 0
v_pan = "N"
define window w_reno at 0,00 size 18,99 FONT "Courier New",10 SYSTEM;
title " Detalle de Libro de Producción " NOFLOAT NOCLOSE
activate window w_reno
@ 1,2 TO 3,97.2 PATTERN 1 PEN 2 COLOR 'B/B+'
@ 1.5,42.5 SAY " PRODUCCION " STYLE "BT" COLOR W+
@04,17 say "Ingrese fecha desde :" STYLE "B"
@05,17 say "Ingrese fecha hasta :" STYLE "B"
@08,17 say "Ingrese Último Nº de orden:" STYLE "B"
@09,17 say "Ingrese la matrícula :" STYLE "B"
@10,17 say "Ingrese productor :" STYLE "B"
@04,45 get fec_des picture "@E" STYLE "B"
@05,45 get fec_has picture "@E" valid(fec_has >= fec_des) STYLE "B"
@08,45 get v_reng picture "@Z 999999" STYLE "B"
@09,45 get matri_nro picture "@Z 999999" STYLE "B"
@10,45 get v_produ valid(v_produ <> 0) picture "@Z 9999" STYLE "B"
*@11,7 say "Visuliza por pantalla ? :" get v_pan valid(v_pan$"NS") picture "@!"
@ 12,0 TO 13,99 pattern 1 pen 1 color "b/b+"
@ 14,42 GET opc2 ;
PICTURE "@*HT Aceptar;Salir" ;
SIZE 1.769,9.500,1.333 ;
DEFAULT 1 ;
FONT "MS Sans Serif", 8 ;
STYLE "B"
*read
READ CYCLE DEACTIVATE WONTOP<>"torneal"
IF LASTKEY()=27 OR opc2=2
CLEAR READ
IF USED("propuest")
SELECT propuest
USE
ENDIF
IF USED("compania")
SELECT compania
USE
ENDIF
IF USED("seccione")
SELECT seccione
USE
ENDIF
IF USED("datos")
SELECT datos
USE
ENDIF
IF USED("impre")
SELECT impre
USE
ENDIF
IF USED("tmpsini")
SELECT tmpsini
USE
ENDIF
RELEASE WINDOW w_reno
RETURN TO w_reno
ENDIF
ren = v_reng
v_lib = libro_nro
v_matri = matri_nro
IF opc2=1
if datos.especial = 1
if matri_nro <> datos.matricula
@ 16,2 SAY "ERROR:" STYLE "BUT" COLOR R+*
@ 16,9 SAY "Nº matrícula:" STYLE "BT" COLOR B+
@ 16,23 SAY "El número ingresado es incorrecto... Pulse [Enter]" STYLE "B"
SET CURSOR OFF
READ
SET CURSOR ON
@ 16,2 TO 16,99 CLEAR
HIDE WIND W_RENO
RELE WIND W_RENO
return .f.
endif
else
sele tmpsini
seek matri_nro
if not found()
@ 16,2 SAY "ERROR:" STYLE "BUT" COLOR R+*
@ 16,9 SAY "Nº matrícula:" STYLE "BT" COLOR B+
@ 16,23 SAY "El número ingresado es incorrecto... Pulse [Enter]" STYLE "B"
SET CURSOR OFF
READ
SET CURSOR ON
@ 16,2 TO 16,99 CLEAR
HIDE WIND W_RENO
HIDE WIND W_RENO
RELE WIND W_RENO
return .f.
endif
endif
sele propuest
set key to range dtoc(fec_des,1),dtoc(fec_has,1)
COUNT FOR propuest.productor = v_produ TO v_canti
SET RELA TO propuest.compania INTO compania ADDITIVE
SET RELA TO propuest.seccion INTO seccione ADDITIVE
SET CONSOLE OFF
REPORT FORM prodetal for propuest.productor = v_produ
define window w_rent at 0,00 size 18,99 FONT "Courier New",10 SYSTEM;
title " Total de páginas a imprimir " NOFLOAT NOCLOSE
activate window w_rent
IF v_canti = 0
@5,20 say "NO HAY DATOS PARA ESTE REPORTE " font "TIMES NEW ROMAN",18 STYLE "BT" COLOR B+
ELSE
IF _PAGENO > 1
@5,36 say "Se van a imprimir: " font "TIMES NEW ROMAN",18 STYLE "BT" COLOR B+
ELSE
@5,36 say "Se va a imprimir: " font "TIMES NEW ROMAN",18 STYLE "BT" COLOR B+
ENDIF
IF _PAGENO > 1
@8,41 say ALLTRIM(STR(_pageno))+" páginas" font "TIMES NEW ROMAN",18 STYLE "BT" COLOR B+
ELSE
@8,42 say ALLTRIM(STR(_pageno))+" página" font "TIMES NEW ROMAN",18 STYLE "BT" COLOR B+
ENDIF
ENDIF
@12,40 say "ENTER SIGUE" font "TIMES NEW ROMAN",14 STYLE "BT" COLOR R+
WAIT ""
DEACTIVATE WINDOW W_RENT
*set print on
REPO FORM prodetal for propuest.productor = v_produ TO PRINTER prompt noeject previ
SET PRINT OFF
*SET PRINT TO
SET RELA TO
* SET FILTER TO
set key to
SET CONSOLE ON
endif
HIDE WIND W_RENO
RELE WIND W_RENO
SET CONSOLE ON
IF USED("propuest")
SELECT propuest
USE
ENDIF
IF USED("compania")
SELECT compania
USE
ENDIF
IF USED("seccione")
SELECT seccione
USE
ENDIF
IF USED("datos")
SELECT datos
USE
ENDIF
IF USED("impre")
SELECT impre
USE
ENDIF
IF USED("tmpsini")
SELECT tmpsini
USE
ENDIF
Paso el código de uno de los programas, en todos pasa lo mismo
IF USED("tmpsini")
SELECT tmpsini
SET ORDER TO TAG matricula
ELSE
SELECT 0
USE (LOCFILE("tmpsini.dbf","DBF","Donde est la base tmpsini?"));
AGAIN ALIAS tmpsini;
ORDER TAG matricula
ENDIF
IF USED("datos")
SELECT datos
ELSE
SELECT 0
USE (LOCFILE("datos.dbf","DBF","Donde est la base Datos?"));
AGAIN ALIAS datos
ENDIF
IF USED("impre")
SELECT impre
ELSE
SELECT 0
USE (LOCFILE("impre.dbf","DBF","Donde est la base impre?"));
AGAIN ALIAS impre
ENDIF
IF USED("propuest")
SELECT propuest
SET ORDER TO TAG fec_emis
ELSE
SELECT 0
USE (LOCFILE("propuest.dbf","DBF","Donde est la base Propuestas?"));
AGAIN ALIAS propuest;
ORDER TAG fec_emis
ENDIF
IF USED("compania")
SELECT compania
SET ORDER TO TAG compania
ELSE
SELECT 0
USE (LOCFILE("compania.dbf","DBF","Donde est la base Compania?"));
AGAIN ALIAS compania;
ORDER TAG compania
ENDIF
IF USED("seccione")
SELECT seccione
SET ORDER TO TAG seccion
ELSE
SELECT 0
USE (LOCFILE("seccione.dbf","DBF","Donde est la base Secciones?"));
AGAIN ALIAS seccione;
ORDER TAG seccION
ENDIF
v_pap = "C"
vsi_no = " "
comp_des = 0
orga_des = "0"
prod_des = "0"
comp_has = 99
orga_has = "9999999"
prod_has = "9999999"
v_produ = 0
fec_des = { / / }
fec_has = { / / }
matri_nro = 0
libro_nro = 0
v_reng = 0
v_pan = "N"
define window w_reno at 0,00 size 18,99 FONT "Courier New",10 SYSTEM;
title " Detalle de Libro de Producción " NOFLOAT NOCLOSE
activate window w_reno
@ 1,2 TO 3,97.2 PATTERN 1 PEN 2 COLOR 'B/B+'
@ 1.5,42.5 SAY " PRODUCCION " STYLE "BT" COLOR W+
@04,17 say "Ingrese fecha desde :" STYLE "B"
@05,17 say "Ingrese fecha hasta :" STYLE "B"
@08,17 say "Ingrese Último Nº de orden:" STYLE "B"
@09,17 say "Ingrese la matrícula :" STYLE "B"
@10,17 say "Ingrese productor :" STYLE "B"
@04,45 get fec_des picture "@E" STYLE "B"
@05,45 get fec_has picture "@E" valid(fec_has >= fec_des) STYLE "B"
@08,45 get v_reng picture "@Z 999999" STYLE "B"
@09,45 get matri_nro picture "@Z 999999" STYLE "B"
@10,45 get v_produ valid(v_produ <> 0) picture "@Z 9999" STYLE "B"
*@11,7 say "Visuliza por pantalla ? :" get v_pan valid(v_pan$"NS") picture "@!"
@ 12,0 TO 13,99 pattern 1 pen 1 color "b/b+"
@ 14,42 GET opc2 ;
PICTURE "@*HT Aceptar;Salir" ;
SIZE 1.769,9.500,1.333 ;
DEFAULT 1 ;
FONT "MS Sans Serif", 8 ;
STYLE "B"
*read
READ CYCLE DEACTIVATE WONTOP<>"torneal"
IF LASTKEY()=27 OR opc2=2
CLEAR READ
IF USED("propuest")
SELECT propuest
USE
ENDIF
IF USED("compania")
SELECT compania
USE
ENDIF
IF USED("seccione")
SELECT seccione
USE
ENDIF
IF USED("datos")
SELECT datos
USE
ENDIF
IF USED("impre")
SELECT impre
USE
ENDIF
IF USED("tmpsini")
SELECT tmpsini
USE
ENDIF
RELEASE WINDOW w_reno
RETURN TO w_reno
ENDIF
ren = v_reng
v_lib = libro_nro
v_matri = matri_nro
IF opc2=1
if datos.especial = 1
if matri_nro <> datos.matricula
@ 16,2 SAY "ERROR:" STYLE "BUT" COLOR R+*
@ 16,9 SAY "Nº matrícula:" STYLE "BT" COLOR B+
@ 16,23 SAY "El número ingresado es incorrecto... Pulse [Enter]" STYLE "B"
SET CURSOR OFF
READ
SET CURSOR ON
@ 16,2 TO 16,99 CLEAR
HIDE WIND W_RENO
RELE WIND W_RENO
return .f.
endif
else
sele tmpsini
seek matri_nro
if not found()
@ 16,2 SAY "ERROR:" STYLE "BUT" COLOR R+*
@ 16,9 SAY "Nº matrícula:" STYLE "BT" COLOR B+
@ 16,23 SAY "El número ingresado es incorrecto... Pulse [Enter]" STYLE "B"
SET CURSOR OFF
READ
SET CURSOR ON
@ 16,2 TO 16,99 CLEAR
HIDE WIND W_RENO
HIDE WIND W_RENO
RELE WIND W_RENO
return .f.
endif
endif
sele propuest
set key to range dtoc(fec_des,1),dtoc(fec_has,1)
COUNT FOR propuest.productor = v_produ TO v_canti
SET RELA TO propuest.compania INTO compania ADDITIVE
SET RELA TO propuest.seccion INTO seccione ADDITIVE
SET CONSOLE OFF
REPORT FORM prodetal for propuest.productor = v_produ
define window w_rent at 0,00 size 18,99 FONT "Courier New",10 SYSTEM;
title " Total de páginas a imprimir " NOFLOAT NOCLOSE
activate window w_rent
IF v_canti = 0
@5,20 say "NO HAY DATOS PARA ESTE REPORTE " font "TIMES NEW ROMAN",18 STYLE "BT" COLOR B+
ELSE
IF _PAGENO > 1
@5,36 say "Se van a imprimir: " font "TIMES NEW ROMAN",18 STYLE "BT" COLOR B+
ELSE
@5,36 say "Se va a imprimir: " font "TIMES NEW ROMAN",18 STYLE "BT" COLOR B+
ENDIF
IF _PAGENO > 1
@8,41 say ALLTRIM(STR(_pageno))+" páginas" font "TIMES NEW ROMAN",18 STYLE "BT" COLOR B+
ELSE
@8,42 say ALLTRIM(STR(_pageno))+" página" font "TIMES NEW ROMAN",18 STYLE "BT" COLOR B+
ENDIF
ENDIF
@12,40 say "ENTER SIGUE" font "TIMES NEW ROMAN",14 STYLE "BT" COLOR R+
WAIT ""
DEACTIVATE WINDOW W_RENT
*set print on
REPO FORM prodetal for propuest.productor = v_produ TO PRINTER prompt noeject previ
SET PRINT OFF
*SET PRINT TO
SET RELA TO
* SET FILTER TO
set key to
SET CONSOLE ON
endif
HIDE WIND W_RENO
RELE WIND W_RENO
SET CONSOLE ON
IF USED("propuest")
SELECT propuest
USE
ENDIF
IF USED("compania")
SELECT compania
USE
ENDIF
IF USED("seccione")
SELECT seccione
USE
ENDIF
IF USED("datos")
SELECT datos
USE
ENDIF
IF USED("impre")
SELECT impre
USE
ENDIF
IF USED("tmpsini")
SELECT tmpsini
USE
ENDIF
Valora esta pregunta


0