CE PLUS - Nota 004428

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Fatura Mercadoria

Data/Hora da Publicação: 15/08/2007 00:00:00

Data/Hora Última Alteração: 22/02/2011 16:09:18

Descrição da Nota: AJUSTE PARA FATURA DE SERVIÇO PARA ATENDER AMERICA LATINA

Sintoma

Ajustes na fatura de serviços para atender america latina.

 

 

Solução

Ajustes na fatura de serviços para atender america latina.

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

ERRO NAS FATURAS DE SERVIÇO, QUANDO GERAMOS A REMESSA PARA O MÓDULO DE C

NOS PROCESSOS DE SERVIÇO, ONDE FAZEMOS O RECEBIMENTO PELA TRANSAÇÃO

ERRO AO ESTORNAR AO ESTORNAR DOCTOS CONTÁBEIS E SISTEMA GRAVA COMO DC

AO CRIAR FATURA PARCIAL O SISTEMA CALCULA O PESO TOTAL DO EMBARQUE

DESENVOLVIMENTO PARA GERAR A MIRO NA FATURA(AMERICA LATINA)

Informações Complementares

----------------------------------------------------------------------------------------------------

Nota Número 04428 Data: 15/08/2007 Hora: 17:01:40

----------------------------------------------------------------------------------------------------

 

----------------------------------------------------------------------------------------------------

Nota Número              : 04428

Categoria                : Melhoria

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00002

Agrupamento              : 00008

----------------------------------------------------------------------------------------------------

Referência às notas relacionadas:

Número - Ordem - Versão - Pacote - Descrição Breve

 

01256  - 00001 - 6.0    - 00023  - ERRO NAS FATURAS DE SERVIÇO, QUANDO GERAMOS A REMESSA PARA O MÓDU

01380  - 00002 - 6.0    - 00023  - NOS PROCESSOS DE SERVIÇO, ONDE FAZEMOS O RECEBIMENTO PELA TRANSAÇ

01876  - 00003 - 6.0    - 00024  - ERRO AO ESTORNAR AO ESTORNAR DOCTOS CONTÁBEIS E SISTEMA GRAVA COM

03029  - 00004 - 6.0    - 00026  - AO CRIAR FATURA PARCIAL O SISTEMA CALCULA O PESO TOTAL DO EMBARQU

04286  - 00005 - 7.0    - 00002  - DESENVOLVIMENTO PARA GERAR A MIRO NA FATURA(AMERICA LATINA)

----------------------------------------------------------------------------------------------------

AJUSTE PARA FATURA DE SERVIÇO PARA ATENDER AMERICA LATINA

----------------------------------------------------------------------------------------------------

Palavras Chave:

FATURA - SERVIÇO - AMERICA - LATINA

 

----------------------------------------------------------------------------------------------------

Objetos da nota:

REPS /PWS/MZYCI003F02

REPS /PWS/MZYCI003I01

REPS /PWS/MZYCI003O01

REPT /PWS/SAPMZYCI003

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCI003F02

 

...

  ENDIF.

  COMMIT WORK.

ENDFORM.

FORM executa_recebimento.

  DATA: v_lfsnr_old   LIKE /pws/zycie006-lfsnr,

        v_lfsnr       LIKE /pws/zycie006-lfsnr,

        v_indice(02)  TYPE n                  ,

        v_erro                                ,

        v_servico(01) TYPE c                  .

  v_recebi = 'X'.

* >> Início da inclusão: FORM EXECUTA_RECEBIMENTO

  IF /pws/zycit477 IS INITIAL.

* << Fim da inclusão

  IF  /pws/zycie006-belnr_mr1m IS INITIAL AND

      /pws/zycie006-mblnr_mb01 IS INITIAL AND

      /pws/zycie006-belnr_f_51 IS INITIAL.

    CLEAR v_lfsnr.

    MOVE /pws/zycie006-lfsnr TO v_lfsnr.

    IF v_lfsnr IS INITIAL.

      CONCATENATE /pws/zycie006-nrseq  '/' '01' INTO v_lfsnr.

      MOVE  v_lfsnr TO /pws/zycie006-lfsnr.

    ELSE.

      v_lfsnr_old = /pws/zycie006-lfsnr.

...

 

...

        PERFORM salvar_dados.

      ELSE.

        PERFORM reverse_document_mr8m.

      ENDIF.

      PERFORM salvar_dados.

    ELSE.

      /pws/zycie006-lfsnr = v_lfsnr_old.

    ENDIF.

  ELSE.

    /pws/zycie006-lfsnr = v_lfsnr_old.

* >> Início da inclusão: FORM EXECUTA_RECEBIMENTO

    ENDIF.

  ELSE.

    IF /pws/zycie006-belnr_mr1m IS INITIAL.

      EXIT.

    ENDIF.

    IF NOT /pws/zycie006-mblnr_mb01 IS INITIAL.

      message i015 with text-174.

      EXIT.

    ENDIF.

    CLEAR v_lfsnr.

    MOVE /pws/zycie006-lfsnr TO v_lfsnr.

    IF v_lfsnr IS INITIAL.

      CONCATENATE /pws/zycie006-nrseq  '/' '01' INTO v_lfsnr.

      MOVE  v_lfsnr TO /pws/zycie006-lfsnr.

    ELSE.

      v_lfsnr_old = /pws/zycie006-lfsnr.

      MOVE v_lfsnr+11(2) TO v_indice.

      ADD 1 TO v_indice.

      CONCATENATE v_lfsnr+0(11) v_indice INTO /pws/zycie006-lfsnr.

    ENDIF.

    CLEAR v_erro.

    PERFORM lock_fornecedor CHANGING v_erro.

    IF NOT v_erro IS INITIAL.

      EXIT.

    ENDIF.

    IF NOT itab_zycit003[] IS INITIAL.

      SELECT ebeln ebelp bprme twrkz ntgew

        FROM ekpo INTO TABLE itab_ekpo

        FOR ALL ENTRIES IN itab_zycit003

        WHERE ebeln EQ itab_zycit003-ebeln AND

              ebelp EQ itab_zycit003-ebelp AND

              wepos EQ 'X'.

      IF sy-subrc EQ '0'.

        PERFORM fill_date_mb01.

        PERFORM unlock_fornecedor.

* << Fim da inclusão

  ENDIF.

* >> Início da inclusão: FORM EXECUTA_RECEBIMENTO

    ENDIF.

  ENDIF.

* << Fim da inclusão

  CLEAR v_recebi.

ENDFORM.

FORM lock_fornecedor CHANGING erro.

  DATA: v_message(40) TYPE c.

  CALL FUNCTION 'ENQUEUE_EFLFB1AS'

...

 

...

    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

         EXPORTING

              input  = v_valor

         IMPORTING

              output = v_belnr2

         EXCEPTIONS

              OTHERS = 1.

  ENDIF.

ENDFORM.

FORM estorna_documentos.

* >> Início da inclusão: FORM ESTORNA_DOCUMENTOS

  IF /pws/zycit477 IS INITIAL.

* << Fim da inclusão

  IF NOT /pws/zycie006-belnr_f_51 IS INITIAL.

    PERFORM: reverse_documento_contab_fbra,

             reverse_cocumento_contab_fb08,

             historico_recebimento USING /pws/zycie006-belnr_f_51

                                         'F-51'.

  ENDIF.

  IF NOT /pws/zycie006-mblnr_mb01 IS INITIAL AND

    /pws/zycie006-belnr_f_51 IS INITIAL.

    PERFORM: reverse_documento_fisico_fbra,

             historico_recebimento USING /pws/zycie006-mblnr_mb01

                                         'MIGO'.

  ENDIF.

  IF NOT /pws/zycie006-belnr_mr1m IS INITIAL AND

    /pws/zycie006-mblnr_mb01 IS INITIAL.

    PERFORM: reverse_documento_fatura_mr8m,

             historico_recebimento USING /pws/zycie006-belnr_mr1m

                                         'MIRO'.

* >> Início da inclusão: FORM ESTORNA_DOCUMENTOS

    ENDIF.

  ELSE.

    IF NOT /pws/zycie006-mblnr_mb01 IS INITIAL

       AND /pws/zycit001-status_e   NE 'E'.

      PERFORM: reverse_documento_fisico_fbra,

               historico_recebimento USING /pws/zycie006-mblnr_mb01

                                           'MIGO'.

    ENDIF.

* << Fim da inclusão

  ENDIF.

  MODIFY /pws/zycit006 FROM /pws/zycie006.

  COMMIT WORK AND WAIT.

ENDFORM.

FORM reverse_documento_contab_fbra.

  DATA: v_belnr_ant LIKE /pws/zycie006-belnr_p.

  PERFORM clear_date_batch.

  MOVE: /pws/zycie006-nrseq      TO v_cpochv_fb08,

        /pws/zycie006-belnr_f_51 TO v_belnr_fb08 ,

        /pws/zycie006-bukrs      TO v_bukrs_fb08 ,

...

 

...

            t_campo         = itab_zycit034

            t_zycit032      = itab_zycit032

       EXCEPTIONS

            campo_em_branco = 1

            OTHERS          = 2.

  IF sy-subrc = 0 OR e_subrc EQ 0.

    PERFORM atualiza_mr8m_fat.

  ENDIF.

ENDFORM.

FORM reverse_documento_fisico_fbra.

* >> Início da exclusão: FORM REVERSE_DOCUMENTO_FISICO_FBRA

  DATA: v_belnr_ant LIKE /pws/zycie006-belnr_p.

* << Fim da exclusão

  DATA: BEGIN OF itab_itens_nf OCCURS 0.

          INCLUDE STRUCTURE /pws/zycit044.

  DATA: END   OF itab_itens_nf.

  PERFORM clear_date_batch.

  itab_zycie033-tcode  = 'MBST'.

  itab_zycie033-tabela = '/PWS/ZYCIT006'.

  itab_zycie033-cpochv = /pws/zycie006-nrseq.

  itab_zycie033-bukrs  = /pws/zycie006-bukrs.

  itab_zycie033-mblnr  = /pws/zycie006-mblnr_mb01.

  itab_zycie033-gjahr  = /pws/zycie006-dt_mb01+0(4).

...

 

...

          ENDIF.

        ELSE.

          IF NOT v_val_plan_tot IS INITIAL.

          itab_zycit003-ntgew = /pws/zycie006-ntgew /  v_val_plan_tot *

                          ( itab_zycit003-netpr * itab_zycit003-toinv ).

          ENDIF.

          v_tot_ntgew = v_tot_ntgew + itab_zycit003-ntgew.

        ENDIF.

        MODIFY itab_zycit003.

      ENDLOOP.

* >> Início da exclusão: FORM CALCULA_PESO

    ELSEIF /pws/zycie006-rateio = 'N' AND NOT /pws/zycie006-ntgew IS

 INITIAL.

* << Fim da exclusão

* >> Início da inclusão: FORM CALCULA_PESO

    ELSEIF /pws/zycie006-rateio = 'N'

        AND NOT /pws/zycie006-ntgew IS INITIAL

        AND sy-tcode NE '/PWS/ZYCI003_L'.

* << Fim da inclusão

      CLEAR v_tot_frete.

      IF NOT itab_zycit003[] IS INITIAL.

        SELECT ebeln ebelp bprme twrkz ntgew

          FROM ekpo INTO TABLE itab_ekpo

          FOR ALL ENTRIES IN itab_zycit003

          WHERE ebeln = itab_zycit003-ebeln AND

                ebelp = itab_zycit003-ebelp.

      ENDIF.

      LOOP AT itab_zycit003.

        IF sy-tcode NE '/PWS/ZYCI003_L'.

...

 

...

                                AND ebelp EQ itab_zycit003-ebelp

                                AND vlseg_fat > 0.

          itab_zycit031-sernp = 'X'.

          EXIT.

        ENDLOOP.

      ENDIF.

      APPEND itab_zycit031.

      itab_zycie033-waers = /pws/zycie006-waers.

      itab_zycie033-rmwwr = itab_zycit031-wrbtr + itab_zycie033-rmwwr.

    ENDLOOP.

* >> Início da exclusão: FORM MIRO_AM_LA

  ELSEIF /pws/zycie006-tpfatura EQ '01'.

* << Fim da exclusão

* >> Início da inclusão: FORM MIRO_AM_LA

  ELSEIF /pws/zycie006-tpfatura EQ '01' OR

         /pws/zycie006-tpfatura EQ '11'.

* << Fim da inclusão

    DESCRIBE TABLE itab_rateio_parc LINES v_line.

    LOOP AT itab_zycit003.

      READ TABLE itab_contas_aux WITH KEY ebeln = itab_zycit003-ebeln

                                          ebelp = itab_zycit003-ebelp.

      READ TABLE itab_ivaped WITH KEY ebeln = itab_zycit003-ebeln

                                      ebelp = itab_zycit003-ebelp.

      PERFORM retorna_decimais USING /pws/zycie006-waers

                            CHANGING itab_contas_aux-wrbtr.

      CLEAR: itab_zycit031.

      itab_zycit031-tcode  = itab_zycie033-tcode  .

...

 

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCI003I01

 

...

        LOOP AT itab_zycit003.

          CLEAR:  itab_zycit003-descfab, itab_zycit003-paisfab,

                  itab_zycit003-lifnrfabr , itab_zycit003-flagfabr.

          MOVE: '3' TO itab_zycit003-fabric.

          MODIFY itab_zycit003.

        ENDLOOP.

      ENDIF.

    WHEN 'CAMB'.

      CALL SCREEN 0112 STARTING AT 5 5 ENDING AT 65 20.

    WHEN 'REC'.

* >> Início da inclusão: MODULE USER_COMMAND_0050

      IF /pws/zycit477 IS INITIAL AND

         /pws/zycie006-belnr_p IS INITIAL.

        PERFORM trata_save.

      ENDIF.

* << Fim da inclusão

      IF NOT /pws/zycie006-belnr_p IS INITIAL.

        PERFORM executa_recebimento.

        CLEAR v_modo_bi.

      ELSE.

        MESSAGE i013 WITH text-133.

      ENDIF.

    WHEN 'ESTOR'.

      PERFORM estorna_documentos.

    WHEN 'VISUA'.

      v_visualiza = 'X'.

...

 

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCI003O01

 

...

    ELSE.

      IF t001-land1 NE 'CL'.

        itab_pf_status-fcode = 'FRETECLP'.

        APPEND itab_pf_status.

      ENDIF.

    ENDIF.

    IF /pws/zycie006-tpfatura EQ '11' AND

      ( NOT /pws/zycie006-belnr_mr1m IS INITIAL OR

        NOT /pws/zycie006-mblnr_mb01 IS INITIAL OR

        NOT /pws/zycie006-belnr_f_51 IS INITIAL ).

* >> Início da inclusão: MODULE STATUS_0100

      IF /pws/zycit477 IS INITIAL.

* << Fim da inclusão

      itab_pf_status-fcode = 'DELE'.

      APPEND itab_pf_status.

* >> Início da inclusão: MODULE STATUS_0100

      ELSE.

        IF  NOT /pws/zycie006-mblnr_mb01 IS INITIAL.

          itab_pf_status-fcode = 'DELE'.

          APPEND itab_pf_status.

        ENDIF.

* << Fim da inclusão

    ENDIF.

* >> Início da inclusão: MODULE STATUS_0100

    ENDIF.

* << Fim da inclusão

    SET PF-STATUS '0100' EXCLUDING itab_pf_status.

  ENDIF.

  IF sy-tcode = '/PWS/ZYCI003_R' OR v_status_s = 0 OR

     ( sy-tcode = '/PWS/ZYCI003_L' AND v_exibe_fat IS INITIAL ).

    itab_pf_status-fcode = 'ELIM'.

    APPEND itab_pf_status.

    itab_pf_status-fcode = 'MARC'.

    APPEND itab_pf_status.

    itab_pf_status-fcode = 'ELIM'.

    APPEND itab_pf_status.

...

 

...

                dynr = sy-dynnr AND

                fldn = '/PWS/ZYCIE006-DATACHEG'.

          IF sy-subrc EQ 0 AND /pws/zyglt334-caract = '-'.

            screen-invisible = '1'.

          ELSEIF sy-subrc EQ 0 AND /pws/zyglt334-caract = '+'.

            screen-input = '1'.

            screen-required = '1'.

          ELSEIF sy-subrc EQ 0 AND /pws/zyglt334-caract = '.'.

            screen-input = '1'.

          ELSE.

* >> Início da inclusão: MODULE SET_SCREEN

            screen-invisible = '1'.

          ENDIF.

          MODIFY SCREEN.

        ENDIF.

        IF screen-name = '/PWS/ZYCIE006-BELNR_F_51'.

          IF NOT /pws/zycit477 IS INITIAL.

            screen-invisible = '1'.

          ENDIF.

          MODIFY SCREEN.

        ENDIF.

        IF screen-name = '/PWS/ZYCIE006-DT_F_51'.

          IF NOT /pws/zycit477 IS INITIAL.

* << Fim da inclusão

            screen-invisible = '1'.

          ENDIF.

          MODIFY SCREEN.

        ENDIF.

      ENDLOOP.

    WHEN '0111'.

      DATA wa_zycie132 LIKE /pws/zycie132.

      DESCRIBE TABLE itab_zycit132 LINES v_line.

      tc_fat_parc-lines = v_line + 7.

      IF v_status_s = 0 OR sy-tcode = '/PWS/ZYCI003_M'.

...

 

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPT /PWS/SAPMZYCI003

 

------------------------------------------------------------------------

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 174

 

Texto: (19 caracteres)

"Fatura já recebida!"

 

Comprimento máximo: 19

 

------------------------------------------------------------------------

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: 174

 

Texto: (19 caracteres)

"Factura ya Recibida"

 

Comprimento máximo: 19