CE PLUS - Nota 013028

Módulo: CÂMBIO FINANCEIRO

Funcionalidade: SISCOSERV

Data/Hora da Publicação: 04/06/2013 14:32:00

Data/Hora Última Alteração: 04/06/2013 14:32:00

Descrição da Nota: SISCOSERV - ORIGEM PROCESSOS PW.CE

Sintoma

Criação de registros de RAS/RVS com origem em processos do pw.Ce

 

 

Solução

Criação de registros de RAS/RVS com origem em processos do pw.Ce

 

Versões Tratadas

9.0


Pré-Requisitos

Produto:

Nota

Descrição

SISCOSERV

SISCOSERV - ASSOCIAÇÃO

SISCOSERV - ASSOCIAÇÃO

SISCOSERV

SISCOSERV

CARGA SISCOSERV

SISCOSERV

SISCOSERV - AJUDA DE PESQUISA CODIGO ENQUADRAMENTO / BOTÃO ANEXAR DOC

SISCOSERV

SISCOSERV - GERAÇÃO XML

SISCOSERV - ASSOCIAÇÃO

ASSOCIAÇÃO SISCOSERV

SISCOSERV - RAS/RVS

Informações Complementares

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

Nota Número 13028 Data: 03/06/2013 Hora: 13:41:32

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

 

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

Nota Número              : 13028

Categoria                : Melhoria

Prioridade               : Alta

Versão PW.CE             : 9.0

Pacote                   : 00004

Agrupamento              : 00156

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

Referência às notas relacionadas:

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

 

12480  - 00001 - 9.0    - 00001  - SISCOSERV

12604  - 00002 - 9.0    - 00002  - SISCOSERV

12632  - 00003 - 9.0    - 00002  - CARGA SISCOSERV

12650  - 00004 - 9.0    - 00002  - SISCOSERV

12671  - 00005 - 9.0    - 00002  - ASSOCIAÇÃO SISCOSERV

12697  - 00006 - 9.0    - 00002  - SISCOSERV - AJUDA DE PESQUISA CODIGO ENQUADRAMENTO / BOTÃO ANEXAR

12811  - 00007 - 9.0    - 00003  - SISCOSERV

12842  - 00008 - 9.0    - 00003  - SISCOSERV

12855  - 00009 - 9.0    - 00004  - SISCOSERV - GERAÇÃO XML

12878  - 00010 - 9.0    - 00004  - SISCOSERV - ASSOCIAÇÃO

12916  - 00011 - 9.0    - 00004  - SISCOSERV - ASSOCIAÇÃO

12933  - 00012 - 9.0    - 00004  - SISCOSERV - ASSOCIAÇÃO

12975  - 00013 - 9.0    - 00004  - SISCOSERV - RAS/RVS

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

SISCOSERV - ORIGEM PROCESSOS PW.CE

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

Palavras Chave:

SISCOSERV - ORIGEM PROCESSOS PW.CE

 

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

Objetos da nota:

DOMA /PWS/ZYCAD027

DTEL /PWS/ZYCAL057

DTEL /PWS/ZYCAL058

TABL /PWS/ZYCAT039

TABL /PWS/ZYCAT046

TOBJ /PWS/ZYCAT046S

SHLP /PWS/ZYCAA178

SHLD /PWS/ZYCEA649

CUAD /PWS/SAPMZYCA011

DYNP /PWS/SAPMZYCA012                        0103

DYNP /PWS/SAPMZYCA012                        0102

DYNP /PWS/SAPMZYCA012                        0100

DYNP /PWS/SAPMZYCA012                        0107

DYNP /PWS/SAPMZYCA011                        0003

REPS /PWS/MZYCA011TOP

REPS /PWS/MZYCA011O01

REPS /PWS/MZYCA011I01

REPS /PWS/MZYCA011F01

REPS /PWS/MZYCA012O01

REPS /PWS/MZYCA012I01

REPS /PWS/MZYCA012TOP

REPS /PWS/ZYCAGF1TOP

REPS /PWS/MZYCA012F01

REPT /PWS/SAPMZYCA011

TRAN /PWS/ZYCA011_C

TRAN /PWS/ZYCAT046

MENU /PWS/ZYCB

 

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

Modificações efetuadas em DOMA /PWS/ZYCAD027

 

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

Domínio incluído: /PWS/ZYCAD027

Descrição breve incluída (26 caracteres), idioma: PT

"Siscoserv - Tipo de Origem"

Classe de desenvolvimento: /PWS/ZYCA

Idioma original: PT

Categoria de dados: CHAR

Número de posições: 2

Comprimento de saída: 2

Rotina de conversão:

Letras minúsculas: NÃO

-Valores individuais

Incluído valor fixo "FI"

Texto incluído, idioma: PT (16 caracteres):

"Frete Importação"

Incluído valor fixo "SI"

Texto incluído, idioma: PT (17 caracteres):

"Seguro Importação"

Incluído valor fixo "EI"

Texto incluído, idioma: PT (19 caracteres):

"Embarque Importação"

Incluído valor fixo "FE"

Texto incluído, idioma: PT (16 caracteres):

"Frete Exportação"

Incluído valor fixo "SE"

Texto incluído, idioma: PT (17 caracteres):

"Seguro Exportação"

Incluído valor fixo "EE"

Texto incluído, idioma: PT (19 caracteres):

"Embarque Exportação"

Incluída tabela de valores:

 

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

Modificações efetuadas em DTEL /PWS/ZYCAL057

 

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

Elemento de dados incluído: /PWS/ZYCAL057

Classe de desenvolvimento: /PWS/ZYCA

Idioma original: PT

Descrição breve incluída: (31 caracteres), idioma: PT

"Siscoserv - Documento de Origem"

Categoria de dados: Domínio

Domínio: /PWS/ZYGLD564

ID parâmetro:

Nome componente default:

Documentar modificações: NÃO

Nome da ajuda de pesquisa:

Parâmetro da ajuda de pesquisa:

Comprimento máximo do denominador breve: 10

Denominador breve incluído (6 caracteres), idioma: PT

"Origem"

Comprimento máximo do denominador médio: 16

Denominador médio incluído (16 caracteres), idioma: PT

"Documento Origem"

Comprimento máximo do denominador longo: 20

Denominador longo incluído (16 caracteres), idioma: PT

"Documento Origem"

Comprimento máximo do título: 16

Título incluído (16 caracteres), idioma: PT

"Documento Origem"

 

 

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

Modificações efetuadas em DTEL /PWS/ZYCAL058

 

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

Elemento de dados incluído: /PWS/ZYCAL058

Classe de desenvolvimento: /PWS/ZYCA

Idioma original: PT

Descrição breve incluída: (23 caracteres), idioma: PT

"Siscoserv - Tipo Origem"

Categoria de dados: Domínio

Domínio: /PWS/ZYCAD027

ID parâmetro:

Nome componente default:

Documentar modificações: NÃO

Nome da ajuda de pesquisa:

Parâmetro da ajuda de pesquisa:

Comprimento máximo do denominador breve: 10

Denominador breve incluído (9 caracteres), idioma: PT

"Tp Origem"

Comprimento máximo do denominador médio: 15

Denominador médio incluído (11 caracteres), idioma: PT

"Tipo Origem"

Comprimento máximo do denominador longo: 20

Denominador longo incluído (11 caracteres), idioma: PT

"Tipo Origem"

Comprimento máximo do título: 11

Título incluído (11 caracteres), idioma: PT

"Tipo Origem"

 

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

Modificações efetuadas em TABL /PWS/ZYCAT039

MODIFICAR TABELA TRANSPARENTE: /PWS/ZYCAT039

 

CAMPOS NOVOS

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

FAT_EXP         /PWS/ZYCBL084  X   X    '          '   '        '    '       '

 

OBS: ESTE CAMPO DEVERÁ SER INCLUÍDO LOGO APÓS O CAMPO 'FATURA'

 

 

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

Modificações efetuadas em TABL /PWS/ZYCAT046

CRIAR TABELA TRANSPARENTE: /PWS/ZYCAT046

DESCRIÇÃO BREVE: Parâmetro - Direcionamento de NBS e Modo Prest. de Serviço

 

CARACTERÍSTICAS

 

CLASSE DE DESENVOLVIMENTO: /PWS/ZYCA

CATEGORIA DA TABELA: TABELA TRANSPARENTE

CLASSE DE ENTREGA:   'C' - Tab.customizing, atualização só por cliente, s/import.SAP

(X) - AUTUALIZAÇÃO DE TABELAS PERMITIDA

 

CAMPOS NOVOS

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

MANDT           MANDT         X    X

MATNR           MATNR         X    X

TPPROCESSO      /PWS/ZYCAL023 X    X

MODO_PREST      /PWS/ZYCAL030

NBS         /PWS/ZYCAL028

 

OPÇÕES TÉCNICAS

 

TIPO DE DADOS: APPL2

CATEGOR. TAMANHO: 0

 

(X) - AR. BUFFER NÃO PERMITIDO

(_) - AR. BUFFER PERMITIDO, MAS DESATIVADO

(_) - AR. BUFFER ATIVADO

(_) - RGSTS. IND ARMAZENADOS

(_) - ÁREA GEN ARMAZENADA EM BUFFER   Nº DE CPOS CHAVE: ______

(_) - TOTALMENTE ARMAZENADO

(_) - REGISTRAR MODIFICS. DDS. EM LOG.

 

 

CRIAR ATUALIZAÇÃO DE TABELA PARA A TABELA /PWS/ZYCAT046 COM AS INFORMAÇÕES ABAIXO:

 

INDICAÇÕES TÉCNICAS PARA DIÁLOGO

GRUPO DE AUTORIZAÇÃO : &NC&

GRUPO DE FUNÇÕES     : /PWS/ZYCAGF1

CL DE DESENVOLVIMENTO: /PWS/ZYCA

 

TELAS DE ATUALIZAÇÃO:

CTG. ATUALIZAÇÃO:    (X) NÍVEL ÚNICO

                     ( ) 2 NÍVEIS

Nº TELA ATUALIZAÇÃO: TELA DE SÍNTESE: 46

                     TELA INDIVIDUAL: ' '

 

INDICAÇÕES PARA TRANSPORTE DE DADOS DE DIÁLOGO:

ROTINA DE REGISTRO:   (X) ROTINA DE REGISTRO STANDARD

                      ( ) ROTINA DE REGISTRO INDIVIDUAL (OU NENHUMA)

CÓDIGO DE AJUSTE: 'AJUSTÁVEL AUTOMATICAMENTE'

 

 

APÓS CRIAR A ATUALIZAÇÃO DE TABELA, NO MENU AMBIENTE --> MODIFICAÇÃO --> HORAS, INCLUIR AS ENTRADAS

ABAIXO:

 

MOMENTO NOME DO FORM/PROGRAMA

01      GRAVA_LOG_ZYCAT046_DEL

02      GRAVA_LOG_ZYCAT046_UPD

 

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

Modificações efetuadas em REPS /PWS/ZYCAGF1TOP

 

...

      itab_zycat042_del type table of /pws/zycat042,

      itab_zycat043_ins type table of /pws/zycat043,

      itab_zycat043_upd type table of /pws/zycat043,

      itab_zycat043_del type table of /pws/zycat043.

data: itab_zycat044_ins type table of /pws/zycat044,

      itab_zycat044_upd type table of /pws/zycat044,

      itab_zycat044_del type table of /pws/zycat044,

      itab_zycat045_ins type table of /pws/zycat045,

      itab_zycat045_upd type table of /pws/zycat045,

      itab_zycat045_del type table of /pws/zycat045.

* >> Início da inclusão:

data: itab_zycat046_ins type table of /pws/zycat046,

      itab_zycat046_upd type table of /pws/zycat046,

      itab_zycat046_del type table of /pws/zycat046.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/LZYCAGF1F01

 

 

. . .

form grava_log_zycat045_upd.

  loop at itab_zycat045_upd

    into /pws/zycat045.

    perform carrega_log using '/PWS/ZYCAT045'

                              c_update

                              '/PWS/ZYCAT045'

                              '/PWS/ZYCAT045'

                              space.

  endloop.

  loop at itab_zycat045_ins

    into /pws/zycat045.

    perform carrega_log using '/PWS/ZYCAT045'

                              c_insert

                              '/PWS/ZYCAT045'

                              '/PWS/ZYCAT045'

                              space.

  endloop.

endform.

* >> Início da inclusão:

form grava_log_zycat046_del.

  types: begin of s_conteudo,

           zycat046  type /pws/zycat046,

           action(1) type c,

         end of s_conteudo.

  field-symbols: <fs_conteudo> type s_conteudo.

  loop at total.

    assign total to <fs_conteudo> casting.

    case <fs_conteudo>-action.

      when c_new.

        append <fs_conteudo>-zycat046 to itab_zycat046_ins.

      when c_update.

        append <fs_conteudo>-zycat046 to itab_zycat046_upd.

      when c_delete.

        append <fs_conteudo>-zycat046 to itab_zycat046_del.

    endcase.

  endloop.

  loop at itab_zycat046_del into /pws/zycat046.

    perform carrega_log using '/PWS/ZYCAT046'

                              c_delete

                              '/PWS/ZYCAT046'

                              '/PWS/ZYCAT046'

                              space.

  endloop.

  clear sy-subrc.

endform.

form grava_log_zycat046_upd.

  loop at itab_zycat046_upd

    into /pws/zycat046.

    perform carrega_log using '/PWS/ZYCAT046'

                              c_update

                              '/PWS/ZYCAT046'

                              '/PWS/ZYCAT046'

                              space.

  endloop.

  loop at itab_zycat045_ins

    into /pws/zycat046.

    perform carrega_log using '/PWS/ZYCAT046'

                              c_insert

                              '/PWS/ZYCAT046'

                              '/PWS/ZYCAT046'

                              space.

  endloop.

endform.

* << Fim da inclusão

 

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

Modificações efetuadas em TRAN /PWS/ZYCAT046

CÓDIGO DE TRANSAÇÃO: /PWS/ZYCAT046

 

ATRIBUTOS DA TRANSAÇÃO

TEXTO BREVE: Direcionamento de NBS e Modo Prest.

 

OBJETO DE EXECUÇÃO

(X) - TRANSAÇÃO C/ PARÂMETROS (TRANSAÇÃO DE PARÂMETROS)

 

TEXTO DA TRANSAÇÃO: Direcionamento de NBS e Modo Prest.

 

VALOR PROPOSTO PARA

(X) - TRANSAÇÃO: SM30              (X) - OMITIR 1ºTELA

(_) - TELA      _____________________

DO POOL MÓDULOS ___________________________

 

CLASSIFICAÇÃO

 

(_) - HERDAR CARACTERÍSTICAS GUI

 

CLASSIFICAÇÃO DE TRANSAÇÃO:

(X) - TRANSAÇÃO PROFESSIONAL USER

(_) - TRANSAÇÃO EASY WEB      SERVIÇO: ___________________________

 

CAPACIDADE GUI:

(X) SAP GUI PARA HTML

(X) SAP GUI PARA JAVA

(X) SAP GUI PARA WINDOWS

 

VALORES PROPOSTOS

NOME DO CAMPO DA TELA              VALOR

VIEWNAME                           /pws/zycat046

UPDATE                             X

 

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

Modificações efetuadas em MENU /PWS/ZYCB

NO MENU /PWS/ZYCB, RAMIFICAÇÃO PARÂMETROS --> CÂMBIO --> FINANCEIRO --> SISCOSERV

INCLUIR A OPÇÃO ABAIXO LOGO APÓS 'CÓDIGO ENQUADRAMENTO':

 

CÓDIGO TRANSAÇÃO: /PWS/ZYCAT046

ENTRADA DE MENU : Direcionamento de NBS e Modo Prest. Serviço

 

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

Modificações efetuadas em TABD /PWS/ZYCAT030

MODIFICAR TABELA TRANSPARENTE: /PWS/ZYCAT030

 

CAMPOS NOVOS

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

ORIGEM          /PWS/ZYCAL057   ' ' ' '  '           '  '        '    '     '

TP_ORIGEM       /PWS/ZYCAL058   ' ' ' '  '           '  '        '    '     '

 

OBS: ESTES CAMPOS DEVERÃO SER INCLUÍDOS LOGO APÓS O CAMPO 'PROCESSAMENTO'

 

 

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

Modificações efetuadas em FUGR /PWS/ZYCAA178

MODIFICAR MÓDULO DE FUNÇÃO: /PWS/ZYCAA178

CARACTERÍSTICAS

 

CLASSIFICAÇÃO:

GRUPO DE FUNÇÕES: /PWS/ZYCAGF

TEXTO BREVE: Exit Ajuda Pesquisa Associação Fat. Export. / RAS/RVS

 

TIPO DE EXECUÇÃO:

(X) - MÓDULO DE FUNÇÃO NORMAL

(_) - MÓDULO DE ACESSO REMOTO

(_) - MÓDULO DE ATUALIZAÇÃO

     (X) - INÍCIO IMEDIATO

     (_) - INÍCIO IMEDIATO-SEM ATUAL.POSTER.

     (_) - INÍC. RETARDADO

     (_) - PROCES. CLOETIVO

 

DADOS GERAIS:

(_) - BLOQUEIO PROCESSO

(_) - GLOBAL

 

IMPORTAÇÃO:

NOME PARAM.   ATRIB. TIPO REFERÊNCIA  VL. PROPOSTO OPCIONAL TRANSF. TEXT

 

 

EXPORTAÇÃO:

NOME PARAM.   ATRIB. TIPO REFERÊNCIA   TRANSF.  TEXTO BREVE

 

MODIFIC.:

NOME PARAM.   ATRIB. TIPO REFERÊNCIA  VL. PROPOSTO OPCIONAL TRANSF. TEXT

CALLCONTROL   LIKE   DDSHF4CTRL       '          ' '      '   X     '   '

SHLP          TYPE   SHLP_DESCR_T     '          ' '      '   X     '   '

 

TABELAS:

NOME PARAM.   ATRIB. TIPO REFERÊNCIA  OPCIONAL TEXTO BREVE

RECORD_TAB    LIKE   SEAHLPRES        '      '

SHLP_TAB      TYPE   SHLP_DESCR_TAB_T '      '

 

EXCEÇÕES:

EXCEÇÃO                    TEXTO BREVE

 

TEXTO FONTE:

 

function /pws/zycaa178.

*"----------------------------------------------------------------------

*"*"Interface local:

*"  TABLES

*"      RECORD_TAB STRUCTURE  SEAHLPRES

*"      SHLP_TAB TYPE  SHLP_DESCR_TAB_T

*"  CHANGING

*"     VALUE(CALLCONTROL) LIKE  DDSHF4CTRL STRUCTURE  DDSHF4CTRL

*"     VALUE(SHLP) TYPE  SHLP_DESCR_T

*"----------------------------------------------------------------------

* OS 64705 - Codificação Inicial - 09.08.2013 - Maurício

*"----------------------------------------------------------------------

 

  types:

     begin of ty_dados,

        nrinvoic type /pws/zycbt017-nrinvoic,

        bukrs    type /pws/zycbt017-bukrs,

        waers    type /pws/zycbt017-waers,

        kunag    type /pws/zycbt017-kunag,

        vlavinc  type /pws/zycbt017-vlavinc,

     end of ty_dados,

 

     begin of ty_zycbt006,

       nrinvoic  type /pws/zycbt006-nrinvoic,

       dtpagext  type /pws/zycbt006-dtpagext,

       vlme      type /pws/zycbt006-vlme,

     end of ty_zycbt006.

 

  data: itab_dados     type standard table of ty_dados,

        itab_zycbt006  type standard table of ty_zycbt006.

 

  data: v_fieldname   type dfies-lfieldname,

        v_tabix       type sy-tabix,

        v_vlme        type /pws/zycbt006-vlme.

 

  field-symbols:

    <fs_shlp>       like line of shlp_tab,

    <fs_fielddescr> like line of shlp_tab-fielddescr,

    <fs_dados>      type ty_dados,

    <fs_dados_aux>  type ty_dados,

    <fs_record_tab> type seahlpres,

    <fs_zycbt006>   type ty_zycbt006.

 

 

  clear callcontrol-maxrecords.

 

  if callcontrol-step = 'DISP'

     or callcontrol-step = 'PRESEL'.

 

    read table shlp_tab index 1 assigning <fs_shlp>.

    check <fs_shlp> is assigned.

 

    loop at <fs_shlp>-fielddescr assigning <fs_fielddescr>.

      check <fs_fielddescr>-fieldname = 'NRINVOIC' or

            <fs_fielddescr>-fieldname = 'BUKRS'    or

            <fs_fielddescr>-fieldname = 'WAERS'    or

            <fs_fielddescr>-fieldname = 'KUNAG'    or

            <fs_fielddescr>-fieldname = 'VLAVINC'.

 

      v_fieldname = <fs_fielddescr>-fieldname.

      call function 'F4UT_PARAMETER_VALUE_GET'

           exporting

                parameter         = <fs_fielddescr>-fieldname

                fieldname         = v_fieldname

           tables

                shlp_tab          = shlp_tab

                record_tab        = record_tab

                results_tab       = itab_dados

           changing

                shlp              = shlp

                callcontrol       = callcontrol

           exceptions

                parameter_unknown = 1

                others            = 2.

      if sy-subrc <> 0.

        exit.

      endif.

    endloop.

    unassign: <fs_shlp>, <fs_fielddescr>.

 

    if not itab_dados[] is initial.

      select nrinvoic dtpagext vlme

        from /pws/zycbt006

        into table itab_zycbt006

        for all entries in itab_dados

        where nrinvoic = itab_dados-nrinvoic.

 

      select nrinvoic dtcredext vlr_exterior

        from /pws/zycbt226

        appending table itab_zycbt006

        for all entries in itab_dados

        where nrinvoic = itab_dados-nrinvoic.

 

      loop at itab_dados assigning <fs_dados>.

        v_tabix = sy-tabix.

 

        loop at itab_dados assigning <fs_dados_aux>

          where nrinvoic = <fs_dados>-nrinvoic.

 

          if sy-tabix ne v_tabix.

            <fs_dados>-vlavinc =

              <fs_dados>-vlavinc + <fs_dados_aux>-vlavinc.

            modify itab_dados from <fs_dados> index v_tabix.

            delete itab_dados index sy-tabix.

            delete record_tab index sy-tabix.

          endif.

 

        endloop.

 

        loop at itab_zycbt006 assigning <fs_zycbt006>

          where nrinvoic = <fs_dados>-nrinvoic.

          v_vlme = v_vlme + <fs_zycbt006>-vlme.

        endloop.

 

        if sy-subrc ne 0 or

          v_vlme < <fs_dados>-vlavinc.

 

          delete record_tab index v_tabix.

          delete itab_dados.

 

        endif.

        clear v_vlme.

 

      endloop.

 

    endif.

 

  endif.

 

endfunction.

 

 

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

Modificações efetuadas em SHLP /PWS/ZYCAA178

CRIAR AJUDA DE PESQUISA: /PWS/ZYCAA178

DESCRIÇÃO BREVE: Parâmetro - Direcionamento de NBS e Modo Prest. de Serviço

 

DEFINIÇÃO

 

OBTENÇÃO DE DADOS

MÉTODO DE SELEÇÃO: /PWS/ZYCBT017

 

COMPORTAMENTO DE DIÁLOGO:

TIPO DE DIÁLOGO: EXIBIÇÃO DE VALORES IMEDIATA

HOT KEY: ' '

 

EXIT AJUD. PESQUISA: /PWS/ZYCAA178

 

PARÂMETROS:

 

PARAM.    IMP EXP POSL ISEL EXAJ ELEM. DADOS    MOD  VALOR PROPOSTO

NRINVOIC  ' '  X   1    1   ' ' /PWS/ZYCBL084 ' '  '            '

BUKRS      X  ' '  4    4    X   BUKRS          ' '  BUK

WAERS      X  ' '  5    5    X   WAERS          ' '  FWS

KUNAG      X  ' '  6    6    X   KUNAG          ' '  KUN

VLAVINC   ' ' ' '  0    0   ' '  /PWS/ZYCBL059  ' '  '             '

 

 

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

Modificações efetuadas em SHLD /PWS/ZYCEA649

MODIFICAR AJUDA DE PESQUISA: /PWS/ZYCEA649

 

PARÂMETROS:

INCLUIR O PARÂMETRO ABAIXO LOGO APÓS O PARÂMETRO 'MATNR':

 

PARAM.    IMP EXP POSL ISEL EXAJ ELEM. DADOS  MOD  VALOR PROPOSTO

MAKTX     ' ' ' '  2    2   '  ' MAKTX        ' '  '             '

 

 

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

Modificações efetuadas em REPS /PWS/MZYCA011TOP

 

program  /pws/sapmzyca011 message-id /pws/zycbm.

type-pools:cxtab.

tables: /pws/zycat030,

        /pws/zycat031,

        /pws/zycat032,

        /pws/zycat033,

        /pws/zycat037,

        /pws/zycat038,

        /pws/zycat039,

* >> Início da exclusão:

        /pws/zycat044.

* << Fim da exclusão

* >> Início da inclusão:

        /pws/zycat044,

        /pws/zycit001,

        /pws/zycet001.

* << Fim da inclusão

types:

  begin of ty_zycat031t.

        include structure /pws/zycat031.

types: mark,

       msg,

end of ty_zycat031t,

begin of ty_zycat032t.

        include structure /pws/zycat032.

types: mark,

end of ty_zycat032t,

...

 

...

  nrseq_arq      type /pws/zycat038-nrseq_arq,

  processo(40)   type c,

  usuario        type /pws/zycat038-usuario,

  data           type /pws/zycat038-data,

  hora           type /pws/zycat038-hora,

  prot_transm    type /pws/zycat038-prot_transm,

  status         type /pws/zycat038-status,

  status_t(25)   type c,

  cod_erro       type /pws/zycat038-cod_erro,

  cod_erro_t     type /pws/zycat040-mensagem,

* >> Início da exclusão:

end of ty_zycat038_alv.

* << Fim da exclusão

* >> Início da inclusão:

END OF ty_zycat038_alv,

BEGIN OF ty_zycit094,

  nrseqce TYPE /pws/zycit094-nrseqce,

  nrseq   TYPE /pws/zycit094-nrseq,

END OF ty_zycit094,

BEGIN OF ty_zycit093,

  nrseqce TYPE /pws/zycit093-nrseqce,

  dtemiss TYPE /pws/zycit093-dtemiss,

  dtcheg  TYPE /pws/zycit093-dtcheg,

  vlfre   TYPE /pws/zycit093-vlfre,

END OF ty_zycit093,

BEGIN OF ty_zycit006,

  nrseq    TYPE /pws/zycit006-nrseq,

  tpfatura TYPE /pws/zycit006-tpfatura,

  vlmerc   TYPE /pws/zycit006-vlmerc,

  vlfre    TYPE /pws/zycit006-vlfre,

  vlseg    TYPE /pws/zycit006-vlseg,

  vltotal  TYPE /pws/zycit006-vltotal,

  lifnr    TYPE /pws/zycit006-lifnr,

  nrseqce  TYPE /pws/zycit006-nrseqce,

END OF ty_zycit006,

BEGIN OF ty_zycit001,

  nrseq      TYPE /pws/zycit001-nrseq,

  bukrs      TYPE /pws/zycit001-bukrs,

  waers      TYPE /pws/zycit001-waers,

  j_1bbranch TYPE /pws/zycit001-j_1bbranch,

  modalidade TYPE /pws/zycit001-modalidade,

END OF ty_zycit001,

BEGIN OF ty_zycit003,

  nrseq      TYPE /pws/zycit003-nrseq,

  ebeln      TYPE /pws/zycit003-ebeln,

  matnr      TYPE /pws/zycit003-matnr,

END OF ty_zycit003,

BEGIN OF ty_zycit263,

  nrseq       TYPE /pws/zycit263-nrseq,

  ebeln       TYPE /pws/zycit263-ebeln,

  nrseq_pgfat TYPE /pws/zycit263-nrseq_pgfat,

END OF ty_zycit263,

BEGIN OF ty_zycit085,

  nrseqdi    TYPE /pws/zycit085-nrseqdi,

  nrdi       TYPE /pws/zycit085-nrdi,

  nrbl       type /pws/zycit085-nrbl,

  vlseg      TYPE /pws/zycit085-vlseg,

END OF ty_zycit085,

BEGIN OF ty_zycet001,

  nrseq      TYPE /pws/zycet001-nrseq,

  bukrs      TYPE /pws/zycet001-bukrs,

  dtemb      TYPE /pws/zycet001-dtemb,

  codportd   TYPE /pws/zycet001-codportd,

  tipo_emb   TYPE /pws/zycet001-tipo_emb,

END OF ty_zycet001,

BEGIN OF ty_zycet002,

  nrseq      TYPE /pws/zycet002-nrseq,

  fkdat      TYPE /pws/zycet002-fkdat,

  matnr      type /pws/zycet002-matnr,

END OF ty_zycet002,

BEGIN OF ty_zycet003,

  nrseq      TYPE /pws/zycet003-nrseq,

  nrseqre    TYPE /pws/zycet003-nrseqre,

END OF ty_zycet003,

BEGIN OF ty_zycet008,

  nrseq      TYPE /pws/zycet008-nrseq,

  vlme_f     TYPE /pws/zycet008-vlme_f,

  waers      TYPE /pws/zycet008-waers,

END OF ty_zycet008,

BEGIN OF ty_zycet116,

  nrseqre    TYPE /pws/zycet116-nrseqre,

  nrre       TYPE /pws/zycet116-nrre,

  j_1bbranch TYPE /pws/zycet116-j_1bbranch,

END OF ty_zycet116.

* << Fim da inclusão

data: itab_zycat031      type table of /pws/zycat031,

      itab_zycat031t     type table of ty_zycat031t with header line,

      itab_zycat031_ant  type table of /pws/zycat031,

      itab_zycat032t     type table of ty_zycat032t with header line,

      itab_zycat032      type table of /pws/zycat032,

      itab_zycat032_ant  type table of /pws/zycat032,

      itab_zycat033      type table of /pws/zycat033,

      itab_zycat033t     type table of ty_zycat033t with header line,

      itab_zycat033_ant  type table of /pws/zycat033,

      itab_src           type table of ty_src,

...

 

...

      vreadlony    type i,

      v_path       type rlgrap-filename,

      v_lines      type i,

      v_exibe,

      v_cria,

      v_mark,

      v_modif,

      v_gera_xml,

      v_funcionalidade type /pws/zyglt390-programa

                       value '/PWS/SAPMZYCA011',

* >> Início da exclusão:

      v_identificador  type /pws/zyglt390-identificador.

* << Fim da exclusão

* >> Início da inclusão:

      v_identificador  TYPE /pws/zyglt390-identificador,

      v_sorigem    TYPE c,

      v_freteimp   TYPE c,

      v_segimp     TYPE c,

      v_embimp     TYPE c,

      v_freteexp   TYPE c,

      v_segexp     TYPE c,

      v_embexp     TYPE c.

* << Fim da inclusão

controls: ts_contrato   type tabstrip,

          tc_oper       type tableview using screen '0101',

          tc_enq        type tableview using screen '0102',

          tc_re         type tableview using screen '0103'.

data editor        type ref to cl_gui_textedit.

data editcontainer type ref to cl_gui_custom_container.

data: gos type ref to /pws/zygl_cl_gos.

* >> Início da inclusão:

SELECTION-SCREEN BEGIN OF SCREEN 0004 AS SUBSCREEN.

SELECT-OPTIONS  r_embimp FOR /pws/zycit001-nrseq

  NO INTERVALS NO-EXTENSION.

SELECTION-SCREEN SKIP 1.

SELECTION-SCREEN END OF SCREEN 0004.

SELECTION-SCREEN BEGIN OF SCREEN 0005 AS SUBSCREEN.

SELECT-OPTIONS  r_embexp FOR /pws/zycet001-nrseq

  NO INTERVALS NO-EXTENSION.

SELECTION-SCREEN END OF SCREEN 0005.

AT SELECTION-SCREEN OUTPUT.

  CASE sy-dynnr.

    WHEN '0004' OR '0005'.

      PERFORM set_screen_origem.

  ENDCASE.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCA011F01

 

...

                  textline1     = text-i05

                  textline2     = text-i06

                  titel         = text-i01

             IMPORTING

                  answer        = v_answer

             EXCEPTIONS

                  OTHERS        = 1.

        IF sy-subrc EQ 0.

          IF v_answer EQ 'J'.

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

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

              LEAVE PROGRAM.

* << Fim da exclusão

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

              PERFORM limpa_dados.

              SET SCREEN 0003.

              LEAVE SCREEN.

* << Fim da inclusão

            ELSE.

              PERFORM desbloquia_registro.

              PERFORM limpa_dados.

              SET SCREEN 0001.

              LEAVE SCREEN.

            ENDIF.

          ENDIF.

        ENDIF.

      ELSE.

        v_modif = 'X'.

      ENDIF.

    ELSE.

      IF p_sai = 'X'.

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

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

          LEAVE PROGRAM.

* << Fim da exclusão

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

          PERFORM limpa_dados.

          SET SCREEN 0003.

          LEAVE SCREEN.

* << Fim da inclusão

        ELSE.

          PERFORM desbloquia_registro.

          PERFORM limpa_dados.

          SET SCREEN 0001.

          LEAVE SCREEN.

        ENDIF.

      ENDIF.

    ENDIF.

  ELSE.

    PERFORM desbloquia_registro.

...

 

...

    ENDLOOP.

   CALL METHOD editor->set_text_as_r3table EXPORTING table = itab_src[].

  ENDIF.

ENDFORM.

FORM limpa_dados.

  IF NOT editor IS INITIAL.

    CALL METHOD editor->free.

    CALL METHOD editcontainer->free.

    CLEAR: editor, editcontainer.

  ENDIF.

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

  CLEAR: v_exibe, v_cria, v_gera_xml, /pws/zycat030.

* << Fim da exclusão

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

  CLEAR: v_exibe, v_cria, v_gera_xml, /pws/zycat030,

         v_stras, v_mcod3, itab_zycat031t, wa_zycat031.

* << Fim da inclusão

  REFRESH: itab_zycat031, itab_zycat031t, itab_zycat031_ant,

           itab_zycat032, itab_zycat032t, itab_zycat032_ant,

           itab_zycat033, itab_zycat033t, itab_zycat033_ant,

           itab_src, itab_tline_ant, itab_tline.

  PERFORM gos_despublicar

        USING

          gos.

ENDFORM.

FORM elimina_ras_rvs.

  DATA: itab_zycat034 TYPE TABLE OF /pws/zycat034,

...

 

...

    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

               WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

  ENDIF.

ENDFORM.

FORM gos_despublicar

     USING

       p_gos TYPE REF TO /pws/zygl_cl_gos.

  CHECK NOT p_gos IS INITIAL.

  CALL METHOD p_gos->unpublish.

ENDFORM.

* >> Início da inclusão:

FORM user_command_0003.

  DATA: v_erro.

  CASE v_okcode.

    WHEN 'ENTE'.

      CLEAR v_okcode.

      IF v_sorigem IS INITIAL AND

        r_embimp[] IS INITIAL AND

        r_embexp[] IS INITIAL.

        MESSAGE i015 WITH text-i24.

        EXIT.

      ENDIF.

      IF v_sorigem IS INITIAL.

        PERFORM busca_origem CHANGING v_erro.

      ENDIF.

      CHECK v_erro IS INITIAL.

      SET SCREEN 0100.

      LEAVE SCREEN.

  ENDCASE.

ENDFORM.

FORM set_screen_origem.

  LOOP AT SCREEN.

    IF screen-name CS 'OPTI_PUSH'.

      screen-active = '0'.

    ELSE.

      IF screen-name(8)  = 'R_EMBIMP' OR

         screen-name(10) = '%_R_EMBIMP'.

        IF NOT v_freteimp IS INITIAL OR

           NOT v_segimp   IS INITIAL OR

           NOT v_embimp   IS INITIAL.

          screen-input  = '1'.

          screen-active = '1'.

          CLEAR r_embexp.

          REFRESH r_embexp.

        ELSE.

          screen-input  = '0'.

          screen-active = '0'.

        ENDIF.

      ELSEIF screen-name(8)  = 'R_EMBEXP' OR

             screen-name(10) = '%_R_EMBEXP'.

        IF NOT v_freteexp IS INITIAL OR

           NOT v_segexp   IS INITIAL OR

           NOT v_embexp   IS INITIAL.

          screen-input  = '1'.

          screen-active = '1'.

          CLEAR r_embimp.

          REFRESH r_embimp.

        ELSE.

          screen-input  = '0'.

          screen-active = '0'.

        ENDIF.

      ENDIF.

    ENDIF.

    MODIFY SCREEN.

  ENDLOOP.

ENDFORM.

FORM busca_origem CHANGING p_erro.

  IF NOT v_freteimp IS INITIAL OR

     NOT v_segimp   IS INITIAL.

    PERFORM busca_frete_seg_imp CHANGING p_erro.

  ELSEIF NOT v_embimp IS INITIAL.

    PERFORM busca_emb_imp CHANGING p_erro.

  ELSEIF NOT v_freteexp IS INITIAL OR

         NOT v_segexp   IS INITIAL.

    PERFORM busca_frete_seg_exp CHANGING p_erro.

  ELSEIF NOT v_embexp IS INITIAL.

    PERFORM busca_emb_exp CHANGING p_erro.

  ENDIF.

ENDFORM.

FORM busca_frete_seg_imp CHANGING p_erro.

  DATA: itab_zycit006 TYPE TABLE OF ty_zycit006,

        wa_zycit085   TYPE ty_zycit085,

        wa_zycit093   TYPE ty_zycit093,

        wa_zycit094   TYPE ty_zycit094,

        wa_zycit006   TYPE ty_zycit006,

        wa_zycit001   TYPE ty_zycit001,

        wa_zycat030   TYPE /pws/zycat030,

        wa_zycat046   TYPE /pws/zycat046,

        v_tp_origem   TYPE /pws/zycat030-tp_origem,

        v_tp_fatura   TYPE /pws/zycit006-tpfatura,

        v_matnr       TYPE /pws/zycat046-matnr.

  IF NOT v_freteimp IS INITIAL.

    v_tp_origem = 'FI'.

    v_tp_fatura = '02'.

    v_matnr     = 'FRT'.

  ELSEIF NOT v_segimp IS INITIAL.

    v_tp_origem = 'SI'.

    v_tp_fatura = '03'.

    v_matnr     = 'SEG'.

  ENDIF.

  SELECT nrseqce nrseq

    UP TO 1 ROWS

    FROM /pws/zycit094

    INTO wa_zycit094

    WHERE nrseq IN r_embimp.

  ENDSELECT.

  IF sy-subrc NE 0.

    p_erro = 'X'.

    MESSAGE i015 WITH text-i25 text-i26.

    EXIT.

  ENDIF.

  SELECT * FROM /pws/zycat030

    UP TO 1 ROWS

    INTO wa_zycat030

    WHERE origem    = wa_zycit094-nrseq

      AND status    NE 'EX'

      AND tp_origem = v_tp_origem.

  ENDSELECT.

  IF sy-subrc EQ 0.

    p_erro = 'X'.

    MESSAGE i015 WITH text-e27.

    EXIT.

  ENDIF.

  SELECT nrseq tpfatura vlmerc  vlfre

         vlseg vltotal  lifnr   nrseqce

    FROM /pws/zycit006

    INTO TABLE itab_zycit006

    WHERE nrseqce = wa_zycit094-nrseqce.

  IF sy-subrc NE 0.

    p_erro = 'X'.

    MESSAGE i015 WITH text-i25 text-i26.

    EXIT.

  ENDIF.

  SELECT SINGLE nrseq bukrs waers j_1bbranch modalidade

    FROM /pws/zycit001

    INTO wa_zycit001

    WHERE nrseq = wa_zycit094-nrseq.

  SELECT SINGLE nrseqce dtemiss dtcheg vlfre

    FROM /pws/zycit093

    INTO wa_zycit093

    WHERE nrseqce = wa_zycit094-nrseqce.

  SELECT SINGLE nrseqdi nrdi nrbl vlseg

    FROM /pws/zycit085

    INTO wa_zycit085

    WHERE nrbl = wa_zycit094-nrseqce.

  SELECT SINGLE *

    FROM /pws/zycat046

    INTO wa_zycat046

    WHERE matnr = v_matnr

      AND tpprocesso = 'A'.

  MOVE:

    wa_zycit001-bukrs      TO /pws/zycat030-bukrs,

    wa_zycit001-j_1bbranch TO /pws/zycat030-j_1bbranch,

    'A'                    TO /pws/zycat030-tp_processo,

    wa_zycit001-waers      TO /pws/zycat030-waers,

    r_embimp-low           TO /pws/zycat030-origem,

    v_tp_origem            TO /pws/zycat030-tp_origem.

  IF v_tp_origem = 'FI'.

    IF NOT wa_zycit093-vlfre IS INITIAL.

      MOVE wa_zycit093-vlfre TO /pws/zycat030-valor.

    ELSE.

      READ TABLE itab_zycit006 INTO wa_zycit006

        WITH KEY tpfatura = v_tp_fatura.

      IF sy-subrc EQ 0.

        MOVE wa_zycit006-vlfre TO /pws/zycat030-valor.

      ENDIF.

    ENDIF.

  ELSE.

    IF NOT wa_zycit085-vlseg IS INITIAL.

      MOVE wa_zycit085-vlseg TO /pws/zycat030-valor.

    ELSE.

      READ TABLE itab_zycit006 INTO wa_zycit006

        WITH KEY tpfatura = v_tp_fatura.

      IF sy-subrc EQ 0.

        MOVE wa_zycit006-vlseg TO /pws/zycat030-valor.

      ENDIF.

    ENDIF.

  ENDIF.

  /pws/zycat030-saldo = /pws/zycat030-valor.

  READ TABLE itab_zycit006 INTO wa_zycit006

    WITH KEY tpfatura = v_tp_fatura.

  IF sy-subrc NE 0.

    READ TABLE itab_zycit006 INTO wa_zycit006 INDEX 1.

  ENDIF.

  /pws/zycat030-bukrs_ext = wa_zycit006-lifnr.

  PERFORM informacoes_cabecalho.

  MOVE:

    '01'                   TO wa_zycat031-operacao,

    /pws/zycat030-cod_pais TO wa_zycat031-cod_pais,

    '1'                    TO wa_zycat031-modo_prest,

    wa_zycit093-dtemiss    TO wa_zycat031-data_ini,

    wa_zycit093-dtcheg     TO wa_zycat031-data_fim,

    wa_zycat030-valor      TO wa_zycat031-valor,

    wa_zycat046-nbs        TO wa_zycat031-nbs,

    wa_zycat046-modo_prest TO wa_zycat031-modo_prest,

    /pws/zycat030-valor    TO wa_zycat031-valor,

    wa_zycat031-valor      TO wa_zycat031-saldo.

  APPEND wa_zycat031 TO itab_zycat031t.

  IF NOT wa_zycit085-nrdi IS INITIAL.

    PERFORM inicializa_texto.

    IF v_tp_origem = 'FI'.

      CONCATENATE text-001 wa_zycit085-nrdi INTO wa_src-line

        SEPARATED BY space.

    ELSE.

      CONCATENATE text-002 wa_zycit085-nrdi INTO wa_src-line

        SEPARATED BY space.

    ENDIF.

    APPEND wa_src TO itab_src.

    CLEAR wa_src.

   CALL METHOD editor->set_text_as_r3table EXPORTING table = itab_src[].

  ENDIF.

ENDFORM.

FORM busca_emb_imp CHANGING p_erro.

  DATA: wa_zycit001 TYPE ty_zycit001,

        wa_zycit003 TYPE ty_zycit003,

        wa_zycit006 TYPE ty_zycit006,

        wa_zycit263 TYPE ty_zycit263,

        wa_zycat046 TYPE /pws/zycat046.

  SELECT SINGLE nrseq bukrs waers j_1bbranch modalidade

    FROM /pws/zycit001

    INTO wa_zycit001

    WHERE nrseq IN r_embimp.

  IF sy-subrc NE 0.

    p_erro = 'X'.

    MESSAGE i015 WITH text-i25 text-i26.

    EXIT.

  ELSE.

    IF wa_zycit001-modalidade NE '02'.

      p_erro = 'X'.

      MESSAGE i015 WITH text-i27 text-i28.

      EXIT.

    ENDIF.

  ENDIF.

  SELECT nrseq ebeln matnr

    UP TO 1 ROWS

    FROM /pws/zycit003

    INTO wa_zycit003

    WHERE nrseq = wa_zycit001-nrseq.

  ENDSELECT.

  SELECT nrseq ebeln nrseq_pgfat

    UP TO 1 ROWS

    FROM /pws/zycit263

    INTO wa_zycit263

    WHERE nrseq = wa_zycit003-nrseq

      AND ebeln = wa_zycit003-ebeln.

  ENDSELECT.

  SELECT nrseq tpfatura vlmerc  vlfre

         vlseg vltotal  lifnr   nrseqce

    UP TO 1 ROWS

    FROM /pws/zycit006

    INTO wa_zycit006

    WHERE nrseq_pgfat = wa_zycit263-nrseq_pgfat.

  ENDSELECT.

  SELECT SINGLE *

    FROM /pws/zycat046

    INTO wa_zycat046

    WHERE matnr      = wa_zycit003-matnr

      AND tpprocesso = 'A'.

  MOVE:

    wa_zycit001-bukrs      TO /pws/zycat030-bukrs,

    wa_zycit001-j_1bbranch TO /pws/zycat030-j_1bbranch,

    'A'                    TO /pws/zycat030-tp_processo,

    wa_zycit006-lifnr      TO /pws/zycat030-bukrs_ext,

    wa_zycit001-waers      TO /pws/zycat030-waers,

    wa_zycit006-vltotal    TO /pws/zycat030-valor,

    wa_zycit006-vltotal    TO /pws/zycat030-saldo.

  PERFORM informacoes_cabecalho.

  MOVE:

    '01'                   TO wa_zycat031-operacao,

    /pws/zycat030-cod_pais TO wa_zycat031-cod_pais,

    /pws/zycat030-valor    TO wa_zycat031-valor,

    wa_zycat046-nbs        TO wa_zycat031-nbs,

    wa_zycat046-modo_prest TO wa_zycat031-modo_prest,

    wa_zycat031-valor      TO wa_zycat031-saldo.

  APPEND wa_zycat031 TO itab_zycat031t.

ENDFORM.

FORM informacoes_cabecalho.

  CLEAR: v_land1, v_stras, v_mcod3, v_name1,

   /pws/zycat030-cod_pais.

  CASE /pws/zycat030-tp_processo.

    WHEN 'A'.

      SELECT SINGLE land1 name1 stras mcod3

        FROM lfa1

        INTO (v_land1, v_name1, v_stras, v_mcod3)

        WHERE lifnr = /pws/zycat030-bukrs_ext.

    WHEN 'V'.

      SELECT SINGLE land1 name1 stras mcod3

        FROM kna1

        INTO (v_land1, v_name1, v_stras, v_mcod3)

        WHERE kunnr = /pws/zycat030-bukrs_ext.

  ENDCASE.

  IF v_land1 IS INITIAL.

    MESSAGE e061 WITH text-e16 /pws/zycat030-bukrs_ext

        text-e17.

  ELSE.

    SELECT SINGLE cod_pais

      FROM /pws/zycat043

      INTO /pws/zycat030-cod_pais

      WHERE land1 = v_land1.

    IF sy-subrc NE 0.

      MESSAGE e061 WITH text-e18 v_land1 text-e19.

    ENDIF.

  ENDIF.

ENDFORM.

FORM busca_frete_seg_exp CHANGING p_erro.

  DATA: wa_zycet001 TYPE ty_zycet001,

        wa_zycet003 TYPE ty_zycet003,

        wa_zycet008 TYPE ty_zycet008,

        wa_zycet116 TYPE ty_zycet116,

        wa_zycet156 TYPE /pws/zycet156,

        wa_zycat030 TYPE /pws/zycat030,

        wa_zycat046 TYPE /pws/zycat046,

        v_tp_origem TYPE /pws/zycat030-tp_origem,

        v_kschl     TYPE /pws/zycet156-kschl,

        v_matnr     TYPE /pws/zycat046-matnr.

  IF NOT v_freteexp IS INITIAL.

    v_tp_origem = 'FE'.

    v_kschl     = 'ZFTE'.

    v_matnr     = 'FRT'.

  ELSEIF NOT v_segexp IS INITIAL.

    v_tp_origem = 'SE'.

    v_kschl     = 'ZSEG'.

    v_matnr     = 'SEG'.

  ENDIF.

  SELECT SINGLE nrseq bukrs dtemb codportd tipo_emb

    FROM /pws/zycet001

    INTO wa_zycet001

    WHERE nrseq IN r_embexp.

  IF sy-subrc NE 0.

    p_erro = 'X'.

    MESSAGE i015 WITH text-i25 text-i26.

    EXIT.

  ENDIF.

  SELECT * FROM /pws/zycat030

    UP TO 1 ROWS

    INTO wa_zycat030

    WHERE origem    = wa_zycet001-nrseq

      AND status    NE 'EX'

      AND tp_origem = v_tp_origem.

  ENDSELECT.

  IF sy-subrc EQ 0.

    p_erro = 'X'.

    MESSAGE i015 WITH text-e27.

    EXIT.

  ENDIF.

  SELECT nrseq nrseqre

    UP TO 1 ROWS

    FROM /pws/zycet003

    INTO wa_zycet003

    WHERE nrseq = wa_zycet001-nrseq.

  ENDSELECT.

  SELECT * FROM /pws/zycet156

    UP TO 1 ROWS

    INTO wa_zycet156

    WHERE bukrs  = wa_zycet001-bukrs

      AND codmod = 'X'

      AND kschl  = v_kschl.

  ENDSELECT.

  IF sy-subrc EQ 0.

    SELECT nrseq vlme_f waers

      UP TO 1 ROWS

      FROM /pws/zycet008

      INTO wa_zycet008

      WHERE nrseq  = wa_zycet001-nrseq

        AND codigo = wa_zycet156-codigo.

    ENDSELECT.

  ENDIF.

  SELECT SINGLE nrseqre nrre j_1bbranch

    FROM /pws/zycet116

    INTO wa_zycet116

    WHERE nrseqre = wa_zycet003-nrseqre.

  SELECT SINGLE *

    FROM /pws/zycat046

    INTO wa_zycat046

    WHERE matnr      = v_matnr

      AND tpprocesso = 'V'.

  MOVE:

    wa_zycet001-bukrs      TO /pws/zycat030-bukrs,

    wa_zycet116-j_1bbranch TO /pws/zycat030-j_1bbranch,

    'V'                    TO /pws/zycat030-tp_processo,

    wa_zycet001-codportd   TO /pws/zycat030-bukrs_ext,

    wa_zycet008-waers      TO /pws/zycat030-waers,

    wa_zycet008-vlme_f     TO /pws/zycat030-valor,

    wa_zycet008-vlme_f     TO /pws/zycat030-saldo,

    wa_zycet001-nrseq      TO /pws/zycat030-origem,

    v_tp_origem            TO /pws/zycat030-tp_origem.

  PERFORM informacoes_cabecalho.

  MOVE:

    '01'                   TO wa_zycat031-operacao,

    /pws/zycat030-cod_pais TO wa_zycat031-cod_pais,

    wa_zycet001-dtemb      TO wa_zycat031-data_ini,

    wa_zycet008-vlme_f     TO wa_zycat031-valor,

    wa_zycat046-nbs        TO wa_zycat031-nbs,

    wa_zycat046-modo_prest TO wa_zycat031-modo_prest,

    wa_zycat031-valor      TO wa_zycat031-saldo.

  APPEND wa_zycat031 TO itab_zycat031t.

  IF NOT wa_zycet116-nrre IS INITIAL.

    PERFORM inicializa_texto.

    IF NOT v_freteexp IS INITIAL.

      CONCATENATE text-003 wa_zycet116-nrre INTO wa_src-line

        SEPARATED BY space.

    ELSEIF NOT v_segexp IS INITIAL.

      CONCATENATE text-004 wa_zycet116-nrre INTO wa_src-line

        SEPARATED BY space.

    ENDIF.

    APPEND wa_src TO itab_src.

    CLEAR wa_src.

   CALL METHOD editor->set_text_as_r3table EXPORTING table = itab_src[].

  ENDIF.

ENDFORM.

FORM busca_emb_exp CHANGING p_erro.

  DATA: wa_zycat030 TYPE /pws/zycat030,

        wa_zycat046 TYPE /pws/zycat046,

        wa_zycet001 TYPE ty_zycet001,

        wa_zycet002 TYPE ty_zycet002,

        wa_zycet008 TYPE ty_zycet008,

        wa_zycet156 TYPE /pws/zycet156.

  SELECT SINGLE nrseq bukrs dtemb codportd tipo_emb

    FROM /pws/zycet001

    INTO wa_zycet001

    WHERE nrseq IN r_embexp.

  IF sy-subrc NE 0.

    p_erro = 'X'.

    MESSAGE i015 WITH text-i25 text-i26.

    EXIT.

  ELSEIF sy-subrc EQ 0 AND wa_zycet001-tipo_emb NE 'E'.

    p_erro = 'X'.

    MESSAGE i015 WITH text-i29 text-i28.

    EXIT.

  ENDIF.

  SELECT * FROM /pws/zycat030

    UP TO 1 ROWS

    INTO wa_zycat030

    WHERE origem    = wa_zycet001-nrseq

      AND status    NE 'EX'

      AND tp_origem = 'EE'.

  ENDSELECT.

  IF sy-subrc EQ 0.

    p_erro = 'X'.

    MESSAGE i015 WITH text-e27.

    EXIT.

  ENDIF.

  SELECT nrseq fkdat matnr

    FROM /pws/zycet002

    UP TO 1 ROWS

    INTO wa_zycet002

    WHERE nrseq = wa_zycet001-nrseq.

  ENDSELECT.

  SELECT * FROM /pws/zycet156

    UP TO 1 ROWS

    INTO wa_zycet156

    WHERE bukrs  = wa_zycet001-bukrs

      AND codmod = 'X'

      AND kschl  = 'ZPEX'.

  ENDSELECT.

  IF sy-subrc EQ 0.

    SELECT nrseq vlme_f waers

      UP TO 1 ROWS

      FROM /pws/zycet008

      INTO wa_zycet008

      WHERE nrseq  = wa_zycet001-nrseq

        AND codigo = wa_zycet156-codigo.

    ENDSELECT.

  ENDIF.

  SELECT SINGLE *

    FROM /pws/zycat046

    INTO wa_zycat046

    WHERE matnr      = wa_zycet002-matnr

      AND tpprocesso = 'V'.

  MOVE:

    wa_zycet001-bukrs      TO /pws/zycat030-bukrs,

    'V'                    TO /pws/zycat030-tp_processo,

    wa_zycet001-codportd   TO /pws/zycat030-bukrs_ext,

    wa_zycet008-waers      TO /pws/zycat030-waers,

    wa_zycet008-vlme_f     TO /pws/zycat030-valor,

    wa_zycet008-vlme_f     TO /pws/zycat030-saldo,

    wa_zycet001-nrseq      TO /pws/zycat030-origem,

    'EE'                   TO /pws/zycat030-tp_origem.

  PERFORM informacoes_cabecalho.

  MOVE:

    '01'                   TO wa_zycat031-operacao,

    /pws/zycat030-cod_pais TO wa_zycat031-cod_pais,

    wa_zycet002-fkdat      TO wa_zycat031-data_ini,

    wa_zycet008-vlme_f     TO wa_zycat031-valor,

    wa_zycat046-nbs        TO wa_zycat031-nbs,

    wa_zycat046-modo_prest TO wa_zycat031-modo_prest,

    wa_zycat031-valor      TO wa_zycat031-saldo.

  APPEND wa_zycat031 TO itab_zycat031t.

ENDFORM.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCA011O01

 

...

  else.

    loop at screen.

      if screen-name ne 'TB_OP' and

         screen-name ne 'TB_RE'        and

         screen-name ne 'TAB_INFC'.

        screen-input = '0'.

        modify screen.

      endif.

    endloop.

  endif.

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

  loop at screen.

    if screen-name = '/PWS/ZYCAT030-PROCESSAMENTO' or

       screen-name = 'T_MANUAL'.

      screen-active = '0'.

      modify screen.

    endif.

  endloop.

* << Fim da exclusão

  perform gos_criar

          using

            /pws/zycat030-nrseq

          changing

            gos.

  perform gos_publicar

          using

            gos.

endmodule.

module busca_sequencial output.

  if /pws/zycat030-nrseq is initial.

    perform busca_sequencial.

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

    /pws/zycat030-processamento = 'X'.

* << Fim da exclusão

  endif.

endmodule.

module atualiza_tela_oper output.

  move-corresponding itab_zycat031t to /pws/zycat031.

  move: itab_zycat031t-mark to v_mark.

  loop at screen.

    if ( itab_zycat031t-status = 'EP' or

         itab_zycat031t-status = 'EX' or

         itab_zycat031t-status = 'ES' ) and

       /pws/zycat030-processamento is initial.

...

 

...

  check /pws/zycat037 is initial.

  select single * from /pws/zycat037

    where usuario = sy-uname.

  if sy-subrc ne 0.

    message e061 with text-e08 sy-uname text-e09.

  endif.

endmodule.

module status_0002 output.

  set pf-status '0002'.

endmodule.

* >> Início da inclusão:

module status_0003 output.

  set pf-status '0003'.

  set titlebar '0003'.

endmodule.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCA011I01

 

MODULE user_command INPUT.

  CASE sy-dynnr.

    WHEN '0001'.

      PERFORM user_command_0001.

    WHEN '0002'.

      PERFORM user_command_0002.

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

    WHEN '0003'.

      PERFORM user_command_0003.

* << Fim da inclusão

    WHEN '0100'.

      PERFORM user_command_0100.

    WHEN '0101'.

      PERFORM user_command_0101.

    WHEN '0102'.

      PERFORM user_command_0102.

    WHEN '0103'.

      PERFORM user_command_0103.

  ENDCASE.

ENDMODULE.

MODULE exit_command INPUT.

  CASE sy-dynnr.

    WHEN '0001'.

      LEAVE PROGRAM.

    WHEN '0002'.

      CLEAR v_path.

      SET SCREEN 0.

      LEAVE SCREEN.

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

    WHEN '0003'.

      LEAVE PROGRAM.

* << Fim da inclusão

    WHEN '0100'.

      LEAVE PROGRAM.

    WHEN '0102'.

      CLEAR: v_nrseq_enq, v_oper_enq, /pws/zycat032.

      FREE: itab_zycat032t.

      SET SCREEN 0.

      LEAVE SCREEN.

  ENDCASE.

ENDMODULE.

MODULE emp_ext INPUT.

...

 

...

      SELECT SINGLE land1 name1 stras mcod3

        FROM lfa1

        INTO (v_land1, v_name1, v_stras, v_mcod3)

        WHERE lifnr = /pws/zycat030-bukrs_ext.

    WHEN 'V'.

      SELECT SINGLE land1 name1 stras mcod3

        FROM kna1

        INTO (v_land1, v_name1, v_stras, v_mcod3)

        WHERE kunnr = /pws/zycat030-bukrs_ext.

  ENDCASE.

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

  IF v_land1 = 'BR'.

    MESSAGE e015 WITH text-e26.

  ENDIF.

* << Fim da inclusão

ENDMODULE.

MODULE matchcode_empext INPUT.

  CLEAR: v_mconame,

         itab_tdynpread,

         wa_tdynpread.

  FREE itab_tdynpread.

  wa_tdynpread-fieldname = '/PWS/ZYCAT030-TP_PROCESSO'.

  APPEND wa_tdynpread TO itab_tdynpread.

  CALL FUNCTION 'DYNP_VALUES_READ'

       EXPORTING

...

 

 

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

Modificações efetuadas em CUAD /PWS/SAPMZYCA011

 

CRIAR O STATUS GUI '0003' COM AS INFORMAÇÕES ABAIXO:

 

TECLAS DE FUNÇÃO:

PRIMEIRO BOTÃO DA BARRA FERRAM.:

CÓDIGO DE FUNÇÃO   : ENTE

CATEGORIA DE FUNÇÃO: ' '

TEXTO DE FUNÇÃO    : Confirmação

TECLA DE FUNÇÃO    : F8

 

TERCEIRO BOTÃO DA BARRA FERRAM.:

CÓDIGO DE FUNÇÃO   : EXIT

CATEGORIA DE FUNÇÃO: E

TEXTO DE FUNÇÃO    : Voltar

 

QUARTO BOTÃO DA BARRA FERRAM.:

CÓDIGO DE FUNÇÃO   : EXIT

CATEGORIA DE FUNÇÃO: E

TEXTO DE FUNÇÃO    : Voltar

 

QUINTO BOTÃO DA BARRA FERRAM.:

CÓDIGO DE FUNÇÃO   : EXIT

CATEGORIA DE FUNÇÃO: E

TEXTO DE FUNÇÃO    : Voltar

 

CRIAR O TITLE GUI 0003 COM O TÍTULO 'Criar RAS/RVS'

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCA011                        0003

SOLICITAR O DOWNLOAD DA TELA JUNTO A EQUIPE DE PRODUTOS DO pw.CE NO TELEFONE (11) 5504-0170

 

 

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

Modificações efetuadas em REPT /PWS/SAPMZYCA011

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 001

 

Texto: (20 caracteres)

"Frete referente a DI"

 

Comprimento máximo: 21

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 002

 

Texto: (21 caracteres)

"Seguro referente a DI"

 

Comprimento máximo: 21

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 003

 

Texto: (20 caracteres)

"Frete referente a RE"

 

Comprimento máximo: 20

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 004

 

Texto: (21 caracteres)

"Seguro referente a RE"

 

Comprimento máximo: 21

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: E26

 

Texto: (45 caracteres)

"Fornecedor Nacional, registro não será criado"

 

Comprimento máximo: 45

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: E27

 

Texto: (45 caracteres)

"Embarque já utilizado para tipo de associação"

 

Comprimento máximo: 45

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: I24

 

Texto: (32 caracteres)

"Selecionar embarque(s) de origem"

 

Comprimento máximo: 32

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: I25

 

Texto: (25 caracteres)

"Nenhuma origem encontrada"

 

Comprimento máximo: 25

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: I26

 

Texto: (37 caracteres)

"para o critério de seleção informado."

 

Comprimento máximo: 37

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: I27

 

Texto: (45 caracteres)

"Embarque informado não é referente a serviço."

 

Comprimento máximo: 45

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: I28

 

Texto: (25 caracteres)

"Registro não será criado."

 

Comprimento máximo: 25

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: I29

 

Texto: (29 caracteres)

"Embarque não é sobre serviço."

 

Comprimento máximo: 29

 

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

Incluído texto de seleção:

 

Idioma: PT

 

Variável (SELECT-OPTION / PARAMETER): R_EMBEXP

 

Texto: (30 caracteres)

"Embarque de Exportação"

 

Referência ao Dictionary: NÃO

 

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

Incluído texto de seleção:

 

Idioma: PT

 

Variável (SELECT-OPTION / PARAMETER): R_EMBIMP

 

Texto: (30 caracteres)

"Embarque de Importação"

 

Referência ao Dictionary: NÃO

 

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

Modificações efetuadas em TRAN /PWS/ZYCA011_C

NA TRANSAÇÃO /PWS/ZYCA011_C, ALTERAR O Nº TELA PARA '0003'

 

 

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

Modificações efetuadas em REPS /PWS/MZYCA012TOP

 

...

type-pools:cxtab.

types:

  begin of ty_zycat039t.

        include structure /pws/zycat039.

types: mark,

       msg,

end of ty_zycat039t,

begin of ty_fcode,

  ucomm type sy-ucomm,

end of ty_fcode,

* >> Início da inclusão:

BEGIN OF ty_zycbt017,

  nrinvoic TYPE /pws/zycbt017-nrinvoic,

  nrparcf  TYPE /pws/zycbt017-nrparcf,

  gsberf   TYPE /pws/zycbt017-gsberf,

  bukrs    TYPE /pws/zycbt017-bukrs,

  kunag    TYPE /pws/zycbt017-kunag,

  waers    TYPE /pws/zycbt017-waers,

  vlavinc  TYPE /pws/zycbt017-vlavinc,

  vlcomis  TYPE /pws/zycbt017-vlcomis,

  parvw    TYPE /pws/zycbt017-parvw,

END OF ty_zycbt017,

BEGIN OF ty_zycbt006,

  nrinvoic TYPE /pws/zycbt006-nrinvoic,

  nrparcf  TYPE /pws/zycbt006-nrparcf,

  gsberf   TYPE /pws/zycbt006-gsberf,

  dtpagext TYPE /pws/zycbt006-dtpagext,

  vlme     TYPE /pws/zycbt006-vlme,

END OF ty_zycbt006,

* << Fim da inclusão

begin of ty_zycat038_alv,

  nrseq_arq      type /pws/zycat038-nrseq_arq,

  processo(40)   type c,

  usuario        type /pws/zycat038-usuario,

  data           type /pws/zycat038-data,

  hora           type /pws/zycat038-hora,

  prot_transm    type /pws/zycat038-prot_transm,

  status         type /pws/zycat038-status,

  status_t(25)   type c,

  cod_erro       type /pws/zycat038-cod_erro,

...

 

...

        /pws/zycat037,

        /pws/zycat038,

        /pws/zycat039,

        bkpf.

data: itab_zycat039     type table of /pws/zycat039,

      itab_zycat039_ant type table of /pws/zycat039,

      itab_zycat039_c   type table of ty_zycat039t with header line,

      itab_zycat039_r   type table of ty_zycat039t with header line,

      itab_zycat039_f   type table of ty_zycat039t with header line,

      itab_zycat039_o   type table of ty_zycat039t with header line,

* >> Início da inclusão:

      itab_zycat039_fe  TYPE TABLE OF ty_zycat039t WITH HEADER LINE,

* << Fim da inclusão

      itab_tdynpread    type standard table of dynpread,

      itab_result       type standard table of ddshretval,

      itab_fcode        type standard table of ty_fcode.

data: wa_zycat039      type /pws/zycat039,

      wa_zycat039_ant  type /pws/zycat039,

      wa_zycat039c     type /pws/zycat039,

      wa_zycat039r     type /pws/zycat039,

      wa_zycat039f     type /pws/zycat039,

      wa_zycat039o     type /pws/zycat039,

* >> Início da inclusão:

      wa_zycat039fe    TYPE /pws/zycat039,

* << Fim da inclusão

      wa_cols          type cxtab_column,

      wa_tdynpread     type dynpread,

      wa_result        type ddshretval,

      wa_fcode         type ty_fcode.

data: v_okcode     type sy-ucomm,

      v_exibe      type c,

      v_screen     type sy-dynnr,

      v_dynnr      type sy-dynnr,

      v_nbs        type /pws/zycat041-descricao,

      v_operacao   type /pws/zycat039-operacao,

      v_mark       type c,

      v_lines      type i,

      v_path       type rlgrap-filename,

      v_funcionalidade type /pws/zyglt390-programa

                       value '/PWS/SAPMZYCA012',

      v_identificador  type /pws/zyglt390-identificador.

controls: ts_assoc   type tabstrip,

          tc_remessa type tableview using screen '0101',

          tc_comag   type tableview using screen '0102',

          tc_fatimp  type tableview using screen '0103',

* >> Início da exclusão:

          tc_outros  type tableview using screen '0105'.

* << Fim da exclusão

* >> Início da inclusão:

          tc_outros  TYPE TABLEVIEW USING SCREEN '0105',

          tc_fatexp  TYPE TABLEVIEW USING SCREEN '0107'.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCA012F01

 

...

      SELECT * FROM /pws/zycat039

        INTO TABLE itab_zycat039

        WHERE nrseq    = /pws/zycat039-nrseq

          AND operacao = /pws/zycat039-operacao.

      SELECT SINGLE descricao INTO v_nbs

        FROM /pws/zycat041

        WHERE nbs = /pws/zycat031-nbs.

    ENDIF.

  ENDIF.

  REFRESH: itab_zycat039_r, itab_zycat039_c,

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

           itab_zycat039_f, itab_zycat039_o.

* << Fim da exclusão

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

           itab_zycat039_f, itab_zycat039_o,

           itab_zycat039_fe.

* << Fim da inclusão

  LOOP AT itab_zycat039 INTO wa_zycat039.

    IF NOT wa_zycat039-remessa IS INITIAL.

      APPEND wa_zycat039 TO itab_zycat039_r.

    ELSEIF NOT wa_zycat039-fat_comis IS INITIAL.

      APPEND wa_zycat039 TO itab_zycat039_c.

    ELSEIF NOT wa_zycat039-fat_imp IS INITIAL.

      APPEND wa_zycat039 TO itab_zycat039_f.

    ELSEIF NOT wa_zycat039-fatura IS INITIAL.

      APPEND wa_zycat039 TO itab_zycat039_o.

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

    ELSEIF NOT wa_zycat039-fat_exp IS INITIAL.

      APPEND wa_zycat039 TO itab_zycat039_fe.

* << Fim da inclusão

    ENDIF.

  ENDLOOP.

  itab_zycat039_ant[] = itab_zycat039[].

  CLEAR v_okcode.

  v_screen = sy-dynnr.

  CLEAR: v_okcode, v_dynnr.

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

  IF NOT /pws/zycat030-origem IS INITIAL

     AND itab_zycat039[] IS INITIAL.

    IF /pws/zycat030-tp_origem = 'FI' OR

       /pws/zycat030-tp_origem = 'SI' OR

       /pws/zycat030-tp_origem = 'EI'.

      wa_zycat039f-fat_imp = /pws/zycat030-origem.

      PERFORM atualiza_itab TABLES  itab_zycat039_f

                            USING   wa_zycat039f

                                    tc_fatimp.

    ELSEIF /pws/zycat030-tp_origem = 'FE' OR

           /pws/zycat030-tp_origem = 'SE' OR

           /pws/zycat030-tp_origem = 'EE'.

      wa_zycat039fe-fat_exp = /pws/zycat030-origem.

      wa_zycat039fe-moeda   = /pws/zycat030-waers.

      wa_zycat039fe-valor   = /pws/zycat030-valor.

      PERFORM atualiza_itab TABLES  itab_zycat039_fe

                            USING   wa_zycat039fe

                                    tc_fatexp.

    ENDIF.

    PERFORM calcula_saldo.

  ENDIF.

* << Fim da inclusão

  IF NOT itab_zycat039_r[] IS INITIAL OR

     ( itab_zycat039_r[] IS INITIAL AND

       itab_zycat039_c[] IS INITIAL AND

       itab_zycat039_f[] IS INITIAL AND

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

       itab_zycat039_fe[] IS INITIAL AND

* << Fim da inclusão

       itab_zycat039_o[] IS INITIAL ).

    v_dynnr = '0101'.

    ts_assoc-activetab = 'TB_REM'.

  ELSEIF NOT itab_zycat039_c[] IS INITIAL.

    v_dynnr = '0102'.

    ts_assoc-activetab = 'TB_CAG'.

  ELSEIF NOT itab_zycat039_f[] IS INITIAL.

    v_dynnr = '0103'.

    ts_assoc-activetab = 'TB_FIMP'.

  ELSEIF NOT itab_zycat039_o[] IS INITIAL.

    v_dynnr = '0105'.

    ts_assoc-activetab = 'TB_OUTROS'.

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

  ELSEIF NOT itab_zycat039_fe[] IS INITIAL.

    v_dynnr = '0107'.

    ts_assoc-activetab = 'TB_FEXP'.

* << Fim da inclusão

  ENDIF.

  SET SCREEN 0100.

  LEAVE SCREEN.

ENDFORM.

FORM verifica_bloqueio.

  CALL FUNCTION 'ENQUEUE_/PWS/EZYCAT030'

       EXPORTING

            nrseq          = /pws/zycat039-nrseq

       EXCEPTIONS

            foreign_lock   = 1

...

 

...

    WHEN 'TB_CAG'.

      v_dynnr = '0102'.

      ts_assoc-activetab = v_okcode.

      CLEAR v_okcode.

    WHEN 'TB_FIMP'.

      v_dynnr = '0103'.

      ts_assoc-activetab = v_okcode.

      CLEAR v_okcode.

    WHEN 'TB_OUTROS'.

      v_dynnr = '0105'.

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

      ts_assoc-activetab = v_okcode.

      CLEAR v_okcode.

    WHEN 'TB_FEXP'.

      v_dynnr = '0107'.

* << Fim da inclusão

      ts_assoc-activetab = v_okcode.

      CLEAR v_okcode.

    WHEN 'SAVE'.

      PERFORM salva_associacao.

    WHEN 'MODIF'.

      CLEAR v_exibe.

      PERFORM verifica_bloqueio.

    WHEN 'FILE_LOC'.

      CLEAR v_path.

      CALL SCREEN 0104 STARTING AT 25 10.

...

 

...

        v_prazo TYPE i,

        v_processo(20) TYPE c,

        v_prz_rp_rf    TYPE /pws/zycbt007-prz_rp_rf.

  PERFORM verifica_associacao CHANGING p_wa_zycat039

                                       v_pago.

  CHECK v_pago = 'X'.

  MOVE-CORRESPONDING p_wa_zycat039 TO p_itab_zycat039.

  MOVE: v_mark TO p_itab_zycat039-mark,

        /pws/zycat031-nrseq    TO p_itab_zycat039-nrseq,

        /pws/zycat031-operacao TO p_itab_zycat039-operacao.

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

  IF NOT p_tc-current_line IS INITIAL.

* << Fim da inclusão

  MODIFY p_itab_zycat039 INDEX p_tc-current_line.

  IF sy-subrc NE 0.

    READ TABLE p_itab_zycat039 INTO wa_zycat039

      WITH KEY nrseq     = p_itab_zycat039-nrseq

               operacao  = p_itab_zycat039-operacao

               remessa   = p_itab_zycat039-remessa

               fat_comis = p_itab_zycat039-fat_comis

               fat_imp   = p_itab_zycat039-fat_imp

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

               fatura    = p_itab_zycat039-fatura.

* << Fim da exclusão

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

                 fatura    = p_itab_zycat039-fatura

                 fat_exp   = p_itab_zycat039-fat_exp.

* << Fim da inclusão

    IF sy-subrc EQ 0.

      MESSAGE i015 WITH text-e08.

    ELSE.

      APPEND p_itab_zycat039.

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

      ENDIF.

* << Fim da inclusão

    ENDIF.

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

  ELSE.

    MOVE: v_mark TO p_itab_zycat039-mark,

          /pws/zycat031-nrseq    TO p_itab_zycat039-nrseq,

          /pws/zycat031-operacao TO p_itab_zycat039-operacao.

    APPEND  p_itab_zycat039.

* << Fim da inclusão

  ENDIF.

  CHECK p_itab_zycat039-msg IS INITIAL AND

    NOT p_itab_zycat039-dt_pg_rec IS INITIAL.

  IF v_okcode NE 'BACK'           AND

     p_itab_zycat039-status NE 'PS' AND

     p_itab_zycat039-status NE 'EX' AND

     p_itab_zycat039-status NE 'ES'.

    v_prazo = sy-datum - p_itab_zycat039-dt_pg_rec.

    IF NOT p_itab_zycat039-remessa IS INITIAL.

      v_processo = p_itab_zycat039-remessa.

...

 

...

    ELSE.

      v_prz_rp_rf = v_prz_rp_rf - 10.

      IF v_prazo >= v_prz_rp_rf.

        v_prz_rp_rf = v_prz_rp_rf + 10.

        v_prazo = v_prz_rp_rf - v_prazo.

        MESSAGE i061 WITH text-i18 v_prazo

          text-i19 v_processo.

        p_itab_zycat039-msg = 'X'.

      ENDIF.

    ENDIF.

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

    IF NOT p_tc-current_line IS INITIAL.

* << Fim da inclusão

    MODIFY p_itab_zycat039 INDEX p_tc-current_line.

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

    ELSE.

      MODIFY p_itab_zycat039 INDEX 1.

    ENDIF.

* << Fim da inclusão

  ENDIF.

ENDFORM.

FORM atualiza_tela USING   p_itab_zycat039 STRUCTURE itab_zycat039_r

                           p_wa_zycat039   STRUCTURE /pws/zycat039.

...

 

...

    ENDLOOP.

  ELSE.

    LOOP AT SCREEN.

      IF ( screen-name = 'WA_ZYCAT039R-REMESSA' AND

           NOT p_wa_zycat039-remessa IS INITIAL ) OR

         ( ( screen-name = 'WA_ZYCAT039C-FAT_COMIS' OR

             screen-name = 'WA_ZYCAT039C-LIFNR' OR

             screen-name = 'WA_ZYCAT039C-DTVENCTO' ) AND

           NOT p_wa_zycat039-fat_comis IS INITIAL ) OR

         ( screen-name = 'WA_ZYCAT039F-FAT_IMP' AND

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

           NOT p_wa_zycat039-fat_imp IS INITIAL ).

* << Fim da exclusão

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

           NOT p_wa_zycat039-fat_imp IS INITIAL ) OR

         ( ( screen-name = 'WA_ZYCAT039FE-FAT_EXP' OR

             screen-name = 'WA_ZYCAT039FE-NRPARCF' OR

             screen-name = 'WA_ZYCAT039FE-GSBERF' ) AND

           NOT p_wa_zycat039-fat_exp IS INITIAL ).

* << Fim da inclusão

        screen-input = 0.

        MODIFY SCREEN.

      ENDIF.

    ENDLOOP.

  ENDIF.

ENDFORM.

FORM verifica_associacao CHANGING p_wa_zycat039 STRUCTURE /pws/zycat039

                                  p_pago.

  DATA: v_bukrs   TYPE /pws/zycat030-bukrs,

        v_bukext  TYPE /pws/zycat030-bukrs_ext.

...

 

...

  ENDIF.

  IF NOT p_wa_zycat039-fat_imp IS INITIAL AND

         p_wa_zycat039-dt_pg_rec IS INITIAL.

    PERFORM valida_fatimp CHANGING p_wa_zycat039

                                     p_pago

                                     v_bukext

                                     v_bukrs.

  ENDIF.

  IF NOT p_wa_zycat039-fatura IS INITIAL.

    PERFORM valida_outros CHANGING p_wa_zycat039

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

                                   p_pago

                                   v_bukrs.

  ENDIF.

  IF NOT p_wa_zycat039-fat_exp IS INITIAL AND

         p_wa_zycat039-dt_pg_rec IS INITIAL.

    PERFORM valida_exportacao CHANGING p_wa_zycat039

* << Fim da inclusão

                                   p_pago

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

                                       v_bukext

* << Fim da inclusão

                                   v_bukrs.

  ENDIF.

  IF ( NOT v_bukrs IS INITIAL AND

     v_bukrs NE /pws/zycat030-bukrs ) OR

     ( NOT p_wa_zycat039-moeda IS INITIAL AND

     p_wa_zycat039-moeda NE /pws/zycat030-waers ).

...

 

...

  ENDLOOP.

  LOOP AT itab_zycat039_c INTO wa_zycat039.

    wa_zycat039-mandt = sy-mandt.

    APPEND wa_zycat039 TO itab_zycat039.

  ENDLOOP.

  LOOP AT itab_zycat039_f INTO wa_zycat039.

    wa_zycat039-mandt = sy-mandt.

    APPEND wa_zycat039 TO itab_zycat039.

  ENDLOOP.

  LOOP AT itab_zycat039_o INTO wa_zycat039.

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

    wa_zycat039-mandt = sy-mandt.

    APPEND wa_zycat039 TO itab_zycat039.

  ENDLOOP.

  LOOP AT itab_zycat039_fe INTO wa_zycat039.

* << Fim da inclusão

    wa_zycat039-mandt = sy-mandt.

    APPEND wa_zycat039 TO itab_zycat039.

  ENDLOOP.

ENDFORM.

FORM valida_remessa CHANGING p_wa_zycat039 STRUCTURE /pws/zycat039

                                  p_pago

                                  p_bukext

                                  p_bukrs.

  DATA: v_nrseq   TYPE /pws/zycbt031-nrseq,

        v_bcoccme TYPE /pws/zycbt134-bco_ccme.

...

 

...

    ENDIF.

  ENDIF.

ENDFORM.

FORM valida_fatimp CHANGING p_wa_zycat039 STRUCTURE /pws/zycat039

                              p_pago

                              p_bukext

                              p_bukrs.

  DATA: v_nrseq      TYPE /pws/zycbt031-nrseq,

        v_bcoccme    TYPE /pws/zycbt134-bco_ccme,

        v_nrseqpgfat TYPE /pws/zycbt108-nrseq_pgfat,

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

        v_nrseqce    TYPE /pws/zycit094-nrseqce,

* << Fim da inclusão

        v_tpfatura   TYPE /pws/zycit006-tpfatura.

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

  SELECT SINGLE * FROM /pws/zycat039

    INTO wa_zycat039

    WHERE nrseq   NE /pws/zycat039-nrseq

      AND fat_imp  = p_wa_zycat039-fat_imp.             "#EC CI_NOFIRST

* << Fim da exclusão

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

  SELECT SINGLE nrseqce

    FROM /pws/zycit094

    INTO v_nrseqce

    WHERE nrseq = p_wa_zycat039-fat_imp.

* << Fim da inclusão

  IF sy-subrc EQ 0.

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

    MESSAGE i015 WITH text-e09 text-i11.

    CLEAR p_pago.

    EXIT.

  ENDIF.

* << Fim da exclusão

  SELECT SINGLE tpfatura lifnr nrseq_pgfat

    FROM /pws/zycit006

    INTO (v_tpfatura, p_bukext, v_nrseqpgfat)

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

    WHERE nrseq = p_wa_zycat039-fat_imp.

* << Fim da exclusão

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

      WHERE nrseqce = v_nrseqce.

* << Fim da inclusão

  IF ( sy-subrc EQ 0      AND

     v_tpfatura NE '02'   AND

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

     v_tpfatura NE '03' ) OR

* << Fim da exclusão

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

       v_tpfatura NE '03'   AND

       v_tpfatura NE '01' ) OR

* << Fim da inclusão

     sy-subrc NE 0.

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

      MESSAGE i015 WITH text-i14.

      CLEAR p_pago.

      EXIT.

    ENDIF.

  ELSE.

* << Fim da inclusão

    MESSAGE i015 WITH text-i14.

    CLEAR p_pago.

    EXIT.

  ENDIF.

  SELECT SINGLE bukrs waers vlme nrfat dtpagto

    FROM /pws/zycbt119

    INTO (p_bukrs, p_wa_zycat039-moeda, p_wa_zycat039-valor,

          p_wa_zycat039-num_nf, p_wa_zycat039-dt_pg_rec)

    WHERE nrseq = v_nrseqpgfat.

  IF sy-subrc NE 0 OR p_wa_zycat039-dt_pg_rec IS INITIAL.

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

    MESSAGE i015 WITH text-i13 text-i09.

* << Fim da exclusão

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

    MESSAGE i061 WITH text-i13 p_wa_zycat039-fat_imp text-i09.

* << Fim da inclusão

    CLEAR p_pago.

    EXIT.

  ENDIF.

  SELECT SINGLE nrseq

    FROM /pws/zycbt031

    INTO v_nrseq

    WHERE mdcorresp = 'IP'

      AND nrcorresp = v_nrseqpgfat.

  IF sy-subrc EQ 0.

    SELECT SINGLE bco_ccme

...

 

...

  ENDLOOP.

  LOOP AT itab_zycat039_f WHERE status NE 'ES' AND

                                status NE 'EX'.

    /pws/zycat030-saldo = /pws/zycat030-saldo - itab_zycat039_f-valor.

    /pws/zycat031-saldo = /pws/zycat031-saldo - itab_zycat039_f-valor.

  ENDLOOP.

  LOOP AT itab_zycat039_o WHERE status NE 'ES' AND

                                status NE 'EX'.

    /pws/zycat030-saldo = /pws/zycat030-saldo - itab_zycat039_o-valor.

    /pws/zycat031-saldo = /pws/zycat031-saldo - itab_zycat039_o-valor.

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

  ENDLOOP.

  LOOP AT itab_zycat039_fe WHERE status NE 'ES' AND

                                status NE 'EX'.

    /pws/zycat030-saldo = /pws/zycat030-saldo - itab_zycat039_fe-valor.

    /pws/zycat031-saldo = /pws/zycat031-saldo - itab_zycat039_fe-valor.

* << Fim da inclusão

  ENDLOOP.

  IF /pws/zycat031-saldo < 0.

    IF v_okcode NE 'BACK'.

      MESSAGE i015 WITH text-e06.

      CLEAR v_okcode.

    ENDIF.

  ENDIF.

ENDFORM.

FORM user_command_0104.

  CASE v_okcode.

...

 

...

          wa_bseg-augcp TO wa_zycat039o-dt_pg_rec,

          wa_bseg-pswsl TO wa_zycat039o-moeda,

          wa_bseg-wrbtr TO wa_zycat039o-valor.

    APPEND wa_zycat039o TO itab_zycat039_o.

    CLEAR wa_zycat039o.

  ENDLOOP.

  CLEAR bkpf.

  SET SCREEN 0.

  LEAVE SCREEN.

ENDFORM.

* >> Início da inclusão:

FORM valida_exportacao CHANGING p_wa_zycat039 STRUCTURE /pws/zycat039

                              p_pago

                              p_bukext

                              p_bukrs.

  DATA: itab_zycbt017 TYPE STANDARD TABLE OF ty_zycbt017,

        wa_zycbt017   TYPE ty_zycbt017,

        itab_zycbt006 TYPE STANDARD TABLE OF ty_zycbt006,

        wa_zycbt006   TYPE ty_zycbt006,

        v_vlavinc     TYPE /pws/zycbt017-vlavinc,

        v_vlpago      TYPE /pws/zycbt006-vlme.

  SELECT nrinvoic nrparcf gsberf bukrs

      kunag waers vlavinc vlcomis parvw

    FROM /pws/zycbt017

    INTO TABLE itab_zycbt017

    WHERE nrinvoic  =  p_wa_zycat039-fat_exp.

  IF sy-subrc NE 0.

    MESSAGE i015 WITH text-i13 text-i09.

    CLEAR p_pago.

    EXIT.

  ENDIF.

  SELECT nrinvoic nrparcf gsberf dtpagext vlme

    FROM /pws/zycbt006

    INTO TABLE itab_zycbt006

    FOR ALL ENTRIES IN itab_zycbt017

    WHERE nrinvoic = itab_zycbt017-nrinvoic

      AND nrparcf  = itab_zycbt017-nrparcf

      AND gsberf   = itab_zycbt017-gsberf.

  SELECT nrinvoic nrparcf gsberf dtcredext vlr_exterior

    FROM /pws/zycbt226

    APPENDING TABLE itab_zycbt006

    FOR ALL ENTRIES IN itab_zycbt017

    WHERE nrinvoic = itab_zycbt017-nrinvoic

      AND nrparcf  = itab_zycbt017-nrparcf

      AND gsberf   = itab_zycbt017-gsberf.

  LOOP AT itab_zycbt017 INTO wa_zycbt017.

    v_vlavinc = v_vlavinc + wa_zycbt017-vlavinc.

    IF wa_zycbt017-parvw = 'CG' OR

       wa_zycbt017-parvw = 'AD'.

      v_vlavinc = v_vlavinc - wa_zycbt017-vlcomis.

    ENDIF.

  ENDLOOP.

  MOVE: wa_zycbt017-bukrs TO p_bukrs,

        wa_zycbt017-waers TO p_wa_zycat039-moeda,

        wa_zycbt017-kunag TO p_bukext.

  LOOP AT itab_zycbt006 INTO wa_zycbt006.

    v_vlpago = v_vlpago + wa_zycbt006-vlme.

  ENDLOOP.

  IF v_vlpago < v_vlavinc.

    MESSAGE i015 WITH text-i13 text-i09.

    CLEAR: p_pago, /pws/zycat030-origem.

    EXIT.

  ENDIF.

  IF /pws/zycat030-origem IS INITIAL.

    p_wa_zycat039-valor = v_vlpago.

  ENDIF.

  IF p_wa_zycat039-num_nf IS INITIAL.

    SELECT nfnum

      UP TO 1 ROWS

      FROM /pws/zycet002

      INTO p_wa_zycat039-num_nf

      WHERE nrseq = p_wa_zycat039-fat_exp.

    ENDSELECT.

    IF p_wa_zycat039-num_nf IS INITIAL OR

       p_wa_zycat039-num_nf = '000000000'.

      CLEAR p_wa_zycat039-num_nf.

    ENDIF.

  ENDIF.

  IF p_wa_zycat039-dt_pg_rec IS INITIAL.

    SORT itab_zycbt006 BY dtpagext DESCENDING.

    READ TABLE itab_zycbt006 INTO wa_zycbt006 INDEX 1.

    p_wa_zycat039-dt_pg_rec =  wa_zycbt006-dtpagext.

  ENDIF.

  IF p_wa_zycat039-dt_pg_rec IS INITIAL.

    MESSAGE i061 WITH text-i13 p_wa_zycat039-fat_exp text-i09.

    CLEAR p_pago.

  ENDIF.

ENDFORM.

FORM user_command_0107.

  CASE v_okcode.

    WHEN 'MALL'.

      LOOP AT itab_zycat039_fe.

        itab_zycat039_fe-mark = 'X'.

        MODIFY itab_zycat039_fe.

      ENDLOOP.

      CLEAR v_okcode.

    WHEN 'DMALL'.

      LOOP AT itab_zycat039_fe.

        CLEAR itab_zycat039_fe-mark.

        MODIFY itab_zycat039_fe.

      ENDLOOP.

      CLEAR v_okcode.

    WHEN 'ELIM'.

      LOOP AT itab_zycat039_fe WHERE mark = 'X'.

        IF itab_zycat039_fe-status = 'EP' OR

           itab_zycat039_fe-status = 'EX' OR

           itab_zycat039_fe-status = 'ES'.

          MESSAGE i061 WITH text-i06 itab_zycat039_f-fat_comis

                            text-i07.

        ELSE.

          DELETE itab_zycat039_fe.

        ENDIF.

      ENDLOOP.

      CLEAR v_okcode.

  ENDCASE.

ENDFORM.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCA012O01

 

...

  IF v_exibe IS INITIAL.

    SET TITLEBAR '100A'.

  ELSE.

    SET TITLEBAR '100E'.

  ENDIF.

ENDMODULE.

MODULE status_0101 OUTPUT.

  IF NOT v_exibe IS INITIAL           OR

     NOT itab_zycat039_c[] IS INITIAL OR

     NOT itab_zycat039_f[] IS INITIAL OR

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

     NOT ITAB_ZYCAT039_O[] IS INITIAL.

* << Fim da exclusão

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

     NOT itab_zycat039_o[] IS INITIAL OR

     NOT itab_zycat039_fe[] IS INITIAL.

* << Fim da inclusão

    LOOP AT SCREEN.

      screen-input = 0.

      MODIFY SCREEN.

    ENDLOOP.

    LOOP AT tc_remessa-cols INTO wa_cols.

      wa_cols-screen-input = '0'.

      MODIFY tc_remessa-cols FROM wa_cols.

    ENDLOOP.

  ELSE.

    LOOP AT SCREEN.

...

 

...

      DESCRIBE TABLE itab_zycat039_c LINES v_lines.

      tc_comag-lines = v_lines + 15.

    WHEN '0103'.

      DELETE itab_zycat039_f WHERE fat_imp IS initial.

      DESCRIBE TABLE itab_zycat039_f LINES v_lines.

      tc_fatimp-lines = v_lines + 15.

    WHEN '0105'.

      DELETE itab_zycat039_o WHERE fatura IS initial.

      DESCRIBE TABLE itab_zycat039_o LINES v_lines.

      tc_outros-lines = v_lines + 15.

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

    WHEN '0107'.

      DELETE itab_zycat039_fe WHERE fat_exp IS initial.

      DESCRIBE TABLE itab_zycat039_fe LINES v_lines.

      tc_fatexp-lines = v_lines + 15.

* << Fim da inclusão

  ENDCASE.

ENDMODULE.

MODULE atualiza_tela_remessa OUTPUT.

  PERFORM atualiza_tela USING itab_zycat039_r

                               wa_zycat039r.

ENDMODULE.

MODULE status_0102 OUTPUT.

  IF NOT v_exibe IS INITIAL           OR

     NOT itab_zycat039_r[] IS INITIAL OR

     NOT itab_zycat039_f[] IS INITIAL OR

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

     NOT itab_zycat039_fe[] IS INITIAL OR

* << Fim da inclusão

     NOT ITAB_ZYCAT039_O[] IS INITIAL.

    LOOP AT SCREEN.

      screen-input = 0.

      MODIFY SCREEN.

    ENDLOOP.

    LOOP AT tc_comag-cols INTO wa_cols.

      wa_cols-screen-input = '0'.

      MODIFY tc_comag-cols FROM wa_cols.

    ENDLOOP.

  ELSE.

...

 

...

  ENDIF.

ENDMODULE.

MODULE atualiza_tela_comissao OUTPUT.

  PERFORM atualiza_tela USING itab_zycat039_c

                               wa_zycat039c.

ENDMODULE.

MODULE status_0103 OUTPUT.

  IF NOT v_exibe IS INITIAL           OR

     NOT itab_zycat039_r[] IS INITIAL OR

     NOT itab_zycat039_c[] IS INITIAL OR

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

     NOT ITAB_ZYCAT039_O[] IS INITIAL.

* << Fim da exclusão

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

     NOT itab_zycat039_o[] IS INITIAL OR

     NOT itab_zycat039_fe[] IS INITIAL.

* << Fim da inclusão

    LOOP AT SCREEN.

      screen-input = 0.

      MODIFY SCREEN.

    ENDLOOP.

    LOOP AT tc_fatimp-cols INTO wa_cols.

      wa_cols-screen-input = '0'.

      MODIFY tc_fatimp-cols FROM wa_cols.

    ENDLOOP.

  ELSE.

    LOOP AT SCREEN.

...

 

...

                               wa_zycat039f.

ENDMODULE.

MODULE status_0104 OUTPUT.

  SET PF-STATUS '0104'.

  SET TITLEBAR '0104'.

ENDMODULE.

module status_0105 output.

  if not v_exibe is initial           or

     not itab_zycat039_r[] is initial or

     not itab_zycat039_c[] is initial or

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

     not itab_zycat039_f[] is initial.

* << Fim da exclusão

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

     NOT itab_zycat039_f[] IS INITIAL OR

     NOT itab_zycat039_fe[] IS INITIAL.

* << Fim da inclusão

    loop at screen.

      screen-input = 0.

      modify screen.

    endloop.

    loop at tc_outros-cols into wa_cols.

      wa_cols-screen-input = '0'.

      modify tc_outros-cols from wa_cols.

    endloop.

  else.

    loop at screen.

...

 

...

endmodule.

module atualiza_tela_outros output.

  perform atualiza_tela using itab_zycat039_o

                               wa_zycat039o.

endmodule.

module STATUS_0106 output.

  SET PF-STATUS '0106'.

  SET TITLEBAR '106'.

  bkpf-bukrs = /pws/zycat030-bukrs.

endmodule.

* >> Início da inclusão:

MODULE status_0107 OUTPUT.

  IF NOT v_exibe IS INITIAL           OR

     NOT itab_zycat039_r[] IS INITIAL OR

     NOT itab_zycat039_c[] IS INITIAL OR

     NOT itab_zycat039_o[] IS INITIAL OR

     NOT itab_zycat039_f[] IS INITIAL.

    LOOP AT SCREEN.

      screen-input = 0.

      MODIFY SCREEN.

    ENDLOOP.

    LOOP AT tc_fatexp-cols INTO wa_cols.

      wa_cols-screen-input = '0'.

      MODIFY tc_fatexp-cols FROM wa_cols.

    ENDLOOP.

  ELSE.

    LOOP AT SCREEN.

      screen-input = 1.

      MODIFY SCREEN.

    ENDLOOP.

    LOOP AT tc_fatexp-cols INTO wa_cols.

      IF wa_cols-screen-name = 'WA_ZYCAT039FE-FAT_EXP'    OR

         wa_cols-screen-name = 'WA_ZYCAT039FE-NUM_NF'     OR

         wa_cols-screen-name = 'WA_ZYCAT039FE-DT_PG_REC'  OR

         wa_cols-screen-name = 'WA_ZYCAT039FE-VALOR'      OR

         wa_cols-screen-name = 'WA_ZYCAT039FE-VME'        OR

         wa_cols-screen-name = 'WA_ZYCAT039FE-RE'         OR

         wa_cols-screen-name = 'WA_ZYCAT039FE-DI'.

        wa_cols-screen-input = '1'.

      ELSE.

        wa_cols-screen-input = '0'.

      ENDIF.

      IF wa_cols-screen-name = 'WA_ZYCAT039FE-STATUS' AND

        NOT /pws/zycat030-processamento IS INITIAL.

        wa_cols-screen-input = '1'.

      ENDIF.

      MODIFY tc_fatexp-cols FROM wa_cols.

    ENDLOOP.

  ENDIF.

ENDMODULE.

MODULE atualiza_tela_fatexp OUTPUT.

  PERFORM atualiza_tela USING itab_zycat039_fe

                               wa_zycat039fe.

ENDMODULE.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCA012I01

 

...

    when '0102'.

      perform user_command_0102.

    when '0103'.

      perform user_command_0103.

    when '0104'.

      perform user_command_0104.

    when '0105'.

      perform user_command_0105.

    when '0106'.

      perform user_command_0106.

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

    when '0107'.

      perform user_command_0107.

* << Fim da inclusão

  endcase.

endmodule.

module atualiza_itab_remessa input.

  perform atualiza_itab tables  itab_zycat039_r

                        using   wa_zycat039r

                                tc_remessa.

endmodule.

module calcula_saldo input.

  perform calcula_saldo.

endmodule.

module match_code_associacao input.

  data: v_tabname       type dfies-tabname,

        v_fieldname     type dfies-fieldname,

        v_searchhelp    type shlpname,

        v_shlpparam     type shlpfield,

        l_display(1)    type c,

        v_line          type i,

        v_lifnr         type /pws/zycet010-lifnr,

        v_dtvencto      type /pws/zycet010-dtvencto,

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

        v_nrparcf       TYPE /pws/zycbt006-nrparcf,

        v_gsberf        TYPE /pws/zycbt006-gsberf,

* << Fim da inclusão

        v_dtvencto_c(10) type c.

  set parameter id 'BUK' field /pws/zycat030-bukrs.

  set parameter id 'FWS' field /pws/zycat030-waers.

  set parameter id 'KUN' field /pws/zycat030-bukrs_ext.

  call function 'DYNP_GET_STEPL'

       importing

            povstepl = v_line.

  case sy-dynnr.

    when '0101'.

      v_tabname     = 'WA_ZYCAT039R'.

...

 

...

    when '0102'.

      v_tabname     = 'WA_ZYCAT039C'.

      v_fieldname   = 'FAT_COMIS'.

      v_searchhelp  = '/PWS/ZYCAA173'.

      v_shlpparam   = 'NRSEQ'.

    when '0103'.

      v_tabname     = 'WA_ZYCAT039F'.

      v_fieldname   = 'FAT_IMP'.

      v_searchhelp  = '/PWS/ZYCAA174'.

      v_shlpparam   = 'NRPAGTO'.

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

    WHEN '0107'.

      v_tabname     = 'WA_ZYCAT039FE'.

      v_fieldname   = 'FAT_EXP'.

      v_searchhelp  = '/PWS/ZYCAA178'.

      v_shlpparam   = 'NRINVOIC'.

* << Fim da inclusão

  endcase.

  refresh: itab_tdynpread, itab_result.

  clear: wa_tdynpread, wa_result.

  concatenate v_tabname v_fieldname into wa_tdynpread-fieldname

    separated by '-'.

  wa_tdynpread-stepl      = v_line.

  append wa_tdynpread to itab_tdynpread.

  call function 'DYNP_VALUES_READ'

       exporting

            dyname     = '/PWS/SAPMZYCA012'

...

 

...

        separated by '-'.

      wa_tdynpread-fieldvalue = v_lifnr.

      wa_tdynpread-stepl      = v_line.

      append wa_tdynpread to itab_tdynpread.

      write v_dtvencto to v_dtvencto_c.

      concatenate v_tabname 'DTVENCTO' into wa_tdynpread-fieldname

        separated by '-'.

      wa_tdynpread-fieldvalue = v_dtvencto_c.

      wa_tdynpread-stepl      = v_line.

      append wa_tdynpread to itab_tdynpread.

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

    ELSEIF sy-dynnr = '0107'.

      IMPORT: v_nrparcf FROM MEMORY ID 'NRPARCF',

              v_gsberf  FROM MEMORY ID 'GSBERF'.

      CONCATENATE v_tabname 'NRPARCF' INTO wa_tdynpread-fieldname

        SEPARATED BY '-'.

      wa_tdynpread-fieldvalue = v_nrparcf.

      wa_tdynpread-stepl      = v_line.

      APPEND wa_tdynpread TO itab_tdynpread.

      CONCATENATE v_tabname 'GSBERF' INTO wa_tdynpread-fieldname

        SEPARATED BY '-'.

      wa_tdynpread-fieldvalue = v_gsberf.

      wa_tdynpread-stepl      = v_line.

      APPEND wa_tdynpread TO itab_tdynpread.

* << Fim da inclusão

    endif.

    call function 'DYNP_VALUES_UPDATE'

         exporting

              dyname     = sy-cprog

              dynumb     = sy-dynnr

         tables

              dynpfields = itab_tdynpread

         exceptions

              others     = 8.

    if sy-subrc eq 0.

...

 

...

       importing

            selected_folder = v_path

       exceptions

            cntl_error      = 0.

endmodule.

module atualiza_itab_outros input.

  perform atualiza_itab tables  itab_zycat039_o

                        using   wa_zycat039o

                                tc_outros.

endmodule.

* >> Início da inclusão:

MODULE atualiza_itab_fatexp INPUT.

  PERFORM atualiza_itab TABLES  itab_zycat039_fe

                        USING   wa_zycat039fe

                                tc_fatexp.

ENDMODULE.

* << Fim da inclusão

 

 

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

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

SOLICITAR O DOWNLOAD DA TELA JUNTO A EQUIPE DE PRODUTOS DO pw.CE NO TELEFONE (11) 5504-0170

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCA012                        0102

SOLICITAR O DOWNLOAD DA TELA JUNTO A EQUIPE DE PRODUTOS DO pw.CE NO TELEFONE (11) 5504-0170

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCA012                        0103

SOLICITAR O DOWNLOAD DA TELA JUNTO A EQUIPE DE PRODUTOS DO pw.CE NO TELEFONE (11) 5504-0170

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCA012                        0107

SOLICITAR O DOWNLOAD DA TELA JUNTO A EQUIPE DE PRODUTOS DO pw.CE NO TELEFONE (11) 5504-0170