CE PLUS - Nota 003820

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: LI

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

Data/Hora Última Alteração: 09/03/2010 09:44:39

Descrição da Nota: LI - QUANTIDADE UM ESTATÍSTICA

Sintoma

 

Não atualiza este campo quando inclui/exclui itens. Deve permitir a entrada de valor pelo usuário.

 

Solução

 

Atualização do campo Quantidade UM Estatística quando incluir item (somar), excluir (subtrair) valor

deste campo. Permitir a entrada de outros valores pelo usuário. Para assumir a somatória dos itens,

deve limpar este campo e dar ENTER.

Versões Tratadas

7.0

Informações Complementares

 

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

Nota Número 03820 Data: 01/06/2007 Hora: 10:41:09

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

 

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

Nota Número              : 03820

Categoria                : Erro de Programa

Prioridade               : Alta

Versão PW.CE             : 7.0

Pacote                   : 00027

Agrupamento              : 00168

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

LI - QUANTIDADE UM ESTATÍSTICA

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

Palavras Chave:

QUANTIDADE; ESTATÍSTICA

 

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

Objetos da nota:

REPS /PWS/MZYCI020F01

REPS /PWS/MZYCI020O01

REPS /PWS/MZYCI020TOP

REPS /PWS/MZYCI020X01

 

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

Modificações efetuadas em REPS /PWS/MZYCI020F01

 

...

        AND ekpo~j_1bnbm IN so_ncm

        AND ekpo~bstyp IN itab_bstyp

        AND ekko~waers IN so_waers

        AND ekko~inco1 IN so_inco1

        AND ekpo~bednr IN so_bednr

        AND ekko~aedat IN so_aedat

        AND ekko~ebeln IN so_ebeln

        AND ekpo~elikz NE 'X'

        AND ekpo~loekz NE 'L'.

  ENDIF.

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

  CLEAR v_novo_item.

  LOOP AT itab_itens.

    IF NOT it_zycit079[] IS INITIAL.

      CLEAR it_zycit079.

      READ TABLE it_zycit079 WITH KEY ebeln = itab_itens-ebeln

                                      ebelp = itab_itens-ebelp.

      IF NOT sy-subrc IS INITIAL.

        v_novo_item = 'X'.

      ENDIF.

    ENDIF.

  ENDLOOP.

* << Fim da inclusão

  IF NOT itab_itens[] IS INITIAL.

    SELECT *

      FROM /pws/zycit092

      INTO TABLE it_zycit092

      FOR ALL ENTRIES IN itab_itens

      WHERE ebeln EQ itab_itens-ebeln

        AND ebelp EQ itab_itens-ebelp.

    PERFORM carrega_saldo.

    PERFORM lock_pedido.

  ENDIF.

...

 

...

          ENDIF.

        ENDIF.

      ENDIF.

    ENDIF.

    IF NOT it_zycit079-numli IS INITIAL.

      MESSAGE s015 WITH text-383.

      CONTINUE.

    ENDIF.

    MOVE it_zycit079 TO it_zycit079_del.

    APPEND it_zycit079_del.

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

    MOVE it_zycit079 TO it_079_del.

    APPEND it_079_del.

* << Fim da inclusão

    DELETE it_zycit081 WHERE ebeln EQ it_zycit079-ebeln

                         AND ebelp EQ it_zycit079-ebelp.

    DELETE it_anu2 WHERE ebeln EQ it_zycit079-ebeln

                     AND ebelp EQ it_zycit079-ebelp.

    DELETE it_zycit079 INDEX v_idx.

  ENDLOOP.

  IF it_zycit079[] IS INITIAL.

    CLEAR: /pws/zycie078-inco1,

           /pws/zycie078-waers.

  ENDIF.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI020O01

 

...

  IF v_tcode EQ '/PWS/ZYCI020_C'.

    SET TITLEBAR '0100'.

  ELSEIF v_tcode EQ '/PWS/ZYCI020_A'.

    SET TITLEBAR '0100A'.

  ELSEIF v_tcode EQ '/PWS/ZYCI020_E'.

    SET TITLEBAR '0100E'.

  ENDIF.

ENDMODULE.

MODULE load_data OUTPUT.

  DATA: flag_emp TYPE c.

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

  DATA: v_qtdest      LIKE /pws/zycie078-qtdest.

  CHECK sy-ucomm NE 'MKTD'.

  CHECK sy-ucomm NE 'DKTD'.

* << Fim da inclusão

  IF flag_emp IS INITIAL.

    GET PARAMETER ID 'BUK' FIELD v_emp.

    flag_emp = 'X'.

  ENDIF.

  IF v_tcode EQ '/PWS/ZYCI020_C' OR

     v_tcode EQ '/PWS/ZYCI020_P'.

    CLEAR v_linhas.

    GET PARAMETER ID 'BUK' FIELD /pws/zycie078-bukrs.

    IF /pws/zycie078-bukrs IS INITIAL.

      SELECT COUNT( * ) INTO v_linhas FROM /pws/zycbt007.

...

 

...

           AND branch = /pws/zycie078-j_1bbranch.

  IF NOT it_zycit079[] IS INITIAL.

    CLEAR:  it_ekpo.

    IF it_ekpo[] IS INITIAL.

      REFRESH: it_ekpo.

      SELECT * FROM ekpo INTO TABLE it_ekpo

        FOR ALL ENTRIES IN it_zycit079

        WHERE ebeln EQ it_zycit079-ebeln

          AND ebelp EQ it_zycit079-ebelp.

    ENDIF.

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

    CLEAR v_qtdest.

* << Fim da inclusão

    LOOP AT it_zycit079.

      READ TABLE it_ekpo WITH KEY ebeln = it_zycit079-ebeln

                                  ebelp = it_zycit079-ebelp.

      IF sy-subrc NE 0.

        SELECT SINGLE * FROM ekpo INTO it_ekpo

            WHERE ebeln EQ it_zycit079-ebeln

              AND ebelp EQ it_zycit079-ebelp.

        IF sy-subrc EQ 0.

          APPEND it_ekpo.

        ELSE.

          CONTINUE.

        ENDIF.

      ENDIF.

* >> Início da exclusão: MODULE LOAD_DATA

      IF /pws/zycie078-qtdest IS INITIAL.

* << Fim da exclusão

        PERFORM converte_um_ncm USING it_ekpo-matnr

                             CHANGING it_zycit079-meins

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

                                    it_zycit079-qtd_iten.

      v_qtdest = v_qtdest +

* << Fim da inclusão

                                      it_zycit079-qtd_iten.

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

    ENDLOOP.

    IF it_079_del[] IS INITIAL.

      IF /pws/zycie078-qtdest IS INITIAL.

        /pws/zycie078-qtdest = v_qtdest.

      ELSE.

        IF NOT itab_itens[] IS INITIAL.

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

            IF v_novo_item EQ 'X'.

              IF NOT it_zycit079-qtd_iten IS INITIAL.

* << Fim da inclusão

        /pws/zycie078-qtdest = /pws/zycie078-qtdest +

                               it_zycit079-qtd_iten.

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

                DELETE itab_itens WHERE ebeln EQ it_zycit079-ebeln

                                  AND   ebelp EQ it_zycit079-ebelp.

                CLEAR v_novo_item.

* << Fim da inclusão

      ENDIF.

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

            ENDIF.

          ENDIF.

        ENDIF.

      ENDIF.

    ENDIF.

    LOOP AT it_079_del.

      IF /pws/zycie078-qtdest GE it_079_del-qtd_iten.

        /pws/zycie078-qtdest = /pws/zycie078-qtdest -

                               it_079_del-qtd_iten.

      ENDIF.

      DELETE it_079_del WHERE ebeln EQ it_079_del-ebeln

                        AND   ebelp EQ it_079_del-ebelp.

* << Fim da inclusão

    ENDLOOP.

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

  ELSE.

    CLEAR /pws/zycie078-qtdest.

* << Fim da inclusão

  ENDIF.

ENDMODULE.

MODULE load_fornecedor OUTPUT.

  IF /pws/zycie078-fabric EQ '1' OR

     /pws/zycie078-fabric EQ ' '.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI020TOP

 

...

      v_tcode2     LIKE sy-tcode,

      v_classific(5),

      v_flag,

      v_flag2,

      v_flag3,

      v_resp_save  TYPE c,

      v_resp TYPE c,

      v_campo(20),

      v_valor(20),

      v_cont TYPE i,

* >> Início da exclusão:

      i_ebeln(10) TYPE n,

* << Fim da exclusão

* >> Início da inclusão:

      i_ebeln      LIKE ekko-ebeln,

* << Fim da inclusão

      v_resp2 TYPE c,

      v_forn       LIKE /pws/zycie080-lifnr,

      v_forn2      LIKE /pws/zycie080-lifnr,

      v_matnr      LIKE ekpo-matnr,

      v_mfrpn      LIKE mara-mfrpn,

      v_ip         LIKE sy-tabix,

      v_line       TYPE i,

      v_nrcomp(16),

      v_nrdrawback(16),

      v_descrlog(100),

...

 

...

      v_salvo,

      v_salvo_drawback,

      v_verficado,

      v_steuc2 LIKE /pws/zycit078-steuc2,

      v_steuc_temp1(8),

      v_steuc_temp2(8) ,

      v_steuc_temp3(8),

      v_executou,

      v_incentivo,

      v_emp         like /pws/zycbt007-bukrs.

* >> Início da inclusão:

data  v_novo_item.

* << Fim da inclusão

SELECTION-SCREEN BEGIN OF SCREEN 0300.

PARAMETERS:    pa_bukrs LIKE /pws/zycie078-bukrs  DEFAULT

/pws/zycie078-bukrs.

SELECT-OPTIONS:

                so_ncm   FOR /pws/zycie078-steuc1

                  NO-EXTENSION  NO INTERVALS,

                so_waers FOR /pws/zycie078-waers

                  NO-EXTENSION  NO INTERVALS,

                so_inco1 FOR /pws/zycie078-inco1

                  NO-EXTENSION NO INTERVALS,

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI020X01

 

...

      noinitial,

      mark.

DATA: END OF it_itensli_alt.

DATA: BEGIN OF it_zycit079_del OCCURS 0.

        INCLUDE STRUCTURE /pws/zycit079.

DATA: uebto  LIKE ekpo-uebto,

      uebtk  LIKE ekpo-uebtk,

      noinitial,

      mark.

DATA: END OF it_zycit079_del.

* >> Início da inclusão:

DATA: it_079_del LIKE it_zycit079_del OCCURS 0 WITH HEADER LINE.

* << Fim da inclusão

DATA BEGIN OF itab_zycit338 OCCURS 0.

        INCLUDE STRUCTURE /pws/zycit338.

DATA END OF itab_zycit338.

DATA: BEGIN OF it_precritica OCCURS 0,

         campo(60)     TYPE c        ,

         icon(5)       TYPE c        ,

         status(50)    TYPE c        ,

       END OF it_precritica          .

DATA: itab_zycit263 LIKE /pws/zycit263 OCCURS 0 WITH HEADER LINE.

DATA: BEGIN OF itab_steuc OCCURS 0,

...