IMPORTAR XML DI - GA
Analista Responsável: Gustavo Henrique Braga Fernandes
- 1. Protótipo de tela para importar DI
- 2. Validação XML DI
- 3. Importação dados XML DI para banco de dados
1. Protótipo de tela para importar DI
Projeto/Sistema: Função importar DI XML - GA |
Versão do Template: 1.1 |
Processo: Protótipo de tela para importar DI |
Versão do Documento: 1.0 |
Responsável(eis): Gustavo Fernandes |
Data: 01/10/2024 |
1. Introdução
Este processo visa exemplificar o processo de importação XML DI no GA.
2. Processo importação XML DI (lógica simples)
I - Fluxograma Exemplo
Processo |
Envolvidos |
Dados de entrada |
Dados de Saída |
Importação XML DI para o Sistema |
XML DI e Sistema |
Identificação das TAG XML |
Importação no banco de dados, campos respectivos as tag XML. |
Processos Relacionados
Nenhuma no momento.
Especificação Funcional
PROC001 IMPORTANDO XML DI:
Este processo tem por objetivo a adição do botão para importar XML DI no GA.
Protótipo de Tela:
I - Seguir mesmo padrão de tela de "Importar XML"
II - Seguir mesmo padrão de tela de "Importar XML"
Regras de Interface:
1. Seguir as mesmas regras já determinadas no GA para importação de XML.
Regras de Negócio:
1. Seguir o mesmo padrão importação XML do GA.
Questões Técnicas:
1. Os valores identificados no XML DI devem ser inserido na tabela referente a NFe e seus itens nos movimentos desta NFe.
©SOFTEN SISTEMAS 2024
2. Validação XML DI
Projeto/Sistema: Função importar DI XML - GA |
Versão do Template: 1.1 |
Processo: Importando dados XML DI no GA |
Versão do Documento: 1.0 |
Responsável(eis): Gustavo Fernandes |
Data: 02/10/2024 |
1. Introdução
Este processo visa exemplificar como deve ser validado os dados do XML DI para o sistema GA.
2. Processo validação dados XML DI
I - Fluxograma Exemplo
Processo |
Envolvidos |
Dados de entrada |
Dados de Saída |
Importando dados XML DI para BD |
XML DI e Sistema |
Verificação das TAG XML (Se é um arquivo válido) |
Retorna se é válido ou não arquivo. |
Arquivo inválido |
XML DI e Sistema |
Validando arquivo |
Retorna mensagem de erro da tela |
Arquivo validado |
XML DI e Sistema |
Validando arquivo |
Alimentar tabelas do BD referente a NFe |
Processos Relacionados
Protótipo de tela para importar DI
Especificação Funcional
PROC002 VERIFICAÇÃO DAS TAG XML:
Este procedimento tem por objetivo demonstrar como será a validação XML DI.
Segundo as regras de validação: Documentação de Referência do Siscomex DI
Protótipo de Tela:
I - Tela XML DI - retorno XML válido
II - Tela XML DI - retorno XML inválido
Regras de Interface:
1. Seguir as mesmas regras já determinadas no GA para importação de XML, contudo, validar se o SCHEMA XML esta válido.
1.2 Se estiver válido, seguir rotina normal de importação XML.
1.3 Se estiver inválido, mostrar na tela a FALHA NO SECHEMA XML, se possível retornar qual TAG esta com erro.
Regras de Negócio:
1. Ao importar o XML DI deverá ser validado se esta no padrão correto, com as informações obrigatório.
ARQUIVO DI.XML (modelo)
1.2 Se estiver válido, seguir rotina normal de importação XML.
1.3 Se estiver inválido, parar importação.
2. Após validar arquivo, alimentar as tabelas do banco de dados de TAG XML para campo respecitvo.
Questões Técnicas:
1. Alimentar os dados referente a NFe temporária, conforme a tela:
1.2 ESPEFICAÇÃO DOS CAMPOS
TAG DO XML | CAMPO DO SISTEMA | VALOR DO CAMPO | OBS |
- | Chave de acesso | NFe35241007587... | Seguir mesmo processo padrão importação XML, gerando a chave de acesso automático! |
- | Número | 24 |
Seguir numeração sequência do sistema, por padrão. (Explicação a baixo) |
- | Valor | 124.917,95 | Cálculos no código para chegar no valor total do item, para calcular e chegar no vl.Total da NFe |
- | Remetente | NF-E EMITIDA EM AMBIENTE... | Seguir padrão do sistema |
<fornecedorNome> | Destinatário | GENUINE AUTOPARTS LTD | Nome fornecedor do XML |
<descricaoMercadoria> | Descrição | 6PK986 - CORREIA POLY V... | Descrição item do XML |
<unidadeMedida> | Unid. | PC | Descrição und do XML |
<quantidade> | Quant. | 5,00 | Quant do XML |
<valorUnitario> | VL.Unitário | 15,34 | Cálculos no código para chegar no vl.unitário, explicação a baixo. |
- | Vl. Total | 76,70 | Cálculos no código para chegar no vl.Total, explicação a baixo. |
1.3 Como chegar no vl.unitário/vl.total do item, exemplo do que é feito no SIEM:
vUni = Div7(lerXml.Value);
A função Div7
é chamada, e ela recebe um valor vindo do XML (lerXml.Value
).
A função Div7
recebe uma string (QtdOrig
), que será convertida para decimal e dividida por 10.000.000:
private decimal Div7(string QtdOrig)
{
decimal QtdNova = (Convert.ToDecimal(QtdOrig) / 10000000);
return QtdNova;
}
O objetivo dessa divisão por 10.000.000 é ajustar o valor bruto vindo do XML para um valor mais preciso e utilizável. (provavelmente o valor está em uma unidade diferente e precisa ser ajustado).
1.4 Cálculo do valor total (vTotal):
- Após calcular o valor unitário ajustado (
vUni
), o código calcula o valor total do produto
vTotal = (Qtd * vUni) + vTotal;
Aqui, ele multiplica a quantidade (Qtd
) pelo valor unitário (vUni
) e soma ao valor total já existente.
-
Condição de BCP:
- Se o valor de
bcP
for igual a zero, ele recalcula o valor debcP
comovUni * Qtd
.
- Se o valor de
-
Adição do produto à lista:
- Por fim, o produto com todos os atributos e cálculos é adicionado à lista
ListProdutos
.
- Por fim, o produto com todos os atributos e cálculos é adicionado à lista
OBS IMPORTANTE: No momento este cálculo para chegar no vl.unitário foi o mais perto que chegamos, ainda estamos analisando o código do SIEM e documentações online
©SOFTEN SISTEMAS 2024
3. Importação dados XML DI para banco de dados
Projeto/Sistema: Função importar DI XML - GA |
Versão do Template: 1.1 |
Processo: Importação dados XML DI para banco de dados |
Versão do Documento: 1.0 |
Responsável(eis): Gustavo Fernandes |
Data: 04/10/2024 |
1. Introdução
Este processo visa exemplificar a importação do XML DI e vinculação com o banco de dados.
2. Processo de importação XML DI para o GA
I - Fluxograma Exemplo
Processo |
Envolvidos |
Dados de entrada |
Dados de Saída |
Importando XML DI |
XML e Sistema |
Verificação das TAG XML e cálculos necessários |
Retorna se foi importado com sucesso ou erro |
Se der algum erro na hora de gerar a NFe |
XML e Sistema |
Verificando TAG XML |
Retorna mensage de erro na tela |
Importado com sucesso! |
XML e Sistema |
Geração da NFe, alimentar BD ref NFe e NFeproduto |
Gera NFe no sistema dando opção de editar/salvar e enviar! |
Processos Relacionados
Protótipo de tela para importar DI
Especificação Funcional
PROC003 Importação NFe:
I - Seguir mesmo padrão da "Importar XML"
OBS:
Não é necessário uma validação do tipo "Erro ao Importar XML", pois, isto é validado antes mesmo de importar, na prévia gerada, conforme o docs - Validação XML DI
Descrição dos Campos:
Seguir o mesmo padrão do GA, ao se importar um XML.
Regras de Interface:
1. Seguir o mesmo padrão do GA, ao se importar um XML.
Questões Técnicas:
1. Seguir o mesmo padrão do GA, ao se importar um XML.
PROC004 Geração NFe:
4.1 Dados da Nota Fiscal:
Tela atual:
I - Exemplo dados gerados NFe
Descrição dos Campos:
TAG XML |
CAMPO SISTEMA |
VALOR DO CAMPO |
OBS |
<fornecedorNome> |
Cliente |
GENUINE AUTOPARTS LTD |
Nome fornecedor do XML |
- |
CFOP padrão |
3102 |
Sistema deve preencher por padrão "3.102" |
- |
Natureza |
COMPRA PARA COMERCIALIZAÇÃO |
Sistema deve preencher por padrão "COMPRA PARA COMERCIALIZAÇÃO" |
- |
Data Emissão |
08/10/2024 |
Seguir padrão do GA |
- |
Data Saída |
08/10/2024 |
Seguir padrão do GA |
- |
Vendedor |
|
Seguir padrão do GA |
- |
Chave de Acesso |
NFe35241007... |
Seguir padrão do GA |
<viaTransportePaisTransportadorCodigo> |
Cód. do País |
607 |
Cód país do XML |
<viaTransportePaisTransportadorNome> |
Nome do País |
PORTUGAL |
Nome país do XML |
- |
UF de Embarque |
|
Este campo não estará ai quando for importação, futuramente será ajustado, pois, só deve ser preenchido em caso de exportação. |
- |
Local de Embarque |
|
Este campo não estará ai quando for importação, futuramente será ajustado, pois, só deve ser preenchido em caso de exportação. |
Regras de Interface:
1. Os campos - UF de Embarque e Local de Embarque deverá ser oculto, quando for importação, iniciando-se com CFOP de digito 3 por exemplo, só devem ser preenchido em caso de NFe exportação.
Regras de Negócio:
1. Seguir o mesmo padrão do GA, ao se importar um XML.
Questões Técnicas:
1. Seguir o mesmo padrão do GA, ao se importar um XML.
4.2 Itens da Nota:
Tela atual:
II - Exemplo dados gerados dos itens da NFe
Descrição dos Campos:
OBS: Apenas descrição em relaçãoque foge do padrão, o restante seguir o padrão do GA.
CAMPO SISTEMA |
VALOR DO CAMPO |
OBS |
CFOP |
3102 |
Por padrão sempre preencher "3102", quando se importa XML DI |
Regras de Interface e Questões Técnicas:
1. Seguir o mesmo padrão do GA, ao se importar um XML.
4.3 Ver/Editar (Produto):
©SOFTEN SISTEMAS 2024