Fórum Ajuda para Imprimir orçamentos(interbase/quickreport) #394105

21/01/2011

0

ola pessoal, bom nao estou conseguindo  imprimir o orçamento que fiz...Bom tenho 2 form... form 1(onde tem o botao incluir,excluir, imprimir e o dbgrid) chama o form 2 para cadastrar os orçamento composto pela tabela orçamento e itensorcamento. apos lançar o orçamento e salvar ela caia no dbgrid do form1. Eu preciso imprimir estes orçamentos, de acordo com cada orçamento..conforme vai aparecendo no dbgrid eu tenho a opçao de escolher qual quero imprimir clicando em cima  do numero do orçamento..SO QUE NAO ESTOU CONSEGUINDO FAZER esta codificaçao, eu clico ele abre no quickreport mas so aparece o orçamento numero 1.. EU PRECISO QUE ELE PEGUE O NUMERO DO ORÇAMENTO QUE EU CLICAR NO DBGRID, AI VAI APARECER TODOS OS DADOS, O CABEÇALHO(TABELA ORÇAMENTOS) E OS ITENS(TABELA ITENSORÇAMENTOS)...OK SE ALGUEM PODER ME AJUDAR.. uso o delphi 7 e interbase 7.5  segue o codigo do botao:   procedure TFrmpedfiest.SpdrelatorioClick(Sender: TObject); var numpedido:integer; texto:string; begin application.CreateForm(tfrmrelpedfiest,frmrelpedfiest); if (frmcadpedfiest<>nil)and (frmcadpedfiest.IBTablepedidosCODPEDF.AsInteger>0)then numpedido:=frmcadpedfiest.IBTablepedidosCODPEDF.AsInteger else begin texto:=''; if inputquery('Impressao do Pedido','digite o numero',texto)then begin try numpedido:=strtoint(texto); except showmessage('numero invalido!'); frmrelpedfiest.QuickRep1.Preview; exit; end; end else begin frmrelpedfiest.Close; exit; end; end; {//if not frmrelpedfiest.IBTableitenspedidos.Locate 'numpedido' then begin showmessage('pedido nao encontrado!');   frmrelpedfiest.Close; exit; end; } frmrelpedfiest.QuickRep1.Preview; FRMRELPEDfiest.Free; end; //end; //end;   OBS: LOCATE não funciona, qual método de pesquisa devo usar neste código negritado para localizar o pedido e abrir o relatório.....pois no interbase não aceita o FINDKEY..como proceder, pois no paradox uso esta codificação. Tablepedidos.findkey([numpedido]) then ....restante em negrito.. Funciona perfeitamente.....Alguem pode me ajudar....? Esta codificação fica dentro do botao imprimir em um form com um dbgrid, ai clico no dbgrid onde esta o pedido q quero imprimir e ai abre com todos os dados, cabeçalho e itens do pedido...preciso usar este mesmo método no interbase....aguardo ajuda...
Jose Maria

Jose Maria

Responder

Posts

21/01/2011

Wilson Junior

if  not frmrelpedfiest.IBTableitenspedidos.Locate( 'NomeCampo', ValorCampo, [] ) then


Espero ter colaborado.
Responder

Gostei + 0

21/01/2011

Jose Maria

if  not frmrelpedfiest.IBTableitenspedidos.Locate( 'NomeCampo', ValorCampo, [] ) then


Espero ter colaborado.
Wilson obrigado por ajudar... por favor, veja se fiz alguma coisa errada, pois clico no pedido q esta no dbgrid para seleciona-lo e depois clico no botao imprimir, ai diz q pedido nao foi encontrado...o que esta errado? o nome do campo da tabela pedidos é codpedf e numpedido é a variável... O QUE ESTA ERRADO NESTA CODIFICAÇAO OU NO CODIGO TODO DO BOTAO IMPRIMIR? AGUARDO RETORNO...   if not frmrelpedfiest.IBTableitenspedidos.Locate('codpedf',numpedido,[]) then begin showmessage('pedido nao encontrado!'); frmrelpedfiest.Close; exit; end; frmrelpedfiest.QuickRep1.Preview; FRMRELPEDfiest.Free; end;
Responder

Gostei + 0

21/01/2011

Wilson Junior

Você tem certeza que a variável esta com o valor correto?
A sua tabela frmrelpedfiest.IBTableitenspedidos já esta aberta? Se sim, o registro do pedido que você está filtrando está sendo retornado no SQL desta tabela.

Espero ter colaborado.
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar