ALGUIEN ME PUEDE AYUDAR A CORREGIR ESTO?
APENAS ESTOY COMENZANDO APROGRAMAR EN FOX PRO Y ESTOY LLENA DE DUDAS, ESTOY HACIENDO UN PROGRAMA PARA IMPRIMIR UNOS REPORTES DE INDISCIPLINA( AÚN NO ACOMODO LAS COORDENADAS DEL REPORTE- ME INTERESA QUE EL PROGRAMA FUNCIONE) PERO NO SE QUÉ ME ESTA FALLANDO, LES AGRADECERÃA MUCHO SI ME PUDIERAN AYUDAR A CORREGIRLO O MANDARME UNA PÃGINA DONDE INVESTIGAR PORFAVOR
LOS PROBLEMAS COMIENZAN A LA HORA DE PEDIR EL NO DE CONTROL, LO TECLEO Y ANTES DE TERMINAR DE TECLEARLO ME DICE QUE NO EXISTE AUNQUE ESTÉ CORRECTO
select 1
use alumnos index alum_ind
select 2
use reporte
select 3
use orientador
clear
@10,2 say'CENTRO DE ESTUDIOS TECNOLÓGICOS'
@11,2 say'Industriales y de servicios No. 99'
@12,5 say'Yautepec Morelos'
read
do while.t.
@16,9 prompt'REPORTAR'
@17,9 prompt'HISTORIAL'
@18,9 prompt'SALIR'
menu to opc
do case
case opc=1
do reportar
case opc=2
do historial
case opc=3
clear
exit
endcase
enddo
return
***********************REPORTAR********************************
procedure reportar
store 0 to controlx
reporta=space(37)
sancionn=space(50)
motiva=space(50)
resp=space(1)
fechaa=date()
clear
@2,2 say'CENTRO DE ESTUDIOS TECNOLÓGICOS'
@3,2 say'Industriales y de servicios No. 99'
@4,5 say'Yautepec Morelos'
@6,6 say'NÚMERO DE CONTROL:' get controlx
read
select 1
seek controlx
if found()
@7,10 say 'NOMBRE:' + nombre
@9,11 say 'GRADO:' + str(grado)
@9,23 say 'GRUPO:' + grupo
@10,10 say 'ESPECIALIDAD:' + esp
@15,10 say 'MOTIVO:' get motiva
@16,10 say 'SANCION:' get sancionn
@17,10 say 'REPORTÓ:' get reporta
@18,10 say 'FECHA:' get fechaa
@21,11 say '¿DATOS CORRECTOS? <S/N>:' get resp valid(resp$'SN')
read
if resp='S'
select 2
append blank
replace motivo with motiva
replace sancion with sancionn
replace reporto with reporta
replace fecha with fechaa
set device to print
set printer on
@3,10 say'CENTRO DE ESTUIOS TECNOLÓGICOS'
@4,9 say 'industriales y de servicios No. 99'
@5,11 say 'Yautepec Morelos'
@6,10 say'REPORTE DE INDISCIPLINA'
@8,7 say 'No. DE CONTROL:' + str(control)
@9,7 say 'ALUMNO(A):'+ nombre
@10,7 say 'GRADO:' + str(grado)
@11,7 say 'GRUPO:' + grupo
@12,7 say 'ESPECIALIDAD:' + esp
select 2
@14,7 say 'MOTIVO DEL REPORTE:' + motivo
@15,7 say 'SANCIÓN:' + sancion
@16,7 say 'REPORTADO(A) POR:' + reporto
@17,7 say 'FECHA DEL REPORTE:' + dtoc(fechaa)
@19,8 say 'ORIENTADOR'
@19,23 say 'TUTOR'
@20,7 say '____________________'
@20,22 say '____________________'
select 3
@21,8 say''+ orientador
select 1
@21,23 say''+ tutor
set printer off
set device to screen
wait windows 'REPORTE REALIZADO CON ÉXITO'
else
clear
return
endif
else
wait windows 'EL No. DE CONTROL NO EXISTE'
endif
return
POR FAVOR, SOLO SOY UNA PRINCIPIANTE QUE NO SABE DE DÓNDE FALLA, LES AGRADECERÃA MUCHO SU AYUDA
MI MAIL
[email protected]
LOS PROBLEMAS COMIENZAN A LA HORA DE PEDIR EL NO DE CONTROL, LO TECLEO Y ANTES DE TERMINAR DE TECLEARLO ME DICE QUE NO EXISTE AUNQUE ESTÉ CORRECTO
select 1
use alumnos index alum_ind
select 2
use reporte
select 3
use orientador
clear
@10,2 say'CENTRO DE ESTUDIOS TECNOLÓGICOS'
@11,2 say'Industriales y de servicios No. 99'
@12,5 say'Yautepec Morelos'
read
do while.t.
@16,9 prompt'REPORTAR'
@17,9 prompt'HISTORIAL'
@18,9 prompt'SALIR'
menu to opc
do case
case opc=1
do reportar
case opc=2
do historial
case opc=3
clear
exit
endcase
enddo
return
***********************REPORTAR********************************
procedure reportar
store 0 to controlx
reporta=space(37)
sancionn=space(50)
motiva=space(50)
resp=space(1)
fechaa=date()
clear
@2,2 say'CENTRO DE ESTUDIOS TECNOLÓGICOS'
@3,2 say'Industriales y de servicios No. 99'
@4,5 say'Yautepec Morelos'
@6,6 say'NÚMERO DE CONTROL:' get controlx
read
select 1
seek controlx
if found()
@7,10 say 'NOMBRE:' + nombre
@9,11 say 'GRADO:' + str(grado)
@9,23 say 'GRUPO:' + grupo
@10,10 say 'ESPECIALIDAD:' + esp
@15,10 say 'MOTIVO:' get motiva
@16,10 say 'SANCION:' get sancionn
@17,10 say 'REPORTÓ:' get reporta
@18,10 say 'FECHA:' get fechaa
@21,11 say '¿DATOS CORRECTOS? <S/N>:' get resp valid(resp$'SN')
read
if resp='S'
select 2
append blank
replace motivo with motiva
replace sancion with sancionn
replace reporto with reporta
replace fecha with fechaa
set device to print
set printer on
@3,10 say'CENTRO DE ESTUIOS TECNOLÓGICOS'
@4,9 say 'industriales y de servicios No. 99'
@5,11 say 'Yautepec Morelos'
@6,10 say'REPORTE DE INDISCIPLINA'
@8,7 say 'No. DE CONTROL:' + str(control)
@9,7 say 'ALUMNO(A):'+ nombre
@10,7 say 'GRADO:' + str(grado)
@11,7 say 'GRUPO:' + grupo
@12,7 say 'ESPECIALIDAD:' + esp
select 2
@14,7 say 'MOTIVO DEL REPORTE:' + motivo
@15,7 say 'SANCIÓN:' + sancion
@16,7 say 'REPORTADO(A) POR:' + reporto
@17,7 say 'FECHA DEL REPORTE:' + dtoc(fechaa)
@19,8 say 'ORIENTADOR'
@19,23 say 'TUTOR'
@20,7 say '____________________'
@20,22 say '____________________'
select 3
@21,8 say''+ orientador
select 1
@21,23 say''+ tutor
set printer off
set device to screen
wait windows 'REPORTE REALIZADO CON ÉXITO'
else
clear
return
endif
else
wait windows 'EL No. DE CONTROL NO EXISTE'
endif
return
POR FAVOR, SOLO SOY UNA PRINCIPIANTE QUE NO SABE DE DÓNDE FALLA, LES AGRADECERÃA MUCHO SU AYUDA
MI MAIL
[email protected]
1. Verifica si el Ãndice "alum_ind" realmente se refiere al No. de Control
2. Al parecer tu campo es de tipo numérico. Bueno serÃa que fuese mejor de tipo cadena, pero un cambio como ese requiere pensarlo más de una vez puesto que es posible que ya tengas programas que lo refieren como numérico. Verifica ese punto también.
3. Haz una prueba usando LOCATE FOR TuCampo=controlx para ver si obtienes el mismo resultado.
2. Al parecer tu campo es de tipo numérico. Bueno serÃa que fuese mejor de tipo cadena, pero un cambio como ese requiere pensarlo más de una vez puesto que es posible que ya tengas programas que lo refieren como numérico. Verifica ese punto también.
3. Haz una prueba usando LOCATE FOR TuCampo=controlx para ver si obtienes el mismo resultado.
