• 0
Sign in to follow this  
Andersonjb

Modificar Campos Do Relatórtio Via Programação

Question

E ai pessoal, beleza?

Bem, é o seguinte: preciso modificar um campo de um relatório via programação. Tentei achar algum método nas classes que possuo aqui e não tinha nada que modificava um campo, ou pelo menos, um objeto de texto. Então, decidi modificar via valores de variáveis, olhem o código:

Public rptReport As CRAXDRT.Report
Public rptRepApp As CRAXDRT.Application
Public rtpViews As CRAXDRT.DatabaseTable

Private Sub Form_Load()

    ReportFileName = App.Path & "\Relatório CI.rpt"
    Set rptRepApp = New CRAXDDRT.Application
    Set rptReport = New CRAXDDRT.Report

    With CRV

        Set rptReport = rptRepApp.OpenReport(ReportFileName, 1)

        .ReportSource = rptReport
        .ViewReport

    End With

End Sub

Private Sub Command1_Click()
    
    rptReport.SetReportVariableValue "legal", 1
    CRV.Refresh

End Sub
Só que quando modifico o valor da váriavel:
    rptReport.SetReportVariableValue "legal", 1

Ele fala que eu não tenho permissão para isso. Porque?

Share this post


Link to post
Share on other sites

6 answers to this question

Recommended Posts

  • 0

como assim modificar um campo de relatorio?? um campo direto do banco e você quer alterar o valor?? ou é um campo formula??

seja la o que for, o unico jeito de monta valores no crystal pelo visual basic é passando o valor pra um campo parametro. ai você pode montar campos formula baseado no parametro ou em campos do banco

pede pro renan o programa de atas ou o de funcionario que tem exemplo, olha onde imprime a ata.

mas o codigo deve ficar tipo assim:

rptReport.ParameterFields(1).AddCurrentValue (valor)

se não me engano, o indice comeca no 1

Share this post


Link to post
Share on other sites
  • 0

E aew kuroi viado. Vem trabalha mais não, vagabundo? Então, eu achei um post seu com a mesma resposta aqui no fórum, mais acontece que eu passo o valor dessa maneira e ele não é atribuido.

Outra: todo campo de parâmetro tem um Prompt, e eu não consegui, talvez até por falta de prática, removê-lo.

É só essa linha de código ou tem que ter mais alguma coisa mesmo?

Porque só ela não resolveu não...

Por exemplo: via código, ele é atribuido sim. Tanto que, se você tentar atribuir o mesmo valor novamente, ele dá um erro falando que o valor já existe no campo parâmetro. Mais no formulário, nada é modificado.

E agora?

Share this post


Link to post
Share on other sites
  • 0

mano to saindo agora pra bauru, vo fica descansando, passiando e so quero ouvi fala de sergio daqui uns dois ano

então, se você num passa parametro nenhum a janela de prompt sempre aparece. acho que nas propriedades do campo no crystal tem uma opcao pra impedir isso, não tenho certeza, mas acho que se você der um default value pra ele, ela não aparece.

essa linha só resolve sim. mas nunca tentei ela antes do refresh, talvez ela so funcione antes de abrir o report. nesse caso, no click do botao, deve ter alguma solucao melhor mas fechar e abrir de novo o relatorio deve resolver.

Share this post


Link to post
Share on other sites
  • 0

Oh, eu consegui, achei uma propriedade aqui:

    rptReport.ParameterFields(1).AddCurrentValue "hauhahau"
    rptReport.EnableParameterPrompting = False
    CRV.ReportSource = rptReport
    CRV.ViewReport

O foda agora é que eu preciso criar uma "linha dentro do relatório", e o programa não me dá permissão pra isso.

Existe algum tipo de permissão para se mecher com o crystal?

Share this post


Link to post
Share on other sites
  • 0

Eu consegui esconder a linha aqui, então resolvi deixar assim. So que surgiu mais um problema...

Olhem esses topicos:

http://scriptbrasil.com.br/forum/index.php...8&hl=imagem

http://scriptbrasil.com.br/forum/index.php...3&hl=imagem

O meu problema e o mesmo. Como eu insiro uma imagem no Crystal pelo VB?

alguém sabe?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this