Avalados por :
Tenho um problema, quero fazer algo de cadeia através do VB6 (text1.text) para enviar para myreport.rpt (@vb6field)
Verifiquei o .rpt que @vb6field = (17)
parece estar bem, (cadeia vb6 "appLE" -> report.rpt @vb6field = "appLE"
mas no vb6 (text1.text) há algo de cadeia com símbolos ~'%^&*, quando enviado para report.rpt, diz ERRO.
É um problema do report.rpt?
Acredito que posso fazer uma função antes de "appLE" -> "97;112;112;76;69;"
mas no report.rpt, @vb6field
como decodificar esse ascii?
report.DiscardSavedData 'LIMPA O RELATÓRIO PARA TRABALHAR A PARTIR DO CONJUNTO DE REGISTROS
report.Database.SetDataSource objRs 'VINCULAR O RELATÓRIO AO CONJUNTO DE REGISTROS
report.FormulaFields(17).Text = "'" & "cadeia vb6" & "'"
Olá,
Como está construindo a cadeia?
Se abrir o relatório no Crystal e na fórmula @vb6field inserir:
"97;112;112;76;69;";
Isso funciona ou também dá um erro?
Lembre-se de que caracteres como ";" são reservados na linguagem de fórmulas do Crystal. Ao passar a cadeia, ela deve estar entre aspas ou o Crystal tentará avaliar a cadeia como uma fórmula, não como texto.
Além disso, faça sua aplicação retornar o erro do Crystal. Isso ajudará a entender por que a cadeia não está sendo aceita.
Boa sorte,
Brian
Estou usando CRXIR2.
Aliás, se essa cadeia for ascii (A-Z, a-z, 0-9), é bom enviar essa cadeia para report.rpt.
Mas, alguns símbolos como ' ou vbcrlf ou unicode falham. Diz: "Este ' não foi encontrado"
No VB6, estou usando Text1.Text, MultiLine=True.
Ou você poderia me ajudar, se no VB6 text1.text essa cadeia for "appLE" ->, mas através de uma função do vb6 (codificar essa cadeia para ascii "97;112;112;76;69;") e enviar esse ascii "97;112;112;76;69;" para report.rpt.
No report.rpt @vb6field, como decodificá-lo ou fazer alguma fórmula X+1 e mudá-lo de volta para "appLE"?
Qualquer ideia, por favor!
Olá,
Qual versão do Crystal você está usando?
No relatório, qual é a fórmula em @vb6field? Se essa fórmula estiver vazia, simplesmente coloque uma string vazia nela como:
" ";
Isso garantirá que esteja pronto para aceitar uma string e não um tipo de dado diferente.
Como você está construindo a string em sua aplicação VB6? É diretamente de uma caixa de texto que o usuário está inserindo ou você está pegando esse valor da caixa de texto e editando antes de enviá-lo para o relatório?
Eu já passei caracteres ASCII para uma fórmula sem problemas. Dado que seu código funciona bem ao passar uma string com caracteres alfanuméricos regulares, tenho a sensação de que se você simplesmente definir sua fórmula no Crystal como uma string vazia, deve resolver o problema.
Outra coisa a considerar, em vez de uma fórmula, que tal passar sua string para um parâmetro no relatório? Pode ser um pouco menos complicado.
Boa sorte,
Brian
contacto@primeinstitute.com
(+51) 1641 9379
(+57) 1489 6964
© 2024 Copyright. Todos los derechos reservados.
Desarrollado por Prime Institute