CE PLUS - Nota 009714

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Recebimento

Data/Hora da Publicação: 22/01/2010 00:00:00

Data/Hora Última Alteração: 23/02/2011 09:52:36

Descrição da Nota: PREEENCHER O NÚMERO DE SÉRIE DOS ITENS AO FAZER A MIGO

Sintoma

Necessário peeencher o número de série dos itens ao fazer a MIGO

 

 

Solução

Criar tela para o preenchimento de série e mapear o batch input da MIGO para preenchimento.

 

Versões Tratadas

8.0


Pré-Requisitos

Produto:

Nota

Descrição

INCLUSÃO DE BOTÃO PARA REPLICAR DEPÓSITO PARA TODOS OS ITENS DA NOTA

AJUSTADO TRATAMENTO PARA ABERTURA OU FECHAMENTO DO CAMPO DEPÓSITO.

Informações Complementares

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

Nota Número 09714 Data: 22/01/2010 Hora: 09:02:53

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

 

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

Nota Número              : 09714

Categoria                : Melhoria

Prioridade               : Alta

Versão PW.CE             : 8.0

Pacote                   : 00002

Agrupamento              : 00005

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

Referência às notas relacionadas:

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

 

07402  - 00001 - 7.0    - 00007  - INCLUSÃO DE BOTÃO PARA REPLICAR DEPÓSITO PARA TODOS OS ITENS DA N

09294  - 00002 - 8.0    - 00001  - AJUSTADO TRATAMENTO PARA ABERTURA OU FECHAMENTO DO CAMPO DEPÓSITO

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

PREEENCHER O NÚMERO DE SÉRIE DOS ITENS AO FAZER A MIGO

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

Palavras Chave:

SÉRIE - MIGO - BATCH INPUT

 

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

Objetos da nota:

CUAD /PWS/SAPMZYCI017

DYNP /PWS/SAPMZYCI017                        0100

DYNP /PWS/SAPMZYCI017                        0112

DYNP /PWS/SAPMZYCI017                        0200

FUNC /PWS/ZYCI_TRANSACAO_MIGO

REPS /PWS/MZYCI017F01

REPS /PWS/MZYCI017F02

REPS /PWS/MZYCI017I01

REPS /PWS/MZYCI017O01

REPS /PWS/MZYCI017TOP

REPS /PWS/MZYCI017X01

REPT /PWS/SAPMZYCI017

TABL /PWS/ZYCIE504

TABL /PWS/ZYCIT504

TABL /PWS/ZYCIT505

 

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

Modificações efetuadas em TABL /PWS/ZYCIE504

 

*Criada estrutura

 

MODIFICAR ESTRUTURA: /PWS/ZYCIE504

 

DESCRIÇÃO BREVE: CI - Séries para Batch Input

COMPONENTES NOVOS

COMPONENTE:     TP. COMP:        TAB.REF.:     CATEG.  CMPR.  CASA DEC.

 

MANDT         MANDT      T000           CLNT 3 0

EBELN         EBELN      EKKO           CHAR 10 0

EBELP         EBELP      EKPO           NUMC 5 0

MATNR         MATNR      MARA           CHAR 18 0

SERIE         GERNR                     CHAR 18 0

 

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

Modificações efetuadas em TABL /PWS/ZYCIT504

 

*Criada tabela

 

MODIFICAR TABELA TRANSPARENTE: /PWS/ZYCIT504

DESCRIÇÃO BREVE: CI - Séries de material

CARACTERÍSTICAS

 

CATEGORIA DA TABELA: Tabela transparente

CLASSE DE ENTREGA: A  Tabela de aplicação (dados mestre e de movimento)

(A) - ATUALIZAÇÃO DE TABELAS PERMITIDA

 

CAMPOS NOVOS

 

CAMPOS:      TP. CAMPO     CH: INI: TAB.VERIF.:    TAB.REF.:     CPO.RE

 

MANDT      MANDT       x   x    T000

NRSEQN     /PWS/ZYCIL001 x   x

NRSEQ     /PWS/ZYCIL001 x   x

NFGLOBAL    /PWS/ZYCIL105 x   x

NFREMESSA   /PWS/ZYCIL107 x   x

EBELN     EBELN CHAR x   x

EBELP     EBELP NUMC x   x

MATNR       MATNR CHAR x   x

SERIE     GERNR CHAR x   x

 

 

 

OPÇÕES TÉCNICAS

 

TIPO DE DADOS: APPL0  Dados mestre, tabelas transparentes

CATEGOR. TAMANHO: 0   Registros dados esperados: 0 Até 7.100

 

(x) - AR. BUFFER NÃO PERMITIDO

 

 

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

Modificações efetuadas em TABL /PWS/ZYCIT505

 

*Criada tabela

 

MODIFICAR TABELA TRANSPARENTE: /PWS/ZYCIT505

DESCRIÇÃO BREVE: CI - Séries para Batch Input

CARACTERÍSTICAS

 

CATEGORIA DA TABELA: Tabela transparente

CLASSE DE ENTREGA: A  Tabela de aplicação (dados mestre e de movimento)

(A) - ATUALIZAÇÃO DE TABELAS PERMITIDA

 

CAMPOS NOVOS

 

CAMPOS:      TP. CAMPO     CH: INI: TAB.VERIF.:    TAB.REF.:     CPO.RE

 

MANDT      MANDT       x   x    T000

EBELN     EBELN CHAR x   x

EBELP     EBELP NUMC x   x

MATNR       MATNR CHAR x   x

SERIE     GERNR CHAR x   x

 

 

 

OPÇÕES TÉCNICAS

 

TIPO DE DADOS: APPL0  Dados mestre, tabelas transparentes

CATEGOR. TAMANHO: 0   Registros dados esperados: 0 Até 7.100

 

(x) - AR. BUFFER NÃO PERMITIDO

 

 

 

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

Modificações efetuadas em CUAD /PWS/SAPMZYCI017 Status-Gui 0100

 

Criar tecla de função

 

Código de função     Tecla F Tecla de função                Código de função     Texto

 

000005               30      Ctrl-F6                        SERIE                Série

 

Texto informativo  Botões CI - Criar NF Global

 

Code de objeto       Code Item Tecla de função                Código de função     Id

 

000005               0001 07   Ctrl-F6                        SERIE                ICON_ANNOTATION

*Inserir o botão na sétima posição da barra de botões.

 

 

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

Modificações efetuadas em CUAD /PWS/SAPMZYCI017 Status-Gui 0200

 

*Criado texto informativo de teclas de função NF Remessa

Texto informativo  Teclas de função CI - Criar NF Remessa

 

     Código de função     Tecla F Tecla de função                Código de função     Texto

 

     000004               30      Ctrl-F6                        SERIE                Série

 

 

Texto informativo  Botões CI - Criar NF Remessa

 

Code de objeto       Code Item Tecla de função                Código de função     Id

 

000005               0001 07   Ctrl-F6                        SERIE                ICON_ANNOTATION

*Inserir o botão na sétima posição da barra de botões.

 

 

 

 

 

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

Modificações efetuadas em CUAD /PWS/SAPMZYCI017 Status-Gui 0112

 

*Criado Status de tela 0112

Status               0112

Categoria de Status  Status diálogo

Texto breve:         Série de Material

 

 

*Botões:

 

*Criado texto informativo de teclas de função Tela Série

Texto informativo  Teclas de função Série de Material

 

Código de função     Tecla F Tecla de função                Código de função     Texto

 

000012               00      ENTER                          ENTER                Avançar

000012               12      F12                            CANCEL               Cancelar

000012               25      Ctrl-F1                        MARCSR               Marcar Todos

000012               26      Ctrl-F2                        DESMSR               Desmarcar Todos

000012               27      Ctrl-F3                        DELSR                Eliminar Série

 

 

*Criado botões em tela Série

 

Texto informativo  Botões Série de Material

 

Code de objeto       Code Item Tecla de função                Código de função     Id

 

000012               0001 01   ENTER                          ENTER                ICON_OKAY

000012               0001 02   F12                            CANCEL               ICON_CANCEL

000012               0001 03   Ctrl-F1                        MARCSR               ICON_SELECT_ALL

000012               0001 04   Ctrl-F2                        DESMSR               ICON_DESELECT_ALL

000012               0001 05   Ctrl-F3                        DELSR                ICON_DELETE_ROW

*Inserir os botões na barra de botões na ordem listada.

 

 

*Criado funções ativas tela Série de material

 

Texto informativo  Funções ativas Série de Material

 

     Status               Código de função

 

     0112                 CANCEL

     0112                 DELSR

     0112                 DESMSR

     0112                 ENTE

     0112                 ENTER

     0112                 MARCSR

 

*Funções com textos estáticos

 

Código de função     Categoria Res. Nome campo p/texto GUI dinâmico

DELSR                               ICON_DELETE_ROW

DESMSR                              ICON_DESELECT_ALL

MARCSR                              ICON_SELECT_ALL

SERIE                               ICON_ANNOTATION

 

 

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

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

 

*Inserir um checkbox e nomeá-lo como ITAB_ZYCIT042-SERIE  com texto MARC-SERNP entre os campos

*/PWS/ZYCIE042-LGORT e /PWS/ZYCIE042-LIFNR

 

INCLUIR CAIXA DE VERIFICAÇÃO "ITAB_ZYCIT042-SERIE" em tbl.contr./tabstr.

Altura                   8

Comprimento Visível      1

Linha                    1

Coluna                   9

Formato                  CHAR

Texto                    _

 

 

 

 

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

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

 

 

*Criada tela 0112

 

 

INCLUIR TELA 0112

Descrição                CI - Número de Série

Tela seguinte            0112

Altura atual (linhas)    18

Largura atual (colunas)  32

 

INCLUIR TEXTO "V_PEDIDO"

Comprimento Visível      6

Linha                    2

Coluna                   4

Formato                  CHAR

Texto                    Pedido

Código função

 

INCLUIR CAMPO TEXTO "V_EBELN"

Comprimento Visível      10

Linha                    2

Coluna                   14

Formato                  CHAR

Texto                    __________

 

INCLUIR TEXTO "V_ITEM"

Comprimento Visível      4

Linha                    3

Coluna                   4

Formato                  CHAR

Texto                    Item

Código função

 

INCLUIR CAMPO TEXTO "V_EBELP"

Comprimento Visível      5

Linha                    3

Coluna                   14

Formato                  NUMC

Texto                    _____

 

INCLUIR TEXTO "V_MATERIAL"

Comprimento Visível      8

Linha                    4

Coluna                   4

Formato                  CHAR

Texto                    Material

Código função

 

INCLUIR CAMPO TEXTO "V_MATNR"

Comprimento Visível      18

Linha                    4

Coluna                   14

Formato                  CHAR

Texto                    __________________

 

INCLUIR CONTROLE DE TABELA "TC_SERIE"

Altura                   12

Comprimento Visível      27

Linha                    6

Coluna                   4

 

INCLUIR TEXTO "ITAB_ZYCIT504-SERIE" em tbl.contr./tabstr.

Altura                   18

Comprimento Visível      5

Linha                    1

Coluna                   1

Formato                  CHAR

Texto                    Série

 

INCLUIR CAIXA DE VERIFICAÇÃO "ITAB_ZYCIT504-MARC" em tbl.contr./tabstr.

Altura                   1

Comprimento Visível      1

Linha                    1

Formato                  CHAR

Texto                    _

 

INCLUIR CAMPO TEXTO "ITAB_ZYCIT504-SERIE" em tbl.contr./tabstr.

Altura                   20

Comprimento Visível      18

Linha                    1

Coluna                   1

Formato                  CHAR

Texto                    __________________

 

INCLUIR OKCODE ""

 

MODIFICAR LÓGICA DE PROCESSAMENTO TELA 0112

* >> Início da inclusão:

PROCESS BEFORE OUTPUT.

  module :  status.

  LOOP AT itab_zycit504 WITH CONTROL tc_serie.

    module: screen_lines.

  ENDLOOP.

PROCESS AFTER INPUT.

  LOOP AT itab_zycit504.

    module carrega_itab.

  ENDLOOP.

module user_command.

* << Fim da inclusão

 

 

*Segue download de tela 0112

 

 

****************************************************************

*   THIS FILE IS GENERATED BY THE SCREEN PAINTER.              *

*   NEVER CHANGE IT MANUALLY, PLEASE !                         *

****************************************************************

%_DYNPRO

/PWS/SAPMZYCI017

0112

46C

             40

%_HEADER

/PWS/SAPMZYCI017                        0112 0112     17 30192 35  0  0 18 32  0G P

20100121151800

%_DESCRIPTION

CI - Número de Série

%_FIELDS

V_PEDIDO

0CHAR  60000003000  2  4   0  0  0     0                             0  0

Pedido

X

V_EBELN

CCHAR 108000803000  2 14   0  0  0     0                             0  0

__________

V_ITEM

0CHAR  40000003000  3  4   0  0  0     0                             0  0

Item

X

V_EBELP

NNUMC  58000803000  3 14   0  0  0     0                             0  0

_____

V_MATERIAL

0CHAR  80000003000  4  4   0  0  0     0                             0  0

Material

X

V_MATNR

CCHAR 188000803000  4 14   0  0  0     0                             0  0

__________________

TC_SERIE

27F6C8000000  6  4E101  1  1    12T                            0  0

ITAB_ZYCIT504-SERIE

0CHAR  50000003080  1  1T101  1  1    18                             0  0

Série

ITAB_ZYCIT504-MARC

CCHAR  18000800020  1  0T101  1  1     1C                            0  0102

_

ITAB_ZYCIT504-SERIE

CCHAR 188000800000  1  1T101  1  1    20                             0  0

__________________

 

CHAR 208010000000255  1O  0  0  0     0                             0  0

____________________

%_FLOWLOGIC

 

PROCESS BEFORE OUTPUT.

  module :  status.

 

 

  LOOP AT itab_zycit504 WITH CONTROL tc_serie.

    module: screen_lines.

  ENDLOOP.

 

PROCESS AFTER INPUT.

 

  LOOP AT itab_zycit504.

    module carrega_itab.

  ENDLOOP.

 

 

module user_command.

 

 

%_PARAMS

 

 

 

 

 

 

 

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

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

 

*Inserir um checkbox e nomeá-lo como ITAB_ZYCIT044-SERIE  com texto V_SERIER entre os campos

*/PWS/ZYCIE044-LGORT e /PWS/ZYCIE044-LIFNR

 

INCLUIR CAIXA DE VERIFICAÇÃO "ITAB_ZYCIT044-SERIE" em tbl.contr./tabstr.

Altura                   7

Comprimento Visível      1

Linha                    1

Coluna                   10

Formato                  CHAR

Texto                    _

 

INCLUIR TEXTO "V_SERIER" em tbl.contr./tabstr.

Altura                   7

Comprimento Visível      5

Linha                    1

Coluna                   10

Formato                  CHAR

Texto                    Série

 

 

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

Modificações efetuadas em FUNC /PWS/ZYCI_TRANSACAO_MIGO

 

*Incluído em tables

 

  T_ZYCIT505 STRUCTURE  /PWS/ZYCIT505 OPTIONAL

 

...

    v_nrmsg              TYPE i VALUE 0,

    v_transacao(4)       TYPE c,

    v_update             TYPE c,

    v_msgid              LIKE t100-arbgb,

    v_msgno              LIKE t100-msgnr,

    v_mode               TYPE c,

    v_nline              TYPE i,

    v_ntela              TYPE i,

    v_nreg               TYPE i,

    v_srows              TYPE i,

* >> Início da exclusão: FUNCTION /PWS/ZYCI_TRANSACAO_MIGO

    v_campo(18),

* << Fim da exclusão

* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSACAO_MIGO

    v_campo(25),

* << Fim da inclusão

    v_indice(3)          TYPE n,

* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSACAO_MIGO

    v_indice2(3)         TYPE n,

* << Fim da inclusão

    v_menge(17)          TYPE c,

    v_data_doc_char(10)  TYPE c,

    v_data_lanc_char(10) TYPE c,

    v_time(8)            TYPE c,

    v_anzgeb(7)         TYPE c,

    v_gebeh(03)          TYPE c,

...

 

...

                         AND cpochv = t_dados-cpochv.

      ADD 1 TO v_nreg.

      ADD 1 TO v_indice.

      PERFORM bdc_screen USING  'SAPLMIGO'   '0001'.

      PERFORM bdc_field USING:  'BDC_CURSOR' 'GODYNPRO-PO_NUMBER',

                                'BDC_OKCODE' '=OK_GO'.

      PERFORM bdc_screen USING  'SAPLMIGO'   '0001'.

      PERFORM bdc_field USING:  'BDC_CURSOR' 'GODYNPRO-DETAIL_ZEILE',

                                'GODYNPRO-DETAIL_ZEILE' v_indice,

                                'BDC_OKCODE' '=OK_GO'.

* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSACAO_MIGO

      LOOP AT t_zycit505 WHERE ebeln EQ t_zycit031-ebeln

                         AND   ebelp EQ t_zycit031-ebelp.

      ENDLOOP.

      IF sy-subrc EQ 0.

        CLEAR v_indice2.

        PERFORM bdc_screen USING 'SAPLMIGO'   '0001'.

        LOOP AT t_zycit505 WHERE ebeln EQ t_zycit031-ebeln

                           AND   ebelp EQ t_zycit031-ebelp.

          ADD 1 TO v_indice2.

          CLEAR v_campo.

          CONCATENATE 'GOSERIAL-SERIALNO(' v_indice2 ')' INTO v_campo.

          PERFORM bdc_field USING:

                v_campo t_zycit505-serie.

        ENDLOOP.

        PERFORM bdc_field USING:  'BDC_OKCODE' '=OK_GO'.

      ENDIF.

* << Fim da inclusão

      IF NOT t_zycit031-answer IS INITIAL.

        CLEAR v_campo.

        PERFORM bdc_screen USING 'SAPLMIGO'   '0001'.

        PERFORM bdc_field USING:

          'BDC_CURSOR'      'QCERT_MIGO-ANSWER',

          'BDC_OKCODE' '=OK_GO'.

        PERFORM bdc_screen USING 'SAPLMIGO'   '0001'.

        PERFORM bdc_field USING:

          'BDC_CURSOR'      'QCERT_MIGO-ANSWER',

          'QCERT_MIGO-ANSWER' t_zycit031-answer,

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI017F01

 

...

 

FORM chamar_nfremessa.

  GET CURSOR FIELD v_campo VALUE v_valor .

  IF v_campo EQ '/PWS/ZYCIE043A-NFREMESSA'.

    READ TABLE itab_nf WITH KEY nfremessa = v_valor.

    MOVE-CORRESPONDING itab_nf TO /pws/zycie043.

    SELECT a~nrseqnf a~nrseq a~embarca a~nfglobal a~nfremessa a~tpnf

           a~ebeln  a~ebelp a~qtd_item a~docnum a~nfnum a~series

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

           a~werks a~j_1bbranch a~lifnr a~lgort

* << Fim da exclusão

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

           a~werks a~j_1bbranch a~lifnr a~lgort a~matnr

* << Fim da inclusão

           b~menge b~saldo    b~meins

      FROM  /pws/zycit044 AS a LEFT OUTER JOIN /pws/zycit045 AS b

        ON   a~nrseqnf   = b~nrseqnf

        AND  a~nrseq     = b~nrseq

        AND  a~nfglobal  = b~nfglobal

        AND  a~ebeln     = b~ebeln

        AND  a~ebelp     = b~ebelp

      INTO CORRESPONDING FIELDS OF TABLE itab_zycit044

        WHERE a~nrseqnf   = /pws/zycie043-nrseq

          AND a~nfglobal  = /pws/zycie043-nfglobal

...

 

...

          AND a~docnum    = /pws/zycie043-docnum.

    IF NOT itab_zycit044[] IS INITIAL.

      PERFORM lock_pedido .

      SELECT ebeln ebelp matnr lgort knttp

             werks sobkz

             FROM ekpo INTO TABLE itab_deposito

             FOR ALL ENTRIES IN itab_zycit044

             WHERE ebeln = itab_zycit044-ebeln

               AND ebelp = itab_zycit044-ebelp.

      PERFORM verif_lote.

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

      SELECT a~ebeln a~ebelp a~matnr b~sernp

       FROM ( ekpo AS a INNER JOIN marc AS b

            ON a~matnr EQ b~matnr AND

               a~werks EQ b~werks )

        INTO TABLE itab_serie

        FOR ALL ENTRIES IN itab_zycit044

        WHERE ebeln = itab_zycit044-ebeln

          AND ebelp = itab_zycit044-ebelp.

      LOOP AT itab_zycit044.

        READ TABLE itab_serie WITH KEY

        ebeln = itab_zycit044-ebeln

        ebelp = itab_zycit044-ebelp.

        IF sy-subrc EQ 0 AND NOT itab_serie-sernp IS INITIAL.

          itab_zycit044-serie = 'X'.

          MODIFY itab_zycit044 TRANSPORTING serie WHERE

            ebeln = itab_zycit044-ebeln AND

            ebelp = itab_zycit044-ebelp.

        ENDIF.

      ENDLOOP.

* << Fim da inclusão

    ENDIF.

    CLEAR: v_tabix.

    CLEAR itab_deposito.

    LOOP AT itab_deposito.

      IF NOT itab_deposito-xlort IS INITIAL.

        CLEAR itab_zycit044.

        READ TABLE itab_zycit044 WITH KEY ebeln = itab_deposito-ebeln

                                          ebelp = itab_deposito-ebelp.

        IF sy-subrc = 0.

          v_tabix = sy-tabix.

...

 

...

          AND nfglobal  = /pws/zycie041-nfglobal

          AND docnum    = /pws/zycie041-docnum .

    IF NOT itab_zycit042[] IS INITIAL.

      SELECT ebeln ebelp matnr lgort knttp

             werks sobkz

             FROM ekpo INTO TABLE itab_deposito

             FOR ALL ENTRIES IN itab_zycit042

             WHERE ebeln = itab_zycit042-ebeln

               AND ebelp = itab_zycit042-ebelp.

      PERFORM verif_lote.

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

      SELECT a~ebeln a~ebelp a~matnr b~sernp

       FROM ( ekpo AS a INNER JOIN marc AS b

            ON a~matnr EQ b~matnr AND

               a~werks EQ b~werks )

        INTO TABLE itab_serie

        FOR ALL ENTRIES IN itab_zycit042

        WHERE ebeln = itab_zycit042-ebeln

          AND ebelp = itab_zycit042-ebelp.

      LOOP AT itab_zycit042.

        READ TABLE itab_serie WITH KEY

        ebeln = itab_zycit042-ebeln

        ebelp = itab_zycit042-ebelp.

        IF sy-subrc EQ 0 AND NOT itab_serie-sernp IS INITIAL.

          itab_zycit042-serie = 'X'.

          MODIFY itab_zycit042 TRANSPORTING serie WHERE

                 ebeln = itab_zycit042-ebeln AND

                 ebelp = itab_zycit042-ebelp.

        ENDIF.

      ENDLOOP.

* << Fim da inclusão

    ENDIF.

    CLEAR: v_tabix.

    CLEAR itab_deposito.

    LOOP AT itab_deposito.

      IF NOT itab_deposito-xlort IS INITIAL.

        CLEAR itab_zycit042.

        READ TABLE itab_zycit042 WITH KEY ebeln = itab_deposito-ebeln

                                          ebelp = itab_deposito-ebelp.

        IF sy-subrc = 0.

          v_tabix = sy-tabix.

...

 

...

 

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

    WHEN 'SERIE' .

      PERFORM trata_serie.

* << Fim da inclusão

  ENDCASE.

  CLEAR okcode.

ENDFORM.

...

 

...

 

FORM clear_date_batch.

  FREE:    itab_zycit034,  itab_zycbt034, itab_zycet004,

           itab_zycie033,  itab_zycbe033, itab_zycee005,

           itab_zycit032,  itab_zycbt032, itab_zycet005,

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

           itab_zycit031,  itab_contas,   itab_zycbt036.

* << Fim da exclusão

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

           itab_zycit031,  itab_contas,   itab_zycbt036,

           itab_zycit505.

* << Fim da inclusão

  CLEAR: itab_zycit031, itab_zycit032, itab_zycie033, itab_zycit034,

         itab_zycbt032, itab_zycbe033, itab_zycbt034, itab_zycet005,

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

         itab_zycee005, itab_zycet004, itab_contas,   itab_zycbt036.

* << Fim da exclusão

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

         itab_zycee005, itab_zycet004, itab_contas,   itab_zycbt036 ,

         itab_zycit505.

* << Fim da inclusão

  CLEAR v_matuse.

...

 

...

    IF NOT itab_itens_nf[] IS INITIAL.

      SELECT * FROM /pws/zycit223 INTO TABLE itab_zycit223

         FOR ALL ENTRIES IN itab_itens_nf

         WHERE nrseq     = itab_itens_nf-nrseq    AND

               nrseqnf   = itab_itens_nf-nrseqnf  AND

               nfglobal  = itab_itens_nf-nfglobal AND

               ebelp     = itab_itens_nf-ebelp    AND

               ebeln     = itab_itens_nf-ebeln    AND

               docnum    = itab_itens_nf-docnum   AND

               nfremessa = space.

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

      SELECT * FROM /pws/zycit504 INTO TABLE itab_zycit504

      FOR ALL ENTRIES IN itab_itens_nf

      WHERE nrseqnf   = itab_itens_nf-nrseqnf

      AND   nrseq     = itab_itens_nf-nrseq

      AND   nfglobal  = itab_itens_nf-nfglobal

      AND   ebeln     = itab_itens_nf-ebeln

      AND   ebelp     = itab_itens_nf-ebelp

      AND   nfremessa = space.

* << Fim da inclusão

    ENDIF.

  ELSE.

    IF NOT itab_itens_nf[] IS INITIAL.

      SELECT * FROM /pws/zycit223 INTO TABLE itab_zycit223

         FOR ALL ENTRIES IN itab_itens_nf

         WHERE nrseq     = itab_itens_nf-nrseq     AND

               nrseqnf   = itab_itens_nf-nrseqnf   AND

               nfglobal  = itab_itens_nf-nfglobal  AND

               ebelp     = itab_itens_nf-ebelp    AND

               ebeln     = itab_itens_nf-ebeln    AND

               docnum    = itab_itens_nf-docnum    AND

               nfremessa = itab_itens_nf-nfremessa.

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

      SELECT * FROM /pws/zycit504 INTO TABLE itab_zycit504

      FOR ALL ENTRIES IN itab_itens_nf

      WHERE nrseqnf   = itab_itens_nf-nrseqnf

      AND   nrseq     = itab_itens_nf-nrseq

      AND   nfglobal  = itab_itens_nf-nfglobal

      AND   ebeln     = itab_itens_nf-ebeln

      AND   ebelp     = itab_itens_nf-ebelp

      AND   nfremessa = itab_itens_nf-nfremessa.

* << Fim da inclusão

    ENDIF.

  ENDIF.

  IF NOT itab_zycit223[] IS INITIAL.

    LOOP AT itab_zycit031.

      READ TABLE itab_zycit223 WITH KEY ebeln = itab_zycit031-ebeln

                                        ebelp = itab_zycit031-ebelp.

      IF sy-subrc = 0.

        DELETE itab_zycit031.

      ENDIF.

      LOOP AT itab_zycit223 WHERE ebeln = itab_zycit031-ebeln AND

...

 

...

      APPEND itab_zycit031.

    ENDLOOP.

  ENDIF.

  v_merc = 'X'.

  SET PARAMETER ID '/PWS/ZYCIP005' FIELD v_merc.

  CALL CUSTOMER-FUNCTION '003'

    EXPORTING

      nrseq    = itab_itens_nf-nrseq

    TABLES

      itab     = itab_zycit031.

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

  LOOP AT itab_zycit504.

    itab_zycit505-matnr = itab_zycit504-matnr.

    itab_zycit505-ebeln = itab_zycit504-ebeln.

    itab_zycit505-ebelp = itab_zycit504-ebelp.

    itab_zycit505-serie = itab_zycit504-serie.

    append itab_zycit505.

  ENDLOOP.

* << Fim da inclusão

...

 

...

  ENDIF.

  IF e_subrc = 0.

    CALL FUNCTION '/PWS/ZYCI_TRANSACAO_MIGO'

         EXPORTING

              v_modo          = v_modo_bi

         TABLES

              t_dados         = itab_zycie033

              t_campo         = itab_zycit034

              t_zycit032      = itab_zycit032

              t_zycit031      = itab_zycit031

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

              t_zycit505      = itab_zycit505

* << Fim da inclusão

         EXCEPTIONS

              campo_em_branco = 1

              OTHERS          = 3.

  ENDIF.

  IF sy-subrc = 0 OR e_subrc = 4.

    PERFORM atualiza_dados_migo.

  ELSE.

    LOOP AT itab_zycit034.

      MESSAGE i016 WITH itab_zycit034-descricao.

    ENDLOOP.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI017F02

 

...

 

* >> Início da inclusão:

FORM trata_serie.

  CLEAR:  v_cont, v_ebeln, v_ebelp, v_matnr.

  IF gc_subscreen-prog EQ '0100'.

    LOOP AT itab_zycit042 WHERE mark = 'X'.

      v_cont = v_cont + 1.

    ENDLOOP.

    IF v_cont NE 1.

      MESSAGE i015 WITH text-266.

      EXIT .

    ELSEIF v_cont EQ 0.

      MESSAGE i015 WITH text-l03.

      EXIT .

    ELSE.

      READ TABLE itab_zycit042 WITH KEY mark = 'X'.

      IF sy-subrc EQ 0 AND NOT itab_zycit042-serie IS INITIAL.

        SELECT * FROM /pws/zycit504 INTO TABLE itab_zycit504

        WHERE nrseqnf   = itab_zycit042-nrseqnf

        AND   nrseq     = itab_zycit042-nrseq

        AND   nfglobal  = itab_zycit042-nfglobal

        AND   ebeln     = itab_zycit042-ebeln

        AND   ebelp     = itab_zycit042-ebelp   .

        MOVE:

              itab_zycit042-ebeln TO v_ebeln,

              itab_zycit042-ebelp TO v_ebelp,

              itab_zycit042-matnr TO v_matnr.

        CALL SCREEN 0112 STARTING AT 10 2.

      ELSEIF itab_zycit042-serie IS INITIAL.

        MESSAGE i015 WITH text-268.

      ENDIF.

    ENDIF.

  ELSE.

    LOOP AT itab_zycit044 WHERE mark = 'X'.

      v_cont = v_cont + 1.

    ENDLOOP.

    IF v_cont NE 1.

      MESSAGE i015 WITH text-266.

      EXIT .

    ELSEIF v_cont EQ 0.

      MESSAGE i015 WITH text-l03.

      EXIT .

    ENDIF.

    READ TABLE itab_zycit044 WITH KEY mark = 'X'.

    IF sy-subrc EQ 0 AND NOT itab_zycit044-serie IS INITIAL.

      SELECT * FROM /pws/zycit504 INTO TABLE itab_zycit504

  WHERE nrseqnf   = itab_zycit044-nrseqnf

  AND   nrseq     = itab_zycit044-nrseq

  AND   nfglobal  = itab_zycit044-nfglobal

  AND   nfremessa = itab_zycit044-nfremessa

  AND   ebeln     = itab_zycit044-ebeln

  AND   ebelp     = itab_zycit044-ebelp   .

      MOVE:

            itab_zycit044-ebeln TO v_ebeln,

            itab_zycit044-ebelp TO v_ebelp,

            itab_zycit044-matnr TO v_matnr.

      CALL SCREEN 0112 STARTING AT 10 2.

    ELSE.

      IF itab_zycit042-serie IS INITIAL.

        MESSAGE i015 WITH text-268.

      ENDIF.

    ENDIF.

  ENDIF.

ENDFORM.

FORM user_command_0112.

  DATA itab_mtserie  LIKE itab_zycit504 OCCURS 0 WITH HEADER LINE.

  DATA v_linhasr LIKE /pws/zycie042-qtd_iten.

  CLEAR v_msg.

  CASE sy-ucomm.

    WHEN 'ENTER'.

      CLEAR itab_mtserie[].

      REFRESH  itab_mtserie[].

      MOVE itab_zycit504[] TO itab_mtserie[].

      LOOP AT itab_zycit504.

        v_tabix = sy-tabix.

        READ TABLE itab_mtserie  WITH KEY

        ebeln = itab_zycit504-ebeln

        ebelp = itab_zycit504-ebelp

        matnr = itab_zycit504-matnr

        serie = itab_zycit504-serie.

        IF sy-subrc EQ 0 AND

        v_tabix NE sy-tabix.

          v_msg = 'X'.

          EXIT.

        ENDIF.

      ENDLOOP.

      IF v_msg = 'X' .

        MESSAGE i015 WITH text-269.

      ELSE.

        DESCRIBE TABLE itab_zycit504 LINES v_linhasr.

        IF v_existe_nfr NE 'S'.

          IF  v_linhasr EQ itab_zycit042-qtd_iten

          AND NOT v_linhasr EQ 0.

            DELETE FROM /pws/zycit504

               WHERE nrseqnf  = itab_zycit042-nrseqnf

               AND   nrseq    = itab_zycit042-nrseq

               AND   nfglobal = itab_zycit042-nfglobal

               AND   ebeln    = itab_zycit042-ebeln

               AND   ebelp    = itab_zycit042-ebelp

               AND   matnr    = itab_zycit042-matnr    .

            MODIFY /pws/zycit504 FROM  TABLE itab_zycit504.

            LEAVE TO SCREEN 0.

          ELSE.

            IF NOT itab_zycit504[] IS INITIAL.

              MESSAGE i015 WITH text-267.

              EXIT.

            ELSE.

              DELETE FROM /pws/zycit504

                WHERE nrseqnf  = itab_zycit042-nrseqnf

                AND   nrseq    = itab_zycit042-nrseq

                AND   nfglobal = itab_zycit042-nfglobal

                AND   ebeln    = itab_zycit042-ebeln

                AND   ebelp    = itab_zycit042-ebelp

                AND   matnr    = itab_zycit042-matnr    .

              LEAVE TO SCREEN 0 .

            ENDIF.

          ENDIF.

        ELSE.

          IF v_linhasr EQ itab_zycit044-qtd_item

          AND NOT v_linhasr EQ 0.

            DELETE FROM /pws/zycit504

              WHERE nrseqnf  = itab_zycit044-nrseqnf

              AND   nrseq    = itab_zycit044-nrseq

              AND   nfglobal = itab_zycit044-nfglobal

              AND   nfremessa = itab_zycit044-nfremessa

              AND   ebeln    = itab_zycit044-ebeln

              AND   ebelp    = itab_zycit044-ebelp

              AND   matnr    = itab_zycit044-matnr    .

            MODIFY /pws/zycit504 FROM TABLE itab_zycit504.

            LEAVE TO SCREEN 0.

          ELSE .

            IF NOT itab_zycit504[] IS INITIAL.

              MESSAGE i015 WITH text-267.

              EXIT.

            ELSE.

              DELETE FROM /pws/zycit504

                WHERE nrseqnf  = itab_zycit044-nrseqnf

                AND   nrseq    = itab_zycit044-nrseq

                AND   nfglobal = itab_zycit044-nfglobal

                AND   nfremessa = itab_zycit044-nfremessa

                AND   ebeln    = itab_zycit044-ebeln

                AND   ebelp     = itab_zycit044-ebelp

                AND   matnr     = itab_zycit044-matnr    .

              LEAVE TO SCREEN 0.

            ENDIF.

          ENDIF.

        ENDIF.

      ENDIF.

    WHEN 'CANCEL'.

      LEAVE TO SCREEN 0.

    WHEN 'DESMSR'.

      LOOP AT itab_zycit504 .

        itab_zycit504-marc = ' '.

        MODIFY itab_zycit504 .

      ENDLOOP.

    WHEN 'MARCSR'.

      LOOP AT itab_zycit504 .

        itab_zycit504-marc = 'X'.

        MODIFY itab_zycit504 .

      ENDLOOP.

    WHEN 'DELSR'.

      LOOP AT itab_zycit504 WHERE marc = 'X'.

      ENDLOOP.

      IF sy-subrc NE 0.

        MESSAGE i015 WITH text-l03.

      ELSE.

        LOOP AT itab_zycit504 WHERE marc = 'X'.

          DELETE itab_zycit504 .

        ENDLOOP.

      ENDIF.

  ENDCASE.

ENDFORM.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCI017I01

 

...

 

* >> Início da inclusão:

MODULE user_command INPUT.

  IF sy-dynnr EQ '0112' .

    PERFORM user_command_0112.

  ENDIF.

ENDMODULE.

MODULE carrega_itab INPUT.

  IF sy-dynnr EQ '0112'.

    IF v_existe_nfr NE 'S'.

      itab_zycit504-mandt     = sy-mandt.

      itab_zycit504-nrseqnf   = itab_zycit042-nrseqnf  .

      itab_zycit504-nrseq     = itab_zycit042-nrseq    .

      itab_zycit504-nfglobal  = itab_zycit042-nfglobal .

      itab_zycit504-ebeln     = itab_zycit042-ebeln    .

      itab_zycit504-ebelp     = itab_zycit042-ebelp    .

      itab_zycit504-matnr     = itab_zycit042-matnr    .

    ELSE.

      itab_zycit504-mandt     = sy-mandt.

      itab_zycit504-nrseqnf   = itab_zycit044-nrseqnf  .

      itab_zycit504-nrseq     = itab_zycit044-nrseq    .

      itab_zycit504-nfglobal  = itab_zycit044-nfglobal .

      itab_zycit504-nfremessa = itab_zycit044-nfremessa.

      itab_zycit504-ebeln     = itab_zycit044-ebeln    .

      itab_zycit504-ebelp     = itab_zycit044-ebelp    .

      itab_zycit504-matnr     = itab_zycit044-matnr    .

    ENDIF.

    MODIFY itab_zycit504 INDEX tc_serie-current_line.

    IF sy-subrc NE 0.

      APPEND itab_zycit504.

    ENDIF.

  ENDIF.

ENDMODULE.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCI017O01

 

...

 

MODULE status_0050 OUTPUT.

  CASE gc_subscreen-prog.

    WHEN '0200'.

      IF sy-tcode EQ '/PWS/ZYCI017_E'

          OR v_tcode = '/PWS/ZYCI017_E'.

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

        READ TABLE itab_zycit044 WITH KEY serie = 'X'.

        IF sy-subrc NE 0.

          it_code-fcode = 'SERIE'. APPEND it_code.

        ENDIF.

* << Fim da inclusão

        it_code-fcode = 'REPL'. APPEND it_code.

        it_code-fcode = 'LOTE'. APPEND it_code.

        it_code-fcode = 'ESTOR'. APPEND it_code.

        it_code-fcode = 'RECEB'. APPEND it_code.

        SET PF-STATUS '0200' EXCLUDING it_code.

        SET TITLEBAR '0200'.

      ELSE.

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

        SET PF-STATUS '0200'.

* << Fim da exclusão

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

        READ TABLE itab_zycit044 WITH KEY serie = 'X'.

        IF sy-subrc NE 0.

          itab_pf_status-fcode = 'SERIE'. APPEND itab_pf_status.

        ENDIF.

        SET PF-STATUS '0200' EXCLUDING itab_pf_status .

* << Fim da inclusão

        SET TITLEBAR '0200_A'.

      ENDIF.

      gv_subscreen_0050 = '0200'.

    WHEN '0100'.

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

      READ TABLE itab_zycit042 WITH KEY serie = 'X'.

      IF sy-subrc NE 0.

        itab_pf_status-fcode = 'SERIE'. APPEND itab_pf_status.

      ENDIF.

* << Fim da inclusão

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

        it_code-fcode = 'REPL'. APPEND it_code.

        itab_pf_status-fcode = 'ESTOR'.

        APPEND itab_pf_status.

        itab_pf_status-fcode = 'RECEB'.

        APPEND itab_pf_status.

        itab_pf_status-fcode = 'LOTE'.

        APPEND itab_pf_status.

        SET PF-STATUS '0100' EXCLUDING itab_pf_status .

      ELSE.

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

        SET PF-STATUS '0100'.

* << Fim da exclusão

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

        SET PF-STATUS '0100' EXCLUDING itab_pf_status .

* << Fim da inclusão

      ENDIF.

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

        SET TITLEBAR '0100'.

      ELSEIF sy-tcode = '/PWS/ZYCI017_A'.

        SET TITLEBAR  '0100A'.

      ELSEIF sy-tcode = '/PWS/ZYCI017_C'.

        SET TITLEBAR  '0100C'.

      ENDIF.

      gv_subscreen_0050 = '0100'.

  ENDCASE.

...

 

...

 

* >> Início da inclusão:

MODULE status OUTPUT.

  SET PF-STATUS '0112'.

ENDMODULE.

MODULE screen_lines OUTPUT.

  CASE sy-dynnr.

    WHEN '0112'.

      IF v_existe_nfr NE 'S' .

        tc_serie-lines  = itab_zycit042-qtd_iten .

      ELSE.

        tc_serie-lines  = itab_zycit044-qtd_item .

      ENDIF.

  ENDCASE.

ENDMODULE.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCI017TOP

 

...

 

CONTROLS:

  tc_lista_nf  TYPE TABLEVIEW USING SCREEN '0010',

  tc_itens_nfg TYPE TABLEVIEW USING SCREEN '0100',

  tc_itens_nfr TYPE TABLEVIEW USING SCREEN '0200',

  tc_estorno   TYPE TABLEVIEW USING SCREEN '0020',

  tc_lote      TYPE TABLEVIEW USING SCREEN '0110',

* >> Início da exclusão:

  tcontrol_log TYPE TABLEVIEW USING SCREEN '0111'.

* << Fim da exclusão

* >> Início da inclusão:

  tcontrol_log TYPE TABLEVIEW USING SCREEN '0111',

  tc_serie     TYPE TABLEVIEW USING SCREEN '0112'.

* << Fim da inclusão

DATA wa_cols  TYPE cxtab_column.

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI017X01

 

...

 

* >> Início da inclusão:

TABLES /pws/zycit504.

* << Fim da inclusão

DATA: BEGIN OF COMMON PART a.

DATA: BEGIN OF itab_zycit042 OCCURS 0.

        INCLUDE STRUCTURE /pws/zycit042.

* >> Início da exclusão:

DATA: mark.

* << Fim da exclusão

* >> Início da inclusão:

DATA: serie.

      mark.

* << Fim da inclusão

DATA: END   OF itab_zycit042.

...

 

...

 

DATA: BEGIN OF itab_zycit044 OCCURS 0.

        INCLUDE STRUCTURE /pws/zycit044.

DATA:

      saldo  LIKE /pws/zycie045-saldo,

* >> Início da inclusão:

      serie,

* << Fim da inclusão

      mark.

 

...

 

...

 

DATA: BEGIN OF itab_nf OCCURS 0.

        INCLUDE STRUCTURE /pws/zycit043.

DATA: remessa,

* >> Início da inclusão:

      serie,

* << Fim da inclusão

      marc,

      lgort LIKE /pws/zycit042-lgort.

DATA: END   OF itab_nf.

 

...

 

...

 

* >> Início da inclusão:

DATA: BEGIN OF itab_zycit504 OCCURS 0.

        INCLUDE STRUCTURE /pws/zycit504.

DATA: marc.

DATA: END OF itab_zycit504.

DATA: BEGIN OF itab_zycit505 OCCURS 0.

        INCLUDE STRUCTURE /pws/zycit505.

DATA: END OF itab_zycit505.

DATA: v_ebeln TYPE /pws/zycit042-ebeln,

      v_ebelp TYPE /pws/zycit042-ebelp,

      v_matnr TYPE /pws/zycit042-matnr.

* << Fim da inclusão

DATA: END OF COMMON PART.

 

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

Modificações efetuadas em REPT /PWS/SAPMZYCI017

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 090

 

Texto: (0 caracteres)

 

Comprimento máximo: 132

 

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 266

 

Texto: (31 caracteres)

"Choose only one line on screen."

 

Comprimento máximo: 36

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 266

 

Texto: (29 caracteres)

"Selecionar uma linha na tela."

 

Comprimento máximo: 36

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: 266

 

Texto: (32 caracteres)

"Seleccionar solamente una línea."

 

Comprimento máximo: 36

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 267

 

Texto: (25 caracteres)

"Fill serie for all units."

 

Comprimento máximo: 48

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 267

 

Texto: (48 caracteres)

"Preencher série para todas unidades do material."

 

Comprimento máximo: 48

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: 267

 

Texto: (47 caracteres)

"Leenar serie de todas las unidades de material."

 

Comprimento máximo: 48

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 268

 

Texto: (28 caracteres)

"Material doesn't have serie."

 

Comprimento máximo: 30

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 268

 

Texto: (26 caracteres)

"Material não possui série."

 

Comprimento máximo: 30

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: 268

 

Texto: (24 caracteres)

"Material no pouse serie."

 

Comprimento máximo: 30

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 269

 

Texto: (32 caracteres)

"Serial Number can't be repeated."

 

Comprimento máximo: 38

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 269

 

Texto: (38 caracteres)

"Número de série não pode ser repetido."

 

Comprimento máximo: 38