segunda-feira, setembro 11, 2006

Definindo um bom controle de estoques

A definição do controle de estoques, deve levar em consideração parâmetros de abrangência e de funcionalidade, e como já escrevi em posts anteriores sobre parâmetros de abrangência, estarei discorrendo agora sobre um parâmetro de funcionalidade que eu particularmente, considero o mais importante em um controle de estoques eficiente, que é a "capacidade de recuperação de informações históricas".
As principais informações históricas que a maioria dos sistemas não consegue recuperar, ou se consegue, consegue de forma ineficiente, são o saldo do produto e o custo médio, por se tratarem de informações que são sobrepostas a cada entrada (o saldo e custo médio) ou a cada saída (o saldo).
Destrinchando o problema, podemos partir de dois pontos básicos, que facilitam a boa definição do controle de estoques, que são:
Gravação dos dados de estoques de períodos pré definidos, no arquivo de estoques.
Possibilidade de reprocessamento a partir de arquivos de movimentação (vendas, compras, devolução de clientes, devolução a fornecedores, ajustes de estoque).
Mas se podemos reprocessar a partir dos arquivos de movimentação, teóricamente, qualquer sistema que tenha esses arquivos de movimentação pode obter o estoque ou custo médio em períodos anteriores. Realmente pode, mas não de forma rápida e simples, pois essa obtenção se daria a partir de reprocessamento do início pro fim, ou do fim pro início, e dependendo do tamanho dos arquivos, seria um processo extramamente demorado e complexo, uma vez que até a ordem dos arquivos a reprocessar interessa no caso de reprocessamento de custo médio.
Mas então, qual seria a solução mágica pra esse reprocessamento ? Não se trata de solução mágica, mas sim o uso de recursos semelhante ao controle de saldo em sistemas de contabilidade, que facilitam esse controle mais eficaz.
Pensei em uma forma de expor as informações que levasse o leitor a pensar, sem dar receita de bolo, mas nesse caso não encontrei a forma ideal pra isso, portanto, vou passar de forma mastigada mesmo.
Primeiramente, vamos à estrutura do arquivos de estoques:
* Chave primária
Código da empresa (Em se tratando de sistema multi-empresa)
Código do produto
Depósito (Caso o sistema contemple múltiplos depósitos)
Lote (Caso o sistema contemple controle por lotes de mercadoria)

* Demais campos da tabela
ANOREF (Ano de referência do registro de estoque)
SALDANT (Saldo do exercício anterior)
CPMES01 (Compras do mês 01)
VNMES01 (Vendas do mês 01)
DCMES01 (Devoluções de clientes do mês 01)
DFMES01 (Devoluções a fornecedores mês 01)
ABMES01 (Alimentação de balanço/ajustes mês 01)
SLMES01 (Saldo final do mês 01)
CMED01 (Custo médio mês 01)
...
...
...

CPMES12 (Compras do mês 12)
VNMES12 (Vendas do mês 12 )
DCMES12 (Devoluções de clientes do mês 12)
DFMES12 (Devoluções a fornecedores mês 12)
ABMES12 (Alimentação de balanço mês 12)
SLMES12 (Saldo final do mês 12)
CMED12 (Custo médio mês 12)
* Não citarei os demais campos do arquivo de estoques, pois o foco é o saldo e o custo médio

Os lançamentos no estoque, provenientes da movimentação ou da alimentação de balanço, deverão procurar no arquivo, e caso não encontre, abrir um registro com o código do produto, o código da empresa, o código do depósito e o ano do lançamento, deve-se também buscar se existe um registro anterior daquele produto, para pegar o saldo anterior que será alimentado no novo registro que foi criado.
Caso seja feito um lançamento, ou a exclusão de um, com exercício inferior a lançamentos pré-existentes, deve-se reprocessar os saldos anteriores dos registros subseqüentes de acordo com a característica daquele lançamento, Inclusive recalculando os campos de custo médio de cada mês.
A alimentação do estoque, proveniente de movimentação ou de alimentação do balanço, deverá alimentar o respectivo campo de movimentação ou alimentação de balanço, do mês de referência da data do lançamento, bem como o saldo final do mês, com a seguinte regra:
(+) Saldo anterior (soma do SALDANT mais os saldos dos meses anteriores)
(+) Compras do mês
(+) Devoluções de clientes do mês
(+) Alimentação de balanço do mês
( -) Vendas do mês
( -) Devoluções a fornecedores do mês
A consulta do saldo atual, pode ser feita através de uma função que retorna esse saldo, para que a mesma seja utilizada em qualquer parte do sistema, que se dará pela soma do saldo anterior, mais os saldos do mês 01 ao mês 12.
Os saldos dos meses 01 ao 12, se referem apenas à movimentação daquele mês, e não ao saldo acumulado, para que quando da necessidade de reprocessamento por causa de lançamentos em exercícios anteriores, seja necessário apenas alterar os campos de saldo anterior e custos médios subseqüentes, e caso o lançamento seja em data anterior, mas no mesmo exercício, não haja necessidade de nenhum reprocessamento de estoque, sendo necessário reprocessar apenas os custos médios dos meses subseqüentes.
Esta rotina parece um pouco complexa, mas se bem entendida, e utilizada, facilita sobremaneira o controle de estoques, e possibilita total rastreabilidade dos estoques a partir das movimentações.
As possibilidades de utilização, ficam a cargo de cada projetista de software, mas garanto que existem tanto possibilidades operacionais, quanto gerenciais.

Controle de estoques em múltiplos depósitos

Uma outra forma de controle de estoques que se faz necessária em alguns segmentos, é o controle de estoques em múltiplos depósitos.
Temos alguns exemplos das necessidades desse controle, e em alguns casos, o produto não se encontra específicamente em outros depósitos, mas talvez em poder de terceiros, como no caso de compra para entrega posterior, ou no caso de produtos em poder de algum prestador de serviço, para execução de algum tipo de transformação do mesmo. Neste último exemplo, há o caso de empresas que trabalham com aço, que podem ter bobinas em poder de empresas que as transformarão nos mais diversos produtos, para posteriormente enviar ao destinatário. Note que as empresas que estão em poder das bobinas de aço, não venderão os produtos finais dessas bobinas às empresas destinatárias, mas sim, o serviço de transformação das mesmas.
Mas o controle em si, de múltiplos depósitos, se dá de forma parecida ao controle de estoques por lote, e podemos ter casos, onde se fazem necessários os dois controles, portanto, já concluímos a necessidade de se ter um registro de estoque para cada depósito onde se encontre um determinado produto, e também para cada lote, em caso de empresas que tenham essas duas necessidades.
Também de forma similar ao controle por lotes, devemos informar no ato da venda, em qual depósito se encontra a mercadoria que está sendo vendida, para que o estoque seja baixado no depósito adequado.
Como sugestão, seria interessante ter no sistema, uma rotina de transferência de estoques entre depósitos, pois essas transferências ocorrem com uma regularidade bem maior do que se imagina.
No próximo post, estarei falando sobre a definição do arquivo de estoques, de forma a permitir a obtenção do estoque em qualquer período do passado.

Controle de estoques por lote

Uma das necessidades que se faz em alguns segmentos, é o controle de estoques por lote, em função do prazo de validade dos produtos.
Os produtos neste caso, tem o mesmo código de barras, mas possuem lotes, e consequentemente, validades diferentes.
O primeiro ponto a se observar neste caso, é a forma de se armazenar as informações do estoque, pois precisamos saber exatamente, a data de compra, o número do lote, a validade, o custo, o fornecedor e a quantidade de estoque de um determinado lote.
Os casos mais clássicos de controle de estoques por lotes, são as drogarias e os supermercados, por trabalharem com produtos perecíveis, e portanto, com tempo de vida limitado.
Em cada um desses segmentos, podemos ter mais de um lote de um mesmo produto, e nesta hora, entra a necessidade da logística de armazenagem e venda, afim de se evitar que um produto perca a sua validade enquanto um outro, com um prazo de validade posterior, seja vendido em detrimento do primeiro. Parece simples esse controle, mas nesses dois segmentos, há grande perda de produtos em decorrência de vencimento do prazo de validade, em função da ineficácia do controle de estoques.
Mas então, o que fazer para se controlar estoques que tenham essa particularidade ?
Simples, mas nem tanto, hehehe...
Primeiramente, no arquivo destinado às informações do estoque, deveremos ter um registro para cada lote do mesmo produto.
A segunda parte, diz respeito à rotina de vendas, pois é essa que deve controlar e evitar que um produto seja vendido, se houver um outro lote, com validade anterior a este, e para tal, deve-se no ato da venda, informar o número do lote, para que o sistema verifique se existe aquele produto com prazo de validade inferior ao atual.
Um outro detalhe que ajuda neste trabalho de controle por lotes, é acondicionar os produtos com lotes mais velhos, na frente dos mais novos, para que sejam retirados das prateleiras, em caso de drogarias, ou do depósito para as gôndolas, em caso de supermercados, na ordem correta da cronologia dos lotes.
No próximo artigo, estarei falando de controle de estoques em múltiplos depósitos.

terça-feira, setembro 05, 2006

Cadastro de produtos compostos

Uma outra necessidade que se faz presente em um sistema que possua um cadastro de produtos genérico, é o cadastro composto (produto composto de outros produtos), e uma boa prática, é que os dados do produto principal, estejam cadastrados juntamente com o cadastro de produtos comuns, pois isso permitiria que um produto composto tivesse em sua composição, outros produtos compostos.
Para essa implementação, podemos criar uma tabela, onde informamos o código do produto composto, o código do produto que o compõe e a quantidade desse produto usada na composição, sendo que nessa tabela pode haver o código de um outro produto composto.
Para a baixa dos produtos que compõem o produto composto, temos duas opções, sendo:
Baixa na venda – Quando da venda do produto composto, baixa-se os produtos que o compõe nas respectivas quantidades da composição.
Rotina de composição – Neste caso, quando da composição, informa-se em uma rotina de composição de produtos, qual o produto que foi composto, e a quantidade que foi composta, e baixa-se o estoque dos produtos individuais, e suas respectivas quantidades, pela fórmula de composição previamente cadastrada, e dá-se a entrada no estoque do produto composto.
Não podemos confundir composição com industrialização, pois na industrialização, temos outros fatores, como perdas, subprodutos, rendimento, etc., o que será tema de outro post no futuro.
Em dois dias estarei postando as particularidades do estoque, por ser parte integrante do cadastro de produtos em um sistema de controle de estoques.

segunda-feira, setembro 04, 2006

Cadastro de produtos, simples, mas nem tanto

Uma das causas do sucesso do cadastro de produtos, é o estudo da abrangência do mesmo, que pode ser específica, ou genérica.
Numa definição de abrangência específica, estaremos definindo o cadastro, para um determinado segmento de mercado, o que fará com que o desenho do cadastro tenha características voltadas a esse segmento, e na definição de abrangência genérica, estaremos definindo o cadastro para que atenda a vários segmentos, e é deste modelo de definição, que trataremos neste artigo.
Em se tratando de uma definição genérica, temos informações básicas, que se repetem em praticamente todos os segmentos que o sistema se propõe a controlar, e algumas não tão comuns.
Entre as informações que seria interessante acrescentar a um cadastro genérico de produtos, podemos citar as seguintes:
· Unidade: onde se informa a unidade do produto, por ex: MT, KG, UM, PC, etc., e é uma boa prática, buscar as informações em uma tabela onde são cadastradas as unidades, pois isso dá liberdade ao cliente de incluir novas unidades que não as tradicionais como as citadas acima.
· Aplicação: onde se informa onde aquele produto se aplica, por exemplo, uma determinada peça se aplica ao motor de um veículo, ou um determinado tipo de aviamento, que se aplica ao acabamento de uma roupa.
· Código de barras: onde se cadastra o código de barras do produto, o que facilita a identificação do mesmo, e reduz a possibilidade de se cadastrar repetidamente um determinado produto. O padrão mais comum de códigos de barras, é o EAN13, mas existem outros padrões que eventualmente são utilizados.
· Número original: onde se informa o número de fabrica do produto, mais utilizado no ramo de autopeças, normalmente se informa o número do produto de marca, por ex: O amortecedor XXXX do fornecedor YYYY, equivale ao original Monroe de número 01053722.
· Número do fabricante: Onde se informa o número do fabricante do produto, por ex: O amortecedor XXXX do fornecedor YYYY, equivale ao original Monroe de número 01053722 e o seu número no fornecedor YYYY é ZKY274421.
· Locação: onde se informa a localização física do produto no estoque.
· Peso bruto: onde se informa o peso bruto (com embalagem inclusa) do produto.
· Pelo líquido: onde se informa o peso líquido (sem embalagem) do produto.
· Garantia: onde se informa a garantia de venda do produto, que pode ser expressa em meses, dias, anos, ou alguma outra unidade de tempo que se prefira.
· Margem de lucro: onde se informa a margem de lucro, para efeito de cálculo automático do preço de venda quando da entrada de produtos no estoque.
· Percentual de desconto: onde se informa o percentual máximo de desconto permitido para aquele produto.
Além das características citadas, existem algumas voltadas à identificação do produto, que estão mais presentes em produtos ligados à moda, que são:
· Cor: onde se informa a cor do produto.
· Número: onde se informa o número, ou medida do produto.
· Modelo: onde se informa o modelo do produto.
· Tipo: onde se informa o tipo de produto. Este informação, se aplica a também a produtos que não estejam ligados à moda, e pode ter um uso gerencial.
Existem ainda outras informações adicionais, que podem ser utilizadas em um cadastro genérico de produtos, mas estas são as mais usuais.
Observe que não foram citados os campos comuns utilizados no cadastro de produtos, pois é destes que partimos para os demais, e também não foram citados campos destinados ao controle fiscal, por se tratar de um tema bastante complexo, para o qual caberiam vários artigos.
Estarei postando amanhã, sobre cadastro de produtos compostos.