Avalados por :
Tengo un problema, quiero hacer algo de cadena a través de VB6 (text1.text) para enviar a myreport.rpt (@vb6field)
Verifiqué el .rpt que @vb6field = (17)
parece estar bien, (cadena vb6 "appLE" -> report.rpt @vb6field = "appLE"
pero en vb6 (text1.text) hay algo de cadena con símbolos ~'%^&*, cuando se envía a report.rpt, dice ERROR.
¿Es un problema del report.rpt?
Creo que puedo hacer una función antes de "appLE" -> "97;112;112;76;69;"
pero en report.rpt, @vb6field
¿cómo decodificar ese ascii?
report.DiscardSavedData 'LIMPIA EL REPORTE PARA TRABAJAR DESDE EL CONJUNTO DE REGISTROS
report.Database.SetDataSource objRs 'VINCULAR EL REPORTE AL CONJUNTO DE REGISTROS
report.FormulaFields(17).Text = "'" & "cadena vb6" & "'"
Hola,
¿Cómo estás construyendo la cadena?
Si abres el informe en Crystal y en la fórmula @vb6field ingresas:
"97;112;112;76;69;";
¿Funciona esto o también te da un error?
Recuerda que caracteres como ";" están reservados en el lenguaje de fórmulas de Crystal. Cuando pases la cadena, debe tener comillas alrededor o Crystal intentará evaluar la cadena como una fórmula, no como texto.
Además, haz que tu aplicación devuelva el error de Crystal. Eso ayudará a ver por qué no le gusta tu cadena.
Buena suerte,
Brian
Estoy usando CRXIR2.
Por cierto, si esa cadena es ascii (A-Z, a-z, 0-9), está bien enviar esa cadena a report.rpt.
Pero, algunos símbolos como ' o vbcrlf o unicode, fallan. Dice: "No se encuentra este '"
En VB6 estoy usando Text1.Text, MultiLine=True.
O podrías ayudarme, si en VB6 text1.text esa cadena es "appLE" ->, pero a través de una función de vb6 (codificar esa cadena a ascii "97;112;112;76;69;") y enviar ese ascii "97;112;112;76;69;" a report.rpt.
En report.rpt @vb6field, ¿cómo decodificarlo o hacer alguna fórmula X+1, y cambiarlo de nuevo a "appLE"?
¡Cualquier idea, por favor!
Hola,
¿Qué versión de Crystal estás utilizando?
En el informe, ¿cuál es la fórmula en @vb6field? Si esta fórmula está vacía, simplemente pon una cadena vacía en ella como:
" ";
Esto asegurará que esté listo para aceptar una cadena y no un tipo de dato diferente.
¿Cómo estás construyendo la cadena desde tu aplicación VB6? ¿Es directamente desde un cuadro de texto que el usuario está ingresando o estás tomando ese valor del cuadro de texto y editándolo antes de enviarlo al informe?
He pasado caracteres ASCII a una fórmula sin problemas. Dado que tu código funciona bien al pasar una cadena con caracteres alfanuméricos regulares, tengo la sensación de que si simplemente estableces tu fórmula en Crystal como una cadena vacía, debería solucionar el problema.
Algo más a tener en cuenta, en lugar de una fórmula, ¿qué tal si pasas tu cadena a un parámetro en el informe? Puede ser un poco menos complicado.
Buena suerte,
Brian
contacto@primeinstitute.com
(+51) 1641 9379
(+57) 1489 6964
© 2024 Copyright. Todos los derechos reservados.
Desarrollado por Prime Institute