Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.                                                             

  

Informações Gerais

 

 

Especificação

Produto

TOTVS BA

Módulo

Materiais

Segmento Executor

 Manufatura

Projeto1

D_MAN_MAT002

IRM1

PCREQ-273

Requisito1

PCREQ-8124

Subtarefa1

PDRMAN-6282

Chamado2

Release de Entrega Planejada

12.1.9

Réplica

Não há

País

( X ) Brasil  (  ) Argentina  (  ) Mexico  (  ) Chile  (  ) Paraguai  (  ) Equador

(  ) USA  (  ) Colombia   (  ) Outro _____________.

   Legenda: 1 – Inovação 2 – Manutenção (Os demais campos devem ser preenchidos para ambos os processos). 


Objetivo

1. Alterar o extrator do BA "HKM-Recebimento das compras" para considerar
todos
 os documentos lançados no recebimento fiscal mesmo que não tenham relacionamento com pedido de compra. Atualmente o extrator extrai apenas informações de recebimento que tenham vínculo com pedido de compra.
2. Implementar um relatório que permita validar as informações extraídas. A saída do relatório deve ser um
arquivo em
 arquivo em formato de planilha que possa ser aberta com Excel e Libre Office.
Chamado relacionado: TTEOJ4 - Sulbras

 


Definição da Regra de Negócio

 

Situação: Não estão aparecendo no GoodData informações referentes a notas fiscais de entrada sem pedido de compra, estão sendo extraídas somente notas de entrada vinculadas a pedido de compra.

Contexto do Cliente: Estou refazendo minhas consultas do Datasul BI 2.0 para o Gooddata. No caso do recebimento de materiais, não consigo visualizar todos os dados de notas fiscais recebidas no ERP. Não encontrei um cubo que mostrasse todos os documentos lançados no RE1001, somente encontrei os documentos com referências à pedidos de compra (Recebimento de compras).

Solução: Necessário alterar o extrator do BA "HKM-Recebimento das compras" para que o mesmo considere todos os documentos lançados no recebimento fiscal. Para isso pode ser usado como base o extrator já existente do Datasul BI 2.0 (ems0306.p).

 

Não há no ERP atualmente um relatório de itens recebidos onde seja possível a totalização dos valores recebidos (Ex.: planilha). Será implementado um relatório que permita validar as informações extraídas.

Atualizar a documentação do BA referente ao extrator HKM.

 

Rotina

Tipo de Operação

[EMS2_BI_HKM – Extrator Recebimento das compras]

[Alteração]

[EMS2_BI_DATALOADER - Carrega parâmetros padrões dos extratores]

[Alteração]

[RE0523 - Novo relatório de extração de notas de entrada]

[Criação]

[BFP001AB - Parâmetros BA][Envolvido]

 

Protótipo de Tela

Os protótipos estão sendo detalhados no tópico diagrama de ação.

 

Diagrama de ação

 

1. Tela de parâmetros do BA (MBA\BFP001AB)

Adicionar na tela de parâmetros do BA um parâmetro 'ALLDOCS' na configuração do extrator HKM onde será possível parametrizar a extração de todos os documentos.

-Se o parâmetro estiver igual a 'NAO', serão extraídos somente os documentos de compra (com pedido de compra vinculado).

-Se informar 'SIM' serão extraídas informações de quase todos os documentos de entrada (com exceção de alguns tipos de documentos detalhados no tópico 2).

- Alterar o extrator para utilizar a procedure "GetFactParameter" para buscar o valor do parâmetro 'ALLDOCS' e criar duas procedures separadas:

Uma para  a consulta atual da tabela "recebimento" e outra para a consulta completa (tabela docum-est).

Programa que faz a carga de parâmetros: ems_bi_dataloader.p
Adicionar o trecho de código abaixo para inclusão do parâmetro novo:
/* Parametro Extrai todos os documentos - Fato Recebimento das compras */
FIND FIRST HJK
WHERE HJK.HJK_CPARAM = 'ALLDOCS' AND HJK.HJK_CDFATO = 'HKM' NO-ERROR.

IF NOT AVAIL HJK THEN DO:
     CREATE HJK.
     ASSIGN HJK.HJK_FILIAL = ''
     HJK.HJK_CDFATO = 'HKM'
     HJK.HJK_CPARAM = 'ALLDOCS'
     HJK.HJK_DPARAM = 'Extrai todos os documentos'
     HJK.HJK_APARAM = 'Informe SIM para considerar todos os documentos de entrada do recebimento fiscal, ou informe NAO para considerar somente as notas referentes ao recebimento de compras.'
     HJK.HJK_VPARAM = 'NAO'.
END.

 

 

2. Extrator HKM - Recebimento das compras

Alterar o extrator para considerar o novo parâmetro, e caso ALLDOCS = SIM, todos os documentos lançados no recebimento fiscal serão extraídos para o BA, com exceção dos seguintes:

* devolução de cliente
* transferência 
* terceiros: beneficiamento, remessa e retorno

Dica: Pode ser usado como base o extrator já existente do Datasul BI 2.0 (ems0306.p).

Extrator BA da fato HKM Recebimento das Compras:
$/EMS2/Fontes_Doc/Sustentacao/V11/V11/progress/src/mba/ems2_bi_hkm.p

Extrator BI
$/BI/Fontes_Doc/Sustentacao/V11.0/V11.0/progress/bi.extractor/src/ems0306.p

Análise do extrator do BI ems0306.p (parte que consulta as informações na docum-est):
- Realiza a consulta baseando-se na data de atualização. No extrator do BA usar como base a data de transação.
- Implementar condição para que o extrator faça a leitura somente de documentos atualizados (ce-atual = yes).
- Para gerar as informações da docum-est no extrator de recebimento das compras do BA é necessário analisar campo a campo, pois os campos tem nomes bem diferentes no extrator do BI em relação ao extrator do BA.

 

3. Implementar novo relatório para listagem de documentos de entrada item a item

Para possibilitar a validação das informações no BA, deverá ser criado um novo relatório no módulo de recebimento que liste as informações referentes as notas de entrada.

Cada linha do relatório deverá representar um item da nota (item-doc-est).

Código do novo relatório: RE0523. Nome: Listagem de itens recebidos

Este relatório deve ser gerado em formato XML (pode ser aberto em Excel ou Libre office) para permitir a sumarização das informações e criação de tabela dinâmica.

O código fonte base de consulta do relatório estará disponível no diretório do projeto.

 

Criar seleção do relatório por:
Estabelecimento: docum-est.cod-estabel (faixa aberta)
Data Transação: docum-est.dt-trans (Padrão da tela deverá ser a faixa do último mês, se hoje é 15/10/15, a faixa deve ser de 01/09/15 a 31/09/15)
Data Emissão: docum-est.dt-emissao (faixa aberta)
Emitente: docum-est.cod-emitente (faixa aberta)
Série: docum-est.serie-docto (faixa aberta)
Documento: docum-est.nro-docto (faixa aberta)
Nat Operação: docum-est.nat-operacao (faixa aberta)

 

No folder "Parâmetros" implementar a seguinte opção:

-Listar: Usar campo docum-est.ce-atual (Atualizados/Pendentes/Todos)

-Considerar documentos: Devolução / Transferência / Operação com terceiros. Como padrão as três opções devem vir desmarcadas, ou seja, o relatório não irá considerar estes tipos de documento.

Image Removed

No folder "Impressão":

O campo Destino terá somente a opção Planilha.

OBS: Verificar implementação do CE0302 que tem a opção de imprimir em formato XML que pode ser aberto pelo Excel ou Libre Office.

Image Removed

Exibir as seguintes informações nas colunas do relatório XML:

Importante: Nas sequências de item da NF que são recebidos por FIFO será gerado para o BA o primeiro Pedido/Ordem/Parcela daquela sequência de item. Não haverá geração de registros no Stage do BA para cada registro do FIFO. A totalização dos valores e quantidades da sequência de item da NF não será prejudicada. Caso essa informação de qual Pedido/Ordem/Parcela do FIFO seja crucial para o cliente ele deverá utilizar o parâmetro ALLDOCS igual a NAO, dessa forma o extrator irá gerar as informações conforme o FIFO.

 

3. Implementar novo relatório para listagem de documentos de entrada item a item

Para possibilitar a validação das informações no BA, deverá ser criado um novo relatório no módulo de recebimento que liste as informações referentes as notas de entrada.

Cada linha do relatório deverá representar um item da nota (item-doc-est).

Código do novo relatório: RE0523. Nome: Listagem de itens recebidos

Este relatório deve ser gerado em formato XML (poderá ser aberto em Excel ou Libre office).

O código fonte base de consulta do relatório estará disponível no diretório do projeto.

 

Criar seleção do relatório por:
Estabelecimento: docum-est.cod-estabel (faixa aberta)
Data Transação: docum-est.dt-trans (Padrão da tela deverá ser a faixa do último mês, se hoje é 15/10/15, a faixa deve ser de 01/09/15 a 31/09/15)
Data Emissão: docum-est.dt-emissao (faixa aberta)
Emitente: docum-est.cod-emitente (faixa aberta)
Série: docum-est.serie-docto (faixa aberta)
Documento: docum-est.nro-docto (faixa aberta)
Nat Operação: docum-est.nat-operacao (faixa aberta)

 

No folder "Parâmetros" implementar a seguinte opção:

-Listar: Usar campo docum-est.ce-atual (Atualizados/Pendentes/Todos)

-Considerar documentos: Devolução de cliente / Transferência / Operação com terceiros. Como padrão as três opções devem vir desmarcadas, ou seja, o relatório não irá considerar estes tipos de documento.

Image Added


No folder "Impressão":

O campo Destino terá somente a opção Planilha.

OBS: Verificar implementação do CE0302 que tem a opção de imprimir em formato XML.

Image Added


Exibir as seguintes informações nas colunas do relatório XML:

Sequência
Sequência
Campo no Stage do BADescrição ColunaObservação útil para codificação
1hkm_empresEmpresaestabelec.ep-codigo
2hkm_establEstabeldocum-est.cod-estabel
3hkm_
fornec
sernf
Fornecedor
Série Notadocum-est.
cod
serie-
emitente
docto
4
 Nome Abrev Forn
hkm_numnfNr Nota Fiscaldocum-est.nro-docto
emitente.nome-abrev
5hkm_
grpforGrupo Fornecedor
datanfDt Nota Fiscaldocum-est.dt-emissao
emitente.cod-gr-forn
6hkm_
transp
data
Transportadora
Dt Transaçãodocum-est.dt-trans
transporte.cod-transp
7
 Tipo OperaçãoPara NF-e usar lógica para determinar o tipo de operação (include reapi320.i).  Ex: Transferência. Quando for Serviço (docum-est.cod-observa), mostrar "Serviço" e ignorar as regras da reapi320.i. Para ver se é frete, olhar o campo Tipo Compra da natureza de operação (Frete), ignorar também as regras da reapi320.i.
hkm_natoprNat Oper Doctodocum-est.nat-operacao
8hkm_cfopCFOP Doctonatur-oper.cod-cfop
9hkm_fornecFornecedordocum-est.cod-emitente
10 Nome Abrev Fornemitente.nome-abrev
11 Tipo Operação

NF-e: usar mesma lógica para determinar o tipo de operação da include reapi320.i.  Ex: Compra, Transferência e etc.

Serviço: Quando for Serviço (campo: docum-est.cod-observa), exibir "Serviço" e ignorar as regras da reapi320.i.

Frete: olhar o campo "Tipo Compra" da natureza de operação (Frete). Se for frete ignorar as regras da reapi320.i.

12hkm_grpforGrupo Fornemitente.cod-gr-forn
13hkm_transpTransportadoratransporte.cod-transp
14hkm_seqciaSeq Item NFitem-doc-est.sequencia
15hkm_itemItemitem-doc-est.it-codigo
16 Desc Itemitem.desc-item
17hkm_unitemUnid Medida Itemitem.un
18 Nat Oper Itemitem-doc-est.nat-of
19 CFOP Itemnatur-oper.cod-cfop
20hkm_qrecebQtde Recebidaitem-doc-est.quantidade
21hkm_qrecfmQtde Receb Fam Mat(item-doc-est.quantidade * de-ft-conv-mat)
22 Preço Totalitem-doc-est.preco-total[1]
23 Despesaitem-doc-est.despesas[1]
24 Descontoitem-doc-est.desconto[1]
25hkm_vrecebVl Recebidoround((item-doc-est.preco-total[1] + item-doc-est.Despesas[1] - item-doc-est.desconto[1]),2)
26hkm_grpestGrupo Estoqueitem.ge-estoque
27 Desc Grupo Estoquegrup-estoque.descricao
28hkm_fammatFamilia Materialitem.fm-codigo
29 Desc Fam Matfamilia.descricao
30hkm_famcomFamilia Comercialitem.fm-cod-com
31 Desc Fam Comfam-comerc.descricao
32 Origemdocum-est.origem (em branco ""-documento digitado, "I"-EDI ou TOTVS Colaboração, "T"-TMS)
33 FIFO?SIM/NÃO  -  item-doc-est.log-1
34hkm_referReferênciaitem-doc-est.cod-refer
35 Ordem Prod
8hkm_fammatFamilia Materialitem.fm-codigo9 Desc Fam Materialfamilia.descricao10hkm_famcomFamilia Comercialitem.fm-cod-com11 Desc Fan Comercialfam-comerc.descricao12hkm_grpestGrupo Estoqueitem.ge-estoque13 Desc Grupo Estoquegrup-estoque.descricao14hkm_itemItemitem-doc-est.it-codigo15 Desc Itemitem.desc-item16hkm_unitemUnid Medida Itemitem.un17 Origemdocum-est.origem (em branco ""-documento digitado, "I"-EDI ou TOTVS Colaboração, "T"-TMS)18hkm_cmprdrCompradorordem-compra.cod-comprado19 Nome Compradorusuar-mater.nome-usuar (usuar-mater.cod-usuario = ordem-compra.cod-comprado)20hkm_pedidoPedido Comprastring(item-doc-est.num-pedido)21hkm_ordemOrdem Comprastring(item-doc-est.numero-ordem)22hkm_numprgParcela Compraitem-doc-est.parcela23 Ordem Produção
item-doc-est.nr-ord-produ
24
36 
Ordem Investimentoitem-doc-est.num-ord-inv
Ordem Investitem-doc-est.num-ord-inv
37
25hkm_condpgCondição Pagamentoordem-compra.cod-cond-pag26
hkm_plccstPlano C CustoRUN pi_busca_plano_ccusto_empresa IN h_api_ccusto (prgint/utb/utb742za.py)
27
38 Conta Contábilitem-doc-est.ct-codigo
28
39hkm_ccustoCentro Custoitem-doc-est.sc-codigo
29
40hkm_undnegUnidade
de
Negócioitem-doc-est.cod-unid-negoc
30
41hkm_
sernf
pedido
Série Notadocum-est.serie-docto31hkm_numnfNr Nota Fiscal
Pedido Comprastring(item-doc
docum
-est.
nro
num-
docto
pedido)
32
42hkm_
datanfDt Nota Fiscal
ordemOrdem Comprastring(item-doc
docum
-est.
dt
numero-
emissao
ordem)
33
43hkm_
data
numprg
Data Transação
Parcela Compraitem-doc
docum
-est.
dt-trans
parcela
34
44
hkm_natoprNat Oper Doctodocum-est.nat-operacao
 Nr Contratopedido-compr.nr-contrato
45
35
hkm_
cfop
cmprdr
CFOP Docto
Comprador
natur
ordem-
oper
compra.cod-
cfop
comprado
36
46 
Nat Oper Itemitem-doc-est.nat-of
Nome Compradorusuar-mater.nome-usuar (usuar-mater.cod-usuario = ordem-compra.cod-comprado)
47hkm_condpgCond Pagtoordem-compra.cod-cond-pag
48
37 CFOP Itemnatur-oper.cod-cfop38
hkm_dteordEmissão Ordemordem-compra.data-emissao
39
49hkm_dteped
Data Pedido
Dt Ped Compraordem-compra.data-pedido
40
50hkm_dtprev
Data
Dt Prev
Recebimento
Recebprazo-compra.data-entrega
41
51hkm_qdiaanDias Antecipaçãoi-dd-antec
42
52hkm_qdiaatDias Atrasadoi-dd
-atras43hkm_qrecebQtde Recebidaitem-doc-est.quantidade44hkm_qrecfmQtde Recebida Familia(item-doc-est.quantidade * de-ft-conv-mat)
-atras
53
45
hkm_emergPedido
Emergencial
Emerglpedido-compr.emergencial
46
54hkm_sitcmpSituação Compraentry(ordem-compra.situacao, {ininc/i02in274.i 03})
4750
55hkm_natcmpNatureza Compraentry(ordem-compra.natureza, {ininc/i01in274.i 03})
48hkm_referReferênciaitem-doc-est.cod-refer49hkm_seqciaSeq Item NFitem-doc-est.sequencia
56hkm_qrecanQtd Receb
Antecipado
AntecipIF i-ent-antec > 0 THEN 1 ELSE 0
51
57hkm_qrecatQtd Receb em AtrasoIF i-ent-atras > 0 THEN 1 ELSE 0
52
58hkm_qrecdtQtd Receb em Diai-nr-ent-dt
53
59hkm_qrecunQtd Receb Únicoi-entrega-unica
54
60 Cód Trib ICMSUsar mesma lógica do relatório RE0401 (Exibir a descrição: Tributado, Isento, Reduzido, Outras)
55
61 Alíquota ICMSitem-doc-est.aliquota-icm
56
62 Vl ICMSitem-doc-est.valor-icm[1]
57
63 Cód Trib PISUsar mesma lógica do relatório RE0401 (Exibir a descrição: Tributado, Isento, Reduzido, Outras)
58
64 Alíquota PISrecupera-aliquotas in h-cdapi995 (se alíquota = 0, pega alíquota de item-doc-est.val-aliq-pis)
59
65 Vl PISitem.doc-est.valor-pis
60
66 Cód Trib COFINSUsar mesma lógica do relatório RE0401 (Exibir a descrição: Tributado, Isento, Reduzido, Outras)
61
67 Alíquota COFINSrecupera-aliquotas in h-cdapi995 (se alíquota = 0, pega alíquota de item-doc-est.val-aliq-cofins)
62
68 Vl COFINSitem.doc-est.valor-cofins
63
69 Cód Trib IPIUsar mesma lógica do relatório RE0401 (Exibir a descrição: Tributado, Isento, Reduzido, Outras)
64
70 Alíquota IPIitem-doc-est.aliquota-ipi
65
71 Vl IPIitem-doc-est.valor-ipi[1]
66
72 Cód Trib ISSUsar mesma lógica do relatório RE0401 (Exibir a descrição: Tributado, Isento, Reduzido, Outras)
73
67 Alíquota ISSitem-doc-est.aliquota-iss68 Vl ISSitem-doc-est.valor-iss[1]69
 
Preço Total
Alíquota ISSitem-doc-est.
preco-total[1]
aliquota-iss
74
70
 
Despesa
Vl ISSitem-doc-est.
despesas
valor-iss[1]
71
75 
Descontoitem-doc-est.desconto[1]72hkm_vrecebVl Recebidoround((item-doc-est.preco-total[1] +
Narrativa Item
item-doc-est
.Despesas[1] - item-doc-est.desconto[1]),2)73 Narrativa Itemitem-doc-est.narrativa (truncar primeiros 200 caracteres)
.narrativa (truncar primeiros 200 caracteres)

 

Importante: Nas sequências de item da NF que são recebidos por FIFO de ordem de compra será listado o primeiro Pedido/Ordem/Parcela do FIFO daquela sequência de item. A totalização dos valores e quantidades da sequência de item da NF não será prejudicada.

Fora de escopo: Campos específicos referentes ao módulo de Contratos e outras integrações do recebimento estão fora do escopo deste relatório.

 


Dicionário de Dados

Não se aplica.

 

 


Estrutura de Menu


Procedimentos

Procedimento

 re0523

Descrição

Listagem itens recebidos

Módulo

 Recebimento

Programa base

 re0523

Nome Menu

Listagem itens recebidos

Interface

GUI

Registro padrão

Sim

Visualiza Menu

Sim

Release de Liberação

12.1.9

 

 

Programas

Programa

 re0523

Descrição

Listagem itens recebidos

Nome Externo

rep/re0523.r

Nome Menu/Programa

Listagem itens recebidos

Nome Verbalizado[1]

Listagem itens recebidos

Procedimento

re0523 

Template

Relatórios

Tipo[2]

Relatório

Interface

GUI

Categoria[3]

Não se aplica

Executa via RPC

Não

Registro padrão

Sim

Outro Produto

Não

Visualiza Menu

Sim

Query on-line

Não

Log Exec.

Não

Rotina (EMS)

Não se aplica

Sub-Rotina (EMS)

Não se aplica

Localização dentro da Sub Rotina (EMS)

Não se aplica

Compact[4]

Não se aplica

Home[5]

Não se aplica

Posição do Portlet[6]

Não se aplica

Informar os papeis com os quais o programa deve ser vinculado

Não se aplica 

 

Cadastro de Papéis

Não se aplica.


[1] Nome Verbalizado é obrigatório para desenvolvimentos no Datasul 10 em diante.

[2] Tipo é obrigatório para desenvolvimento no Datasul 10 em diante

[3] Categorias são obrigatórias para os programas FLEX.

[4] Obrigatório quando o projeto for FLEX

[5] Obrigatório quando o projeto for FLEX

[6] Obrigatório quando o projeto for FLEX

 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.