GARANTIR DESCONTO

Fórum dar baixa em estoque #266671

29/01/2005

0

Boa noite,

estou desenvolvendo um software de dar baixa em estoque, só que ainda não tenho muita noção de como fazer. Ele tem que ter um banco de dados com as peças do produto, ai quanto eu coloco que foi montado 5 produto automaticamente as 5 peças que compõe o produto e subtraia da tabela(até aqui tudo bem), só que tem um problema, nesse produto as vezes são utilizadas duas peças iguais. Ex.:tenho um banco de dados com as pecas: 100 Barra de ferro, 100 ascento e 200 pé de borracha, para montar esse produto são necessarias 1 barra de ferro, 1 ascento e 2 pés de borracha, ai automaticamente são subtraidas do banco de dados, 1 barra de ferro, 1 ascento, 2 pés de borracha, isto em um produto se fosse em cinto seria, 5 barra de ferro, 5 ascento e 10 pés de borracha.
Ai se eu colocasse 10 produtos montados num edit ele varia a conta e subtraia as peças do banco de dados.

obrigado
obs.: Utilizo Delphi6, bd Paradox(mas pretendo mais tarde migrar para Interbase).


Fzamara

Fzamara

Responder

Posts

29/01/2005

Lindomar.des

Colega,

Veja se é isso mesmo que entendi. Vc quer montar um produto que se utiliza de vários outros (itens)?. Utilizo isso em um sistema para padaria, nele tenho um módulo de receita, ou seja, tenho um módulo onde cadastro todos os ingredientes para produzir um pão, logo, para produzir 100 pães basta que eu multiplique pela quantidade utilizada para produtir 1 pão. Tendo o total de quantidades de cada item é só dar baixa no estoque (dos itens) e entrada no item produzido. Em meu sistema tenho uma relação mestre/detalhe onde mestre é o item a ser produzido e o detalhe os itens utilizados.

Espero ter ajudado.


Responder

Gostei + 0

29/01/2005

Macario

Ola programador.

Boa noite.

Esta baixa que voce quer fazer no seu estoque, deriva de uma O.P/O.F?

Voce trabalha com sistema PCP?

Se sim isso envolveria as seguintes tabelas:

Tabela de Produtos
Tabela de Composição dos Produtos
Tabela do Saldo dos Produtos/Materia-prima
Tabela de Movimentação do Estoque

Tipo aqui ta uma ideia, nao sei se voce possui toda essa estrutura

procedure TForm1.Button1Click(Sender: TObject);
begin

  TabCompPro.IndexName := ´INDICEPORPRODUTO´
  TabSaldoPro.IndexName := ´INDICEPORPRODUTO´
  TabMovPro.IndexName := ´INDICEPORPRODUTO´

  (*AQUI VOCE TENTA LOCALIZAR A COMPOSIÇÃO DO PRODUTO PRODUZIDO*)
  TabCompPro.Setkey;
  TabCompPro.FieldByName(´CODPRO´).AsString := edPro.Text;
  if TabCompPro.GotoKey then
    begin
      (*AQUI INICIA A BAIXA DO ESTOQUE DOS PRODUTOS UTILIZADOS*)
      while not (TabCompPro.Eof) and (TabCompPro.FieldByName(´CODPRO´).AsString = edPro.text) do
        begin
          (*AQUI BAIXAMOS DEFINITVAMENTE O SALDO DO ESTOQUE*)
          TabSaldoPro.Setkey;
          TabSaldoPro.FieldByName(´CODPRO´).AsString := TabCompPro.FieldByName(´CODMP´).AsString;
          if TabSaldo.GotoKey then
            begin
              (*AQUI FAZ SALDO DO ESTOQUE MENOS A QUANTIDADE DA COMPOSIÇÃO*)
              TabSaldoPro.Edit;
              TabSaldoPro.FieldByName(´QtePRO´).AsFloat :=TabSaldoPro.FieldByName(´QtePRO´).AsFloat -
              TabCompPro.FieldByName(´QteComp´).AsFloat;
              TabSaldoPro.Post;
              (*AQUI INCLUIMOS A MOVIMENTAÇÃO DO ESTOQUE*)
              TabMovPro.Setkey;
              TabmovPro.FieldByName(´CODPRO´).AsString := TabCompPro.FieldByName(´CODMP´).AsString;
              if Tabmov.GotoKey then
                TabMovPro.Edit
              else
                TabMovPro.Append;

              TabMovPro.FieldByName(´CODPRO´).AsString := TabCompPro.FieldByName(´CODMP´).AsString;
              TabMovPro.FieldByName(´QtePRO´).AsFloat  := TabCompPro.FieldByName(´QteComp´).AsFloat;
              (*AQUI INCLUA OS DEMAIS CAMPOS QUE TIVER NECESSIDADE*)
              (*.............*)
              TabMovPro.Post;
            end;
          TabCompPro.Next;
        end;
    end
  else
    ShowMessage(´Este Produto não contem composição´);
end;




mas seria a forma ideal, de se trabalhar, ai vc me pergunta pq preciso da movimentação do estoque? E se vc por acaso perder a tabela do estoque?
Com a movimentação se consegue isso, fora os relatorios que se pode obter, como de onde ta sendo a movimentação(Venda, Produção, etc)


bom espero isso te ajude em algo...

Qualquer coisa tamo ai....


Responder

Gostei + 0

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

Aceitar