FoxPro/Visual FoxPro - Error con procedimiento

   
Vista:
Imágen de perfil de Yogui

Error con procedimiento

Publicado por Yogui (79 intervenciones) el 28/05/2014 16:40:05
Hola, tengo un problema, tengo un formulario en donde en un boton realizo operaciones, pero dentro del mismo formulario, he creado un procedimiento, y cuando hago un llamado al procedimiento me sale un mensaje que dice
" La instrucción no está en un procedimiento" y me marca una linea en donde tengo un if

procedure nombre_del_mes(mes)

DO CASE
CASE mes='01'
temp_mes="ENERO"
CASE mes='02'
temp_mes="FEBRERO"
CASE mes='03'
temp_mes="MARZO"
CASE mes='04'
temp_mes="ABRIL"
CASE mes='05'
temp_mes="MAYO"
CASE mes='06'
temp_mes="JUNIO"
CASE mes='07'
temp_mes="JULIO"
CASE mes='08'
temp_mes="AGOSTO"
CASE mes='09'
temp_mes="SETIEMBRE"
CASE mes='10'
temp_mes="OCTUBRE"
CASE mes='11'
temp_mes="NOVIEMBRE"
CASE mes='12'
temp_mes="DICIEMBRE"
OTHERWISE temp_mes="ERROR"
ENDCASE
return temp_mes
endproc

******************************************************************************************************************

IF thisform.CHECK1.value=1 && Acá me sobrea como el error
mes= thisform.text3.value

cadenita=DO nombre_del_mes WITH mes
=messagebox("cadenita")
endif

******************************************************************************************************************

Espero puedan ayudarme :3
Gracias
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

Error con procedimiento

Publicado por Fidel José (558 intervenciones) el 28/05/2014 22:13:48
En el diseñador de formularios no puedes incluir "PROCEDURE" en un método. El método es de por sí un procedure, pero en el diseñador de formularos debes comenzar con:

Para Visual Fox 9
*Metodo de Usuario "NombreMes"
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
LPARAMETERS tcnMes,xnFlag
* -------------------------------------------------
* Devolver el nombre de un mes en Proper, Lower o Upper
* .NOmbreMes(9 , 0+4) -> devuelve: "Sep"
* tcnMes: Número de mes (numeric o character)
* xnFlag: 0-Proper 1-Lower 2-Upper
*			+ 4, devuelve las primeras tres letras solamente
* -------------------------------------------------
LOCAL lcMeses,lcValREt
IF VARTYPE(xnFlag)#"N"
	xnFlag=0
ENDIF
IF !BETWEEN(xnFlag,0,6)
	xnFlag=0
ENDIF
 
IF VARTYPE(tcnMes)="C"
	tcnMes=VAL(tcnMes)
ENDIF
IF EMPTY(tcnMes)
	RETURN ""
ENDIF
lcMeses="Enero,Febrero,Marzo,Abril,";
	+"Mayo,Junio,Julio,Agosto,";
	+"Septiembre,Octubre,Noviembre,Diciembre"
lcValRet=GETWORDNUM(lcMeses,tcnMes,",")
DO case
	CASE INLIST(xnFlag,0,4)
 
	CASE INLIST(xnFlag,1,5)
		lcValRet=LOWER(lcValRet)
	CASE INLIST(xnFlag,2,6)
		lcValRet=UPPER(lcValRet)
 
ENDCASE
 
RETURN IIF(xnFlag>3,LEFT(lcValRet,3),lcValRet)

Para Versiones anteriores
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
LPARAMETERS tcnMes,xnFlag
* -------------------------------------------------
* Nombre6Mes
* Visual Fox 6.0
* tcnMes: Número de mes (numeric o character)
* xnFlag: 0-Proper 1-Lower 2-Upper
*			+ 4, devuelve las primeras tres letras
* -------------------------------------------------
LOCAL lcMeses,lcValREt
IF VARTYPE(xnFlag)#"N"
	xnFlag=0
ENDIF
IF !BETWEEN(xnFlag,0,6)
	xnFlag=0
ENDIF
 
IF VARTYPE(tcnMes)="C"
	tcnMes=VAL(tcnMes)
ENDIF
IF EMPTY(tcnMes)
	RETURN ""
ENDIF
LOCAL ARRAY laMeses(12)
laMeses[1]=[Enero]
laMeses[2]=[Febrero]
laMeses[3]=[Marzo]
laMeses[4]=[Abril]
laMeses[5]=[Mayo]
laMeses[6]=[Junio]
laMeses[7]=[Julio]
laMeses[8]=[Agosto]
laMeses[9]=[Septiembre]
laMeses[10]=[Octubre]
laMeses[11]=[Noviembre]
laMeses[12]=[Diciembre]
 
lcValRet=laMeses[tcnMes]
 
DO case
	CASE INLIST(xnFlag,0,4)
 
	CASE INLIST(xnFlag,1,5)
		lcValRet=LOWER(lcValRet)
	CASE INLIST(xnFlag,2,6)
		lcValRet=UPPER(lcValRet)
 
ENDCASE
 
RETURN IIF(xnFlag>3,LEFT(lcValRet,3),lcValRet)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Mauricio

Error con procedimiento

Publicado por Mauricio (1368 intervenciones) el 28/05/2014 23:23:55
Pienso que seria una buena actitud tuya, que te pusieras a leer la ayuda detenidamente y si es posible desarrollar los pequeños ejemplos que se dan, por cada inquietud viene la pregunta, en ocasiones es innecesaria si primero se leyera la ayuda, asi podras aprender mas, esto solo como sugerencia nada mas.
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
Imágen de perfil de Yogui

Error con procedimiento

Publicado por Yogui (79 intervenciones) el 05/06/2014 16:02:12
Gracias Fidel, me sirvió bastante :)
Mauricio, gracias también, pero soy tan nueva que ni siquiera sabía que tenía "help" :/ y ahora ando revisando ahí también -además de la web-
Gracias :)
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