Skip to Content

Muitas empresas adotam o procedimento de recebimento às cegas (ou contagem/conferência cega), onde o encarregado do recebimento não sabe a quantidade dos itens da nota que ele está recebendo, fazendo com que ele seja obrigado a contar os itens recebidos para efetuar a entrada de mercadoria.

O SAP NF-e permite que seja feito o recebimento às cegas através de seu monitor logístico, desde que seja feita uma simples configuração, conforme mostrado abaixo.

Transação SPRO:

Nota Fiscal Eletronica -> Inbound -> Define Control Parameters for Process Steps

/wp-content/uploads/2014/01/spro_001_358620.png

Para os processos:

  • CONSIGGR
  • FUTDELGR
  • NORMPRCH
  • STOCKTRF
  • SUBCON1A
  • SUBCON2D

No passo GRCONFQU, o parâmetro BLDCOUNT deve ter o valor “2”.

/wp-content/uploads/2014/01/spro_002_358621.png

Com esta configuração, o monitor logístico não irá propor a quantidade baseado no que foi recebido no XML e ainda não exibirá o a quantidade oriunda do XML como referência.

/wp-content/uploads/2014/01/nfe_log_workplace_003_358622.png

Porém na tela inicial do Monitor Logístico o usuário ainda tem acesso às quantidades (a meu ver devido a um furo na lógica) que vem do XML, usando a aba “Atribuições”.

/wp-content/uploads/2014/01/nfe_log_workplace_002_358623.png

Com isso, os usuários do logístico conseguem burlar o recebimento às cegas enquanto a SAP não arruma a #%*&$, certo? Bom, aqui não!

Para isso foi necessário criar um enhancement no Component Controller “/XNFE/WP_DETAILS_NFE”, adicionando um enhancement pre-exit (para ser executado antes do método) para o método “update_short_details”.

No SAP NF-e, transação SE80, selecionar “Web Dynpro Comp. Intf.” e abrir o componente “/XNFE/WP_DETAILS_NFE”, aba “Methods” e selecionar a opção “Enhance”.

/wp-content/uploads/2014/01/se80_008_358624.png

Após criar o Enhancement, atribuir package, request, etc, clique no botão Pre-Exit do método “UPDATE_SHORT_DETAILS”.

/wp-content/uploads/2014/01/se80_007_358625.png

Com o código abaixo eu seto o valor do nó do contexto HIDE_NFE_ASSIGNMENTS para ABAP_TRUE quando a aplicação for igual a /XNFE/NFE_LOG_WORKPLACE, para não atrapalhar o uso pelos usuários do monitor fiscal.

Código do Enhancement:

  DATA: lo_node              type ref to if_wd_context_node,
lo_element          
type ref to if_wd_context_element,
ls_wp_specific      
type wd_this->element_workplace_specific.

* get workplace specific data
lo_node
= wd_context->get_child_node( name = wd_this->wdctx_workplace_specific ).
lo_element
= lo_node->get_element( ).
lo_element
->get_static_attributes( importing static_attributes = ls_wp_specific ).
IF ls_wp_specificapplication_name = ‘/XNFE/NFE_LOG_WORKPLACE’.
ls_wp_specific
hide_nfe_assignments = abap_true.
lo_element
->set_static_attributes( exporting static_attributes = ls_wp_specific ).
ENDIF.

Ative o enhancement e faça novos testes. Agora o monitor logístico não deve exibir a aba “Atribuições”:

/wp-content/uploads/2014/01/nfe_log_workplace_004_358626.png

Monitor fiscal continua intocado:

/wp-content/uploads/2014/01/nfe_fiscal_workplace_001_358627.png

Caso queira implementar esse controle por aplicação e também por usuário, você pode implementar neste enhancement um authority-check ou validação contra tabela Z.

+info:

How to Create Enhancement Implementation in Web Dynpro ABAP

To report this post you need to login first.

3 Comments

You must be Logged on to comment or reply to a post.

Leave a Reply