GARANTIR DESCONTO

Fórum DATASETPROVIDER NAO ESTA GERANDO A SQL CORRETAMENTE!!! #278310

21/04/2005

0

Olá Pessoal!!
Estou fazendo um master/detail com firebird 1.5 no delphi6
usando sqldataset +datasetprovider+clientdataset,
configurei tudo certinho, para que acha o relacionamento entre duas tabelas (pedido ->itempedido), na sqldataset do itempedido esta assim:

select I.CD_PEDIDO, I.CD_PRODUTO, I.NR_ITEM, I.VL_DESCONTO, I.VL_PRECO_TABELA, I.VL_TOTAL_ITEM, I.VL_UNITARIO,
(SELECT PRO.DS_PRODUTO FROM PRODUTO PRO
WHERE PRO.CD_PRODUTO=I.CD_PRODUTO) AS DSPRODUTO
from ITEMPEDIDO I
WHERE I.CD_PEDIDO=:CD_PEDIDO

Coloque no evento do provider ongettablename do provider da tabela itempedido TABLENAME:=´ITEMPEDIDO´ e o sistema da erro, informando que não encontra o campo!! Bom ai eu coloquei o componente sql monitor e vi que o danado do provider esta gerando assim:
INTERBASE - isc_dsql_allocate_statement
insert into ´PRODUTO´
(´CD_PEDIDO´, ´CD_PRODUTO´, ´NR_ITEM´, ´QTD_PRODUTO´, ´VL_TOTAL_ITEM´, ´VL_UNITARIO´)
values (?, ?, ?, ?, ?, ?)

Ou seja pegando a tabela produto , onde eu fiz o select na tabela itempedido.
COMO RESOLVER ISSO!!!!!!!!!!!!!!!

[]S
Fabio Correa


Fabiotb

Fabiotb

Responder

Posts

21/04/2005

Edilcimar

olhe o teu select, segunda linha está sendo selecionado produto


Responder

Gostei + 0

21/04/2005

Fabiotb

Eu sei que a segunda linha tem o select do produto, lebrando que no evento ONGETTABLENAME do datasetprovider esta TABLENAME:=´ITEMPEDIDO´;

Sera que não posso o usar o subselects?? eu coloco O dsproduto para o providerflag em update=false


Responder

Gostei + 0

21/04/2005

Fabiotb

.


Responder

Gostei + 0

21/04/2005

Fabiotb

.


Responder

Gostei + 0

21/04/2005

Fabiotb

Será que o problema esta no subselects??? Tem como eu interceptar a geração do SQL do datasetprovider??


Responder

Gostei + 0

21/04/2005

Otto

:arrow: Bloqueado.


:arrow: Título em caixa alta,
:arrow: ´Sobe´ mais de uma vez ao dia.


Colega, sugiro que voce leia as regras de conduta do fórum :wink:


Responder

Gostei + 0

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

Aceitar