:o) Agora sim eu entendi... se eu der um commitretaing ele vai pro banco mas nao vai.. se no final eu der um Rollback, volta ao normal, inclusive o que eu tinha feita no CommitRetaing, é isso mesmo que entendi?
[]s Fellipe H. Em 05/09/06, Elazar Dornelles Ceza <[EMAIL PROTECTED]> escreveu: > > Ixi.. > > Que tal colocar em pseudo codigo ai... > > Acho que facilita... > > Atenc. > Elazar > -----Mensagem original----- > De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] > Em nome de Eduardo > Enviada em: terça-feira, 5 de setembro de 2006 11:21 > Para: delphi-br@yahoogrupos.com.br > Assunto: Re: [delphi-br] Como vocês fazem isso? Tratar estoque com > Firebird. > > > Meu querido colega FELIPE, é isso que estou tentando te dizer, o estoque > > não está atualizado por que você não atualizou. > Por tanto atualize o seu estoque dentro da transação que você abriu. > depois que você deletar o item VOCÊ TEM QUE ATUALIZAR O SEU ESTOQUE. > Após este update VOCÊ TERÁ SIM O SEU ESTOQUE ATUALIZADO SEM SALVAR NADA, > > POR QUE AS ALTERAÇÕES REALIZADAS DENTRO DE CADA TRANSAÇÃO SÃO VISTAS > APENAS PELA MESMA TRANSAÇÃO ATE Q SE DE UM COMMIT, SALVANDA TODOS OS > PROCESSOS DA TRANSAÇÃO. Se no final deste processo o seu usuário > cancelar a edição deste pedido será dado um ROLLBACK e cancelara > inclusive o update que você fez no estoque. > > > > > Eduardo > > > Fellipe Henrique escreveu: > > Eduardo, acho que você não entendeu... > > Tenho uma transacao que cuida do item do pedido, e nele eu vou lá e > > deleto o > > item... blz.. dei lá o Delete na tabela.. vou e incluo outro item, > > abro uma > > tela que me mostra os items com o devidos estoques... e nesta tela nao > > > tem o > > estoque.. que eu acabei de deletar, pois nao foi pro banco.. > > > > ou seja, o que eu fizer nesta transacao soh vai ser visto pelo > programa > > depois da transacao.. ou seja, exclui lá o item... e numa outra tabela > eu > > der um select trazendo a quantidade da tabela, esta quantidade nao > sera a > > real, pois a quantidade do item que eu deletei nao estará nela... a > > nao ser > > q eu comite a transacao, aih o meu select irá ver a quantidade q está > no > > estoque... > > > > ou seja, eu posso fazer tudo na transacao, mas o select que eu der pra > > buscar meu estoque nao será o "atual", a nao ser que eu comite a > > transacao.. > > > > entendeu? > > > > []s > > > > Em 05/09/06, Eduardo <[EMAIL PROTECTED]> escreveu: > > > > > > Se você esta dentro da transação qual é o problema ???? > > > > > > Você fará o update na tabela normalmente. > > > > > > Você só vai salvar ou cancelar a transação no final. > > > > > > As alterações realizadas dentro da transação só são vistas dentro > da > > > transação. > > > > > > Se você fizer uma seleção por fora na hora desta transação nada vai > > > aparecer, mas se dentro desta conexão você trabalha normalmente, no > > > final ou você salva (COMMIT) ou cancela (ROLLBACK). > > > > > > > > > > > > Eduardo > > > > > > Fellipe Henrique escreveu: > > > > Olá Eduardo, mas como eu teria de atualizar o estoque sem dar o > > > > commit? Pois > > > > se eu der o commit e o usuário cancelar a edição, não terá como eu > > > > voltar!? > > > > Entendeu o problema? > > > > > > > > []s > > > > Fellipe H. > > > > > > > > Em 05/09/06, Eduardo <[EMAIL PROTECTED]> escreveu: > > > > > > > > > > Você esqueceu de atualizar o estoque na exclusão do item. > > > > > Se você iniciou a transação não terá problema algum, basta ao > > excluir > > > > > recalcular o estoque. O mesmo deve ser feito quando você > terminar o > > > > > processo, já que a quantidade pode ser alterada. > > > > > > > > > > > > > > > Eduardo > > > > > > > > > > > > > > > Fellipe Henrique escreveu: > > > > > > > > > > > Olá amigos, meu sistema utiliza IBX, com Firebird 1.5, com > > > > transações em > > > > > > ReadCommited... Todo cadastro e movimento, ao abrir inicio a > > > > transação.. > > > > > > depois se o usuário quiser salvar ou cancelar, dou o Commit ou > > > > Rollback, > > > > > > dependendo da situação. > > > > > > > > > > > > Pois bem, só que depois de quase tudo pronto me veio um > > problemão... > > > o > > > > > > Estoque... > > > > > > > > > > > > Vamos supor que eu tenho uma venda de 100 unidades do produto > > X, já > > > > > > salva na > > > > > > minha tabela.. e o estoque atual é 50 unidades... > > > > > > > > > > > > vou alterar a venda, e excluo o item no DBGrid referente a > > estas 100 > > > > > > unidades... > > > > > > > > > > > > Pois bem, ao incluir um novo registro (item) eu verifico no > banco > > > > se tem > > > > > > estoque e se tiver eu deixo por o item lá na venda.. > > > > > > > > > > > > pois bem, voltando ao problema... removi o item com 100 > unidades, > > > > porem > > > > > > ainda nao foi pro banco de dados, pois ainda nao dei o > commit.... > > > > e se o > > > > > > usuario quiser novamente por os 100 de volta nao vai poder > pois o > > > > > estoque > > > > > > atual está com 50. > > > > > > > > > > > > O problema piora, se eu tiver que dar o commitretaing apos a > > > > exclusao do > > > > > > item... pois comitei e tals, foi pro banco, problema > resolvido.. e > > > se > > > > > ele > > > > > > cancelar a edicao da venda!? como cancelar aquele commit que > > eu dei, > > > e > > > > > > voltar com os 100 pro pedido de venda!? > > > > > > > > > > > > Bem, é isso, espero ter explicado o mais claro possivel... > espero > > > > > > ajuda dos > > > > > > amigos que mexem com isso... pois j[á pirei a cabeça e não > > achei uma > > > > > > solução. > > > > > > > > > > > > > > > > > > Desde já agradeço a todos... > > > > > > > > > > > > []s > > > > > > > > > > > > -- > > > > > > _________________________________ > > > > > > Fellipe Henrique > > > > > > [EMAIL PROTECTED] > > > > > > > > > > > > Borland Developer Studio 2006 Certified > > > > > > > > > > > > "Venham até a borda, ele disse. > > > > > > Eles disseram: Nós temos medo. > > > > > > Venham até a borda, ele insistiu. > > > > > > Eles foram, Ele os empurrou... > > > > > > E eles voaram." > > > > > > (Guillaume Apollinaire) > > > > > > > > > > > > > > > > > > [As partes desta mensagem que não continham texto foram > removidas] > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > _______________________________________________________ > > > > > Novidade no Yahoo! Mail: receba alertas de novas mensagens no > seu > > > > celular. > > > > > Registre seu aparelho agora! > > > > > http://br.mobile.yahoo.com/mailalertas/ > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > _________________________________ > > > > Fellipe Henrique > > > > [EMAIL PROTECTED] > > > > > > > > Borland Developer Studio 2006 Certified > > > > > > > > "Venham até a borda, ele disse. > > > > Eles disseram: Nós temos medo. > > > > Venham até a borda, ele insistiu. > > > > Eles foram, Ele os empurrou... > > > > E eles voaram." > > > > (Guillaume Apollinaire) > > > > > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > > > > > > > > > > > > > _______________________________________________________ > > > O Yahoo! está de cara nova. Venha conferir! > > > http://br.yahoo.com > > > > > > > > > > > > > > > > > -- > > _________________________________ > > Fellipe Henrique > > [EMAIL PROTECTED] > > > > Borland Developer Studio 2006 Certified > > > > "Venham até a borda, ele disse. > > Eles disseram: Nós temos medo. > > Venham até a borda, ele insistiu. > > Eles foram, Ele os empurrou... > > E eles voaram." > > (Guillaume Apollinaire) > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > _______________________________________________________ > O Yahoo! está de cara nova. Venha conferir! > http://br.yahoo.com > > > > > _______________________________________________________ > Yahoo! Acesso Grátis - Internet rápida e grátis. Instale > o discador agora! > http://br.acesso.yahoo.com > > > -- _________________________________ Fellipe Henrique [EMAIL PROTECTED] Borland Developer Studio 2006 Certified "Venham até a borda, ele disse. Eles disseram: Nós temos medo. Venham até a borda, ele insistiu. Eles foram, Ele os empurrou... E eles voaram." (Guillaume Apollinaire) [As partes desta mensagem que não continham texto foram removidas] -- <<<<< 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