CE PLUS - Nota 001485

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Recebimento

Data/Hora da Publicação: 01/06/2006 00:00:00

Data/Hora Última Alteração: 20/06/2011 12:32:58

Descrição da Nota: RECEBIMENTO RECOF

Sintoma

Ao acessar o recebimento baseado na nota fiscal específica do RECOF o sistema dá um erro, avisando

que a DI não existe.

 

 

Solução

Ajustado para quando o regime for de RECOF buscar dados da DA ao fazer o Recebimento.

 

Versões Tratadas

6.0

Informações Complementares

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

Nota Número 01485 Data: 01/06/2006 Hora: 09:37:09

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

 

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

Nota Número              : 01485

Categoria                : Melhoria

Prioridade               : Alta

Versão PW.CE             : 6.0

Pacote                   : 00023

Agrupamento              : 00116

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

RECEBIMENTO RECOF

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

Palavras Chave:

RECEBIMENTO - RECOF - NF RECOF

 

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

Objetos da nota:

DYNP /PWS/SAPMZYCI017                        0001

REPS /PWS/MZYCI001F03

REPS /PWS/MZYCI017F01

REPS /PWS/MZYCI017I01

REPS /PWS/MZYCI017O01

REPS /PWS/MZYCI017TOP

REPS /PWS/MZYCI017X01

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCI017                        0001

 

*O seguinte campo foi eliminado da tela de seleção da NF

 

Nome

   Ctg.      Linha   Coluna  CmprDf  CmVis   Altura  Format Dict  Modif At.Des.Só At

   Gr1 Gr2 Gr3 Gr4  SPA GPA ID parâm             Cód.F                TCmp   TpoLoopExbLoop

   Outros atributos

 

   /PWS/ZYCIE085-NRSEQDI

      I/O        2       24      10      10       1     CHAR   X           Ent Off

                            /PWS/ZYCIP085

Nome

   Ctg.      Linha   Coluna  CmprDf  CmVis   Altura  Format Dict  Modif At.Des.Só At

   Gr1 Gr2 Gr3 Gr4  SPA GPA ID parâm             Cód.F                TCmp   TpoLoopExbLoop

   Outros atributos

 

*O seguinte campo foi inserido na tela de seleção da NF

 

   V_NRSEQDI

      I/O        2       24      10      10       1     CHAR               Ent Off

 

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

Modificações efetuadas em REPS /PWS/MZYCI001F03

 

...

    IF NOT itab_da[] IS INITIAL.

      SELECT * FROM /pws/zycit003 INTO TABLE itab_zycit003_saldo

         FOR ALL ENTRIES IN itab_da

         WHERE ebeln EQ itab_da-ebeln

         AND   ebelp EQ itab_da-ebelp.

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

      if sy-subrc eq 0.

        SELECT nrseq regime FROM /pws/zycit001

           INTO TABLE itab_zycit001_saldo

           FOR ALL ENTRIES IN itab_zycit003_saldo

           WHERE nrseq eq itab_zycit003_saldo-nrseq

           and   regime eq '04'  .

      endif.

      loop at itab_zycit001_saldo.

         delete itab_zycit003_saldo

            where nrseq eq itab_zycit001_saldo-nrseq.

      endloop.

* << Fim da inclusão

      CLEAR v_qtdutil_da.

      LOOP AT itab_da.

        v_index = sy-tabix.

        LOOP AT itab_zycit003_saldo WHERE ebeln EQ itab_da-ebeln

                                    AND   ebelp EQ itab_da-ebelp.

          v_qtdutil_da = v_qtdutil_da + itab_zycit003_saldo-qtd_iten .

        ENDLOOP.

        itab_da-qtd_lote = itab_da-qtd_lote - v_qtdutil_da.

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

        IF itab_da-qtd_lote EQ 0.

* << Fim da exclusão

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

        IF itab_da-qtd_lote le 0.

* << Fim da inclusão

          DELETE itab_da.

        ENDIF.

        CLEAR v_qtdutil_da.

        MODIFY itab_da INDEX v_index.

      ENDLOOP.

...

 

...

              'D'                    TO itab_zycit036_aux-codmod,

              sy-uname               TO itab_zycit036_aux-usernamec,

              sy-datum               TO itab_zycit036_aux-dtuserc,

              sy-uzeit               TO itab_zycit036_aux-hruserc,

              /pws/zycbt007-waersb   TO itab_zycit036_aux-waers_real,

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

              /pws/zycbt007-waersb   TO itab_zycit036_aux-waers_mov,

* << Fim da inclusão

              itab_zycit461-nradto   TO itab_zycit036_aux-nrseqori  .

        READ TABLE itab_zycit443 WITH KEY

                  ebeln = itab_zycit003-ebeln

                  ebelp = itab_zycit003-ebelp.

        IF sy-subrc EQ 0.

          IF NOT itab_zycit443-qtd_da IS INITIAL.

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

            itab_zycit036_aux-vlreal = ( itab_zycit003-qtd_iten /

* << Fim da exclusão

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

              itab_zycit036_aux-vlmov = itab_zycit036_aux-vlreal =

              ( itab_zycit003-qtd_iten /

* << Fim da inclusão

              ( itab_zycit443-qtd_da - v_qtdutil_da ) )   *

              itab_zycit461-vldp.

          ENDIF.

          IF NOT itab_zycit036_aux-vlreal LT 0.

            APPEND itab_zycit036_aux.

...

 

...

        READ TABLE itab_zycit443 WITH KEY

                  ebeln = itab_zycit003-ebeln

                  ebelp = itab_zycit003-ebelp.

        IF sy-subrc EQ 0.

          IF NOT itab_zycit443-qtd_da IS INITIAL.

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

            itab_zycit036_aux-vlreal = ( itab_zycit003-qtd_iten /

* << Fim da exclusão

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

              itab_zycit036_aux-vlmov = itab_zycit036_aux-vlreal =

            ( itab_zycit003-qtd_iten /

* << Fim da inclusão

              ( itab_zycit443-qtd_da - v_qtdutil_da ) )   *

              itab_zycit466-vldp.

          ENDIF.

          IF NOT itab_zycit036_aux-vlreal LT 0.

            APPEND itab_zycit036_aux.

...

 

...

 

FORM call_rec.

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

  SELECT SINGLE * FROM /pws/zycit455

    WHERE nrseq EQ /pws/zycie001-nrseq.

* << Fim da exclusão

  SELECT SINGLE nrseqda FROM /pws/zycit443

         INTO v_nrseqdi

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

         WHERE nrseqda = /pws/zycit455-nrseqda.

* << Fim da exclusão

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

         WHERE nrseq = /pws/zycie001-nrseq.

* << Fim da inclusão

  SELECT SINGLE * FROM /pws/zycit442

      WHERE nrseqda = v_nrseqdi.

  IF sy-subrc = 0.

    IF sy-tcode EQ '/PWS/ZYCI001_C'.

      SET PARAMETER ID '/PWS/ZYCIP085' FIELD /pws/zycit442-nrseqda.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI017F01

 

FORM seleciona_itens_nf.

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

  if v_nrseqdi+7(3) eq 'P06'.

       MOVE v_nrseqdi TO /pws/zycie043-nrseq.

       move v_nrseqdi to /pws/zycie442-nrseqda.

       MOVE /pws/zycie085-nrdi TO /pws/zycie043-nrdi.

  else.

       move v_nrseqdi to /pws/zycie085-nrseqdi.

* << Fim da inclusão

  MOVE /pws/zycie085-nrseqdi TO /pws/zycie043-nrseq.

  MOVE /pws/zycie085-nrdi TO /pws/zycie043-nrdi.

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

  endif.

* << Fim da inclusão

  WRITE /pws/zycie043-nrseq TO /pws/zycie043-nrseq RIGHT-JUSTIFIED.

  OVERLAY /pws/zycie043-nrseq WITH '0000000000'.

  DATA: v_nolin TYPE i VALUE IS INITIAL.

  FREE:   itab_nf, itab_nfnum , itab_series, itab_subser.

  IF NOT /pws/zycie043-nfnum IS INITIAL.

...

 

...

    itab_subser-low  = /pws/zycie043-subser.

    itab_subser-high = /pws/zycie043a-subser.

    APPEND itab_subser.

  ENDIF.

  FREE itab_nfg.

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

   if v_nrseqdi+7(3) eq 'P06'.

    IF NOT /pws/zycie442-nrdi IS INITIAL.

      SELECT * FROM /pws/zycit442

      INTO TABLE itab_zycit442

      WHERE nrdi EQ /pws/zycie442-nrdi.

      IF sy-subrc = 0.

        SELECT * FROM /pws/zycit041

          INTO CORRESPONDING FIELDS OF TABLE itab_nfg

           FOR ALL ENTRIES IN itab_zycit442

             WHERE nrseq    EQ  /pws/zycie043-nrseq

             AND nrseq     EQ itab_zycit442-nrseqda

             AND nfnum     IN itab_nfnum

             AND series    IN itab_series

             AND subser    IN itab_subser

             AND cancel    EQ ' '.

      ENDIF.

    ELSE.

      SELECT * FROM /pws/zycit041

       INTO CORRESPONDING FIELDS OF TABLE itab_nfg

       WHERE nrseq    EQ  /pws/zycie043-nrseq

         AND nfnum     IN itab_nfnum

         AND series    IN itab_series

         AND subser    IN itab_subser

         AND cancel    EQ ' '.

    ENDIF.

  ELSE.

* << Fim da inclusão

  IF NOT /pws/zycie085-nrdi IS INITIAL.

    SELECT * FROM /pws/zycit085

    INTO TABLE itab_zycit085

    WHERE nrdi EQ /pws/zycie085-nrdi.

    IF sy-subrc = 0.

...

 

...

       AND nfnum     IN itab_nfnum

       AND series    IN itab_series

       AND subser    IN itab_subser

       AND cancel    EQ ' '.

  ENDIF.

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

  ENDIF.

* << Fim da inclusão

  FREE itab_nf.

  LOOP AT itab_nfg.

    SELECT * FROM /pws/zycit043

      APPENDING CORRESPONDING FIELDS OF TABLE itab_nf

      WHERE  nrseq     = itab_nfg-nrseq

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI017O01

 

...

  tc_lista_nf-lines = tc_lista_nf-lines + 10.

ENDMODULE.

MODULE status_0001 OUTPUT.

  SET PF-STATUS '0001'.

  SET TITLEBAR '0001'.

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

  if v_nrseqdi is initial.

     GET PARAMETER ID '/PWS/ZYCIP085' FIELD v_nrseqdi.

  endif.

* << Fim da inclusão

ENDMODULE.

MODULE status_0100 OUTPUT.

  IF sy-tcode = '/PWS/ZYCI017_E'.

    itab_pf_status-fcode = 'ESTOR'.

    APPEND itab_pf_status.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI017TOP

 

...

 

* >> Início da inclusão:

DATA: BEGIN OF itab_zycit442 OCCURS 0.

        INCLUDE STRUCTURE /pws/zycit442.

DATA: END   OF itab_zycit442.

* << Fim da inclusão

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI017X01

 

...

 

* >> Início da inclusão:

 tables:

  /pws/zycie442.

* << Fim da inclusão

DATA: BEGIN OF COMMON PART a.

...

 

...

 

* >> Início da inclusão:

data:  v_nrseqdi like /pws/zycie085-nrseqdi.

* << Fim da inclusão

DATA: END OF COMMON PART.