IMPRESSAO DE GRAFICOS
Bom dia.
Presto serviços para uma empresa que trabalha com um software de processos industriais. Este software gera informações em um banco de dados DBF. A empresa me procurou para desenvolver um programa para gerar relatório + gráfico, pois o sistema não tem esta função.
Até aà tudo bem. Escrevi um programinha que gera o relatório + gráfico. A questão é a impressão destes relatórios.
Tenho duas alternativas para gerar os relatórios:
=== Alternativa 1 - Usando o RMChart ===
Esse componente é simplesmente fantástico. Demorei algumas horas para entendê-lo, mas ele é muito bom mesmo. O problema é: Como imprimir o relatório + gráfico?
Embora trabalhar com o RMChart seja bastante flexÃvel, essa flexibilidade se limita à gerar os gráficos na tela. Quando falamos em impressão, o negócio fica mais complicado.
Quando digo [Ô]relatório + gráfico[Ô] quero dizer que existe uma especie de cabeçalho com informações sobre o gráfico, e logo abaixo vem o gráfico.
Eu costumo trabalhar com o Cristal Reports 11. Para gerar as informações textuais do banco é tranquilo. Mas esbarro em um problema:
- como enviar o gráfico para o Crystal Reports??
=== Alternativa 2 - Usar o Excel ===
Com a dificuldade de imprimir os relatórios gerados pelo RMChart, parti para o Excel.
Desta forma consigo imprimir os relatórios gráficos. O [Ô]problema[Ô] (que nem chega a ser um problema) é a formatação das informações textuais. Na verdade é mais trabalhoso do que um problema.
Ficar formatado bordas, tamanho da fonte, largura das colunas, etc, isso me faz perder muito tempo pois existem vários tipos de relatórios.
O RMChart é uma ferramenta fantástica, mas a impressão se torna um problema.
Com o Excel consigo imprimir facilmente, mas a formatação é trabalhosa.
Pergunto:
- Sei que não preciso do Crystal para gerar relatórios no VB6. Eu mesmo já vi projetos que não usavam componentes nem programas externos para gerar relatórios (somente com texto). Era tudo no VB6. Alguém tem um exemplo desses? Já ajudaria bastante. Não quero mais usar o Crystal.
- Existe alguma alternativa de enviar uma tela do gráfico para um relatório e imprimÃ-lo? Assim eu poderia usar o próprio RMChart. Prefiro ele do que o Excel. Já fiz um ScreenLogger uma vez, mas gostaria de saber se dá para fazer de outra forma.
Mas não quero nem pensar em enviar uma imagem para o banco de dados, pois o banco já existe (DBF) e eu só o utilizo para leitura.
[]'s
Presto serviços para uma empresa que trabalha com um software de processos industriais. Este software gera informações em um banco de dados DBF. A empresa me procurou para desenvolver um programa para gerar relatório + gráfico, pois o sistema não tem esta função.
Até aà tudo bem. Escrevi um programinha que gera o relatório + gráfico. A questão é a impressão destes relatórios.
Tenho duas alternativas para gerar os relatórios:
=== Alternativa 1 - Usando o RMChart ===
Esse componente é simplesmente fantástico. Demorei algumas horas para entendê-lo, mas ele é muito bom mesmo. O problema é: Como imprimir o relatório + gráfico?
Embora trabalhar com o RMChart seja bastante flexÃvel, essa flexibilidade se limita à gerar os gráficos na tela. Quando falamos em impressão, o negócio fica mais complicado.
Quando digo [Ô]relatório + gráfico[Ô] quero dizer que existe uma especie de cabeçalho com informações sobre o gráfico, e logo abaixo vem o gráfico.
Eu costumo trabalhar com o Cristal Reports 11. Para gerar as informações textuais do banco é tranquilo. Mas esbarro em um problema:
- como enviar o gráfico para o Crystal Reports??
=== Alternativa 2 - Usar o Excel ===
Com a dificuldade de imprimir os relatórios gerados pelo RMChart, parti para o Excel.
Desta forma consigo imprimir os relatórios gráficos. O [Ô]problema[Ô] (que nem chega a ser um problema) é a formatação das informações textuais. Na verdade é mais trabalhoso do que um problema.
Ficar formatado bordas, tamanho da fonte, largura das colunas, etc, isso me faz perder muito tempo pois existem vários tipos de relatórios.
O RMChart é uma ferramenta fantástica, mas a impressão se torna um problema.
Com o Excel consigo imprimir facilmente, mas a formatação é trabalhosa.
Pergunto:
- Sei que não preciso do Crystal para gerar relatórios no VB6. Eu mesmo já vi projetos que não usavam componentes nem programas externos para gerar relatórios (somente com texto). Era tudo no VB6. Alguém tem um exemplo desses? Já ajudaria bastante. Não quero mais usar o Crystal.
- Existe alguma alternativa de enviar uma tela do gráfico para um relatório e imprimÃ-lo? Assim eu poderia usar o próprio RMChart. Prefiro ele do que o Excel. Já fiz um ScreenLogger uma vez, mas gostaria de saber se dá para fazer de outra forma.
Mas não quero nem pensar em enviar uma imagem para o banco de dados, pois o banco já existe (DBF) e eu só o utilizo para leitura.
[]'s
quer uma sugestão vc pode imprimir o proprio formulário
coloque em um projeto um MDI FORM e um form, como nome frmfolha. com as seguintes propiedades:
mdichild = true
Apparence = 0
BorderStyle = 1
Caption = [Ô][Ô] [ô](em branco)
clipcontrol = False
configure este form para ficar do tamanho de uma folha A4
primeiro faça o seginte converta o tamanho do seu form, que é medido em twips
cada centimetro possui 567 twips.
então uma folha A4 de 21.0X 29.7 cm terá as seguintes mediadas em twips
21.0 * 567 = 11907
29.7 * 567 = 16840
então seu form terá
Form1.Height = 16840
Form1.Width = 11907
agora basta vc ajustar tudo que precisa dentro dele
no mdi coloque um toolbar com botão de impressão etc
no botão de impressão vc imprime o form inteiro com sua formatação
frmfolha.PrinFform
alguns ajuste ficará por sua conta, mas o caminho é este
coloque em um projeto um MDI FORM e um form, como nome frmfolha. com as seguintes propiedades:
mdichild = true
Apparence = 0
BorderStyle = 1
Caption = [Ô][Ô] [ô](em branco)
clipcontrol = False
configure este form para ficar do tamanho de uma folha A4
primeiro faça o seginte converta o tamanho do seu form, que é medido em twips
cada centimetro possui 567 twips.
então uma folha A4 de 21.0X 29.7 cm terá as seguintes mediadas em twips
21.0 * 567 = 11907
29.7 * 567 = 16840
então seu form terá
Form1.Height = 16840
Form1.Width = 11907
agora basta vc ajustar tudo que precisa dentro dele
no mdi coloque um toolbar com botão de impressão etc
no botão de impressão vc imprime o form inteiro com sua formatação
frmfolha.PrinFform
alguns ajuste ficará por sua conta, mas o caminho é este
Caro Marcelo-Treze,
Testei sua sugestão. A princÃpio, resolve o problema em parte. Ao imprimir o gráfico gerado pelo RMChart, na tela sai direitinho, mas na imrpessão só sai um retângulo cinza (onde deveria estar o gráfico).
se não fosse isso, os problemas estariam resolvidos...
Testei sua sugestão. A princÃpio, resolve o problema em parte. Ao imprimir o gráfico gerado pelo RMChart, na tela sai direitinho, mas na imrpessão só sai um retângulo cinza (onde deveria estar o gráfico).
se não fosse isso, os problemas estariam resolvidos...
Observação: O RMChart oferece uma propriedade chamada [Ô]Draw2Clipboard[Ô]
Ex:
Aà é só colar em um controle Picture ou Image:
AÃ, usando o conforme o Marcelo-Treze postou, parece ser a melhor solução.
Por enquanto parece ser a melhor solução.
Ex:
RMChartX1.Draw2Clipboard
Aà é só colar em um controle Picture ou Image:
Picture1 = Clipboard.GetData()
Image1 = Clipboard.GetData()
AÃ, usando o conforme o Marcelo-Treze postou, parece ser a melhor solução.
Por enquanto parece ser a melhor solução.
tbem vou testar isso....
Tópico encerrado , respostas não são mais permitidas