Mostrar Datos de Variables en un MESSAGEBOX

3,225 views
Skip to first unread message

JONATAN LÓPEZ

unread,
Apr 25, 2013, 7:21:14 PM4/25/13
to publice...@googlegroups.com
Holaaaaaaaaa :D quien me ayuda a mostrar en un messagebox lo que tiene una variable tipo entera y otra de tipo caracter? por favor necesito esto asi me guio y me ayudo un poco para saber un poco lo que hace algunas cosas :)  Saludos

Ing.Daniel Bojorge

unread,
Apr 25, 2013, 7:26:07 PM4/25/13
to publice...@googlegroups.com
Local vInt,vChar

vInt = 25
vChar = "Cadena"

Messagebox(vChar + allt(Str(vInt)))

Dios L@s Bendiga

Saludos,

Daniel (Con 1 Estrella DCE de Microsoft)
www.debsconsultores.com
Nicaragua

"Si ustedes permanecen unidos a mí, y si permanecen fieles a mis enseñanzas, pidan lo que quieran y se les dará.
(Juan 15:7 DHH)
Bendito el varón que se fía en el SEÑOR, y cuya confianza es el SEÑOR.
(Jeremías 17:7 RV2000)

Ricardo Pina

unread,
Apr 25, 2013, 7:26:27 PM4/25/13
to Grupo VFP
Holaaaaaaaaaa
 
 =MESSAGEBOX("Podes encadenar asi"+variablechar+TRANSFORM(variablenum,"9999999.99"))
 
Saludossssssss


El 25 de abril de 2013 20:21, JONATAN LÓPEZ <melaremils...@gmail.com> escribió:
Holaaaaaaaaa :D quien me ayuda a mostrar en un messagebox lo que tiene una variable tipo entera y otra de tipo caracter? por favor necesito esto asi me guio y me ayudo un poco para saber un poco lo que hace algunas cosas :)  Saludos



--
            

                   Ricardo Pina

Desarrollo y Servicios Informáticos

                  Profesionales
               www.dsip.com.ar

 

 

Fidel Charny

unread,
Apr 25, 2013, 7:37:45 PM4/25/13
to publice...@googlegroups.com
Por ahí te ayuda agregar un par de funciones de usuario (Qualifer() y TelDecim() que es usada por Qualifer )

En forma primitiva puedes escribir Messagebox(lnVariable) y te mostrará el contenido del tipo que sea.
Para concatenar la respuesta necesitas determinar el tipo de dato.

cVariable= (Asignar valor)
Messagebox("cVariable="+Qualifer(cVariable))


**********************************
PROCEDURE QUALIFER(xDato)
***********************************
* Calificador de datos 
LOCAL kvt,vret,qdezim
*lparameters xdato
* n,i,c,d,l
kvt=vartype(xDato)
vret=""
do case
case kvt="C"
vret=["]+alltrim(strtran(xdato,xcSymbol))+["]
case kvt="N"
qDezim=TelDecim(xDato)
vret=ltrim(str(xDato,20,qDezim))
case kvt="I"
vret=ltrim(str(xdato))
case kvt="D"
vret=dtoc(xdato)
case kvt="T"
vret=ttoc(xdato)
case kvt="L"
vret=iif(xdato,".T.",".F.")
other
endcase

return vret
ENDPROC

*****************************************
PROCEDURE TelDecim(xcnNUmero,xnPrecision)
*****************************************
* Determina la cantidad de decimales de un número.
* xnPrecision podría ser Entre 10 y 16
* 16 daría una precisión mayor pero válida para
* números con alta cantidad de decimales.
*********************************************
local i_,minumero,pnumero,cRest,nDecimales
if vartype(xnprecision)#"N"
xnPrecision=10
endif
kevar=Vartype(xcnNumero)
do case
case kevar="C"
minumero=val(xcnNumero)
case kevar$'NI'
Minumero=xcnNumero
other
return 0
endcase
if minumero=0
return 0
endif
nDecimales=16
for i_=0 to 16
* pNumero=MiNumero*10**i_
pNumero=Round(MiNumero*10**i_,xnPrecision)
cRest=pNumero-Int(pNumero)
nDecimales=i_
if Round(cRest,xnPrecision)=0
exit
endif
next
return nDecimales
ENDPROC

GeoSys Diseño de Software

unread,
Apr 25, 2013, 9:56:41 PM4/25/13
to Comunidad de Visual Foxpro en Español
fecha=TRANSFORM(DATE())
entero=TRANSFORM(2300)
caracter="Esta es una cadeda tipo carácter"
MESSAGEBOX("LA FECHA ES: &fecha, EL ENTERO ES: &entero, EL CARÁCTER ES: &caracter")


Saludos

Anthony Contreras Peralta

Costa Rica.

Daniel Sánchez

unread,
Apr 26, 2013, 9:07:06 AM4/26/13
to Comunidad de Visual Foxpro en Español
Como dicen siempre fox no deja de sorprendernos, nunca use macro sustitución dentro de una cadena encerrada entre comillas, pensaba que al estar encerrado entre comillas lo tomaría tal cual sin hacer uso del recurso de la macro sustitución, para mi esto es una novedad, a estas alturas del partido siempre se aprende algo más.

Saludos
--
Daniel Sánchez Escobar
Investigación y Desarrollo
Reset Software & Sistemas
Móvil +051-949398047
Trujillo - Perú

Antonio.xt

unread,
Apr 26, 2013, 9:24:25 AM4/26/13
to publice...@googlegroups.com

Daniel, de hecho si esta entre comillas lo toma tal cual, como solo texto, sin hacer uso de la macrosustitucion. Para que realice la macrosustitucion debe ir fuera de las comillas.

Daniel Sánchez

unread,
Apr 26, 2013, 9:30:53 AM4/26/13
to Comunidad de Visual Foxpro en Español
No es así Antonio, acabo de ejecutar el código y corre como se espera realizando la macro sustitución donde corresponde aún estando dentro de la cadena o entre las comillas.

Saludos

Ricardo Pina

unread,
Apr 26, 2013, 9:35:04 AM4/26/13
to Grupo VFP
Hola
 
Un ejemplo vale mas que mil mails, jeje
 
a="b"
b="c"
? &a -> c
? "&a" -> b
 
Saludos
 

Fidel Charny

unread,
Apr 26, 2013, 9:36:33 AM4/26/13
to publice...@googlegroups.com
cVariable="Viernes"
cCadena="Hoy es &cVariable"

? Resulta: "Hoy es viernes"

Ahora, 
dfecha=date()
cCadena="Hoy es &dfecha"
? resulta: "Hoy es &dfecha"
Por eso Anthony propone dFecha=TRansform(date()) [ ó Dtoc(date()) ]


El jueves, 25 de abril de 2013 20:21:14 UTC-3, JONATAN LÓPEZ escribió:

Antonio.xt

unread,
Apr 26, 2013, 9:53:42 AM4/26/13
to publice...@googlegroups.com

Es correcto Daniel, habia hecho la prueba sin declarar las variables y lo muestra tal y como es, es decir, asi "&fecha", y al declarar las variables lo que muestra es el valor.

JONATAN LÓPEZ

unread,
Apr 27, 2013, 12:26:22 PM4/27/13
to publice...@googlegroups.com
Hola a todos: Muchas gracias a todos por su ayuda :) me sirvió de mucho :D Saludos gente sabia :D
Reply all
Reply to author
Forward
0 new messages