Fórum Dbexpress X relatórios #258936
18/11/2004
0
Bom dia,
estou tendo problemas para gerar os relatórios no meu programa..
tenho um sqlconnection, um sqldataset1, um datasetprovider, um clientdataset,
um datasource.. todos ligados corretamente..
inseri no datamodule um Tsqlquery.. no sql dele inseri o texto:
SELECT ´LOCAL´ = LOCAL_INFRA, ´QUANTIDADE´ = COUNT(NUM_LOCAL),
OBS,NUM_LOCAL
FROM RETORNO
WHERE DT_INFRA BETWEEN :DTINCIAL AND :DTFINAL
GROUP BY LOCAL_INFRA,OBS,NUM_LOCAL
ORDER BY LOCAL_INFRA
num formulário tenho o seguinte código..
procedure Tfrmlocalinfracao.BtnImprimirClick(Sender: TObject);
VAR DT1,DT2: STRING;
begin
DT1:= COPY(DATETOSTR(DTINICIAL.DATE),4,2)+´/´+COPY(DATETOSTR(DTINICIAL.DATE),1,2)+´/´+COPY(DATETOSTR(DTINICIAL.DATE),7,4);
DT2:= COPY(DATETOSTR(DTFINAL.DATE),4,2)+´/´+COPY(DATETOSTR(DTFINAL.DATE),1,2)+´/´+COPY(DATETOSTR(DTFINAL.DATE),7,4);
DTMDB.LocalInfra.Close;
DTMDB.LocalInfra.ParamByName(´DTINCIAL´).ASSTRING:= DT1;
DTMDB.LocalInfra.ParamByName(´DTFINAL´).ASSTRING:= DT2;
DTMDB.LocalInfra.Open;
FRMRELATO12.Dtinicial.Caption:= DATETOSTR(DTINICIAL.DATE);
FRMRELATO12.Dtfinal.Caption:= DATETOSTR(DTfinal.DATE);
FRMRELATO12.QuickRep1.Preview;
end;
ele dá o seguinte erro: dbexpresserror: Operation not supported..
a sql está certa pq qdo tiro as tres ultimas linhas ela executa..
alguém sabe o que pode ser.
valeu
Eric
estou tendo problemas para gerar os relatórios no meu programa..
tenho um sqlconnection, um sqldataset1, um datasetprovider, um clientdataset,
um datasource.. todos ligados corretamente..
inseri no datamodule um Tsqlquery.. no sql dele inseri o texto:
SELECT ´LOCAL´ = LOCAL_INFRA, ´QUANTIDADE´ = COUNT(NUM_LOCAL),
OBS,NUM_LOCAL
FROM RETORNO
WHERE DT_INFRA BETWEEN :DTINCIAL AND :DTFINAL
GROUP BY LOCAL_INFRA,OBS,NUM_LOCAL
ORDER BY LOCAL_INFRA
num formulário tenho o seguinte código..
procedure Tfrmlocalinfracao.BtnImprimirClick(Sender: TObject);
VAR DT1,DT2: STRING;
begin
DT1:= COPY(DATETOSTR(DTINICIAL.DATE),4,2)+´/´+COPY(DATETOSTR(DTINICIAL.DATE),1,2)+´/´+COPY(DATETOSTR(DTINICIAL.DATE),7,4);
DT2:= COPY(DATETOSTR(DTFINAL.DATE),4,2)+´/´+COPY(DATETOSTR(DTFINAL.DATE),1,2)+´/´+COPY(DATETOSTR(DTFINAL.DATE),7,4);
DTMDB.LocalInfra.Close;
DTMDB.LocalInfra.ParamByName(´DTINCIAL´).ASSTRING:= DT1;
DTMDB.LocalInfra.ParamByName(´DTFINAL´).ASSTRING:= DT2;
DTMDB.LocalInfra.Open;
FRMRELATO12.Dtinicial.Caption:= DATETOSTR(DTINICIAL.DATE);
FRMRELATO12.Dtfinal.Caption:= DATETOSTR(DTfinal.DATE);
FRMRELATO12.QuickRep1.Preview;
end;
ele dá o seguinte erro: dbexpresserror: Operation not supported..
a sql está certa pq qdo tiro as tres ultimas linhas ela executa..
alguém sabe o que pode ser.
valeu
Eric
Eric.miranda
Curtir tópico
+ 0
Responder
Posts
18/11/2004
Vinicius2k
Colega,
Se vc está certo de que a instrução SQL está correta, erros de Operation Not Supported, normalmente, são ocasionados pela tentativa de navegação bidirecional no dbExpress que é unidirecional.
Eu não trabalho com o QuickReport, mas se ele exigir este tipo de navegação, a fonte de dados para o relatório não pode ser diretamente a TSQLQuery... deve ser um TClientDataSet, assim como num DBGrid e no mesmo esquema de ligação utilizando um TDataSetProvider.
Espero ter ajudado...
T+
Se vc está certo de que a instrução SQL está correta, erros de Operation Not Supported, normalmente, são ocasionados pela tentativa de navegação bidirecional no dbExpress que é unidirecional.
Eu não trabalho com o QuickReport, mas se ele exigir este tipo de navegação, a fonte de dados para o relatório não pode ser diretamente a TSQLQuery... deve ser um TClientDataSet, assim como num DBGrid e no mesmo esquema de ligação utilizando um TDataSetProvider.
Espero ter ajudado...
T+
Responder
Gostei + 0
18/11/2004
Christian_adriano
Caro ´eric.miranda´,
Olha, sempre utilizei o TSQLQuery com TQuickReport e nunca tive erros....
... estranho esse seu erro.
Mais vc tentou (apos aparecer o erro) pressionar a tecla ´F9´ novamente pra vê se aparece alguma erro na Aplicação ?
[]´s.
Christian.
Olha, sempre utilizei o TSQLQuery com TQuickReport e nunca tive erros....
... estranho esse seu erro.
Mais vc tentou (apos aparecer o erro) pressionar a tecla ´F9´ novamente pra vê se aparece alguma erro na Aplicação ?
[]´s.
Christian.
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)