Análise
Projeto
Não há projeto vinculado em Totali Projetos Web.
Detalhamento do Projeto
Deve-se descrever cada pacote de trabalho (nós do último nível), utilizando imagens, fluxogramas e outro artefatos necessários. Esta descrição deve ser do negócio e precisa ser entendida por todos os envolvidos no projeto (cliente, qualidade, analistas, programadores, etc).
Gerenciamento
Atividades necessárias para o gerenciamento do projeto.
Análise
Atividades referentes a análise do projeto.
Desenvolvimento
O objetivo dessa implementação é permitir que se digite a nota como veio do fornecedor e se utilize dos campos de impostos diferenciados para corrigir os dados.
Haverá uma mudança de conceito na utilização dos impostos diferenciados.
Os impostos normais atuais passarão a se chamar "Visão do Fornecedor".
E os impostos diferenciados passarão a se chamar "Visão da Empresa".
Ao importar uma NF-e, os campos normais ficarão desabilitados.
E o cliente vai validar/digitar a visão da empresa, que já teve seus dados replicados a partir das informações contidas na nota.
Na digitação normal, o cliente vai digitar a visão do fornecedor.
O sistema vai replicar os dados para a visão da empresa.
O sistema validará na visão do fornecedor somente o essencial para que o Checkout possa devolver as notas para o fornecedor sem erros.
Na visão da empresa, serão feitas todas as validações atuais.
Serão criadas duas novas permissões especiais para flexibilizar o processo.
Uma para permitir que se modifique dados vindos da NF-e.
E outra para permitir gravar nota com inconsistências na visão do fornecedor ou na visão da empresa.
Qualidade
Testes Funcionais
Testes Funcionais que visam verificar se os requisitos do projeto e escopo do produto estão de acordo com as especificações do projeto. Deve validar principalmente as interfaces entre as diferentes atividades.
Tarefas Corretivas
Neste nó serão lançadas pela qualidade tarefas corretivas caso sejam necessárias.
Documentação
Documentação para usuário final e implantadores referente ao produto desenvolvido.
Liberação
Comunicar o a liberação da versão contendo o projeto a todos os envolvidos.
Homologação
Validar junto ao cliente se a customização atende ao especificado.
Especificação Técnica
Configurações Necessárias
Não há nenhuma configuração especial envolvida.
Protótipo de Tela
As alterações na tela de registro de compras estão descritas no Protótipo para Visões Diferenciadas no Registro de Compras.
Mudanças por Módulo
Backoffice
Permissões
- Criação de permissão para modificar dados da visão do fornecedor na importação de NF-e.
- Criação de permissão para gravar compras com inconsistências.
Registro de Compras
As alterações de visuais e de comportamento estão descritas no protótipo.
Nesta parte do artigo, complementou-se o protótipo com algumas orientações técnicas para realização das tarefas.
Os fontes utilizados para o protótipo estão no endereço:
svn://ttpg/totaliprototipos/camical/Diferenças entre Importação de XML de NF-e e Sistema
1. Tratar novos nomes para agrupamento de colunas no grid
Tratar no sistema o fato das colunas já existirem no ini dos clientes.
Ao atualizar a versão o ini não pode ficar bagunçado.
2. Ao importar XML de NF-e
Certificar-se de que o sistema importe os dados do XML sem alterá-los.
Certificar-se de que o sistema continue replicando os dados para visão da empresa.
Desabilitar os campos de impostos na visão do fornecedor.
Criar botão com cadeado na direita do grid para habilitar e desabilitar alteração desses campos, verificando permissão do usuário.
Ao abrir uma nota para edição, o cadeado deve vir fechado.
3. Ao digitar nota de papel
Usuário deve digitar os itens na visão do fornecedor, por isso, tratar para sistema habilitar os campos por padrão, independente de permissão.
Certificar-se de que o sistema continue replicando os dados para visão da empresa.
Ao abrir uma nota para edição, o cadeado deve vir fechado.
4. Rateio e Validações dos impostos do fornecedor
Os impostos da visão do fornecedor podem vir com erros, por isso, é necessário permitir que se grave notas nessas condições.
Deve-se fazer o mínimo de validações para pelo menos garantir que a nota possa ser devolvida pelo Checkout.
Em anexo, estão as ocorrências no fonte do Checkout para as tabelas TT_COM, TV_CMP, TV_COM e TT_ICO.
\\ttadm\Anexos_PRJ\Camical\Diferenças entre Importação de XML de NF-e e Sistema\ocorrências_checkout.txt
5. Rateio e Validações dos impostos da empresa
As validações que são realizadas atualmente nos impostos normais devem ser transferidas para os impostos na visão do fornecedor.
Deve-se tratar para mediante permissão especial poder gravar com inconsistências, já que o processo de impostos diferenciados pode estar sendo usado para contornar alguma situação não prevista pelas nossas validações.
6. Tela para validar visões de impostos
A tela é descrita no protótipo. Aqui estão apenas relacionadas dicas técnicas para sua realização.
Percorrer o grid dos itens de compra e para cada campo que termina com DIF (e tiver um campo equivalente sem DIF) apresentar nessa tela.
Desta forma, caso seja adicionado um novo campo DIF, esteja será replicado automaticamente para essa tela.
Pode se usar a amostra de fonte abaixo para entender as cores e propriedades do grid para dar o efeito colorido.
procedure TfrmResumoTrib.gd_resumoCalcCellColors(Sender: TObject; Field: TField; State: TGridDrawState; Highlight: Boolean; AFont: TFont; ABrush: TBrush); begin if (Field = Field.DataSet.FieldByName('BASICM')) then begin if (Field.Value = Field.DataSet.FieldByName('BASICMDIF').Value) then begin ABrush.Color := clMoneyGreen; AFont.Style := AFont.Style - [fsBold]; end else begin ABrush.Color := clInfoBk; AFont.Style := AFont.Style + [fsBold]; end; end else if (Field = Field.DataSet.FieldByName('BASICMDIF')) then begin if (Field.Value = Field.DataSet.FieldByName('BASICM').Value) then begin ABrush.Color := clMoneyGreen; AFont.Style := AFont.Style - [fsBold]; end else begin ABrush.Color := clInfoBk; AFont.Style := AFont.Style + [fsBold]; end; [...]
Apesar do exemplo acima não utilizar, recomenda-se o uso de RoundWithDec para comparar os valores.
Referenciado por: Protótipo para Visões Diferenciadas no Registro de Compras |