Caro Eduardo
Agradeço e vou aproveitar sua experiência e ver se esclareço estes 
pontos
Eu também estou utilizando  como voce, ou seja, coloco a string de 
insert ou
seja la a necessária na propriedade SQL e utilizo.  Mas acho que em 
alguns
casos termos as diversas strings já prontas,poderia ser uma vantagem.
Verifiquei que se clicar com o botão direito sobre a quey, abre-se um 
editor
das strings, mas me parece com alguns problemas, tais como, só aceita 
os
paramentros que forem colocados na string inicial ( select... etc).  
Tentei
colocar strings de insert e update mas o que ocorre:  se dou a 
instrução
query.edit vem um erro de que isto não pode ser feito em um dataset 
fechado!
Se mando abrir o dataset, ele abre o SQL de select, é isso mesmo ?

Quanto ao problema dos parametros.   A intensão era ler um registro 
que
contem 1 chave primaria, 4 campos numéricos, e um campo com a chave do
registro mãe ( um plano de contas de contabilidade). Lido o registro, 
o
sistema deveria somar os 4 valores numericos aos seus correspondentes 
no
registro Mãe.  Deu para entender?  Sem mostrar linhas tipo SQL.clear, 
etc..

    Qy1.SQL.Add('select chave, C1, C2, C3, C4, chavemae from tabela 
where
movimento = 'S' order by Chave');
    Qy2.SQL.Add('update tabela set C1 = C1 + :C!, C2 = C2 
+ :C2, ...., C4 =
C4 + :C4 where Chave = :Chave');

     Qy1.open;
     Qy1.first;
     While notQy1.Eof do
        begin
        Qy2.parambyname('C1').asfloat := Qy1.fieldbyname
('C1').asfloat;
         ...........
        Qy2.parambyname('Chave').asstring :=
Qy1.fieldbyname('ChaveMae').asstring;
        Qy2.ExecSQL;

        Qy1.next;
        end;

Aparentemente, tudo OK, Roda mas não faz nada!  Como resolvi:  
Utilizando
Tables (MyDAC) em que leio seuencialmente, uso um
Locate('Chave',Qy1.fieldbyname('chavemae').... Edit... registro novo,
transfiro valores C1 para uma variável local, somo os valores, volto 
o valor
para o campo e Post.
Trabalheira maluca e pouco profissional, mas foi o unico jeito.  Tem 
alguma
explicação ?
Obrigado
                          Edison


--- Em delphi-br@yahoogrupos.com.br, "eduardo.sic" <[EMAIL PROTECTED]> 
escreveu
>
> 
> Eu uso myDAC ha quase um ano e nao tenhos esses problemas, vamos lá:
> 
> 
> >1o problema: Como utilizar as diversas strings
> >de SQL das queries 
> >(UpdateSQL, InsertSQL etc.. ) Colocam-se as
> >strings e depois ? Como 
> >comandar para que seja feito um update, ou um
> >insert ?
> 
> Voce deve colocar os codigos nos devidos lugares e chamar os 
metodos insert, post, e assim vai,
> eu particularmente nao uso assim, eu sempre coloco na property SQL 
e executo de la mesmo.
> 
> >2o.  Alguem utilizou SQL com parâmtros ?  Veja o
> >que ocorreu comigo:
> >   update tabela1 set campo1 = campo1 + :campo1
> > roda sem problemas mais não faz absolutamente
> >nada.
> 
> Esse proble é estranho eu uso SQL assim e funciona legal
> 
> O mais importante é saber qual versão do myDAC vc tem? atualmente 
está na versão 4.1.2.8,
> 
> faz um programa reproduzindo o erro e manda pra min pra eu dar uma 
olhada.
> 
> visite também 
> http://crlab.com/forums/viewforum.php?
f=7&sid=40d576a42a85e11cdc27e1fe32fc4aa1
> é o forum deles tem muita coisa boa.
> 
> olha, eu te recomento muito myDAC, eu comprei, o componente é muito 
rapido e o suporte é muito bom.
> 
> 
> 
> 
> 
> 
> ____________________________________________________________________
>






-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

<*> Para ver as mensagens antigas, acesse:
    http://br.groups.yahoo.com/group/delphi-br/messages

<*> Para falar com o moderador, envie um e-mail para:
    [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 



Responder a