ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Baixar estoque ao encerrar pedido - Resolvido

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
gutopanda
Aprendiz
Aprendiz


Registrado: Sábado, 30 de Março de 2013
Mensagens: 107
Localização: Botucatu

MensagemEnviada: Sex Abr 26, 2013 4:06 pm    Assunto: Baixar estoque ao encerrar pedido - Resolvido Responder com Citação

Meu sistema já está quase pronto, porem estou com uma duvida quanto a emissão de pedidos, quando encerro o pedido queria que baixasse o estoque. Fiz o codigo abaixo, mas baixa somente o primeiro item, acho que devo usar algo como while eof. Alguem tem alguma ideia para em ajudar.
Código:
DataModule1.SimpleDataSetProdutos.Open;
DataModule1.SimpleDataSetProdutos.Edit;
DataModule1.SimpleDataSetProdutos.FieldByName('ESTATU').AsFloat :=
DataModule1.SimpleDataSetProdutos.FieldByName('ESTATU').AsFloat -
DataModule1.SimpleDataSetItens.FieldByName('QTVENDA').AsFloat;
DataModule1.SimpleDataSetProdutos.Post;
DataModule1.SimpleDataSetProdutos.Close;


Obrigado


Editado pela última vez por gutopanda em Qua Mai 22, 2013 2:50 pm, num total de 1 vez
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Endereço de AIM
syler
Profissional
Profissional


Registrado: Segunda-Feira, 25 de Fevereiro de 2008
Mensagens: 734
Localização: Apucarana - Norte do Paraná

MensagemEnviada: Sex Abr 26, 2013 5:33 pm    Assunto: Re: Baixar estoque ao encerrar pedido Responder com Citação

ja tentou fazer um while com os ites ?????
_________________
Alex Sandro de Oliveira
Analista Programador Delphi
Freelancer
Estudante de Desenvolvimento Web, Marketing Digital e Designer Gráfico na Udemy
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail
gutopanda
Aprendiz
Aprendiz


Registrado: Sábado, 30 de Março de 2013
Mensagens: 107
Localização: Botucatu

MensagemEnviada: Sex Abr 26, 2013 6:26 pm    Assunto: Responder com Citação

Até tentei o codigo abaixo, porem não funciona. Não baixa nada.

Código:
While not DataModule1.SimpleDataSetItens.Eof do
begin
DataModule1.SimpleDataSetProdutos.Open;
DataModule1.SimpleDataSetProdutos.Edit;
DataModule1.SimpleDataSetProdutos.FieldByName('ESTATU').AsFloat :=
DataModule1.SimpleDataSetProdutos.FieldByName('ESTATU').AsFloat -
DataModule1.SimpleDataSetItens.FieldByName('QTVENDA').AsFloat;
DataModule1.SimpleDataSetProdutos.Post;
DataModule1.SimpleDataSetItens.Next;
DataModule1.SimpleDataSetProdutos.Close;
end;
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Endereço de AIM
syler
Profissional
Profissional


Registrado: Segunda-Feira, 25 de Fevereiro de 2008
Mensagens: 734
Localização: Apucarana - Norte do Paraná

MensagemEnviada: Sex Abr 26, 2013 7:17 pm    Assunto: Responder com Citação

E se voce usar um pra fazer eof e outro pra ir recebendo os valores da baixa? por que ai nao teria que gravar, talvez ai seja o erro, quando se grava esta perdendo a posicao ou fechando a transacao.
_________________
Alex Sandro de Oliveira
Analista Programador Delphi
Freelancer
Estudante de Desenvolvimento Web, Marketing Digital e Designer Gráfico na Udemy
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail
gutopanda
Aprendiz
Aprendiz


Registrado: Sábado, 30 de Março de 2013
Mensagens: 107
Localização: Botucatu

MensagemEnviada: Sex Abr 26, 2013 9:51 pm    Assunto: Responder com Citação

Poderia me dar um exemplo de como faria isto?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Endereço de AIM
syler
Profissional
Profissional


Registrado: Segunda-Feira, 25 de Fevereiro de 2008
Mensagens: 734
Localização: Apucarana - Norte do Paraná

MensagemEnviada: Sex Abr 26, 2013 11:08 pm    Assunto: Responder com Citação

Use um componentes para salvar os itens, e outro para ir atualizando o estoque dos produtos.

por exemplo:

Código:

compconsulta.First;
while compconsulta.eof do
begin
compAtuBanco.Close;
compAtuBanco.parambyname(`codigoproduto`).asinteger := compconsulta.fieldbyname(`codigoproduto`).asinteger;
compAtuBanco.Open;
compAtuBanco.edit;
compAtuBanco.fieldbyname(`qtestoque`).asfloat :=  compAtuBanco.fieldbyname(`qtestoque`).asfloat +      compconsulta.fieldbyname(`codigoproduto`).asfloat;
compAtuBanco.post;
compconsulta.next;
end;



espero que tenha entendido a logica.

falou
_________________
Alex Sandro de Oliveira
Analista Programador Delphi
Freelancer
Estudante de Desenvolvimento Web, Marketing Digital e Designer Gráfico na Udemy
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB