PRIMEIROS PASSOS CRYSTAL REPORT

NILSONTRES 03/03/2014 11:49:59
#435461
Eu utilizo o visual 2008 e o 2012, os dois tem a versão 13.0.2 do Crystal.
Não lembro onde baixei o 13, vc deve achar no site deles. Mas não é garantia de solução, por que me lembro que
eu já utilizava esse recurso com versões anteriores sem problemas.
Mas sempre é bom atualizar.
LUIS.HERRERA 03/03/2014 13:39:31
#435466
Nilson na tentativa e erro, achei o problema. Em vários exemplos tinha um cr.Dispose(); ao final do código e eu o incluí, isso gerava o erro. Ao retirar funcionou perfeitamente.

Obrigado, depois vou testar o carregamento da imagem, que ainda nem fiz.

Sobre a versão do Crystal infelizmente minha licença é a 10.5.3700 que vem junto com o VS. Outra versão qualquer não seria licenciada, então não adianta.

LUIS.HERRERA 06/03/2014 11:32:04
#435590
Nilson bom dia.

Fiz exatamente o que disse para trocar a imagem em runtime no Crystal, mas o texto do path aparece na seção do relatório no lugar onde coloquei a fórmula, porém o Picture1 continua com o logo original que incluí no momento de colocar a imagem no relatório, pois não tem como inserir esse campo sem imagem.

Não consegui entender onde está a amarração da fórmula com o campo Picture1 ?
Para testar alterei o nome do campo Picture de Picture1 para f_img igual a fórmula, mas não mudou nada.

O código completo ficou assim:
private void frmRelatorioCadCausaFalhaListagemView_Load(object sender, EventArgs e)
{
CausaDaFalhaDAL objCausa = new CausaDaFalhaDAL(); //Objeto acessa DAL
List<CausaDaFalhaModelo> listCausas = new List<CausaDaFalhaModelo>(); //Objeto estrutura dos dados

listCausas = objCausa.MontaGridViewCausaDaFalha(VariaveisAmbiente.SituacaoRegistro); //Pesquisa dados no banco

cadCausaDaFalhaList cr = new cadCausaDaFalhaList(); //instanciando o relatório de listagem
cr.SetDataSource(listCausas.ToList()); //Passa dados do banco ao relatório

//informa path da imagem para fórmula do relatório
cr.DataDefinition.FormulaFields[[Ô]f_img[Ô]].Text = @[Ô]totext([Ô][Ô][Ô] + [Ô]C:\\OlhoBrasil.png[Ô] + @[Ô][Ô][Ô])[Ô];

CrystalDecisions.CrystalReports.Engine.TextObject myCampo = null;
myCampo = (CrystalDecisions.CrystalReports.Engine.TextObject)cr.ReportDefinition.ReportObjects[[Ô]myVersao[Ô]];
myCampo.Text = [Ô]v. [Ô] + Program.myVersao.ToString();

crystalReportViewer1.ReportSource = cr; //Passo relatório ao view do crystal

crystalReportViewer1.Show();
listCausas = null;
objCausa = null;
}
NILSONTRES 06/03/2014 11:43:26
#435596
Você criou a formula e arrastou para a seção ?
Veja a figura.
LUIS.HERRERA 06/03/2014 11:51:09
#435597
Sim criei a fórmula e arraste.
Como disse na mensagem anterior, o texto do link aparece dentro da fórmula (lugar onde eu a coloquei na seção da Picture).
Ou seja, o texto aparece mas a imagem não.

Onde fica a vinculação da fórmula com a Picture?

essa parte no código é:
//informa path da imagem para fórmula do relatório
cr.DataDefinition.FormulaFields[[Ô]f_img[Ô]].Text = @[Ô]totext([Ô][Ô][Ô] + [Ô]C:\\OlhoBrasil.png[Ô] + @[Ô][Ô][Ô])[Ô];


NILSONTRES 06/03/2014 12:07:31
#435598
rpt.DataDefinition.FormulaFields([Ô]f_img[Ô]).Text = [Ô]totext([Ô][Ô][Ô] & My.Application.Info.DirectoryPath & [Ô]\logo asejesp.png[Ô] & [Ô][Ô][Ô])[Ô]

cr.DataDefinition.FormulaFields[[Ô]f_img[Ô]].Text = @[Ô]totext([Ô][Ô][Ô] + [Ô]C:\\OlhoBrasil.png[Ô] + @[Ô][Ô][Ô])[Ô];

Como diz a mensagem, parece que essa parte aqui esta a mais.
[Ô]C:\\OlhoBrasil.png[Ô]
Aqui sumiu o erro ao tirar as arrobas(@) ?

Citação:

Onde fica a vinculação da fórmula com a Picture?



A formula identifica uma picture na mesma seção e carrega a imagem nela.
LUIS.HERRERA 06/03/2014 15:33:34
#435610
Nilson boa tarde.
O @ é recurso do C# para inclusão de caracteres especiais numa string, assim uma barra ou Aspas deve ser precedido dele para funcionar, pois do contrário da erro no código na digitação mesmo.

O erro que saiu na imagem, não era para aparecer, pois eu retirei o arquivo antes de enviar, mas a página não aceitou e já tinha anexado. Ele só aparecia se não usasse o @, depois que inclui resolveu.

Anexo mando um projeto um form e relatório só com essa imagem para ver que não funciona. Veja o que pode estar errado por favor.

Nota: na pasta do .sln está a imagem OlhoBrasil.png que estou testando.

Como disse e poderá ver, ao rodar o relatório a fórmula é exibida na seção com o texto = ao path + nome da imagem, mas a Picture da seção não tem sua imagem alterada, permanece a inicial.
NILSONTRES 06/03/2014 16:36:53
#435612
LUIS,
Desculpe, faltava um detalhe que come bola.
Na formatção da picture na aba imagem em local grafico na formula tem que digitar: {@f_img}

Ha, outra coisa, no codigo esta .png, mas o arquivo é .jpg
Estou devolvendo seu projeto funcionando perfeitamente.
LUIS.HERRERA 06/03/2014 17:00:46
#435614
Nilson desculpe incomodar, mas o projeto que mandou não abre aqui, minha versão do Crystal é 10 e deu erro na hora de abrir. Nem o programa EXE rodou por causa disso.

No meu eu não achei essa opção que citou Local Grafico, só tem a aba Imagem (Picture) com escalas, tamanhos e posicionamento da imagem, não tem mais nada.
NILSONTRES 06/03/2014 17:13:38
#435615
Hum, então é a versão mesmo, olhe só.
Página 3 de 4 [32 registro(s)]
Tópico encerrado , respostas não são mais permitidas