Fórum Rave: Operation not allowed on a unidirectional dataset #233153
19/05/2004
0
Fiz o relatório e as ligações. Está tudo funcionando perfeito, inclusive o relatório é impresso e apresenta os dados conforme requisitado na Query. Há apenas um errinho: depois da impressão do relatório vem uma mensagem de erro: ´SQLQuery1: Operation not allowed on a unidirectional dataset´, ou seja, parece que o sistema está querendo realizar uma navegação no bd, o que não pode ser, pois ele é unidirecional. Sei que se eu colocar um ClientDataSet, um SQLDataSet e um Provider para efetuar a ligação com o relatório, vai resolver, mas gostaria de fazer de uma maneira que não precisasse de tantos componentes para o relatório. No QuickReport por exemplo, só usava uma Query. Será que o Rave veio para complicar? Alguém conhece uma maneira de solucionar esse erro sem entupir minha aplicação de componentes?
Obrigado.
[b:a5759c3bc3][color=red:a5759c3bc3]Título editado e desbloqueado pelo Moderador (AZ) - Removido: ´Ninguém Está Usando Rave? Pegunto há + 30 dias e Nada de R.´[/color:a5759c3bc3][/b:a5759c3bc3]
Valdirdill
Curtir tópico
+ 0Posts
19/05/2004
Paulo_amorim
Primeiramente, título ridículo e fora das regras de conduta. Se não houve respostas, é porque ninguém conseguiu achar uma resposta, o que não ten nada a ver com o Rave ser usado ou não.
O erro que ocorre após a impressão do relatório, ocorre também se nao imprimir (só abrir o Preview e cancelar) ?
Fechando a Query após a exibição do relatório muda algo?
Até+
Gostei + 0
21/05/2004
Aroldo Zanela
Gostei + 0
22/05/2004
Rômulo Barros
Completamente incorreto... Se o componente for da paleta DBExpress, o erro irá ocorre em qualquer gerador de relatorio, seja o Quick, seja o Rave.
...
Var DtStPrvdr : TDataSetProvider; ClntDtSt : TClientDataSet; Begin Try DtStPrvdr := TDataSetProvider.Create; DtStPrvdr.DataSet := SqlQuery1; ClntDtSt := TClientDataSet.Create; ClntDtSt.SetProvider(DtStPrvdr); // Ligue aqui o seu relatório ao ClntDtSt, ao ínves de ligar a SqlQuery1; // ExibirRelatorio; // Finally FreeAndNil(DtStPrvdr); FreeAndNil(ClntDtst); End; End;
...
[size=18:7287d4f9d5][color=red:7287d4f9d5]Código não testado...[/color:7287d4f9d5][/size:7287d4f9d5]
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)