Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

flavioavilela

Imprimir dados selecionados DBGrid

Recommended Posts

Ae galera, preciso de vcs novamente...

Fiz um formulário de consulta e estou consultando por data. Assim que aparece o conteúdo num dbgrid, preciso selecionar uma ou mais de um ou todos os dados filtrados e imprimir o mesmo. Nunca imprimi pelo delphi, então estou apanhando mto rsrs... alguém pode me ajudar??? Alguém teria algum código para dar exemplo de como fazer para imprimir??

estou usando query da paleta bde e banco sqlserver...

Desde já agradeço a atenção de todos... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia amigo!

Eu dei uma sugestão parecida dias atrás aqui no fórum, como disse pro dono do tópico, era uma dica que veio na cabeça na hora, e até agora não tive tempo de parar pra pensar em outra forma mais prática ....

 

Esta idéia seria você colocar um ClientDataSet (Uma especie de query desconectada do seu DB) no seu form, criar nele os mesmos campos que você tem na sua query, e no botao imprimir, você faz um laço while, percorrendo todos os registros selecionados no Grid, e pra cada registro selecionado você faz um Insert no DataSet.... Logo você vai ter no ClientDataSet todos os registros que foram selecionados no DBGrid, depois, basta dar um preview no relatorio que esta ligado com este ClientDAtaSet ...

Axo que poderia ser uma forma de fazer .... Claro que existem outras, mais teria que parar e analisar com calma, porque cada caso é um caso ...

Compartilhar este post


Link para o post
Compartilhar em outros sites

certo, só que, eu queria saber assim: quais componentes devo inserir saca, procedimentos e tal... pq, no delphi, eu nunca fiz nenhum procedimento pra imprimir...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Entendo. Mais veja bem. De acordo com minha sugestão, se você parar para analisar, não tem nada de diferente e estranho.

1º) Você já conseguiu listar os dados no DBGrid certo?

2º) Consegue fazer um laço while ou for, pra pegar os registros selecionados no DBGrid não consegue?

3º) Talvez esteja aqui a sua dificuldade não é? Pois bem, vou lhe ajudar com um pouco de detalhes ...

a) Coloque no seu form, um ClientDataSet, da palheta DataAccess.

B) Da um duplo clique no componente recém instanciado. Feito isso, vai abrir uma "janelinha" para você adicionar os campos que desejar. Nesta "janelinha" clique com o botao direito do mouse -> new field...

c) Certo. Agora você tem um formulario pra preencher, basta você repetir este procedimento para cada campo que você deseja imprimir.... (Informa um nome, Type, e Size se nescessario)

d) Após criar todos os fields/campos que precisa, clique com o botão direito do mouse em cima do objeto ClientDataSet, objeto este que você instanciou no seu form, e logo em seguida selecione a opção Create DataSet.

e) Prontinho, temos um DataSet "desconectado", eu diria, uma tabela temporária em memória ... Agora você pode usa - la como se fosse uma query, dando .Append, .Edit, .Post, .Delete .... Então basta montar o laço while ou for, como te disse no item 2, e pra cada registro selecionado, você da um .Append neste ClientDataSet. Logo, teremos um ClientDataSet com todos os registros que você selecionou no Grid. Agora ficou tudo mais fácil não é? Basta criar um Relatório usando QuickReport pro exemplo, e ligar este seu relatório com o ClientDataSet....

Entendeu? http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

entendi sim perfeitamente...

só que, onde acho o quickreport para baixar??? ou como adicionar ele no delphi 2007... já tentei adicionar mas não acho o arquivo necessário, oq devo fazer???

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha, como lhe disse em outro tópico, pelo que sei, o QuickReport não faz parte da IDE do delphi 2007 (que alguem me corriga se eu estiver errado). Teria que da uma pesquisada a respeito.

Caso queira mesmo fazer com o QuickReport, dai você vai ter que comprar o mesmo separadamente e instala - lo ...

 

Talvez VDOPrint resolva o seu caso (tem que ver tbm se tem pra D2007), de uma pesquisadinha que você encontra muita coisa sobre ...

No momento ando muito ocupado, senaum poderia lhe ajudar melhor, assim que me sobrar um tempinho vou ver se consigo isso pra ti)

Boa sorte amigo, e se quiser postar o resultado pra gente depois...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.