Você está na página 1de 6

Código da Proposta/Projeto– Cliente:

PO 1400132521 - DFS-e CAJAMAR – SCHNEIDER ELECTRIC


Nro. Referência
PO 1400132521 Página

Elaborado por / em Nome do Arquivo:


Diego Felipe – Funcional Innovative 1 de 6
Antonio Mendes – ABAP Innovative Especificação funcional DFS-e Cajamar
Título do Documento / Descrição
ESPECIFICAÇÃO FUNCIONAL / TÉCNICA – DFS-e CAJAMAR

ESPECIFICAÇÃO FUNCIONAL / TÉCNICA

1. OBJETIVO

Este documento tem como objetivo especificar as customizações da integração SAP vs DF-e do Mastersaf,
do módulo de nota fiscal de serviço do município de Cajamar.

2. CENÁRIO ATUAL – Schneider Electric

Atualmente o portal MASTERSAF DF-e esta instalado na SCHNEIDER, em sua versão 3.40.0, sendo
necessário a customização do módulo de nota fiscal de serviço para emissão no município de Cajamar, após a
mapeamento identificamos a necessidade de customização de algumas informações, tais como:

Layout GEISWEB
TIPO
Qtd OBS CAMPO
CAMPO
STRING 2 Deve conter 'A' ou 'U' e um espaço a direita SERIE NFSE
Preencher com zeros a esquerdas ate completar o
NUMERICO 8 NUM NFSE
numero
NUMERICO 4 Código do serviço interno COD SERVIÇO

3. CENÁRIO PROPOSTO
a) Customização da integração (BADI da NFe) SAP vs DF-e do Mastersaf, para atendimento às
informações descritas abaixo:
TIPO Qt CAMPO CAMPO
OBS
CAMPO d XML SAP
STRING 2 Deve conter 'A' ou 'U' e um espaço a direita SERIE NFSE XMLH-SERIE
NUMERICO 8 Preencher com zeros a esquerdas ate completar o numero NUM NFSE XMLH-NNF
Código da Proposta/Projeto– Cliente:
PO 1400132521 - DFS-e CAJAMAR – SCHNEIDER ELECTRIC
Nro. Referência
PO 1400132521 Página

Elaborado por / em Nome do Arquivo:


Diego Felipe – Funcional Innovative 2 de 6
Antonio Mendes – ABAP Innovative Especificação funcional DFS-e Cajamar
Título do Documento / Descrição
ESPECIFICAÇÃO FUNCIONAL / TÉCNICA – DFS-e CAJAMAR

NUMERICO 4 Código do serviço interno COD SERVIÇO X_CLISTSERV

b) Para adequação da integração SAP vs DF-e, considera-se as regras descritas abaixo:

 Alteração no Método (BADI) IF_EX_CL_NFE_PRINT~FILL_HEADER da classe


ZCL_IM_CL_NFE_PRINT para alterar os campos do cabeçalho da NFSe apenas para filial 0035
(SCHNEIDER ELECTRIC CAJAMAR)

Linhas incluídas a partir da linha 11778:


** Start of change - Neto - 05.08.2016
  FIELD-SYMBOLS: <series>   TYPE any,
                 <fs_ncm>   TYPE any,
                 <fs_wkitem> TYPE STANDARD TABLE,
                 <ls_wkitem_line> TYPE any,
                 <fs_tmiss> TYPE any,
                 <nnf> TYPE any.
  DATA : vli_nnf(9) TYPE c.
  DATA : vli_bukrs  TYPE j_1bnfdoc-bukrs.
  DATA : vli_branch TYPE j_1bnfdoc-branch.
  DATA : vli_serie  TYPE j_1bnfdoc-series.
  DATA : vli_tmiss  TYPE c.

  SELECT
    name
    type
    sign
    opti
    low
    high
  FROM tvarvc
  INTO CORRESPONDING FIELDS OF TABLE y_li_tvarv_sel
  WHERE name LIKE '%CHR18439%' .

  IF sy-subrc = 0.

    LOOP AT y_li_tvarv_sel INTO y_wa_tvarv_sel.
      CASE y_wa_tvarv_sel-name.
        WHEN 'ZSD_BRNFE_CHR18439_COMPANY' .
          vli_bukrs = y_wa_tvarv_sel-low .
        WHEN 'ZSD_BRNFE_CHR18439_BRANCH'.
          vli_branch = y_wa_tvarv_sel-low .
        WHEN 'ZSD_BRNFE_CHR18439_SERIE'.
          vli_serie = y_wa_tvarv_sel-low .
      ENDCASE.
    ENDLOOP.

*   Apenas para SCHNEIDER ELECTRIC CAJAMAR
    IF in_doc-bukrs   = vli_bukrs AND
       in_doc-branch = vli_branch.
*      concatenate out_header-docnum+1 '0' into out_header-docnum.
      ASSIGN ('(SAPLJ_1B_NFE)WK_ITEM[]') TO <fs_wkitem>.
      IF <fs_wkitem> IS ASSIGNED .
Código da Proposta/Projeto– Cliente:
PO 1400132521 - DFS-e CAJAMAR – SCHNEIDER ELECTRIC
Nro. Referência
PO 1400132521 Página

Elaborado por / em Nome do Arquivo:


Diego Felipe – Funcional Innovative 3 de 6
Antonio Mendes – ABAP Innovative Especificação funcional DFS-e Cajamar
Título do Documento / Descrição
ESPECIFICAÇÃO FUNCIONAL / TÉCNICA – DFS-e CAJAMAR

        LOOP AT <fs_wkitem> ASSIGNING <ls_wkitem_line> .
          ASSIGN COMPONENT 'TMISS' OF STRUCTURE <ls_wkitem_line> TO <fs_tmiss> .
          CASE <fs_tmiss> .
            WHEN 'X'.
              vli_tmiss = <fs_tmiss>.
            WHEN OTHERS.
              CLEAR vli_tmiss.
              EXIT.
          ENDCASE.
        ENDLOOP.
      ENDIF.
      IF in_doc-nfesrv = 'X' OR
         vli_tmiss     = 'X'. " Somente para NF de Serviço
*  Serie
        ASSIGN ('(SAPLJ_1B_NFE)XMLH-SERIE') TO <series>.
        IF <series> IS ASSIGNED .
          <series> = vli_serie.
        ENDIF.
*  Codigo Situação Interna = NCM Item (definição Bruno Ferrari )
        CLEAR : y_lwa_extension.
        y_lwa_extension-docnum = in_doc-docnum.
        y_lwa_extension-field = 'SITUACAO_INTERNA'.

        ASSIGN ('(SAPLJ_1B_NFE)XMLI-NCM') TO <fs_ncm>.
        IF <fs_ncm> IS ASSIGNED.
          y_lwa_extension-value = <fs_ncm>.
        ENDIF.
        APPEND y_lwa_extension TO ch_extension2[].
      ENDIF.

*  Numero NOTA move para a esquerda (definição Bruno Ferrari )
      ASSIGN ('(SAPLJ_1B_NFE)XMLH-NNF') TO <nnf>.
      IF <nnf> IS ASSIGNED .
*      concatenate <NNF>+1 '0' into <NNF>.
        vli_nnf = <nnf>.
        SHIFT vli_nnf  LEFT DELETING LEADING '0'.
        CONDENSE vli_nnf.
        UNPACK vli_nnf TO <nnf>.
      ENDIF.
    ENDIF.
  ENDIF.

** End of change - Neto - 05.08.2016
Código da Proposta/Projeto– Cliente:
PO 1400132521 - DFS-e CAJAMAR – SCHNEIDER ELECTRIC
Nro. Referência
PO 1400132521 Página

Elaborado por / em Nome do Arquivo:


Diego Felipe – Funcional Innovative 4 de 6
Antonio Mendes – ABAP Innovative Especificação funcional DFS-e Cajamar
Título do Documento / Descrição
ESPECIFICAÇÃO FUNCIONAL / TÉCNICA – DFS-e CAJAMAR

** Start of change - Antonio Mendes - 05.08.2016


FIELD-SYMBOLS: <series> type any,
<nnf> type any.

if IN_DOC-BUKRS = 'BR01' and


IN_DOC-BRANCH = '0035'. " Apenas para SCHNEIDER ELECTRIC CAJAMAR
* concatenate out_header-docnum+1 '0' into out_header-docnum.
ASSIGN ('(SAPLJ_1B_NFE)XMLH-SERIE') to <series>.
<series> = 'U'.
ASSIGN ('(SAPLJ_1B_NFE)XMLH-NNF') to <NNF>.
concatenate <NNF>+1 '0' into <NNF>.

endif.
** End of change - Antonio Mendes - 05.08.2016

 Alteração no Método (BADI) IF_EX_CL_NFE_PRINT~ FILL_ITEM da classe ZCL_IM_CL_NFE_PRINT


para alterar os campos do item da NFSe apenas para filial 0035 (SCHNEIDER ELECTRIC CAJAMAR).

Linhas incluídas a partir da linha 940:


** Start of change - Antonio Mendes - 08.08.2016
  FIELD-SYMBOLS : <fs_ncm> TYPE any.

  if IN_DOC-BUKRS  = 'BR01' and
   IN_DOC-BRANCH = '0035'. " Apenas para SCHNEIDER ELECTRIC CAJAMAR
*    out_item-X_CLISTSERV = in_lin-nbm.
    out_item-ncm = in_lin-nbm.
    ASSIGN ('(SAPLJ_1B_NFE)XMLI-NCM') to <fs_ncm>.

    IF sy-subrc = 0 AND <fs_ncm> IS ASSIGNED.

      <fs_ncm> = in_lin-nbm.

    ENDIF.

  endif.

** End of change - Antonio Mendes - 08.08.2016
** Start of change - Antonio Mendes - 08.08.2016

if IN_DOC-BUKRS = 'BR01' and


IN_DOC-BRANCH = '0035'. " Apenas para SCHNEIDER ELECTRIC CAJAMAR
Código da Proposta/Projeto– Cliente:
PO 1400132521 - DFS-e CAJAMAR – SCHNEIDER ELECTRIC
Nro. Referência
PO 1400132521 Página

Elaborado por / em Nome do Arquivo:


Diego Felipe – Funcional Innovative 5 de 6
Antonio Mendes – ABAP Innovative Especificação funcional DFS-e Cajamar
Título do Documento / Descrição
ESPECIFICAÇÃO FUNCIONAL / TÉCNICA – DFS-e CAJAMAR

out_item-X_CLISTSERV = in_lin-nbm.
endif.
** End of change - Antonio Mendes - 08.08.2016
Código da Proposta/Projeto– Cliente:
PO 1400132521 - DFS-e CAJAMAR – SCHNEIDER ELECTRIC
Nro. Referência
PO 1400132521 Página

Elaborado por / em Nome do Arquivo:


Diego Felipe – Funcional Innovative 6 de 6
Antonio Mendes – ABAP Innovative Especificação funcional DFS-e Cajamar
Título do Documento / Descrição
ESPECIFICAÇÃO FUNCIONAL / TÉCNICA – DFS-e CAJAMAR

5.TERMO DE ACEITE

A Schneider Electric, aqui representada pelo Sr. Fernando Pureza, concorda com as definições
contidas neste documento a fim de atender plenamente as customizações necessárias para emissão de
notas fiscais de serviço e emissão para o município de Cajamar.
Sendo assim, firmamos o presente documento.

São Paulo, 09 de Agosto de 2016.

Aprovadores:

Fernando Pureza Bruno Ricardo Ferrari


Integration Manager – IPO SAP Bridge - IPO
Schneider Electric. Schneider Electric

Carlos A. Granado Jr. Diego Felipe


Gerente de Projetos Consultor Funcional DF-e
INNOVATIVE INNOVATIVE

Você também pode gostar