====== Especificação Funcional: Cadastro de Produtos ====== ===== Resumo ===== Esta funcionalidade visa manter o cadastro dos produtos comercializados pelos produtores rurais do município. Através deste módulo é possível incluir novos produtos, excluir um produto cadastrado, editar e visualizar os dados dos produtos cadastrados, entre outras. ===== Descrição ===== O Cadastro de Produtos serve como base principalmente para a emissão de notas fiscais, pois cada item de uma nota fiscal corresponde a um produto. A partir do momento que um produto estiver cadastrado, será possível incluí-lo nas notas fiscais. Para que se possa cadastrar um produto, é necessário que já tenham sido cadastradas as [[softwares:sicopri:requisitos:modulos:cadastros:categorias|categorias definidas pelo usuário]] e as definidas pela SEFAZ. Estas devem conter os valores que estão {{:softwares:sicopri:biblioteca:categorias_sefaz_2010.pdf|nesta lista}}. Ao acessar este módulo, o sistema deve exibir uma lista com os produtos já cadastrados para facilitar as operações de exclusão, edição e visualização dos dados. Esta lista deve exibir os dados mais importantes de cada produto juntamente com os seguintes dados obtidos das notas fiscais cadastradas: * A quantidade total comercializada do produto; * O valor total comercializado; * A quantidade de notas fiscais contendo o produto. A lista também deve permitir a organização e o filtro dos dados por qualquer campo que esteja visível, além de permitir que o usuário oculte/exiba campos, imprima e exporte o conteúdo da lista. ==== Unidades de Medida ==== Como os produtos poder ser comercializados em diferentes unidades de medida, é necessário padronizar o cadastro de forma a permitir obter informações precisas sobre a produção sem que seja necessário cadastrar cada produto numa única unidade de medida. O cadastro de notas fiscais e os relatórios relacionados à produção, por exemplo, o [[softwares:sicopri:requisitos:relatorios:rel_producao|Relatório de Produção por Itens]], dependem das unidades de medida estabelecidas para cada produto. Ao incluir um produto em uma nota fiscal, deve ser usada a unidade indicada na nota. Já os relatórios devem exibir sempre as quantidades em uma unidade principal. O sistema deve então ser capaz de converter das unidades secundárias para a principal. * **Unidade de medida principal**: Esta unidade de medida será considerada a unidade padrão do produto. É através dela que o estoque do produto será contabilizado, que os relatórios serão criados e que a quantidade do produto será informada no SINTEGRA. Cada produto deverá ter apenas uma unidade principal; * **Unidades de medida auxiliares**: Demais unidades de medida pelas quais o produto pode ser utilizado. Cada produto pode ter quantas unidades de medida forem necessárias. As unidades de medida devem conter as seguintes informações: * **Tipo**: Cada unidade deve ser definida como principal ou auxiliar, como descrito acima; * **Sigla**: Sigla que identifica a unidade de medida (Ex: SC, KG, UN, ...); * **Descrição**: Descrição da unidade de medida, utilizado para facilitar sua identificação (Ex: Sacas, Quilos, Unidades, ...); * **Fator de conversão**: Fator utilizado para realizar a conversão da unidade que está sendo definida para a unidade principal do produto. Caso a unidade que está sendo definida seja a unidade principal, o fator de conversão será sempre 1. O fator de conversão deve conter, no mínimo, 10 (dez) casas decimais, para que os erros de arredondamento sejam minimizados; * **Método de arredondamento**: O sistema deve permitir a definição de dois tipos diferentes de arredondamento, ao converter das unidades auxiliares para a principal: * //Arredondar//: Quando este método de arredondamento estiver selecionado, os valores decorrentes da conversão serão arredondados para o número de casas decimais do campo em questão, de acordo com as regras gerais de arredondamento; * //Truncar//: Quando este método de arredondamento estiver selecionado, os valores decorrentes da conversão serão truncados de acordo com o número de casas decimais do campo em questão; As unidades são definidas por sigla, ou seja, o sistema não deve permitir que sejam definidas duas unidades com a mesma sigla para cada produto. Após o uso de uma unidade de medida o sistema não deve permitir que seus dados sejam modificados, a fim de impedir que as operações sejam calculadas de maneiras diferentes em diversas situações. === Conversão de unidades de medida === A conversão de unidades se dará sempre de uma unidade auxiliar para a unidade principal do produto. O cálculo do valor será sempre realizado através de uma operação de multiplicação, como definido abaixo: **Nova quantidade (Unidade Principal) = Quantidade atual (Unidade Auxiliar) * Fator de conversão (Unidade Auxiliar)** Para que a operação seja realizada de forma correta, é necessário encontrar um fator de conversão adequado. O método mais fácil de se obter este fator é dividir a unidade principal pela unidade auxiliar. Exemplos: * **De quilos (KG) para sacas (SC) de café**: 60 KG correspondem a 1 SC. Logo, o fator de conversão KG → SC será 1/60, ou 0,0166666666. * **De toneladas (TON) para sacas (SC) de café**: 1 TON corresponde a 16,6666666666 SC. Logo, o fator de conversão TON → SC será 16,6666666666/1, ou 16,6666666666. * **De mililitros (ML) para litros (L)**: 1000 ML corresponde a 1 L. Logo, o fator de conversão ML → L será 1/1000, ou 0,001. ==== Dados do Produto ==== Um produto deve possuir os seguintes campos: |< 100% 19% 60% 7% 7% 7%>| ^ Campo ^ Descrição ^ Tipo ^ Tamanho ^ Obrigatório? ^ |Código | Código do produto | Número | -- | Sim | |Descrição | Descrição do produto | Texto | 80 | Sim | |Unidades de medida | Unidades nas quais o produto pode ser comercializado | -- | -- | Sim | |Categoria | Identificação da categoria definida pelo usuário | Número | -- | Sim | |Categoria de SEFAZ | Identificação da categoria definida pela SEFAZ | Número | -- | Sim | ==== Validação dos dados ==== * Os produtos devem ser diferenciados pela sua descrição. Portanto, não deve ser permitido o cadastro de dois produtos com a mesma descrição, independente da unidade de medida ou das categorias. ===== Configurações e preferências do usuário ===== * **Fechar janela após Inclusão**: Se esta configuração estiver ativa, a tela de cadastro será fechada após uma inclusão com sucesso. ===== Pontos de verificação ===== ==== Na inclusão/alteração de Produtos ==== * O sistema não deve salvar o cadastro sem que todos os campos obrigatórios estejam preenchidos; * O sistema não deve salvar o cadastro se já houver um produto cadastrado com a mesma descrição; * Após a inclusão de um produto, este deverá ser exibido imediatamente na lista de produtos cadastrados; ==== Unidades de medida ==== * O produto deve ter ao menos uma unidade de medida, que é a unidade principal; * Um produto não pode ter mais que uma unidade de medida principal; * Não pode haver duas unidades de medida com a mesma sigla para um mesmo produto; * O fator de conversão de qualquer unidade de medida deve ser um número positivo menor que 100.000; * Não é possível excluir unidades de medidas que já tenham sido usadas em algum item de nota fiscal; ==== Na exclusão de Produtos ==== * O sistema deve solicitar a confirmação da exclusão de um produto; * O sistema não deve permitir a exclusão de um produto caso ele tenha sido incluído em pelo menos uma nota fiscal; * Após a exclusão de um produto, este deverá ser eliminado imediatamente da lista de produtos. ===== Observações ===== Nenhuma informação adicional. ~~DISCUSSION|Sugira mudanças, aponte falhas ou contribua de alguma forma aqui:~~