Fórum Denovo é pq to precisando mesmo, Gravar dados no IB. #211310

03/02/2004

0

Pessoal

to passando um programa de DBF pro Interbase e to com uma duvida
acho que to fazendo errado. O programa e simples.

Tenho um aqquivo de Perguntas (DT.IBQPertunta) onde cada registro e uma pergunta e um arquivo que guarda as respostas (DT.IBQResposta) cada registro é uma resposta.

Tenho 1 botao Proximo e outro Voltar quando o usuario clica em

Proximo tenho que gravar a resposta no arquivo de resposta
e pular pra proxima pergunta se ele clicar em Voltar tenho que voltar para
Pergunta anterior pegando do arquivo Resposta a o que ele respondeu
Anteriormente. faco apenas uma pergunta por vez na tela.

Abaixo mostro como eu fiz pra gravar os dados so que nao ta dando certo alguem poderia me informar a forma correta de fazer a gravacao dos dados. Nao sei usar o IBUpdateSql nem o IBDataset

Sera que isso resolveria ?

//DT= DataModule

//IBtrans=iBTransaction => DefaultActin=TACommitRetaining

//IBdatabase

Liguei o Database com a Tabela
Liguei o IBTrans com o IBDatabase acima
Liguei o IBQResposta com o IBDatabase
Liguei o IBQPergunta com o IBDatabase
try
DT.IBTrans.StartTransaction;
DT.IBQResposta.Sql.Clear;
DT.IBQResposta.SQL.Add( ´UPDATE RESPOSTA SET ´);
DT.IBQResposta.Sql.Add(´DESCRICAO=:DESCRICAO´); campo texto
DT.IBQResposta.Sql.Add(´COMENTARIO=:COMENTARIO´); memo
DT.IBQResposta.Sql.Add(´QUANT=:QUANT´); numerico
DT.IBQResposta.Sql.Add(´DATA=:DATA´); data
DT.IBQResposta.ParamByName(´DESCRICAO´).asString:=Editobs.Text;
DT.IBQResposta.ParamByName (´COMENTARIO´).asString:=MEMOcoment.text;
DT.IBQResposta.ParamByName(´QUANT´).asInteger:=
trunc(CEquant.value);
DT.IBQResposta.ParamByName(´DATA´).asDate:=Dtobs.date;
DT.IBQResposta.Sql.Add(´WHERE ITEM=´+
quotedstr(DT.IBQPerguntaTEM.value));

DT.IBTrans.Commit;
except
DT.IBTrans.Rollback;
end;

Gostaria de saber tb como faco procura no banco de dados
to usando o Locate.

Obrigado


M@rcelo

M@rcelo

Responder

Posts

03/02/2004

Gandalf.nho

O registro da resposta já existe quando você dá o UPDATE?


Responder

Gostei + 0

03/02/2004

Lucas Silva

O registro da resposta já existe quando você dá o UPDATE?


faz uma consulta com a query, se o registro ja existir vc coloca a query em modo de inserção, se naõ vc colca em modo em Edição...

INSERT e EDIT;


Responder

Gostei + 0

03/02/2004

M@rcelo

Quando estiver na primeira consulta do paciente o registro resposta nao existe, mas quando for alterar ai existe e as respostas deverao aparecer como padrao.
sera que nao faltou um aplplyupdates ou coisa desse tipo


Responder

Gostei + 0

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

Aceitar