Módulo: DOC. IMPORTAÇÃO
Funcionalidade: DI
Data/Hora da Publicação: 18/09/2012 00:00:00
Data/Hora Última Alteração: 16/04/2014 09:02:22
Descrição da Nota: CRIADO O TRATAMENTO PARA RATEIO POR AGRUPAMENTOS
Sintoma
Criado o tratamento para rateio por containers
Solução
Criado o tratamento para rateio por containers
9.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 12520 Data: 18/09/2012 Hora: 09:13:39
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 12520
Categoria : Melhoria
Prioridade : Alta
Versão PW.CE : 9.0
Pacote : 00001
Agrupamento : 00128
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
01848 - 00001 - 6.0 - 00024 - NA NOTA FISCAL TEXTO MENSAGEM NÃO ESTÁ LEVANDO A TAXA SISCOMEX E
04286 - 00002 - 7.0 - 00002 - DESENVOLVIMENTO PARA GERAR A MIRO NA FATURA(AMERICA LATINA)
04455 - 00003 - 7.0 - 00002 - TEXTOS CONTABEIS MIRO NA FATURA PROCESSOS AMERICA LATINA
06176 - 00004 - 7.0 - 00004 - AJUSTES PARA TRATAMENTOS DE IPI ISENÇÃO, COURIER E GRANEL NA DI E
08236 - 00005 - 7.0 - 00009 - AJUSTE RATEIO DO SEGURO.
08250 - 00006 - 7.0 - 00009 - SELEÇÃO DE CONTAS PARA ITENS SEM MATUSE
09407 - 00007 - 8.0 - 00001 - CONTABILIZAÇÃO DE FATURA DE SEGURO SEM FAT. FRETE PROCESSO FOB.
11157 - 00008 - 8.0 - 00007 - LEGISLAÇÃO PARA DESENVOLVIMENTO DE ICMS ST NA DI E NF.
11612 - 00009 - 8.0 - 00009 - DESENVOLVIMENTO PARA RATEIO POR PESO BRUTO - PERU
12287 - 00010 - 9.0 - 00001 - PERMITIR PARAMETRIZAR DATA DE CONVERSÃO DE FATURA POR PAÍS.
12435 - 00011 - 9.0 - 00001 - RESPEITAR A QUEBRA DE LINHA NO CAMPO ESPECIFICACAO
12514 - 00012 - 9.0 - 00001 - MENSAGENS INCORRETAS QUANDO VINCULA FATURA DE SERVIÇO
12570 - 00013 - 9.0 - 00002 - VALOR DO FRETE NOS ITENS DA ANA NÃO BATE COM O VALOR TOTAL
----------------------------------------------------------------------------------------------------
CRIADO O TRATAMENTO PARA RATEIO POR AGRUPAMENTOS
----------------------------------------------------------------------------------------------------
Palavras Chave:
AGRUPAMENTO - CONTAINERS - FUNCIONALIDADE NOVA
----------------------------------------------------------------------------------------------------
Objetos da nota:
DTEL /PWS/ZYCIL935
DTEL /PWS/ZYCIL934
DTEL /PWS/ZYCIL933
TABL /PWS/ZYCIE527
TABL /PWS/ZYCIE529
TABL /PWS/ZYCIT526
TABL /PWS/ZYCIT528
TABL /PWS/ZYCIE049B
TABL /PWS/ZYCIE528
TABL /PWS/ZYCIE530
TABL /PWS/ZYCIT527
TABL /PWS/ZYCIT529
TABL /PWS/ZYCIT530
CLSD /PWS/CL_ZYCI_AGRUPAMENTO
CLSD /PWS/CL_ZYCI_TRATA_MOEDAS
FUNC /PWS/ZYCI_CALCULA_DESPESAS_DI
FUNC /PWS/ZYCI_RATEIO_CUSTO
REPS /PWS/MZYCI001X01
REPS /PWS/MZYCI001F02
REPS /PWS/MZYCI003F01
REPS /PWS/MZYCI003F02
REPS /PWS/MZYCI003O01
REPS /PWS/MZYCI003X01
REPS /PWS/MZYCI004F01
REPS /PWS/MZYCI004F02
REPS /PWS/MZYCI004O01
REPS /PWS/MZYCI004X01
REPS /PWS/MZYCI059F01
REPS /PWS/MZYCI059O01
REPS /PWS/MZYCI059X01
REPS /PWS/MZYCI085F01
REPS /PWS/MZYCI085O01
REPS /PWS/MZYCI085X01
REPS /PWS/MZYCI085I01
REPS /PWS/MZYCI085TOP
REPS /PWS/SAPMZYCI085
REPT /PWS/SAPMZYCI085
REPT /PWS/SAPMZYCI059
REPT /PWS/SAPMZYCI004
REPT /PWS/SAPMZYCI003
REPT /PWS/SAPMZYCI001
DYNP /PWS/SAPMZYCI085 0001
DYNP /PWS/SAPMZYCI085 0100
DYNP /PWS/SAPMZYCI085 0101
DYNP /PWS/SAPMZYCI085 0102
TABL /PWS/ZYCIT526T
TABL /PWS/ZYCIT531
TABL /PWS/ZYCIE100B
Visão /PWS/ZYCIT062S
Visão /PWS/ZYCIT531S
Visão /PWS/ZYCIT526S
Menu /PWS/ZYCIAL
TRANS /PWS/ZYCI085
TRANS /PWS/ZYCI085_A
TRANS /PWS/ZYCI085_E
TRANS /PWS/ZYCI085_C
*APÓS A APLICAÇÃO DESSAS NOTAS, FAVOR APLICAR
*12569
*12572
*12599
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCIL935
------------------------------------------------------------------------
Elemento de dados incluído: /PWS/ZYCIL935
Classe de desenvolvimento: /PWS/ZYGL
Idioma original: PT
Descrição breve incluída: (25 caracteres), idioma: EN
"CI - Material Column Text"
Descrição breve incluída: (26 caracteres), idioma: PT
"CI - Texto Coluna Material"
Descrição breve incluída: (36 caracteres), idioma: ES
"CI - Texto de Material de la Columna"
Categoria de dados: Domínio
Domínio: CHAR20
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 (8 caracteres), idioma: EN
"Material"
Denominador breve incluído (8 caracteres), idioma: PT
"Material"
Denominador breve incluído (8 caracteres), idioma: ES
"Material"
Comprimento máximo do denominador médio: 15
Denominador médio incluído (13 caracteres), idioma: EN
"Material Text"
Denominador médio incluído (14 caracteres), idioma: PT
"Texto Material"
Denominador médio incluído (15 caracteres), idioma: ES
"Texto de Materi"
Comprimento máximo do denominador longo: 20
Denominador longo incluído (13 caracteres), idioma: EN
"Material Text"
Denominador longo incluído (14 caracteres), idioma: PT
"Texto Material"
Denominador longo incluído (17 caracteres), idioma: ES
"Texto de Material"
Comprimento máximo do título: 20
Título incluído (13 caracteres), idioma: EN
"Material Text"
Título incluído (14 caracteres), idioma: PT
"Texto Material"
Título incluído (17 caracteres), idioma: ES
"Texto de Material"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCIL934
------------------------------------------------------------------------
Elemento de dados incluído: /PWS/ZYCIL934
Classe de desenvolvimento: /PWS/ZYGL
Idioma original: PT
Descrição breve incluída: (24 caracteres), idioma: EN
"CI - DI Text Num. Column"
Descrição breve incluída: (25 caracteres), idioma: PT
"CI - Texto Coluna Num. DI"
Descrição breve incluída: (31 caracteres), idioma: ES
"CI - Texto de la Columna Num.DI"
Categoria de dados: Domínio
Domínio: CHAR20
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 (7 caracteres), idioma: EN
"DI Text"
Denominador breve incluído (8 caracteres), idioma: PT
"Texto DI"
Denominador breve incluído (8 caracteres), idioma: ES
"Texto DI"
Comprimento máximo do denominador médio: 15
Denominador médio incluído (12 caracteres), idioma: EN
"DI Text Num."
Denominador médio incluído (13 caracteres), idioma: PT
"Texto Num. DI"
Denominador médio incluído (13 caracteres), idioma: ES
"Texto Num. DI"
Comprimento máximo do denominador longo: 20
Denominador longo incluído (12 caracteres), idioma: EN
"DI Text Num."
Denominador longo incluído (13 caracteres), idioma: PT
"Texto Num. DI"
Denominador longo incluído (13 caracteres), idioma: ES
"Texto Num. DI"
Comprimento máximo do título: 20
Título incluído (12 caracteres), idioma: EN
"DI Text Num."
Título incluído (13 caracteres), idioma: PT
"Texto Num. DI"
Título incluído (13 caracteres), idioma: ES
"Texto Num. DI"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCIL933
------------------------------------------------------------------------
Elemento de dados incluído: /PWS/ZYCIL933
Classe de desenvolvimento: /PWS/ZYGL
Idioma original: PT
Descrição breve incluída: (26 caracteres), idioma: EN
"CI - Column Container Text"
Descrição breve incluída: (27 caracteres), idioma: PT
"CI - Texto Coluna Container"
Descrição breve incluída: (27 caracteres), idioma: ES
"CI - Text Container columna"
Categoria de dados: Domínio
Domínio: CHAR20
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: EN
"Container"
Denominador breve incluído (9 caracteres), idioma: PT
"Container"
Denominador breve incluído (10 caracteres), idioma: ES
"Contenedor"
Comprimento máximo do denominador médio: 15
Denominador médio incluído (14 caracteres), idioma: EN
"Container Text"
Denominador médio incluído (15 caracteres), idioma: PT
"Texto Container"
Denominador médio incluído (14 caracteres), idioma: ES
"Text Container"
Comprimento máximo do denominador longo: 20
Denominador longo incluído (14 caracteres), idioma: EN
"Container Text"
Denominador longo incluído (15 caracteres), idioma: PT
"Texto Container"
Denominador longo incluído (14 caracteres), idioma: ES
"Text Container"
Comprimento máximo do título: 20
Título incluído (14 caracteres), idioma: EN
"Container Text"
Título incluído (15 caracteres), idioma: PT
"Texto Container"
Título incluído (14 caracteres), idioma: ES
"Text Container"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCIE527
CRIAR ESTRUTURA: /PWS/ZYCIE527
DESCRIÇÃO BREVE: CI - Cabeçalho Agrupamento
COMPONENTES NOVOS
COMPONENTE: TP. COMP: TAB.REF.: CPO.REF.: AJUD. PESQU.
MANDT MANDT
NRSEQ /PWS/ZYCIL001
EMBARCA /PWS/ZYCIL008
BUKRS BUKRS
J_1BBRANCH J_1BBRANC_
NETPR WRBTR
WAERS WAERS /PWS/ZYCIE527 WAERS
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCIE529
CRIAR ESTRUTURA: /PWS/ZYCIE529
DESCRIÇÃO BREVE: CI - Itens do Pedido do Agrupamento
COMPONENTES NOVOS
COMPONENTE: TP. COMP: TAB.REF.: CPO.REF.: AJUD. PESQU.
MANDT MANDT
NRSEQ /PWS/ZYCIL001
EBELN EBELN
EBELP EBELP
MATERIAL MATNR
DESCR MAKTX
AGRUPAMENTO CHAR20
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCIE528
CRIAR ESTRUTURA: /PWS/ZYCIE528
DESCRIÇÃO BREVE: CI - Agrupamentos
COMPONENTES NOVOS
COMPONENTE: TP. COMP: TAB.REF.: CPO.REF.: AJUD. PESQU.
MANDT MANDT
NRSEQ /PWS/ZYCIL001
CONTAINER CHAR20
NUM_DI CHAR20
MATERIAL CHAR20
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCIE530
CRIAR ESTRUTURA: /PWS/ZYCIE530
DESCRIÇÃO BREVE: CI - Despesas do Agrupamento
COMPONENTES NOVOS
COMPONENTE: TP. COMP: TAB.REF.: CPO.REF.: AJUD. PESQU.
MANDT MANDT
NRSEQ /PWS/ZYCIL001
CODIGO /PWS/ZYCIL089
VLDP /PWS/ZYCIL093
WAERS WAERS /PWS/ZYCIE530 WAERS
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCIE049B
CRIAR ESTRUTURA: /PWS/ZYCIE049B
DESCRIÇÃO BREVE: CI - Itens Prestação Contas - Dados Congelados p/ NF Global
COMPONENTES NOVOS
COMPONENTE: TP. COMP: TAB.REF.: CPO.REF.: AJUD. PESQU.
MANDT MANDT
NRSEQ /PWS/ZYCIL001
TPDESP /PWS/ZYCIL036
DESCR /PWS/ZYCIL037
WAERS WAERS
VLDP /PWS/ZYCIL093 /PWS/ZYCIE049B WAERS
VLREAL /PWS/ZYCIL437 /PWS/ZYCIE049B WAERS
VLDP_AUX /PWS/ZYCIL093 /PWS/ZYCIE049B WAERS
CODIGO /PWS/ZYCIL089 /PWS/ZYCIE049B WAERS
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCIT526
CRIAR ESTRUTURA: /PWS/ZYCIT526
DESCRIÇÃO BREVE: CI - Parâmetro de Despesas por Agrupamento
CARACTERÍSTICAS
CATEGORIA DA TABELA: Tabela transparente
CLASSE DE ENTREGA: C
(x) - ATUALIZAÇÃO DE TABELAS PERMITIDA
OPÇÕES TÉCNICAS
TIPO DE DADOS: APPL2
CATEGOR. TAMANHO: 0
(x) - AR. BUFFER NÃO PERMITIDO
CAMPOS: TP. CAMPO CH: INI: TAB.VERIF.: TAB.REF.: CPO.RE
MANDT MANDT X X
LAND LAND1 X X
CODIGO /PWS/ZYCIL089 X X /PWS/ZYCIT029
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCIT527
CRIAR ESTRUTURA: /PWS/ZYCIT527
DESCRIÇÃO BREVE: CI - Cabeçalho Agrupamento
CARACTERÍSTICAS
CATEGORIA DA TABELA: Tabela transparente
CLASSE DE ENTREGA: A
(x) - ATUALIZAÇÃO DE TABELAS PERMITIDA
OPÇÕES TÉCNICAS
TIPO DE DADOS: APPL2
CATEGOR. TAMANHO: 0
(x) - AR. BUFFER NÃO PERMITIDO
CAMPOS: TP. CAMPO CH: INI: TAB.VERIF.: TAB.REF.: CPO.RE
MANDT MANDT X X
NRSEQ /PWS/ZYCIL001 X X
EMBARCA /PWS/ZYCIL008 X
BUKRS BUKRS
J_1BBRANCH J_1BBRANC_
NETPR WRBTR /PWS/ZYCIT527 WAERS
WAERS WAERS
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCIT528
CRIAR TABELA: /PWS/ZYCIT528
DESCRIÇÃO: CI - Agrupamentos
CARACTERÍSTICAS
CATEGORIA DA TABELA: Tabela transparente
CLASSE DE ENTREGA: A
(x) - ATUALIZAÇÃO DE TABELAS PERMITIDA
OPÇÕES TÉCNICAS
TIPO DE DADOS: APPL2
CATEGOR. TAMANHO: 0
(x) - AR. BUFFER NÃO PERMITIDO
CAMPOS CHV INIC. TIPO DE CAMPO
MANDT X X MANDT
NRSEQ X X /PWS/ZYCIL001
CONTAINER X X CHAR20
NUM_DI CHAR20
MATERIAL CHAR20
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCIT529
CRIAR TABELA: /PWS/ZYCIT529
DESCRIÇÃO: CI - Itens do Pedido do Agrupamento
CARACTERÍSTICAS
CATEGORIA DA TABELA: Tabela transparente
CLASSE DE ENTREGA: A
(x) - ATUALIZAÇÃO DE TABELAS PERMITIDA
OPÇÕES TÉCNICAS
TIPO DE DADOS: APPL2
CATEGOR. TAMANHO: 0
(x) - AR. BUFFER NÃO PERMITIDO
CAMPOS TP. CAMPO CH: INI:
MANDT MANDT X X
NRSEQ /PWS/ZYCIL001 X X
EBELN EBELN X X
EBELP EBELP X X
MATERIAL MATNR
DESCR MAKTX
AGRUPAMENTO CHAR20
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCIT530
CRIAR TABELA: /PWS/ZYCIT530
DESCRIÇÃO: CI - Despesas do Agrupamento
CARACTERÍSTICAS
CATEGORIA DA TABELA: Tabela transparente
CLASSE DE ENTREGA: A
(x) - ATUALIZAÇÃO DE TABELAS PERMITIDA
OPÇÕES TÉCNICAS
TIPO DE DADOS: APPL2
CATEGOR. TAMANHO: 0
(x) - AR. BUFFER NÃO PERMITIDO
CAMPOS: TP. CAMPO CH: INI:
MANDT MANDT X X
NRSEQ /PWS/ZYCIL001 X X
CONTAINER CHAR20 X X
CODIGO /PWS/ZYCIL089 X X
VLDP /PWS/ZYCIL093
WAERS WAERS
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCIT526T
MODIFICAR TABELA TRANSPARENTE: /PWS/ZYCIT526T
DESCRIÇÃO BREVE: CI - Parâmetro de Despesas por Agrupamento Textos
CARACTERÍSTICAS
CATEGORIA DA TABELA: Tabela transparente
CLASSE DE ENTREGA: C Tab.customizing, atualização só por cliente, s/import.SA
(X) - AUTUALIZAÇÃO DE TABELAS PERMITIDA
CAMPOS NOVOS
Nome campo Elem.dados CH: INI: Tab.verif.
MANDT MANDT X X
LAND LAND1 X X
CODIGO /PWS/ZYCIL089 X X /PWS/ZYCIT526
SPRAS SPRAS X X
DESCRICAO /PWS/ZYCIL018
OPÇÕES TÉCNICAS
TIPO DE DADOS: APPL2 Organização e customizing
CATEGOR. TAMANHO: 0 Registros dados esperados: 0 Até 9.3
(X) - AR. BUFFER NÃO PERMITIDO
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCIT531
MODIFICAR TABELA TRANSPARENTE: /PWS/ZYCIT531
DESCRIÇÃO BREVE: CI - Parâmetros tela Agrupamento
CARACTERÍSTICAS
CATEGORIA DA TABELA: Tabela transparente
CLASSE DE ENTREGA: C Tab.customizing, atualização só por cliente, s/import.SA
(X) - AUTUALIZAÇÃO DE TABELAS PERMITIDA
CAMPOS NOVOS
Nome campo Elem.dados CH: INI: Tab.verif.
MANDT MANDT X X
LAND LAND1 X X t005
TXT_CONTAINER /PWS/ZYCIL933 ' ' X
TXT_DI /PWS/ZYCIL934 ' ' X
TXT_MATERIAL /PWS/ZYCIL935 ' ' X
OPÇÕES TÉCNICAS
TIPO DE DADOS: APPL2 Organização e customizing
CATEGOR. TAMANHO: 0 Registros dados esperados: 0 Até 9.3
(X) - AR. BUFFER NÃO PERMITIDO
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCIE100B
*Acrescentado campos abaixo ao final
Nome campo Elem.dados Tab.verif. N CtDt Comp. Grupo
*<<Inicio Inclusão
VLDP /PWS/ZYCIL307 CURR 16
WAERS WAERS CUKY 5
VLSEG /PWS/ZYCIL307 CURR 16
VLFRE /PWS/ZYCIL307 CURR 16
VLFOB /PWS/ZYCIL307 CURR 16
*<<Fim Inclusão
----------------------------------------------------------------------------------------------------
Criar/Modificar as visões de atualização de tabela abaixo
*Na SE54 gerar novamente a visão da tabela /PWS/ZYCIT062
*Criar as visões das tabelas abaixo.
Visão /PWS/ZYCIT531
MODIFICAR VISÃO DA TABELA /PWS/ZYCIT531
INDICAÇÕES TÉCNICAS PARA DIÁLOGO
GRUPO DE AUTORIZAÇÃO: ZYCE
GRUPO DE FUNÇÕES: /PWS/ZYCIGF1
CL. DESENVOLVIMENTO: /PWS/ZYCI
TELAS DE ATUALIZAÇÃO
CTG. ATUALIZAÇÃO: (X) - NÍVEL ÚNICO
(_) - 2 NÍVEIS
Nº TELA AUTORIZAÇÃO: TELA SÍNTESE: 531
TELA INDIVIDUAL: _______
INDICAÇÕES PARA TRASNPORTE DE DADOS DE DIÁLOGO
ROTINA DE REGISTRO: (x) - ROTINA REG. STANDARD
(_) - ROTINA REG. INDIVIDUAL
*Visão /PWS/ZYCIT526
MODIFICAR VISÃO DA TABELA /PWS/ZYCIT526
INDICAÇÕES TÉCNICAS PARA DIÁLOGO
GRUPO DE AUTORIZAÇÃO: ZYCE
GRUPO DE FUNÇÕES: /PWS/ZYCIGF1
CL. DESENVOLVIMENTO: /PWS/ZYCI
TELAS DE ATUALIZAÇÃO
CTG. ATUALIZAÇÃO: (X) - NÍVEL ÚNICO
(_) - 2 NÍVEIS
Nº TELA AUTORIZAÇÃO: TELA SÍNTESE: 526
TELA INDIVIDUAL: _______
INDICAÇÕES PARA TRASNPORTE DE DADOS DE DIÁLOGO
ROTINA DE REGISTRO: (x) - ROTINA REG. STANDARD
(_) - ROTINA REG. INDIVIDUAL
----------------------------------------------------------------------------------------------------
Modificações efetuadas em CLSD /PWS/CL_ZYCI_AGRUPAMENTO
*Na SE24, criar a classe /PWS/CL_ZYCI_AGRUPAMENTO
MODIFICAR MÓDULO DE FUNÇÃO: /PWS/CL_ZYCI_AGRUPAMENTO
CARACTERÍSTICAS
DESCRIÇÃO: Agrupamento
GERAÇ.INSTÃNCIA: Público
(X) Final
DADOS GERAIS
(_) - Liberação Interna
(X) - Aritmét.ponto fixo
Status de programa: ________________
Categoria : Categoria de objeto geral
Classe de desenvolvimento: /PWS/ZYCI
*MÉTODOS
MÉTODOS TIPO VISIBIL. SÓ MODELAG. Tp.MÉTODO DESCRIÇÃO
EXISTE_AGRUP Static Method Public Verifica Existência de Agrupamento
Parâmetros TIPO Transfer.Valor Opcional Tp.Atrib Tp.Referência
BUKRS Importing x x Type T001-BUKRS
AGRUPAMENTO Returning x Type FLAG
Exceções
Fonte
METHOD existe_agrup.
DATA: wa_t001 TYPE t001,
wa_zycit526 TYPE /pws/zycit526.
SELECT SINGLE * FROM t001
INTO wa_t001
WHERE bukrs EQ bukrs.
SELECT SINGLE * FROM /pws/zycit526
INTO wa_zycit526
WHERE land EQ wa_t001-land1.
IF sy-subrc EQ 0.
agrupamento = 'X' .
ENDIF.
ENDMETHOD.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em CLSD /PWS/CL_ZYCI_TRATA_MOEDAS
Na SE24, classe /PWS/CL_ZYCI_TRATA_MOEDAS, criar método BUSCA_TAXA_DIA
Parâmetro Tipo Tp.atributo Tipo referência
/PWS/ZYCIE006 Importing type /PWS/ZYCIE006
VALOR Changing type /PWS/ZYCIE353-NETPR
*Texto fonte
METHOD busca_taxa_dia.
DATA: wa_t001 TYPE t001 ,
wa_zycit000 TYPE /pws/zycit000,
wa_zycbt007 TYPE /pws/zycbt007,
wa_zycit286 TYPE /pws/zycit286.
DATA: v_kurst type /pws/zycit000-kurst,
v_kursf TYPE /pws/zycbe033-kursf,
v_defator TYPE tcurr-ffact,
v_parafator TYPE tcurr-ffact,
v_data_conv TYPE sy-datum .
SELECT SINGLE * FROM t001
INTO wa_t001
WHERE bukrs EQ /pws/zycie006-bukrs.
SELECT SINGLE * FROM /pws/zycit000
INTO wa_zycit000
WHERE land1 EQ wa_t001-land1.
SELECT SINGLE * FROM /pws/zycbt007
INTO wa_zycbt007
WHERE bukrs EQ /pws/zycie006-bukrs.
SELECT SINGLE * FROM /pws/zycit286
INTO wa_zycit286
WHERE tpfatura = /pws/zycie006-tpfatura
AND land = wa_t001-land1 .
IF sy-subrc NE 0.
SELECT SINGLE * FROM /pws/zycit286
INTO wa_zycit286
WHERE tpfatura = /pws/zycie006-tpfatura.
ENDIF.
IF wa_zycit000-kurst IS INITIAL.
v_kurst = 'M'.
ELSE.
v_kurst = wa_zycit000-kurst.
ENDIF.
IF wa_zycit286-conversao = 'DTDOC'.
v_data_conv = /pws/zycie006-dtincl.
ELSE.
v_data_conv = sy-datum.
ENDIF.
CALL FUNCTION '/PWS/ZYCB_MONTANTE_CONVERTE'
EXPORTING
i_montante = '1'
i_demoeda = /pws/zycie006-waers
i_paramoeda = wa_zycbt007-waersb
i_ctmoeda = v_kurst
i_dtbase = v_data_conv
IMPORTING
e_txc = v_kursf
e_defator = v_defator
e_parafator = v_parafator
EXCEPTIONS
i_demoeda_nao_encontrado = 1
i_paramoeda_nao_encontrado = 2
i_ctmoeda_nao_encontrado = 3
i_dtbase_nao_encontrada = 4
taxa_nao_encontrada = 5
fator_nao_encontrado = 6
i_montante_nao_encontrado = 7
tabela_categ_nao_configurada = 8
OTHERS = 9.
IF sy-subrc EQ 0.
valor = ( ( valor * v_kursf ) / v_parafator )
/ v_defator.
ENDIF.
ENDMETHOD.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCI_CALCULA_DESPESAS_DI
*Criar a função na SE37 /PWS/ZYCI_CALCULA_DESPESAS_DI
MODIFICAR MÓDULO DE FUNÇÃO: /PWS/ZYCI_CALCULA_DESPESAS_DI
CARACTERÍSTICAS
CLASSIFICAÇÃO:
GRUPO DE FUNÇÕES: /PWS/ZYCIGF8
TEXTO BREVE: Cálculo das despesas da DI
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
NRSEQ TYPE /PWS/ZYCIT001-NRSEQ
/PWS/ZYCIE085 TYPE /PWS/ZYCIE085
MODIFICAÇÃO
Nome parâmetro Atrib.tipoTipo referência Valor proposto OpcionalTransferTexto breve
V_AGRUP TYPE FLAG x Flag geral
TABELAS:
NOME PARAM. ATRIB. TIPO REFERÊNCIA
T_ZYCIT049 LIKE /PWS/ZYCIE049B
T_ITENS LIKE /PWS/ZYCIE100B
*Texto fonte
FUNCTION /pws/zyci_calcula_despesas_di.
*"----------------------------------------------------------------------
*"*"Interface local:
*" IMPORTING
*" REFERENCE(NRSEQ) TYPE /PWS/ZYCIT001-NRSEQ
*" REFERENCE(/PWS/ZYCIE085) TYPE /PWS/ZYCIE085
*" TABLES
*" T_ZYCIT049 STRUCTURE /PWS/ZYCIE049B
*" T_ITENS STRUCTURE /PWS/ZYCIE100B
*" CHANGING
*" REFERENCE(V_AGRUP) TYPE FLAG OPTIONAL
*"----------------------------------------------------------------------
TABLES /pws/zycie006 .
DATA: itab_zycit019 TYPE STANDARD TABLE OF /pws/zycit019
WITH HEADER LINE,
itab_zycit020 TYPE STANDARD TABLE OF /pws/zycit020
WITH HEADER LINE,
itab_zycit039 TYPE STANDARD TABLE OF /pws/zycit039
WITH HEADER LINE,
itab_zycit529 TYPE STANDARD TABLE OF /pws/zycit529
WITH HEADER LINE,
itab_zycit529_aux TYPE STANDARD TABLE OF /pws/zycit529
WITH HEADER LINE,
itab_zycit530 TYPE STANDARD TABLE OF /pws/zycit530
WITH HEADER LINE,
itab_zycit003 TYPE STANDARD TABLE OF /pws/zycit003
WITH HEADER LINE.
DATA: wa_zycit062 TYPE /pws/zycit062,
wa_zycbt007 TYPE /pws/zycbt007.
DATA: v_land1 TYPE t001-land1,
v_desp TYPE /pws/zycie085-vlfob,
v_tntgew TYPE /pws/zycie003-ntgew,
v_totplan TYPE /pws/zycit003-netpr,
v_totreal TYPE /pws/zycie003-vlreal,
v_decim1 TYPE /pws/zycit245-qtd_tot,
v_decim2 TYPE /pws/zycit245-qtd_tot,
v_vlfobr TYPE /pws/zycit100-vlfob,
v_tfre TYPE /pws/zycit100-vlfre,
v_tseg TYPE /pws/zycit100-vlseg,
v_vfre TYPE /pws/zycit100-vlfre,
v_vseg TYPE /pws/zycit085-vlseg,
v_casasd TYPE /pws/zycit036-vlreal,
t_ivdesp TYPE /pws/zycie085-vlfob,
v_line TYPE sy-tabix,
v_taxa TYPE /pws/zycie085-ukursfob,
v_vtot TYPE /pws/zycie085-vlfob,
v_prog TYPE /pws/zycit036-origem ,
v_parametro TYPE /pws/zycit003-descr,
v_bukrs TYPE t001-bukrs.
CLEAR: v_decim1, v_decim2, v_totplan, v_totreal, v_tntgew .
CLEAR: itab_zycit039, itab_zycit020, itab_zycit019, /pws/zycie006.
REFRESH: itab_zycit039, itab_zycit020, itab_zycit019.
IMPORT v_parametro FROM MEMORY ID 'PARAM' .
IMPORT /pws/zycie006 FROM MEMORY ID '006' .
v_agrup = 'X' .
IF v_parametro(2) EQ '04' OR
v_parametro(2) EQ 'M' .
v_bukrs = /pws/zycie006-bukrs.
ELSE.
v_bukrs = /pws/zycie085-bukrs .
ENDIF.
SELECT SINGLE land1 FROM t001 INTO v_land1
WHERE bukrs EQ v_bukrs.
SELECT SINGLE * FROM /pws/zycbt007
INTO wa_zycbt007
WHERE bukrs EQ v_bukrs.
READ TABLE t_zycit049 INDEX 1 .
IF ( t_zycit049-codigo NE 'FRETEI' AND
t_zycit049-codigo NE 'SEGURO' ).
SELECT * FROM /pws/zycit020 INTO TABLE itab_zycit020
WHERE regio = space AND
land1 = v_land1.
IF NOT itab_zycit020[] IS INITIAL.
SELECT * FROM /pws/zycit019 INTO TABLE itab_zycit019
FOR ALL ENTRIES IN itab_zycit020
WHERE regio = itab_zycit020-regio
AND codigo = itab_zycit020-codigo
AND land1 = v_land1.
SELECT * FROM /pws/zycit039 INTO TABLE itab_zycit039
FOR ALL ENTRIES IN itab_zycit020
WHERE codmod = 'D'
AND codigo = itab_zycit020-codigo
AND land1 EQ v_land1.
ENDIF.
ELSE.
SELECT * FROM /pws/zycit039 INTO TABLE itab_zycit039
WHERE codmod = 'D'
AND codigo = t_zycit049-codigo
AND land1 EQ v_land1.
ENDIF.
IF NOT t_itens[] IS INITIAL.
SELECT * FROM /pws/zycit529
INTO TABLE itab_zycit529
FOR ALL ENTRIES IN t_itens
WHERE nrseq = t_itens-nrseqdi
AND ebeln = t_itens-ebeln
AND ebelp = t_itens-ebelp.
IF NOT itab_zycit529[] IS INITIAL.
SELECT * FROM /pws/zycit530
INTO TABLE itab_zycit530
FOR ALL ENTRIES IN itab_zycit529
WHERE nrseq EQ itab_zycit529-nrseq
AND container EQ itab_zycit529-agrupamento .
READ TABLE itab_zycit529 INDEX 1.
SELECT * FROM /pws/zycit529
INTO TABLE itab_zycit529_aux
WHERE agrupamento EQ itab_zycit529-agrupamento
AND nrseq EQ itab_zycit529-nrseq.
IF sy-subrc EQ 0.
DESCRIBE TABLE itab_zycit529_aux LINES v_line.
SELECT * FROM /pws/zycit003
INTO TABLE itab_zycit003
FOR ALL ENTRIES IN itab_zycit529_aux
WHERE nrseq EQ itab_zycit529_aux-nrseq
AND ebeln EQ itab_zycit529_aux-ebeln
AND ebelp EQ itab_zycit529_aux-ebelp .
ENDIF.
ENDIF.
ENDIF.
LOOP AT itab_zycit003.
v_totplan = v_totplan +
( itab_zycit003-qtd_iten * itab_zycit003-netpr ).
v_totreal = v_totreal +
( itab_zycit003-qtd_iten * itab_zycit003-vlreal ).
IF NOT itab_zycit003-qtd_itend IS INITIAL.
v_tntgew = v_tntgew + itab_zycit003-ntgewd.
ELSE.
v_tntgew = v_tntgew + itab_zycit003-ntgew.
ENDIF.
ENDLOOP.
READ TABLE itab_zycit003 WITH KEY
nrseq = t_itens-nrseqdi
ebeln = t_itens-ebeln
ebelp = t_itens-ebelp.
IMPORT v_prog FROM MEMORY ID 'PROG' .
LOOP AT t_zycit049 WHERE NOT vldp IS initial.
CLEAR: itab_zycit039, itab_zycit020, itab_zycit019.
IF t_zycit049-codigo IS INITIAL.
READ TABLE itab_zycit019 WITH KEY
tpdesp = t_zycit049-tpdesp.
READ TABLE itab_zycit020 WITH KEY
codigo = itab_zycit019-codigo.
READ TABLE itab_zycit039 WITH KEY
codigo = itab_zycit020-codigo.
IF sy-subrc EQ 0.
t_zycit049-codigo = itab_zycit020-codigo .
ENDIF .
ELSE.
READ TABLE itab_zycit019 WITH KEY
tpdesp = t_zycit049-tpdesp.
READ TABLE itab_zycit020 WITH KEY
codigo = t_zycit049-codigo.
READ TABLE itab_zycit039 WITH KEY
codigo = t_zycit049-codigo.
ENDIF.
IF NOT itab_zycit039 IS INITIAL.
CLEAR v_desp.
READ TABLE itab_zycit529 WITH KEY
ebeln = t_itens-ebeln
ebelp = t_itens-ebelp.
IF sy-subrc EQ 0.
READ TABLE itab_zycit530 WITH KEY
container = itab_zycit529-agrupamento
codigo = t_zycit049-codigo.
IF sy-subrc EQ 0.
IF v_parametro(2) EQ '04'.
IF itab_zycit530-waers NE wa_zycbt007-waersb.
CALL METHOD /pws/cl_zyci_trata_moedas=>trata_decimais
EXPORTING
waers = itab_zycit530-waers
CHANGING
value = itab_zycit530-vldp .
CALL METHOD /pws/cl_zyci_trata_moedas=>busca_taxa_dia
EXPORTING
/pws/zycie006 = /pws/zycie006
CHANGING
valor = itab_zycit530-vldp .
ENDIF.
ENDIF.
t_zycit049-vlreal = itab_zycit530-vldp.
ELSE.
EXIT.
ENDIF.
ENDIF.
IF itab_zycit039-divabs EQ 'X'.
IF NOT v_line IS INITIAL.
v_desp = ( 1 / v_line ) * t_zycit049-vlreal.
ENDIF.
ELSEIF itab_zycit039-peso EQ 'X'.
IF NOT v_tntgew IS INITIAL.
IF NOT itab_zycit003-qtd_itend IS INITIAL.
v_desp = ( itab_zycit003-ntgewd / v_tntgew ) *
t_zycit049-vlreal.
ELSE.
v_desp = ( itab_zycit003-ntgew / v_tntgew ) *
t_zycit049-vlreal.
ENDIF.
ENDIF.
ELSEIF itab_zycit039-proporplan EQ 'X'.
IF NOT v_totplan IS INITIAL.
READ TABLE itab_zycit003 WITH KEY
nrseq = t_itens-nrseqdi
ebeln = t_itens-ebeln
ebelp = t_itens-ebelp.
IF sy-subrc EQ 0.
v_desp = ( ( itab_zycit003-netpr *
itab_zycit003-qtd_iten ) /
v_totplan ) * t_zycit049-vlreal.
ENDIF.
ENDIF.
ELSE.
IF v_prog NE 'FAT' .
IF itab_zycit020-baseicms EQ 'X' .
IF wa_zycit062-bs_rat_icms EQ 'CIF' .
PERFORM taxa_converte(/pws/sapmzyci023)
USING /pws/zycie085-waersfob
/pws/zycie085-dttax
v_land1
CHANGING v_taxa.
IF NOT v_taxa IS INITIAL.
v_vfre = t_itens-vlfre / v_taxa.
v_vseg = t_itens-vlseg / v_taxa.
ENDIF.
v_vlfobr = t_itens-vlfob.
v_tseg = /pws/zycie085-vlseg .
IF /pws/zycie085-ukursfre NE /pws/zycie085-ukursfob.
PERFORM taxa_converte(/pws/sapmzyci023)
USING /pws/zycie085-waersfre
/pws/zycie085-dttax
v_land1
CHANGING v_taxa.
v_tfre = /pws/zycie085-vlfre * v_taxa.
PERFORM taxa_converte(/pws/sapmzyci023)
USING /pws/zycie085-waersfob
/pws/zycie085-dttax
v_land1
CHANGING v_taxa.
IF NOT v_taxa IS INITIAL.
v_tfre = v_tfre / v_taxa.
ENDIF.
ELSE.
v_tfre = /pws/zycie085-vlfre.
ENDIF.
v_vtot = /pws/zycie085-vlfob + v_tfre + v_tseg.
IF NOT v_vtot IS INITIAL.
v_desp = t_zycit049-vlreal *
( ( v_vlfobr + v_vfre + v_vseg ) / v_vtot ).
ENDIF.
IF NOT v_totreal IS INITIAL.
READ TABLE itab_zycit003 WITH KEY
nrseq = t_itens-nrseqdi
ebeln = t_itens-ebeln
ebelp = t_itens-ebelp.
IF sy-subrc EQ 0.
v_desp = ( ( itab_zycit003-vlreal *
itab_zycit003-qtd_iten ) /
v_totplan ) * t_zycit049-vlreal.
ENDIF.
ENDIF.
ELSE.
IF NOT v_totreal IS INITIAL.
READ TABLE itab_zycit003 WITH KEY
nrseq = t_itens-nrseqdi
ebeln = t_itens-ebeln
ebelp = t_itens-ebelp.
IF sy-subrc EQ 0.
v_desp = ( ( itab_zycit003-vlreal *
itab_zycit003-qtd_iten ) /
v_totplan ) * t_zycit049-vlreal.
ENDIF.
ENDIF.
ENDIF.
ELSE.
IF NOT v_totreal IS INITIAL.
READ TABLE itab_zycit003 WITH KEY
nrseq = t_itens-nrseqdi
ebeln = t_itens-ebeln
ebelp = t_itens-ebelp.
IF sy-subrc EQ 0.
v_desp = ( ( itab_zycit003-vlreal *
itab_zycit003-qtd_iten ) /
v_totreal ) * t_zycit049-vlreal.
ENDIF.
ENDIF.
ENDIF.
ELSE.
IF NOT v_totreal IS INITIAL.
READ TABLE itab_zycit003 WITH KEY
nrseq = t_itens-nrseqdi
ebeln = t_itens-ebeln
ebelp = t_itens-ebelp.
IF sy-subrc EQ 0.
v_desp = ( ( itab_zycit003-vlreal *
itab_zycit003-qtd_iten ) /
v_totreal ) * t_zycit049-vlreal.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
t_zycit049-vldp_aux = t_zycit049-vldp_aux + v_desp .
MODIFY t_zycit049.
t_ivdesp = t_ivdesp + v_desp.
ENDIF.
ENDLOOP.
t_itens-vldp = t_ivdesp.
ENDFUNCTION.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCI_RATEIO_CUSTO
FUNCTION /pws/zyci_rateio_custo.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
DATA: v_agrup .
DATA: t_itens TYPE STANDARD TABLE OF /pws/zycie100b
WITH HEADER LINE,
t_zycit049 TYPE STANDARD TABLE OF /pws/zycie049b
WITH HEADER LINE.
DATA: v_di(2) TYPE c .
CALL METHOD /pws/cl_zyci_agrupamento=>existe_agrup
EXPORTING
bukrs = v_bukrs
RECEIVING
agrupamento = v_agrup .
IMPORT v_di FROM MEMORY ID 'V_DI'.
EXPORT v_parametro TO MEMORY ID 'PARAM' .
* << Fim da inclusão
...
...
IF sy-subrc EQ 0 AND NOT v_tot_desp IS INITIAL.
itab_zycit036_aux-vlreal =
itab_despesa-netpr - v_tot_desp.
itab_zycit036_aux-waers_real = /pws/zycbt007-waersb.
ELSE.
itab_zycit036_aux-vlreal = itab_despesa-netpr.
itab_zycit036_aux-waers_real = /pws/zycbt007-waersb.
ENDIF.
ENDIF.
ELSE.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
IF v_di = 'AL' .
IF v_parametro(2) EQ '04' .
t_itens-nrseqdi = itab_zycit003-nrseq.
t_itens-ebeln = itab_zycit003-ebeln .
t_itens-ebelp = itab_zycit003-ebelp .
APPEND t_itens.
ELSE.
READ TABLE itab_zycit100a WITH KEY
ebeln = itab_zycit003-ebeln
ebelp = itab_zycit003-ebelp.
IF sy-subrc EQ 0.
IF /pws/zycie085 IS INITIAL.
SELECT SINGLE * FROM /pws/zycit085
INTO wa_zycie085
WHERE nrseqdi EQ itab_zycit100a-nrseqdi.
ENDIF.
t_itens-nrseqdi = itab_zycit100a-nrseq.
t_itens-ebeln = itab_zycit100a-ebeln .
t_itens-ebelp = itab_zycit100a-ebelp .
t_itens-vlfob = itab_zycit100a-vlfob .
t_itens-vlfre = itab_zycit100a-vlfre .
t_itens-vlseg = itab_zycit100a-vlseg .
ENDIF.
APPEND t_itens.
ENDIF.
t_zycit049-tpdesp = itab_despesa-tpdesp.
t_zycit049-vldp = itab_despesa-netpr .
t_zycit049-waers = itab_despesa-waers .
APPEND t_zycit049 .
CALL FUNCTION '/PWS/ZYCI_CALCULA_DESPESAS_DI'
EXPORTING
nrseq = /pws/zycie001-nrseq
/pws/zycie085 = wa_zycie085
TABLES
t_zycit049 = t_zycit049
t_itens = t_itens.
itab_zycit036_aux-vlreal = t_itens-vldp.
itab_zycit036_aux-waers_real = t_itens-waers.
APPEND itab_zycit036_aux.
CLEAR: t_itens, t_zycit049.
REFRESH: t_itens, t_zycit049.
CONTINUE.
ENDIF.
* << Fim da inclusão
itab_zycit036_aux-vlreal = itab_despesa-netpr -
v_tot_desp.
IF NOT itab_despesa-waers IS INITIAL.
itab_zycit036_aux-waers_real = itab_despesa-waers.
ELSE.
itab_zycit036_aux-waers_real = /pws/zycbt007-waersb.
ENDIF.
ENDIF.
ELSE.
IF NOT itab_despesa-waers IS INITIAL.
...
...
v_programa EQ 'PC' AND
/pws/zycit019-codigo EQ 'FRETEI' ) .
IF /pws/zycit093-ratpeso EQ 'N'.
itab_zycit036_aux-vlreal = itab_despesa-netpr *
itab_zycit003-brgew / v_tbrgew.
ELSE.
itab_zycit036_aux-vlreal = ( itab_zycit003-netpr *
itab_zycit003-qtd_iten / v_tot ) *
itab_despesa-netpr.
ENDIF.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
ELSE.
IF v_di = 'AL' .
IF v_parametro(2) EQ '04' .
t_itens-nrseqdi = itab_zycit003-nrseq.
t_itens-ebeln = itab_zycit003-ebeln .
t_itens-ebelp = itab_zycit003-ebelp .
APPEND t_itens.
* << Fim da inclusão
ELSE.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
READ TABLE itab_zycit100a WITH KEY
ebeln = itab_zycit003-ebeln
ebelp = itab_zycit003-ebelp.
IF sy-subrc EQ 0.
IF /pws/zycie085 IS INITIAL.
SELECT SINGLE * FROM /pws/zycit085
INTO wa_zycie085
WHERE nrseqdi EQ itab_zycit100a-nrseqdi.
ENDIF.
t_itens-nrseqdi = itab_zycit100a-nrseq.
t_itens-ebeln = itab_zycit100a-ebeln .
t_itens-ebelp = itab_zycit100a-ebelp .
t_itens-vlfob = itab_zycit100a-vlfob .
t_itens-vlfre = itab_zycit100a-vlfre .
t_itens-vlseg = itab_zycit100a-vlseg .
ENDIF.
APPEND t_itens.
ENDIF.
t_zycit049-tpdesp = itab_despesa-tpdesp.
t_zycit049-vldp = itab_despesa-netpr .
t_zycit049-waers = itab_despesa-waers .
APPEND t_zycit049 .
CALL FUNCTION '/PWS/ZYCI_CALCULA_DESPESAS_DI'
EXPORTING
nrseq = /pws/zycie001-nrseq
/pws/zycie085 = wa_zycie085
TABLES
t_zycit049 = t_zycit049
t_itens = t_itens.
itab_zycit036_aux-vlreal = t_itens-vldp.
itab_zycit036_aux-waers_real = t_itens-waers.
APPEND itab_zycit036_aux.
CLEAR: t_itens, t_zycit049.
REFRESH: t_itens, t_zycit049.
v_tot_desp =
v_tot_desp + itab_zycit036_aux-vlreal.
CONTINUE.
ENDIF.
* << Fim da inclusão
IF itab_zycit039-divabs EQ 'X'.
itab_zycit036_aux-vlreal = itab_despesa-netpr /
v_linha.
itab_zycit036_aux-waers_real =
itab_despesa-waers.
ELSEIF itab_zycit039-peso EQ 'X'.
IF NOT v_tpeso IS INITIAL.
IF NOT itab_zycit003-qtd_itend IS INITIAL.
itab_zycit036_aux-vlreal = itab_despesa-netpr *
itab_zycit003-ntgewd / v_tpeso.
...
...
IF NOT v_taxa IS INITIAL.
v_tfre = v_tfre / v_taxa.
ENDIF.
ELSE.
v_tfre = /pws/zycit085-vlfre.
ENDIF.
v_vtot = /pws/zycit085-vlfob + v_tfre + v_tseg.
IF NOT v_vtot IS INITIAL.
itab_zycit036_aux-vlreal = itab_despesa-netpr *
( ( v_vfob + v_vfre + v_vseg ) / v_vtot ).
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
itab_zycit036_aux-vlreal = ( itab_zycit003-vlreal *
itab_zycit003-qtd_iten / v_tot_vlreal ) * itab_despesa-netpr.
* << Fim da inclusão
ENDIF.
ENDIF.
ELSE.
itab_zycit036_aux-vlreal =
( itab_zycit003-vlreal * itab_zycit003-qtd_iten
* >> Início da exclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
/ v_tot_vlreal ) * itab_despesa-netpr .
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
/ v_tot_vlreal ) * itab_despesa-netpr.
* << Fim da inclusão
itab_zycit036_aux-waers_real = itab_despesa-waers.
ENDIF.
ELSE.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
IF NOT v_tot_vlreal IS INITIAL.
* << Fim da inclusão
itab_zycit036_aux-vlreal = ( itab_zycit003-vlreal *
itab_zycit003-qtd_iten / v_tot_vlreal ) *
itab_despesa-netpr.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
ENDIF.
* << Fim da inclusão
itab_zycit036_aux-waers_real = itab_despesa-waers.
ENDIF.
ENDIF.
ENDIF.
IF NOT itab_despesa-waers IS INITIAL.
itab_zycit036_aux-waers_real = itab_despesa-waers.
ELSE.
itab_zycit036_aux-waers_real = /pws/zycbt007-waersb.
ENDIF.
ENDIF.
...
...
itab_zycit036-vlreal = v_total - v_tot_desp.
ELSEIF v_linha EQ 1.
MOVE: 'FRETEI' TO itab_zycit036-codigo.
itab_zycit036-vlreal = v_total.
ENDIF.
IF NOT itab_zycit036-vlreal IS INITIAL.
IF v_waers IS INITIAL.
itab_zycit036-waers_real = /pws/zycbt007-waersb.
ELSE.
itab_zycit036-waers_real = v_waers.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
ENDIF.
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
ELSE.
IF v_di = 'AL' .
READ TABLE itab_zycit100a WITH KEY
ebeln = itab_zycit003-ebeln
ebelp = itab_zycit003-ebelp.
IF sy-subrc EQ 0.
IF /pws/zycie085 IS INITIAL.
SELECT SINGLE * FROM /pws/zycit085
INTO wa_zycie085
WHERE nrseqdi EQ itab_zycit100a-nrseqdi.
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
t_itens-nrseqdi = itab_zycit003-nrseq.
t_itens-ebeln = itab_zycit003-ebeln .
t_itens-ebelp = itab_zycit003-ebelp .
APPEND t_itens.
ENDIF.
t_zycit049-tpdesp = 'FRETEI'.
t_zycit049-vldp = v_total .
IF v_waers IS INITIAL.
t_zycit049-waers = /pws/zycbt007-waersb.
* << Fim da inclusão
ELSE.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
t_zycit049-waers = v_waers.
ENDIF.
APPEND t_zycit049 .
CALL FUNCTION '/PWS/ZYCI_CALCULA_DESPESAS_DI'
EXPORTING
nrseq = /pws/zycie001-nrseq
/pws/zycie085 = wa_zycie085
TABLES
t_zycit049 = t_zycit049
t_itens = t_itens.
itab_zycit036_aux-vlreal = t_itens-vldp.
itab_zycit036_aux-waers_real = t_itens-waers.
APPEND itab_zycit036_aux.
CLEAR: t_itens, t_zycit049.
REFRESH: t_itens, t_zycit049.
v_tot_desp =
v_tot_desp + itab_zycit036_aux-vlreal.
CONTINUE.
ENDIF.
* << Fim da inclusão
MOVE: 'FRETEI' TO itab_zycit036-codigo.
IF NOT v_tpeso IS INITIAL.
IF /pws/zycit000-land1 NE 'PE'.
IF NOT itab_zycit003-qtd_itend IS INITIAL.
itab_zycit036-vlreal = v_total *
( itab_zycit003-ntgewd / v_tpeso ).
ELSE.
itab_zycit036-vlreal = v_total *
( itab_zycit003-ntgew / v_tpeso ).
ENDIF.
...
...
IF NOT v_tot_desp IS INITIAL.
itab_zycit036-vlreal = v_total - v_tot_desp.
ELSEIF v_linha EQ 1.
MOVE: 'SEGURO' TO itab_zycit036-codigo.
itab_zycit036-vlreal = v_total.
ENDIF.
IF v_waers IS INITIAL.
itab_zycit036-waers_real = /pws/zycbt007-waersb.
ELSE.
itab_zycit036-waers_real = v_waers.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
ENDIF.
ELSE.
IF v_di = 'AL'.
READ TABLE itab_zycit100a WITH KEY
ebeln = itab_zycit003-ebeln
ebelp = itab_zycit003-ebelp.
IF sy-subrc EQ 0.
IF /pws/zycie085 IS INITIAL.
SELECT SINGLE * FROM /pws/zycit085
INTO wa_zycie085
WHERE nrseqdi EQ itab_zycit100a-nrseqdi.
ENDIF.
t_itens-nrseqdi = itab_zycit003-nrseq.
t_itens-ebeln = itab_zycit003-ebeln .
t_itens-ebelp = itab_zycit003-ebelp .
APPEND t_itens.
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
t_zycit049-tpdesp = 'SEGURO'.
t_zycit049-vldp = v_total .
IF v_waers IS INITIAL.
t_zycit049-waers = /pws/zycbt007-waersb.
* << Fim da inclusão
ELSE.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
t_zycit049-waers = v_waers.
ENDIF.
APPEND t_zycit049 .
CALL FUNCTION '/PWS/ZYCI_CALCULA_DESPESAS_DI'
EXPORTING
nrseq = /pws/zycie001-nrseq
/pws/zycie085 = wa_zycie085
TABLES
t_zycit049 = t_zycit049
t_itens = t_itens.
itab_zycit036_aux-vlreal = t_itens-vldp.
itab_zycit036_aux-waers_real = t_itens-waers.
APPEND itab_zycit036_aux.
CLEAR: t_itens, t_zycit049.
REFRESH: t_itens, t_zycit049.
v_tot_desp =
v_tot_desp + itab_zycit036_aux-vlreal.
CONTINUE.
ENDIF.
* << Fim da inclusão
MOVE: 'SEGURO' TO itab_zycit036-codigo.
IF /pws/zycit031-inco1_ci = 'FOB' AND
NOT v_tfrete IS INITIAL.
CLEAR: itab_conv .
READ TABLE itab_conv WITH KEY
waers = itab_zycit003-waers.
IF sy-subrc NE 0.
PERFORM converte_moeda
USING sy-datum
itab_zycit003-waers
...
...
SELECT SINGLE land1 FROM t001 INTO t001-land1
WHERE bukrs EQ /pws/zycbt007-bukrs.
SELECT SINGLE * FROM /pws/zycbt007
WHERE bukrs EQ v_bukrs.
READ TABLE itab_zycit100a INDEX 1.
SELECT SINGLE * FROM /pws/zycit085
WHERE nrseqdi = itab_zycit100a-nrseqdi.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
SELECT SINGLE * FROM j_1bbranch
WHERE bukrs = /pws/zycit085-bukrs
AND branch = /pws/zycit085-j_1bbranch.
SELECT SINGLE * FROM adrc
WHERE addrnumber = j_1bbranch-adrnr.
IF sy-subrc EQ 0.
CLEAR /pws/zycit062.
SELECT SINGLE * FROM /pws/zycit062
WHERE regio = adrc-region.
ENDIF.
* << Fim da inclusão
SELECT SINGLE * FROM /pws/zycit093
WHERE nrseqce = /pws/zycit085-nrbl.
DESCRIBE TABLE itab_zycit003 LINES v_line_rateio.
FREE it_desp.
v_text = v_programa.
PERFORM trata_tributos TABLES itab_zycit003
itab_zycit100a
itab_zycit036_aux
itab_despesa
USING v_text
...
...
itab_zycit036_aux-waers_real = /pws/zycbt007-waersb.
ENDIF.
ELSE.
READ TABLE itab_zycit036
WITH KEY nrseq = itab_zycit036_aux-nrseq
ebeln = itab_zycit036_aux-ebeln
ebelp = itab_zycit036_aux-ebelp
codigo = itab_zycit036_aux-codigo.
IF sy-subrc EQ 0.
CONTINUE.
ENDIF.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
IF v_di = 'AL'.
t_itens-nrseqdi = itab_zycit100a-nrseq.
t_itens-ebeln = itab_zycit100a-ebeln .
t_itens-ebelp = itab_zycit100a-ebelp .
t_itens-vlfob = itab_zycit100a-vlfob .
t_itens-vlfre = itab_zycit100a-vlfre .
t_itens-vlseg = itab_zycit100a-vlseg .
APPEND t_itens.
t_zycit049-tpdesp = itab_despesa-tpdesp.
t_zycit049-vldp = itab_despesa-netpr .
t_zycit049-waers = itab_despesa-waers .
APPEND t_zycit049 .
CALL FUNCTION '/PWS/ZYCI_CALCULA_DESPESAS_DI'
EXPORTING
nrseq = /pws/zycie001-nrseq
/pws/zycie085 = /pws/zycie085
TABLES
t_zycit049 = t_zycit049
t_itens = t_itens.
itab_zycit036_aux-vlreal = t_itens-vldp.
itab_zycit036_aux-waers_real = t_itens-waers.
ELSE.
* << Fim da inclusão
IF itab_zycit039-divabs EQ 'X'.
itab_zycit036_aux-vlreal = itab_despesa-netpr -
v_tot_desp.
itab_zycit036_aux-waers_real = itab_despesa-waers.
ELSEIF itab_zycit039-peso EQ 'X'.
IF NOT v_tpeso IS INITIAL.
...
...
itab_zycit036_aux-vlreal = itab_despesa-netpr -
v_tot_desp.
itab_zycit036_aux-waers_real = itab_despesa-waers.
ELSEIF itab_zycit039-vlreal EQ 'X'.
itab_zycit036_aux-vlreal = itab_despesa-netpr -
v_tot_desp.
itab_zycit036_aux-waers_real = itab_despesa-waers.
ELSE.
v_erro = '1'.
EXIT.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
ENDIF.
* << Fim da inclusão
ENDIF.
IF NOT itab_despesa-waers IS INITIAL.
itab_zycit036_aux-waers_real = itab_despesa-waers.
ELSE.
itab_zycit036_aux-waers_real = /pws/zycbt007-waersb.
ENDIF.
ENDIF.
ELSE.
IF NOT itab_despesa-waers IS INITIAL.
itab_zycit036_aux-waers_real = itab_despesa-waers.
...
...
ENDIF.
ELSE.
READ TABLE itab_zycit036
WITH KEY nrseq = itab_zycit036_aux-nrseq
ebeln = itab_zycit036_aux-ebeln
ebelp = itab_zycit036_aux-ebelp
codigo = itab_zycit036_aux-codigo.
IF sy-subrc EQ 0.
CONTINUE.
ENDIF.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
IF v_di = 'AL'.
t_itens-nrseqdi = itab_zycit100a-nrseq.
t_itens-ebeln = itab_zycit100a-ebeln .
t_itens-ebelp = itab_zycit100a-ebelp .
t_itens-vlfob = itab_zycit100a-vlfob .
t_itens-vlfre = itab_zycit100a-vlfre .
t_itens-vlseg = itab_zycit100a-vlseg .
APPEND t_itens.
t_zycit049-tpdesp = itab_despesa-tpdesp.
t_zycit049-vldp = itab_despesa-netpr .
t_zycit049-waers = itab_despesa-waers .
APPEND t_zycit049 .
CALL FUNCTION '/PWS/ZYCI_CALCULA_DESPESAS_DI'
EXPORTING
nrseq = /pws/zycie001-nrseq
/pws/zycie085 = /pws/zycie085
TABLES
t_zycit049 = t_zycit049
t_itens = t_itens.
itab_zycit036_aux-vlreal = t_itens-vldp.
itab_zycit036_aux-waers_real = t_itens-waers.
ELSE.
* << Fim da inclusão
IF itab_zycit039-divabs EQ 'X'.
itab_zycit036_aux-vlreal = itab_despesa-netpr / v_linha.
itab_zycit036_aux-waers_real = itab_despesa-waers.
ELSEIF itab_zycit039-peso EQ 'X'.
IF NOT v_tpeso IS INITIAL.
IF NOT itab_zycit003-qtd_itend IS INITIAL.
itab_zycit036_aux-vlreal = itab_despesa-netpr *
itab_zycit003-ntgew / v_tpeso.
ELSE.
itab_zycit036_aux-vlreal = itab_despesa-netpr *
...
...
ELSE.
v_tfre = /pws/zycit085-vlfre.
ENDIF.
v_vtot = /pws/zycit085-vlfob + v_tfre + v_tseg.
IF NOT v_vtot IS INITIAL.
itab_zycit036_aux-vlreal = itab_despesa-netpr *
( ( v_vfob + v_vfre + v_vseg ) / v_vtot ) .
ENDIF.
ENDIF.
ELSE.
* >> Início da exclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
itab_zycit036_aux-vlreal = ( itab_zycit003-netpr *
itab_zycit003-qtd_iten / v_tot ) *
itab_despesa-netpr.
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
IF NOT v_tot_vlreal IS INITIAL.
itab_zycit036_aux-vlreal =
( itab_zycit003-vlreal * itab_zycit003-qtd_iten
/ v_tot_vlreal ) * itab_despesa-netpr .
ENDIF.
* << Fim da inclusão
itab_zycit036_aux-waers_real = itab_despesa-waers.
ENDIF.
ELSE.
* >> Início da exclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
itab_zycit036_aux-vlreal = ( itab_zycit003-netpr *
itab_zycit003-qtd_iten / v_tot ) *
itab_despesa-netpr.
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
IF NOT v_tot_vlreal IS INITIAL.
itab_zycit036_aux-vlreal =
( itab_zycit003-vlreal * itab_zycit003-qtd_iten
/ v_tot_vlreal ) * itab_despesa-netpr .
ENDIF.
* << Fim da inclusão
itab_zycit036_aux-waers_real = itab_despesa-waers.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO
ENDIF.
* << Fim da inclusão
ENDIF.
ENDIF.
IF NOT itab_despesa-waers IS INITIAL.
itab_zycit036_aux-waers_real = itab_despesa-waers.
ELSE.
itab_zycit036_aux-waers_real = /pws/zycbt007-waersb.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI001X01
...
DATA: v_error.
* >> Início da inclusão:
DATA: v_agrupamento.
DATA: BEGIN OF itab_desv_li OCCURS 0.
DATA: nrseqli TYPE /pws/zycit078-nrseqli,
tpli type /pws/zycit078-tpli ,
nrli type /pws/zycit078-nrli .
DATA: END OF itab_desv_li.
* << Fim da inclusão
DATA: END OF COMMON PART a.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI001F02
...
FORM valida_trans USING p_transacao p_skip.
AUTHORITY-CHECK OBJECT 'S_TCODE'
ID 'TCD' FIELD p_transacao.
IF sy-subrc = 0.
* >> Início da inclusão: FORM VALIDA_TRANS
SET PARAMETER ID '/PWS/ZYCIP001' FIELD /pws/zycie001- nrseq.
* << Fim da inclusão
IF NOT sy-tcode EQ '/PWS/ZYCI001_E'
AND p_transacao(2) NE 'ME'.
CALL FUNCTION 'DEQUEUE_ALL'.
LOOP AT itab_zycit003.
CALL FUNCTION '/PWS/ZYCI_ENQUEUE_ZYCIT013'
EXPORTING
ebeln = itab_zycit003-ebeln
ebelp = itab_zycit003-ebelp
EXCEPTIONS
foreign_lock = 1
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI003F02
FORM multiplos_lancamentos.
* >> Início da inclusão: FORM MULTIPLOS_LANCAMENTOS
TABLES /pws/zycie085.
DATA: itab_zycit529 TYPE STANDARD TABLE OF /pws/zycit529
WITH HEADER LINE,
itab_zycit530 TYPE STANDARD TABLE OF /pws/zycit530
WITH HEADER LINE,
t_zycit049 TYPE STANDARD TABLE OF
/pws/zycie049b WITH HEADER LINE,
t_itens TYPE STANDARD TABLE OF
/pws/zycie100b WITH HEADER LINE.
DATA: v_prog TYPE /pws/zycit036-origem VALUE 'FAT'.
* << Fim da inclusão
...
...
MOVE: itab_t023-bklas TO itab_zycbt035_aux-bklas.
ENDIF.
ENDIF.
IF /pws/zycit000-clucro_ia = 'X'.
PERFORM verifica_centro_l.
ENDIF.
itab_zycbt035_aux-d_valut = /pws/zycie006-dtd_conta.
IF v_index = v_line.
itab_zycbt035_aux-wrbtr = /pws/zycie006-vltotal - v_valor_frete.
ELSE.
* >> Início da inclusão: FORM MULTIPLOS_LANCAMENTOS
IF v_agrupamento EQ 'X' .
CLEAR: t_zycit049, t_itens.
REFRESH: t_zycit049, t_itens.
MOVE: itab_zycit003-nrseq TO t_itens-nrseqdi,
itab_zycit003-ebeln TO t_itens-ebeln,
itab_zycit003-ebelp TO t_itens-ebelp.
APPEND t_itens.
t_zycit049-vldp = itab_zycit047-vldp .
t_zycit049-tpdesp = 'FRETEI' .
t_zycit049-waers = itab_zycit047-waers .
APPEND t_zycit049 .
IF NOT t_itens[] IS INITIAL.
SELECT * FROM /pws/zycit529
INTO TABLE itab_zycit529
FOR ALL ENTRIES IN t_itens
WHERE nrseq = t_itens-nrseqdi
AND ebeln = t_itens-ebeln
AND ebelp = t_itens-ebelp.
IF NOT itab_zycit529[] IS INITIAL.
SELECT * FROM /pws/zycit530
INTO TABLE itab_zycit530
FOR ALL ENTRIES IN itab_zycit529
WHERE nrseq EQ itab_zycit529-nrseq
AND container EQ itab_zycit529-agrupamento .
ENDIF.
ENDIF.
EXPORT v_prog TO MEMORY ID 'PROG' .
v_parametro = 'M'.
EXPORT v_parametro TO MEMORY ID 'PARAM' .
CALL FUNCTION '/PWS/ZYCI_CALCULA_DESPESAS_DI'
EXPORTING
nrseq = t_itens-nrseqdi
/pws/zycie085 = /pws/zycie085
TABLES
t_zycit049 = t_zycit049
t_itens = t_itens.
ENDIF.
READ TABLE itab_zycit019 WITH KEY
tpdesp = itab_zycit047-tpdesp.
IF sy-subrc EQ 0.
READ TABLE itab_zycit529 WITH KEY
ebeln = t_itens-ebeln
ebelp = t_itens-ebelp.
IF sy-subrc EQ 0.
READ TABLE itab_zycit530 WITH KEY
container = itab_zycit529-agrupamento
codigo = itab_zycit019-codigo.
ENDIF.
ENDIF.
IF itab_zycit530 IS INITIAL .
* << Fim da inclusão
itab_zycbt035_aux-wrbtr = /pws/zycie006-vltotal *
( itab_zycit003-ntgew / v_tpeso ).
* >> Início da inclusão: FORM MULTIPLOS_LANCAMENTOS
ELSE.
v_desp_aux = t_zycit049-vldp_aux.
ENDIF.
* << Fim da inclusão
v_valor_frete = v_valor_frete + itab_zycbt035_aux- wrbtr.
ENDIF.
itab_zycbt035_aux-d_gsber = itab_zycit003-gsber.
...
...
SELECT SINGLE * FROM t023 INTO itab_t023
WHERE matkl EQ itab_matuse-matkl.
APPEND itab_t023.
ENDIF.
MOVE: itab_t023-bklas TO itab_zycbt035_aux-bklas.
ENDIF.
itab_zycbt035_aux-d_valut = /pws/zycie006-dtd_conta.
IF v_index = v_line.
itab_zycbt035_aux-wrbtr = /pws/zycie006-vltotal - v_valor_seg.
ELSE.
* >> Início da inclusão: FORM MULTIPLOS_LANCAMENTOS
IF v_agrupamento EQ 'X' .
CLEAR: t_zycit049, t_itens.
REFRESH: t_zycit049, t_itens.
MOVE: itab_zycit003-nrseq TO t_itens-nrseqdi,
itab_zycit003-ebeln TO t_itens-ebeln,
itab_zycit003-ebelp TO t_itens-ebelp.
APPEND t_itens.
t_zycit049-vldp = itab_zycit047-vldp .
t_zycit049-tpdesp = 'SEGURO' .
t_zycit049-waers = itab_zycit047-waers .
APPEND t_zycit049 .
IF NOT t_itens[] IS INITIAL.
SELECT * FROM /pws/zycit529
INTO TABLE itab_zycit529
FOR ALL ENTRIES IN t_itens
WHERE nrseq = t_itens-nrseqdi
AND ebeln = t_itens-ebeln
AND ebelp = t_itens-ebelp.
IF NOT itab_zycit529[] IS INITIAL.
SELECT * FROM /pws/zycit530
INTO TABLE itab_zycit530
FOR ALL ENTRIES IN itab_zycit529
WHERE nrseq EQ itab_zycit529-nrseq
AND container EQ itab_zycit529-agrupamento .
ENDIF.
ENDIF.
EXPORT v_prog TO MEMORY ID 'PROG' .
v_parametro = 'M'.
EXPORT v_parametro TO MEMORY ID 'PARAM' .
CALL FUNCTION '/PWS/ZYCI_CALCULA_DESPESAS_DI'
EXPORTING
nrseq = t_itens-nrseqdi
/pws/zycie085 = /pws/zycie085
TABLES
t_zycit049 = t_zycit049
t_itens = t_itens.
ENDIF.
READ TABLE itab_zycit019 WITH KEY
tpdesp = itab_zycit047-tpdesp.
IF sy-subrc EQ 0.
READ TABLE itab_zycit529 WITH KEY
ebeln = t_itens-ebeln
ebelp = t_itens-ebelp.
IF sy-subrc EQ 0.
READ TABLE itab_zycit530 WITH KEY
container = itab_zycit529-agrupamento
codigo = itab_zycit019-codigo.
ENDIF.
ENDIF.
IF itab_zycit530 IS INITIAL .
* << Fim da inclusão
IF /pws/zycit031-inco1_ci = 'FOB'.
itab_zycbt035_aux-wrbtr = /pws/zycie006-vltotal *
( itab_frete-total +
( itab_zycit003-vlreal * itab_zycit003- qtd_iten ) ) /
( v_tfrete + v_tvlreal ).
ELSEIF /pws/zycit031-inco1_ci = 'CIF' OR
/pws/zycit031-inco1_ci = 'C&F'.
itab_zycbt035_aux-wrbtr = /pws/zycie006-vltotal *
( itab_zycit003-vlreal * itab_zycit003- qtd_iten )
/ v_tvlreal .
* >> Início da inclusão: FORM MULTIPLOS_LANCAMENTOS
ENDIF.
ELSE.
v_desp_aux = t_zycit049-vldp_aux.
* << Fim da inclusão
ENDIF.
v_valor_seg = v_valor_seg + itab_zycbt035_aux- wrbtr.
ENDIF.
itab_zycbt035_aux-d_gsber = itab_zycit003-gsber.
itab_zycbt035_aux-werks = itab_zycit003-werks.
IF /pws/zycit000-clucro_ia = 'X'.
PERFORM verifica_centro_l.
ENDIF.
IF NOT /pws/zycie006-frpagto EQ 'D'.
READ TABLE itab_zycmt019 WITH KEY
...
...
MOVE: itab_t023-bklas TO itab_zycbt035_aux-bklas.
ENDIF.
ENDIF.
IF /pws/zycit000-clucro_ia = 'X'.
PERFORM verifica_centro_l.
ENDIF.
itab_zycbt035_aux-d_valut = /pws/zycie006-dtd_conta.
IF v_index = v_line.
itab_zycbt035_aux-wrbtr = itab_zycit047-vldp - v_valor_desp.
ELSE.
* >> Início da inclusão: FORM MULTIPLOS_LANCAMENTOS
IF v_agrupamento EQ 'X' .
CLEAR: t_zycit049, t_itens.
REFRESH: t_zycit049, t_itens.
MOVE: itab_zycit003-nrseq TO t_itens-nrseqdi,
itab_zycit003-ebeln TO t_itens-ebeln,
itab_zycit003-ebelp TO t_itens-ebelp.
APPEND t_itens.
t_zycit049-vldp = itab_zycit047-vldp .
t_zycit049-tpdesp = itab_zycit047-tpdesp .
t_zycit049-waers = itab_zycit047-waers .
APPEND t_zycit049 .
IF NOT t_itens[] IS INITIAL.
SELECT * FROM /pws/zycit529
INTO TABLE itab_zycit529
FOR ALL ENTRIES IN t_itens
WHERE nrseq = t_itens-nrseqdi
AND ebeln = t_itens-ebeln
AND ebelp = t_itens-ebelp.
IF NOT itab_zycit529[] IS INITIAL.
SELECT * FROM /pws/zycit530
INTO TABLE itab_zycit530
FOR ALL ENTRIES IN itab_zycit529
WHERE nrseq EQ itab_zycit529-nrseq
AND container EQ itab_zycit529-agrupamento .
ENDIF.
ENDIF.
EXPORT v_prog TO MEMORY ID 'PROG' .
CALL FUNCTION '/PWS/ZYCI_CALCULA_DESPESAS_DI'
EXPORTING
nrseq = t_itens-nrseqdi
/pws/zycie085 = /pws/zycie085
TABLES
t_zycit049 = t_zycit049
t_itens = t_itens.
ENDIF.
READ TABLE itab_zycit019 WITH KEY
tpdesp = itab_zycit047-tpdesp.
IF sy-subrc EQ 0.
READ TABLE itab_zycit529 WITH KEY
ebeln = t_itens-ebeln
ebelp = t_itens-ebelp.
IF sy-subrc EQ 0.
READ TABLE itab_zycit530 WITH KEY
container = itab_zycit529-agrupamento
codigo = itab_zycit019-codigo.
ENDIF.
ENDIF.
IF itab_zycit530 IS INITIAL .
* << Fim da inclusão
READ TABLE itab_zycit019 WITH KEY
tpdesp = itab_zycit047-tpdesp.
IF sy-subrc EQ 0.
READ TABLE itab_zycit039 WITH KEY
codigo = itab_zycit019-codigo.
IF sy-subrc EQ 0.
IF itab_zycit039-divabs EQ 'X'.
IF NOT v_line IS INITIAL.
v_desp_aux = itab_zycit047-vldp / v_line .
ENDIF.
...
...
ELSE.
IF NOT v_tot_vlreal IS INITIAL.
v_desp_aux = ( itab_zycit003-vlreal *
itab_zycit003-qtd_iten / v_tot_vlreal ) *
itab_zycit047-vldp .
ENDIF.
ENDIF.
ENDIF.
ENDIF.
* >> Início da inclusão: FORM MULTIPLOS_LANCAMENTOS
ELSE.
PERFORM trata_decimais USING t_zycit049-waers
CHANGING t_zycit049- vldp_aux.
v_desp_aux = t_zycit049-vldp_aux.
ENDIF .
* << Fim da inclusão
itab_zycbt035_aux-wrbtr = v_desp_aux.
v_valor_desp = v_valor_desp + itab_zycbt035_aux- wrbtr.
ENDIF.
itab_zycbt035_aux-d_gsber = itab_zycit003-gsber.
itab_zycbt035_aux-werks = itab_zycit003-werks.
IF NOT /pws/zycie006-frpagto EQ 'D'.
READ TABLE itab_zycmt019 WITH KEY
codmod = 'PD'
tpmatnr = itab_matuse- j_1bmatuse.
...
...
AND NOT /pws/zycie001-nrseq IS INITIAL.
SELECT SINGLE *
FROM /pws/zycit263
WHERE nrseq EQ /pws/zycie001-nrseq
AND eliminado NE 'X'.
IF sy-subrc NE 0.
MESSAGE e039 WITH text-171.
ENDIF.
ENDIF.
ENDIF.
* >> Início da exclusão: FORM TP_FATURA
IF /pws/zycie006-tpfatura NE '11'.
* << Fim da exclusão
* >> Início da inclusão: FORM TP_FATURA
IF /pws/zycie006-tpfatura eq '01'.
* << Fim da inclusão
LOOP AT itab_zycit003 WHERE servico EQ 'X' .
MESSAGE e039 WITH text-227.
ENDLOOP.
ENDIF.
IF /pws/zycie006-tpfatura EQ '03'
AND /pws/zycit031-inco1_ci EQ 'C+I'.
MESSAGE e039 WITH text-217 text-212.
ENDIF.
ENDIF.
ENDFORM.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI003F01
...
ENDLOOP.
ENDIF.
CLEAR v_stop.
IF /pws/zycie006-tpfatura NE '11' AND
( /pws/zycie006-tpfatura NE '04' AND /pws/zycie006-vinserv EQ 'X' ).
IF /pws/zycie006-nrseqce IS INITIAL.
MESSAGE i015 WITH text-075.
v_stop = 'X'.
ENDIF.
ENDIF.
* >> Início da inclusão: FORM SALVAR_DADOS
IF /pws/zycie006-tpfatura EQ '04' .
PERFORM verifica_agrupamento.
IF v_msg EQ 'X' .
EXIT.
ENDIF.
ENDIF.
* << Fim da inclusão
MOVE /pws/zycie006-vltotal TO v_tot_fat2.
PERFORM retorna_decimais USING /pws/zycie006-waers
CHANGING v_tot_fat2.
IF NOT /pws/zycit477 IS INITIAL AND
( /pws/zycie006-tpfatura = '11' OR
/pws/zycie006-tpfatura = '01' ).
SELECT nrseq frpagto FROM /pws/zycit006
INTO TABLE itab_zycit006_al
WHERE nrseqce EQ /pws/zycie006-nrseqce
AND eliminado NE 'X'
...
...
* >> Início da inclusão:
FORM verifica_agrupamento.
DATA: itab_zycit530 TYPE STANDARD
TABLE OF /pws/zycit530 WITH HEADER LINE,
itab_zycit019 TYPE STANDARD
TABLE OF /pws/zycit019 WITH HEADER LINE.
DATA: BEGIN OF itab_erro OCCURS 0 .
DATA: codigo TYPE /pws/zycit530-codigo,
erro_v(1) TYPE c,
erro_w(1) TYPE c.
DATA: END OF itab_erro.
DATA: v_zeile TYPE mesg-zeile,
v_text1(50) TYPE c,
v_vldp TYPE /pws/zycit049-vldp.
CLEAR: v_msg.
SELECT * FROM /pws/zycit019 INTO TABLE itab_zycit019
FOR ALL ENTRIES IN itab_zycit047
WHERE tpdesp = itab_zycit047-tpdesp
AND land1 = v_land1.
SELECT * FROM /pws/zycit530
INTO TABLE itab_zycit530
WHERE nrseq EQ /pws/zycie001-nrseq
AND vldp NE space.
LOOP AT itab_zycit047 WHERE vldp NE space.
READ TABLE itab_zycit019 WITH KEY tpdesp = itab_zycit047-tpdesp.
IF sy-subrc EQ 0.
CALL METHOD /pws/cl_zyci_trata_moedas=>trata_decimais
EXPORTING
waers = itab_zycit047-waers
CHANGING
value = itab_zycit047-vldp .
CLEAR v_vldp.
LOOP AT itab_zycit530 WHERE codigo = itab_zycit019- codigo.
v_vldp = itab_zycit530-vldp + v_vldp.
ENDLOOP .
IF sy-subrc EQ 0.
IF v_vldp NE itab_zycit047-vldp.
MOVE : itab_zycit530-codigo TO itab_erro-codigo,
'V' TO itab_erro-erro_v.
IF itab_zycit530-waers NE itab_zycit047-waers.
MOVE : itab_zycit530-codigo TO itab_erro-codigo,
'W' TO itab_erro-erro_w.
ENDIF.
APPEND itab_erro.
ELSE.
IF itab_zycit530-waers NE itab_zycit047-waers.
MOVE : itab_zycit530-codigo TO itab_erro-codigo,
'W' TO itab_erro-erro_w.
APPEND itab_erro.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDLOOP.
CALL FUNCTION 'MESSAGES_INITIALIZE'.
CLEAR v_zeile.
LOOP AT itab_erro.
v_zeile = v_zeile + 1.
CLEAR: v_text1.
IF ( NOT itab_erro-erro_v IS INITIAL AND
NOT itab_erro-erro_w IS INITIAL ).
CONCATENATE text-225 itab_erro-codigo
text-224 INTO v_text1 SEPARATED BY space.
ELSEIF NOT itab_erro-erro_v IS INITIAL.
CONCATENATE text-225 itab_erro-codigo
text-222 INTO v_text1 SEPARATED BY space.
ELSE.
IF itab_erro-erro_w = 'D' .
CONCATENATE text-225 itab_erro-codigo
text-226 INTO v_text1 SEPARATED BY space.
ELSE.
CONCATENATE text-225 itab_erro-codigo
text-223 INTO v_text1 SEPARATED BY space.
ENDIF.
ENDIF.
CALL FUNCTION 'MESSAGE_STORE'
EXPORTING
arbgb = '/PWS/ZYCIM'
msgty = 'E'
msgv1 = v_text1
txtnr = '015'
zeile = v_zeile.
ENDLOOP.
IF NOT itab_erro[] IS INITIAL.
CALL FUNCTION 'MESSAGES_SHOW'
EXPORTING
object = '/PWS/SAPMZYCI003'
i_amodal_window = ' '.
v_msg = 'X'.
ENDIF.
ENDFORM.
FORM verifica_di CHANGING v_di.
IF NOT /pws/zycie094-nrseqce IS INITIAL.
SELECT SINGLE * FROM /pws/zycit085
WHERE nrbl EQ /pws/zycie094-nrseqce.
IF sy-subrc EQ 0.
IF NOT /pws/zycit085-dtreg IS INITIAL AND
( NOT /pws/zycit085-nrdi IS INITIAL OR
NOT /pws/zycit085-nrdire IS INITIAL OR
NOT /pws/zycit085-nana IS INITIAL ).
v_di = 'X'.
ENDIF.
ENDIF.
ENDIF.
ENDFORM.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI003O01
...
* >> Início da inclusão: MODULE LOAD_DATA
IF /pws/zycie006-tpfatura EQ '04'.
CALL METHOD /pws/cl_zyci_agrupamento=>existe_agrup
EXPORTING
bukrs = /pws/zycie006-bukrs
RECEIVING
agrupamento = v_agrupamento .
IF v_agrupamento EQ 'X' .
v_di = 'AL' .
EXPORT v_di TO MEMORY ID 'V_DI'.
CLEAR v_di.
ENDIF.
ENDIF.
* << Fim da inclusão
ENDMODULE.
...
---------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI003X01
...
* >> Início da exclusão:
v_di TYPE c ,
* << Fim da exclusão
* >> Início da inclusão:
v_di(2) TYPE c ,
* << Fim da inclusão
...
...
* >> Início da inclusão:
DATA: v_agrupamento ,
v_msg.
* << Fim da inclusão
DATA: END OF COMMON PART.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI004F01
...
FORM salva_dados.
* >> Início da inclusão: FORM SALVA_DADOS
IF v_agrupamento = 'X' .
PERFORM verifica_agrupamento.
IF v_msg = 'X' .
EXIT.
ENDIF.
ENDIF.
* << Fim da inclusão
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI004F02
...
FORM visualiza_rateio.
DATA: v_vinserv TYPE /pws/zycit026-vinserv.
DATA: v_programa LIKE /pws/zycit036-origem VALUE 'PC'.
v_vinserv = /pws/zycie026-vinserv.
EXPORT v_vinserv TO MEMORY ID 'VINSERV'.
* >> Início da inclusão: FORM VISUALIZA_RATEIO
CALL METHOD /pws/cl_zyci_agrupamento=>existe_agrup
EXPORTING
bukrs = /pws/zycie026-bukrs
RECEIVING
agrupamento = v_flag_di.
IF v_flag_di EQ 'X'.
v_di = 'AL'.
ELSE.
CLEAR v_di.
ENDIF.
EXPORT v_di TO MEMORY ID 'V_DI'.
* << Fim da inclusão
CALL FUNCTION '/PWS/ZYCI_RATEIO_CUSTO'
EXPORTING
v_programa = v_programa
v_nrseqori = /pws/zycie026-nrpres
v_visualiza = v_visualiza
v_bukrs = /pws/zycie026-bukrs
IMPORTING
v_resposta = v_resposta
v_erro = v_erro
TABLES
...
...
( /pws/zycie026-taxamu * v_parafator / v_defator ).
PERFORM trata_decimais USING /pws/zycbt007-waersb
CHANGING itab_desp_rateio-netpr.
ENDIF.
IF NOT itab_desp_rateio-netpr IS INITIAL.
itab_desp_rateio-waers = /pws/zycbt007-waersb.
ENDIF.
APPEND itab_desp_rateio.
CLEAR itab_desp_rateio.
ENDLOOP.
* >> Início da inclusão: FORM VER_RATEIO
CALL METHOD /pws/cl_zyci_agrupamento=>existe_agrup
EXPORTING
bukrs = /pws/zycie026-bukrs
RECEIVING
agrupamento = v_flag_di.
IF v_flag_di EQ 'X'.
v_di = 'AL'.
ELSE.
CLEAR v_di.
ENDIF.
EXPORT v_di TO MEMORY ID 'V_DI'.
* << Fim da inclusão
CALL FUNCTION '/PWS/ZYCI_RATEIO_CUSTO'
EXPORTING
v_programa = v_programa
v_nrseqori = /pws/zycie026-nrpres
v_visualiza = v_visualiza
v_bukrs = /pws/zycie026-bukrs
IMPORTING
v_resposta = v_resposta
v_erro = v_erro
TABLES
...
...
* >> Início da inclusão:
FORM verifica_agrupamento.
DATA: itab_zycit530 TYPE STANDARD
TABLE OF /pws/zycit530 WITH HEADER LINE.
DATA: BEGIN OF itab_erro OCCURS 0 .
DATA: codigo TYPE /pws/zycit530-codigo,
erro_v(1) TYPE c,
erro_w(1) TYPE c.
DATA: END OF itab_erro.
DATA: v_zeile TYPE mesg-zeile,
v_text1(50) TYPE c,
v_vldp TYPE /pws/zycit049-vldp.
CLEAR: v_msg.
SELECT * FROM /pws/zycit530
INTO TABLE itab_zycit530
WHERE nrseq EQ /pws/zycie026-nrseq.
LOOP AT it_zycit027_aux WHERE vldp NE space.
CLEAR v_vldp.
CALL METHOD /pws/cl_zyci_trata_moedas=>trata_decimais
EXPORTING
waers = it_zycit027_aux-waers
CHANGING
value = it_zycit027_aux-vldp.
READ TABLE it_despesa WITH KEY tpdesp = it_zycit027_aux-tpdesp.
IF sy-subrc EQ 0.
LOOP AT itab_zycit530 WHERE codigo = it_despesa-codigo.
v_vldp = itab_zycit530-vldp + v_vldp.
ENDLOOP .
IF sy-subrc EQ 0.
IF v_vldp NE it_zycit027_aux-vldp.
MOVE : itab_zycit530-codigo TO itab_erro-codigo,
'V' TO itab_erro-erro_v.
IF itab_zycit530-waers NE it_zycit027_aux-waers.
MOVE : itab_zycit530-codigo TO itab_erro-codigo,
'W' TO itab_erro-erro_w.
ENDIF.
APPEND itab_erro.
ELSE.
IF itab_zycit530-waers NE it_zycit027_aux-waers.
MOVE : itab_zycit530-codigo TO itab_erro-codigo,
'W' TO itab_erro-erro_w.
APPEND itab_erro.
ENDIF.
ENDIF.
ELSE.
MOVE: it_despesa-codigo TO itab_erro-codigo,
'D' TO itab_erro-erro_w.
ENDIF.
ENDIF.
ENDLOOP.
CALL FUNCTION 'MESSAGES_INITIALIZE'.
CLEAR v_zeile.
LOOP AT itab_erro.
v_zeile = v_zeile + 1.
CLEAR: v_text1.
IF ( NOT itab_erro-erro_v IS INITIAL AND
NOT itab_erro-erro_w IS INITIAL ).
CONCATENATE text-138 itab_erro-codigo
text-137 INTO v_text1 SEPARATED BY space.
ELSEIF NOT itab_erro-erro_v IS INITIAL.
CONCATENATE text-138 itab_erro-codigo
text-135 INTO v_text1 SEPARATED BY space.
ELSE.
IF itab_erro-erro_w = 'D' .
CONCATENATE text-138 itab_erro-codigo
text-139 INTO v_text1 SEPARATED BY space.
ELSE.
CONCATENATE text-138 itab_erro-codigo
text-136 INTO v_text1 SEPARATED BY space.
ENDIF.
ENDIF.
CALL FUNCTION 'MESSAGE_STORE'
EXPORTING
arbgb = '/PWS/ZYCIM'
msgty = 'E'
msgv1 = v_text1
txtnr = '015'
zeile = v_zeile.
ENDLOOP.
IF NOT itab_erro[] IS INITIAL.
CALL FUNCTION 'MESSAGES_SHOW'
EXPORTING
object = '/PWS/SAPMZYCI023'
i_amodal_window = ' '.
v_msg = 'X'.
ENDIF.
ENDFORM.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI004O01
...
MODULE load_data OUTPUT.
* >> Início da inclusão: MODULE LOAD_DATA
CALL METHOD /pws/cl_zyci_agrupamento=>existe_agrup
EXPORTING
bukrs = /pws/zycie026-bukrs
RECEIVING
agrupamento = v_agrupamento.
* << Fim da inclusão
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI004X01
...
* >> Início da inclusão:
DATA: v_tdata(20) TYPE c.
DATA: v_di(2) TYPE c VALUE 'AL' .
DATA v_agrupamento.
DATA v_flag_di.
* << Fim da inclusão
DATA: END OF COMMON PART a.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI059F01
...
FORM load_ifre USING p_tipo.
* >> Início da inclusão: FORM LOAD_IFRE
CLEAR: itab_zycit529, itab_zycit530.
REFRESH: itab_zycit529, itab_zycit530.
* << Fim da inclusão
DATA v_fat LIKE /pws/zycie003-vlfre_fat.
DATA v_vlrealr TYPE /pws/zycie085-vlfob.
* >> Início da exclusão: FORM LOAD_IFRE
IF wa_zycit039f-land1 NE t001-land1.
* << Fim da exclusão
CLEAR: wa_zycit039f.
SELECT SINGLE * FROM /pws/zycit039 INTO wa_zycit039f
WHERE codigo EQ 'FRETEI'
AND land1 EQ t001-land1.
wa_zycit039f-land1 = t001-land1.
* >> Início da exclusão: FORM LOAD_IFRE
ENDIF.
* << Fim da exclusão
SELECT SINGLE qtd_iten FROM /pws/zycit003 INTO /pws/zycie003-qtd_iten
WHERE nrseq EQ /pws/zycie003-nrseq
AND ebeln EQ /pws/zycie003-ebeln
AND ebelp EQ /pws/zycie003-ebelp.
IF NOT /pws/zycie003-qtd_itend IS INITIAL.
t_vmle3 = t_vmle_d2 = t_vmle = /pws/zycie003-vlreal *
/pws/zycie003-qtd_itend.
v_it_plan = /pws/zycie003-netpr * /pws/zycie003-qtd_itend.
ELSE.
t_vmle3 = t_vmle_d2 = t_vmle = /pws/zycie003-vlreal *
...
...
ENDIF.
IF NOT v_tcfr IS INITIAL.
IF s_inco1_ci EQ 'C&F' OR
s_inco1_ci EQ 'CIF'.
IF NOT v_usd IS INITIAL.
v_fat = /pws/zycie003-vlfre_fat *
/pws/zycie085-ukursfob / v_usd.
ENDIF.
ENDIF.
IF /pws/zycit000-land1 NE 'PE' .
* >> Início da inclusão: FORM LOAD_IFRE
IF v_agrupamento EQ 'X' .
CLEAR: t_zycit049, t_itens.
REFRESH: t_zycit049, t_itens.
SELECT SINGLE * FROM /pws/zycit020
INTO wa_zycit020
WHERE codigo = wa_zycit039f-codigo
AND land1 = t001-land1.
IF sy-subrc EQ 0.
SELECT SINGLE * FROM /pws/zycit019 INTO wa_zycit019
WHERE regio = wa_zycit020-regio
AND codigo = wa_zycit020-codigo
AND land1 = t001-land1.
ENDIF.
MOVE: itab_it-nrseq TO t_itens-nrseqdi,
itab_it-ebeln TO t_itens-ebeln,
itab_it-ebelp TO t_itens-ebelp,
itab_it-vlfob TO t_itens-vlfob,
itab_it-vlfre TO t_itens-vlfre,
itab_it-vlseg TO t_itens-vlseg.
APPEND t_itens.
t_zycit049-vldp = v_frete_nm .
CALL METHOD /pws/cl_zyci_trata_moedas=>trata_decimais
EXPORTING
waers = /pws/zycie085-waersfre
CHANGING
value = t_zycit049-vldp .
t_zycit049-codigo = wa_zycit020-codigo.
t_zycit049-waers = /pws/zycie085-waersfre .
APPEND t_zycit049 .
IF NOT t_itens[] IS INITIAL.
SELECT * FROM /pws/zycit529
INTO TABLE itab_zycit529
FOR ALL ENTRIES IN t_itens
WHERE nrseq = t_itens-nrseqdi
AND ebeln = t_itens-ebeln
AND ebelp = t_itens-ebelp.
IF NOT itab_zycit529[] IS INITIAL.
SELECT * FROM /pws/zycit530
INTO TABLE itab_zycit530
FOR ALL ENTRIES IN itab_zycit529
WHERE nrseq EQ itab_zycit529-nrseq
AND container EQ itab_zycit529-agrupamento .
ENDIF.
ENDIF.
CALL FUNCTION '/PWS/ZYCI_CALCULA_DESPESAS_DI'
EXPORTING
nrseq = itab_it-nrseq
/pws/zycie085 = /pws/zycie085
TABLES
t_zycit049 = t_zycit049
t_itens = t_itens.
ENDIF.
READ TABLE itab_zycit529 WITH KEY
ebeln = t_itens-ebeln
ebelp = t_itens-ebelp.
IF sy-subrc EQ 0.
READ TABLE itab_zycit530 WITH KEY
container = itab_zycit529-agrupamento
codigo = wa_zycit020-codigo.
IF sy-subrc NE 0.
IF wa_zycit039f-divabs EQ 'X'.
DESCRIBE TABLE itab_it LINES v_line.
IF NOT v_line IS INITIAL.
t_ivfre = s_frvr / v_line.
v_tot_fre = v_frete_nm / v_line.
ENDIF.
ELSEIF wa_zycit039f-vlreal EQ 'X'.
v_vlrealr = t_vmle * itab_it-dttaxbem.
IF NOT v_tmle IS INITIAL.
t_ivfre = ( v_vlrealr / v_tmle ) * s_frvr.
v_tot_fre = ( v_vlrealr / v_tmle ) * v_frete_nm.
ENDIF.
ELSEIF wa_zycit039f-proporplan EQ 'X'.
IF NOT v_tot_plan IS INITIAL.
t_ivfre = ( v_it_plan / v_tot_plan ) * s_frvr.
v_tot_fre = ( v_it_plan / v_tot_plan ) * v_frete_nm.
ENDIF.
ELSE.
IF NOT v_tntgew IS INITIAL.
t_ivfre = ( /pws/zycie003-ntgew / v_tntgew ) * s_frvr.
v_tot_fre = ( /pws/zycie003-ntgew / v_tntgew ) * v_frete_nm.
ENDIF.
ENDIF.
ELSE.
v_tot_fre = t_itens-vldp.
t_ivfre = ( s_frvr / v_frete_nm ) * v_tot_fre.
ENDIF.
ELSE.
* << Fim da inclusão
IF wa_zycit039f-divabs EQ 'X'.
DESCRIBE TABLE itab_it LINES v_line.
* >> Início da inclusão: FORM LOAD_IFRE
IF NOT v_line IS INITIAL.
* << Fim da inclusão
t_ivfre = s_frvr / v_line.
v_tot_fre = v_frete_nm / v_line.
* >> Início da inclusão: FORM LOAD_IFRE
ENDIF.
* << Fim da inclusão
ELSEIF wa_zycit039f-vlreal EQ 'X'.
v_vlrealr = t_vmle * itab_it-dttaxbem.
* >> Início da inclusão: FORM LOAD_IFRE
IF NOT v_tmle IS INITIAL.
* << Fim da inclusão
t_ivfre = ( v_vlrealr / v_tmle ) * s_frvr.
v_tot_fre = ( v_vlrealr / v_tmle ) * v_frete_nm.
* >> Início da inclusão: FORM LOAD_IFRE
ENDIF.
* << Fim da inclusão
ELSEIF wa_zycit039f-proporplan EQ 'X'.
* >> Início da inclusão: FORM LOAD_IFRE
IF NOT v_tot_plan IS INITIAL.
* << Fim da inclusão
t_ivfre = ( v_it_plan / v_tot_plan ) * s_frvr.
v_tot_fre = ( v_it_plan / v_tot_plan ) * v_frete_nm.
* >> Início da inclusão: FORM LOAD_IFRE
ENDIF.
* << Fim da inclusão
ELSE.
* >> Início da inclusão: FORM LOAD_IFRE
IF NOT v_tntgew IS INITIAL.
* << Fim da inclusão
t_ivfre = ( /pws/zycie003-ntgew / v_tntgew ) * s_frvr.
v_tot_fre = ( /pws/zycie003-ntgew / v_tntgew ) * v_frete_nm.
* >> Início da inclusão: FORM LOAD_IFRE
ENDIF.
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: FORM LOAD_IFRE
ENDIF.
* << Fim da inclusão
ELSE.
...
...
FORM load_itax USING p_tipo.
DATA v_desp_fren LIKE /pws/zycit049-vldp.
* >> Início da inclusão: FORM LOAD_ITAX
CLEAR: wa_zycit039f.
CLEAR: t_zycit049, t_itens, itab_zycit529, itab_zycit530.
REFRESH: t_zycit049, t_itens, itab_zycit529, itab_zycit530.
IF v_agrupamento EQ 'X' .
CLEAR: t_zycit049, t_itens.
REFRESH: t_zycit049, t_itens.
MOVE: itab_it-nrseq TO t_itens-nrseqdi,
itab_it-ebeln TO t_itens-ebeln,
itab_it-ebelp TO t_itens-ebelp,
itab_it-vlfob TO t_itens-vlfob,
itab_it-vlfre TO t_itens-vlfre,
itab_it-vlseg TO t_itens-vlseg.
APPEND t_itens.
IF NOT t_itens[] IS INITIAL.
SELECT * FROM /pws/zycit529
INTO TABLE itab_zycit529
FOR ALL ENTRIES IN t_itens
WHERE nrseq = t_itens-nrseqdi
AND ebeln = t_itens-ebeln
AND ebelp = t_itens-ebelp.
IF NOT itab_zycit529[] IS INITIAL.
SELECT * FROM /pws/zycit530
INTO TABLE itab_zycit530
FOR ALL ENTRIES IN itab_zycit529
WHERE nrseq EQ itab_zycit529-nrseq
AND container EQ itab_zycit529-agrupamento .
ENDIF.
ENDIF.
* << Fim da inclusão
MOVE itab_it-dttaxbem TO /pws/zycie100a-dttaxbem.
IF p_tipo NE 'B' OR t_ivmle IS INITIAL.
IF NOT v_usd IS INITIAL.
t_ivmle_d2 = t_ivmle = t_vmle * /pws/zycie100a-dttaxbem / v_usd.
ENDIF.
ENDIF.
IF v_idx EQ v_ipt AND v_ipt NE 1.
PERFORM valor_cfr USING p_tipo.
IF p_tipo = 'I' OR p_tipo = 'T'.
CASE s_inco1_ci.
...
...
IF s_inco1_ci = 'FOB'.
a_itseg = a_itseg + t_ivseg.
ELSEIF s_inco1_ci = 'C&F'.
a_itseg = a_itseg + wa_it-vlseg.
ELSEIF s_inco1_ci = 'CIF'.
a_itseg = a_itseg + wa_it-vlseg.
ELSE.
a_itseg = a_itseg + t_ivseg.
ENDIF.
v_tseg = v_tseg + v_tot_seg.
* >> Início da inclusão: FORM LOAD_ITAX
ENDIF.
CLEAR: t_zycit049[], t_zycit049[] .
REFRESH: t_zycit049[], t_zycit049[] .
IF NOT v_agrupamento IS INITIAL .
LOOP AT itab_zycit049.
MOVE-CORRESPONDING itab_zycit049 TO t_zycit049.
APPEND t_zycit049.
ENDLOOP.
CALL FUNCTION '/PWS/ZYCI_CALCULA_DESPESAS_DI'
EXPORTING
nrseq = /pws/zycie001-nrseq
/pws/zycie085 = /pws/zycie085
TABLES
t_zycit049 = t_zycit049
t_itens = t_itens.
LOOP AT itab_zycit049.
READ TABLE t_zycit049 WITH KEY nrseq = itab_zycit049-nrseq
tpdesp = itab_zycit049-tpdesp.
IF sy-subrc EQ 0.
IF NOT itab_zycit049-vldp IS INITIAL.
IF itab_zycit049-waers NE /pws/zycbt007-waersb.
PERFORM taxa_converte USING itab_zycit049-waers
/pws/zycie085-dttax
CHANGING s_tax.
itab_zycit049-vlreal = itab_zycit049-vldp * s_tax.
ELSE.
itab_zycit049-vlreal = itab_zycit049-vldp.
ENDIF.
ENDIF.
itab_zycit049-vldp_aux = t_itens-vldp.
MODIFY itab_zycit049 TRANSPORTING vlreal vldp_aux
WHERE nrseq = itab_zycit049-nrseq
AND tpdesp = itab_zycit049-tpdesp.
ENDIF.
ENDLOOP.
* << Fim da inclusão
ENDIF.
CLEAR: t_ivdesp.
* >> Início da exclusão: FORM LOAD_ITAX
LOOP AT itab_zycit049 WHERE baseii EQ 'X' AND NOT vlreal IS initial.
* << Fim da exclusão
* >> Início da inclusão: FORM LOAD_ITAX
LOOP AT itab_zycit049 WHERE NOT vlreal IS initial.
v_tabix = sy-tabix.
IF v_agrupamento EQ 'X' .
READ TABLE itab_zycit529 WITH KEY
ebeln = t_itens-ebeln
ebelp = t_itens-ebelp.
IF sy-subrc EQ 0.
READ TABLE itab_zycit530 WITH KEY
container = itab_zycit529-agrupamento
codigo = itab_zycit020-codigo.
IF sy-subrc EQ 0.
CONTINUE.
ENDIF.
ENDIF.
ENDIF.
* << Fim da inclusão
IF v_idx EQ v_ipt AND v_ipt NE 1.
IF itab_zycit049-divabs = 'X'.
t_ivdes2 = ( 1 / v_ipt ) * itab_zycit049-vlreal.
ELSEIF itab_zycit049-peso = 'X'.
t_ivdes2 = ( wa_it-ntgew / v_tntgew ) *
itab_zycit049-vlreal.
ELSEIF itab_zycit049-proporplan = 'X'.
t_ivdes2 = ( v_it_plan / v_tot_plan ) * itab_zycit049-vlreal.
ELSE.
t_ivdes2 = ( v_it_plan / v_tot_plan ) * itab_zycit049-vlreal.
ENDIF.
IF p_tipo = 'I'.
itab_zycit049-vldp_aux = itab_zycit049-vldp_aux + t_ivdes2.
* >> Início da exclusão: FORM LOAD_ITAX
MODIFY itab_zycit049 INDEX sy-tabix TRANSPORTING vldp_aux.
* << Fim da exclusão
* >> Início da inclusão: FORM LOAD_ITAX
MODIFY itab_zycit049 INDEX v_tabix TRANSPORTING vldp_aux.
* << Fim da inclusão
ENDIF.
ELSE.
IF itab_zycit049-divabs = 'X'.
t_ivdes2 = ( 1 / v_ipt ) * itab_zycit049-vlreal.
ELSEIF itab_zycit049-peso = 'X'.
t_ivdes2 = ( wa_it-ntgew / v_tntgew ) *
itab_zycit049-vlreal.
ELSEIF itab_zycit049-proporplan = 'X'.
t_ivdes2 = ( v_it_plan / v_tot_plan ) * itab_zycit049-vlreal.
ELSE.
t_ivdes2 = ( v_it_plan / v_tot_plan ) * itab_zycit049-vlreal.
ENDIF.
IF p_tipo = 'I'.
itab_zycit049-vldp_aux = itab_zycit049-vldp_aux + t_ivdes2.
* >> Início da exclusão: FORM LOAD_ITAX
MODIFY itab_zycit049 INDEX sy-tabix TRANSPORTING vldp_aux.
* << Fim da exclusão
* >> Início da inclusão: FORM LOAD_ITAX
MODIFY itab_zycit049 INDEX v_tabix TRANSPORTING vldp_aux.
* << Fim da inclusão
ENDIF.
ENDIF.
IF itab_zycit049-divabs = 'X'.
t_ivdes3 = ( 1 / v_ipt ) * itab_zycit049-vldp.
ELSEIF itab_zycit049-peso = 'X'.
t_ivdes3 = ( wa_it-ntgew / v_tntgew ) * itab_zycit049-vldp.
ELSEIF itab_zycit049-proporplan = 'X'.
t_ivdes3 = ( v_it_plan / v_tot_plan ) * itab_zycit049-vlreal.
ELSE.
t_ivdes3 = ( v_it_plan / v_tot_plan ) * itab_zycit049-vldp.
...
...
IF itab_zycit049-vldp_aux EQ 0.
DELETE itab_trib INDEX sy-tabix.
CONTINUE.
ENDIF.
MOVE t_ivdes2 TO itab_trib-t_ivdesp.
MODIFY itab_trib INDEX sy-tabix.
ELSE.
IF NOT itab_zycit049-vldp_aux EQ 0.
MOVE: itab_it-ebeln TO itab_trib-ebeln,
itab_it-ebelp TO itab_trib-ebelp,
* >> Início da exclusão: FORM LOAD_ITAX
t_ivdes2 TO itab_trib-t_ivdesp,
* << Fim da exclusão
* >> Início da inclusão: FORM LOAD_ITAX
itab_zycit049-vldp_aux TO itab_trib-t_ivdesp,
* << Fim da inclusão
itab_zycit049-waers TO itab_trib-waers,
itab_zycit049-tpdesp TO itab_trib-tpdesp.
APPEND itab_trib.
ENDIF.
ENDIF.
ENDLOOP.
* >> Início da inclusão: FORM LOAD_ITAX
CLEAR t_zycit049.
REFRESH t_zycit049.
SELECT SINGLE * FROM /pws/zycit039 INTO wa_zycit039f
WHERE codigo EQ 'SEGURO'
AND land1 EQ t001-land1.
wa_zycit039f-land1 = t001-land1.
READ TABLE itab_zycit529 WITH KEY
ebeln = t_itens-ebeln
ebelp = t_itens-ebelp.
IF sy-subrc EQ 0.
READ TABLE itab_zycit530 WITH KEY
container = itab_zycit529-agrupamento
codigo = wa_zycit039f-codigo.
ENDIF.
IF itab_zycit530 IS INITIAL .
* << Fim da inclusão
IF s_inco1_ci EQ 'CIF'.
READ TABLE itab_zycit003 WITH KEY nrseq = itab_it-nrseq
ebeln = itab_it-ebeln
ebelp = itab_it-ebelp.
IF sy-subrc EQ 0.
v_cif_fat = ( itab_zycit003-vlreal * itab_it-qtd_iten ) +
itab_zycit003-vlfre_fat + itab_zycit003-vlseg_fat .
ENDIF.
IF NOT v_tcfr IS INITIAL AND NOT v_tcif_fat IS INITIAL.
t_ivseg = itab_it-vlseg =
( v_cif_fat / ( v_tcif_fat ) ) * s_stvr.
v_tot_seg = ( v_cif_fat / ( v_tcif_fat ) ) * v_sgtofat.
ENDIF.
ELSE.
IF NOT v_tcfr IS INITIAL.
t_ivseg = itab_it-vlseg = ( v_cfr / ( v_tcfr ) ) * s_stvr.
v_tot_seg = ( v_cfr / ( v_tcfr ) ) * v_sgtofat.
* >> Início da inclusão: FORM LOAD_ITAX
ENDIF.
ENDIF.
ELSE.
t_zycit049-vldp = /pws/zycie085-vlseg .
CALL METHOD /pws/cl_zyci_trata_moedas=>trata_decimais
EXPORTING
waers = /pws/zycie085-waersseg
CHANGING
value = t_zycit049-vldp .
t_zycit049-codigo = wa_zycit039f-codigo.
t_zycit049-waers = /pws/zycie085-waersseg .
APPEND t_zycit049 .
CALL FUNCTION '/PWS/ZYCI_CALCULA_DESPESAS_DI'
EXPORTING
nrseq = itab_it-nrseq
/pws/zycie085 = /pws/zycie085
TABLES
t_zycit049 = t_zycit049
t_itens = t_itens.
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: FORM LOAD_ITAX
t_ivseg = itab_it-vlseg = t_itens-vldp..
* << Fim da inclusão
ENDIF.
t_ivmle = itab_it-vlfob.
CASE s_inco1_ci.
WHEN 'FOB'.
t_ivadu = t_ivmle + t_ivseg + t_ivfre + t_ivdesp.
WHEN 'C&F'.
...
...
FORM refresh_all.
* >> Início da inclusão: FORM REFRESH_ALL
IF v_agrupamento = 'X' .
PERFORM verifica_agrupamento.
IF v_msg = 'X' .
EXIT.
ENDIF.
ENDIF.
* << Fim da inclusão
...
...
* >> Início da inclusão:
FORM verifica_agrupamento.
DATA: itab_zycit530 TYPE STANDARD
TABLE OF /pws/zycit530 WITH HEADER LINE.
DATA: BEGIN OF itab_erro OCCURS 0 .
DATA: codigo TYPE /pws/zycit530-codigo,
erro_v(1) TYPE c,
erro_w(1) TYPE c.
DATA: END OF itab_erro.
DATA: v_zeile TYPE mesg-zeile,
v_text1(50) TYPE c,
v_vldp TYPE /pws/zycit049-vldp.
CLEAR: v_msg.
SELECT * FROM /pws/zycit530
INTO TABLE itab_zycit530
WHERE nrseq EQ /pws/zycie001-nrseq
AND vldp NE space.
LOOP AT itab_zycit049 WHERE vldp NE space.
CLEAR v_vldp.
LOOP AT itab_zycit530 WHERE codigo = itab_zycit049-codigo.
v_vldp = itab_zycit530-vldp + v_vldp.
ENDLOOP .
IF sy-subrc EQ 0.
IF v_vldp NE itab_zycit049-vldp.
MOVE : itab_zycit530-codigo TO itab_erro-codigo,
'V' TO itab_erro-erro_v.
IF itab_zycit530-waers NE itab_zycit049-waers.
MOVE : itab_zycit530-codigo TO itab_erro-codigo,
'W' TO itab_erro-erro_w.
ENDIF.
APPEND itab_erro.
ELSE.
IF itab_zycit530-waers NE itab_zycit049-waers.
MOVE : itab_zycit530-codigo TO itab_erro-codigo,
'W' TO itab_erro-erro_w.
APPEND itab_erro.
ENDIF.
ENDIF.
ENDIF.
ENDLOOP.
CLEAR v_vldp.
LOOP AT itab_zycit530 WHERE codigo EQ 'FRETEI' .
v_vldp = itab_zycit530-vldp + v_vldp.
ENDLOOP.
IF sy-subrc EQ 0.
v_frete = /pws/zycie093-prepaid + /pws/zycie093-collect -
/pws/zycie093-ternacion.
CALL METHOD /pws/cl_zyci_trata_moedas=>trata_decimais
EXPORTING
waers = /pws/zycie085-waersfre
CHANGING
value = v_frete .
IF v_vldp NE v_frete.
MOVE : itab_zycit530-codigo TO itab_erro-codigo,
'V' TO itab_erro-erro_v.
LOOP AT itab_zycit530 WHERE codigo EQ 'FRETEI' AND
waers NE /pws/zycie093-waersfre.
MOVE : itab_zycit530-codigo TO itab_erro-codigo,
'W' TO itab_erro-erro_w.
COLLECT itab_erro.
ENDLOOP.
ELSE.
LOOP AT itab_zycit530 WHERE codigo EQ 'FRETEI' AND
waers NE /pws/zycie093-waersfre.
MOVE : itab_zycit530-codigo TO itab_erro-codigo,
'W' TO itab_erro-erro_w.
COLLECT itab_erro.
ENDLOOP.
ENDIF.
ENDIF.
CLEAR v_vldp.
LOOP AT itab_zycit530 WHERE codigo EQ 'SEGURO' .
v_vldp = itab_zycit530-vldp + v_vldp.
ENDLOOP.
IF sy-subrc EQ 0.
IF v_vldp NE /pws/zycie085-vlseg.
MOVE : itab_zycit530-codigo TO itab_erro-codigo,
'V' TO itab_erro-erro_v.
LOOP AT itab_zycit530 WHERE codigo EQ 'SEGURO'
AND waers NE /pws/zycie085-waersseg.
MOVE : itab_zycit530-codigo TO itab_erro-codigo,
'W' TO itab_erro-erro_w.
COLLECT itab_erro.
ENDLOOP.
ELSE.
LOOP AT itab_zycit530 WHERE codigo EQ 'SEGURO'
AND waers NE /pws/zycie085-waersseg.
MOVE : itab_zycit530-codigo TO itab_erro-codigo,
'W' TO itab_erro-erro_w.
COLLECT itab_erro.
ENDLOOP.
ENDIF.
ENDIF.
CALL FUNCTION 'MESSAGES_INITIALIZE'.
CLEAR v_zeile.
LOOP AT itab_erro.
v_zeile = v_zeile + 1.
CLEAR: v_text1.
IF ( NOT itab_erro-erro_v IS INITIAL AND
NOT itab_erro-erro_w IS INITIAL ).
CONCATENATE text-243 itab_erro-codigo
text-242 INTO v_text1 SEPARATED BY space.
ELSEIF NOT itab_erro-erro_v IS INITIAL.
CONCATENATE text-243 itab_erro-codigo
text-240 INTO v_text1 SEPARATED BY space.
ELSE.
IF itab_erro-erro_w = 'D' .
CONCATENATE text-243 itab_erro-codigo
text-244 INTO v_text1 SEPARATED BY space.
ELSE.
CONCATENATE text-243 itab_erro-codigo
text-241 INTO v_text1 SEPARATED BY space.
ENDIF.
ENDIF.
CALL FUNCTION 'MESSAGE_STORE'
EXPORTING
arbgb = '/PWS/ZYCIM'
msgty = 'E'
msgv1 = v_text1
txtnr = '015'
zeile = v_zeile.
ENDLOOP.
IF NOT itab_erro[] IS INITIAL.
CALL FUNCTION 'MESSAGES_SHOW'
EXPORTING
object = '/PWS/SAPMZYCI059'
i_amodal_window = ' '.
v_msg = 'X'.
ENDIF.
ENDFORM.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI059O01
...
* >> Início da inclusão: MODULE LOAD_DATA
CALL METHOD /pws/cl_zyci_agrupamento=>existe_agrup
EXPORTING
bukrs = /pws/zycie085-bukrs
RECEIVING
agrupamento = v_agrupamento.
* << Fim da inclusão
ENDMODULE.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI059X01
...
* >> Início da inclusão:
DATA: itab_zycit529 TYPE STANDARD TABLE OF /pws/zycit529
WITH HEADER LINE,
itab_zycit530 TYPE STANDARD TABLE OF /pws/zycit530
WITH HEADER LINE,
t_zycit049 TYPE STANDARD TABLE OF
/pws/zycie049b WITH HEADER LINE,
t_itens TYPE STANDARD TABLE OF
/pws/zycie100b WITH HEADER LINE.
DATA: wa_zycit020 TYPE /pws/zycit020,
wa_zycit019 TYPE /pws/zycit019.
DATA v_agrupamento.
DATA v_di(2) TYPE c VALUE 'AL'.
* << Fim da inclusão
DATA: END OF COMMON PART.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI085F01
*Criar o include conforme abaixo programa
*----------------------------------------------------------------------*
***INCLUDE /PWS/MZYCI085F01 .
*----------------------------------------------------------------------*
*&---------------------------------------------------------------------*
*& Form trata_tela_0001
*&---------------------------------------------------------------------*
FORM trata_tela_0001.
CASE okcode.
WHEN 'ENTE' .
PERFORM seleciona_dados.
WHEN 'BACK' OR 'LEAVE'.
LEAVE PROGRAM.
ENDCASE.
CLEAR okcode.
ENDFORM. " trata_tela_0001
*&---------------------------------------------------------------------*
*& Form STATUS_0001
*&---------------------------------------------------------------------*
FORM status_0001.
AUTHORITY-CHECK OBJECT 'S_TCODE'
ID 'TCD'
FIELD sy-tcode.
IF sy-subrc NE 0.
MESSAGE e015 WITH text-007 text-008.
ENDIF.
GET PARAMETER ID '/PWS/ZYCIP001' FIELD /pws/zycie001-nrseq.
SET PF-STATUS '0001'.
SET TITLEBAR '0001'.
ENDFORM. " STATUS_0001
*&---------------------------------------------------------------------*
*& Form SELECIONA_EMBARQUE
*&---------------------------------------------------------------------*
FORM seleciona_dados.
SELECT SINGLE * FROM /pws/zycit001
INTO /pws/zycie001
WHERE nrseq EQ /pws/zycie001-nrseq.
IF sy-subrc NE 0.
MESSAGE w015 WITH text-001.
EXIT.
ELSE.
SELECT SINGLE land1 INTO v_land1 FROM t001
WHERE bukrs = /pws/zycie001-bukrs.
SELECT /pws/zycit526~mandt /pws/zycit526~land
/pws/zycit526~codigo /pws/zycit526t~descricao
INTO TABLE itab_despesas
FROM /pws/zycit526
INNER JOIN /pws/zycit526t
ON ( /pws/zycit526~land EQ /pws/zycit526t~land
AND /pws/zycit526~codigo EQ /pws/zycit526t~codigo )
WHERE /pws/zycit526~land EQ v_land1
AND /pws/zycit526t~spras EQ sy-langu .
ENDIF.
IF sy-tcode EQ '/PWS/ZYCI085_C'.
/pws/zycie527-mandt = sy-mandt.
/pws/zycie527-nrseq = /pws/zycie001-nrseq.
/pws/zycie527-embarca = /pws/zycie001-embarca.
/pws/zycie527-bukrs = /pws/zycie001-bukrs .
/pws/zycie527-j_1bbranch = /pws/zycie001-j_1bbranch.
/pws/zycie527-netpr = /pws/zycie001-netpr.
/pws/zycie527-waers = /pws/zycie001-waers.
SELECT ebeln ebelp matnr descr FROM /pws/zycit003
INTO TABLE itab_zycit003
WHERE nrseq EQ /pws/zycie001-nrseq.
IF sy-subrc EQ 0.
LOOP AT itab_zycit003.
MOVE-CORRESPONDING itab_zycit003 TO itab_zycit529.
itab_zycit529-mandt = sy-mandt.
itab_zycit529-nrseq = /pws/zycie001-nrseq.
itab_zycit529-material = itab_zycit003-matnr.
APPEND itab_zycit529.
ENDLOOP.
ENDIF.
ELSE.
SELECT SINGLE * FROM /pws/zycit527
INTO /pws/zycie527
WHERE nrseq EQ /pws/zycie001-nrseq.
SELECT * FROM /pws/zycit528
INTO TABLE itab_zycit528
WHERE nrseq EQ /pws/zycie001-nrseq.
SELECT * FROM /pws/zycit529
INTO TABLE itab_zycit529
WHERE nrseq EQ /pws/zycie001-nrseq.
SELECT * FROM /pws/zycit530
INTO TABLE itab_zycit530
WHERE nrseq EQ /pws/zycie001-nrseq.
ENDIF.
wa_zycie527_sv = /pws/zycie527.
itab_zycit528_sv[] = itab_zycit528[].
itab_zycit529_sv[] = itab_zycit529[].
itab_zycit530_sv[] = itab_zycit530[].
CALL SCREEN '0100' .
ENDFORM. " SELECIONA_DADOS
*&---------------------------------------------------------------------*
*& Form status_0100
*&---------------------------------------------------------------------*
FORM status_0100.
DATA: v_trilha_auditoria TYPE /pws/zyglt009-trilha_auditoria.
CLEAR itab_botoes.
REFRESH itab_botoes.
CLEAR v_trilha_auditoria.
SELECT trilha_auditoria FROM /pws/zyglt009
INTO v_trilha_auditoria
UP TO 1 ROWS
WHERE bukrs = space.
ENDSELECT.
IF v_trilha_auditoria IS INITIAL OR
sy-tcode = '/PWS/ZYCI085_C'.
itab_botoes-fcode = 'LOG_TRILHA'.
APPEND itab_botoes.
ENDIF.
IF sy-tcode NE '/PWS/ZYCI085_A'.
itab_botoes-fcode = 'DELETE'.
APPEND itab_botoes.
ENDIF.
SET TITLEBAR '0100'.
SET PF-STATUS '0100' EXCLUDING itab_botoes.
ENDFORM. " status_0100
*&---------------------------------------------------------------------*
*& Form status_0101
*&---------------------------------------------------------------------*
FORM status_0101.
SET TITLEBAR '0101'.
SET PF-STATUS '0101'.
ENDFORM. " status_0101
*&---------------------------------------------------------------------*
*& Form status_0102
*&---------------------------------------------------------------------*
FORM status_0102.
SET TITLEBAR '0102'.
ENDFORM. " status_0102
*&---------------------------------------------------------------------*
*& Form carrega_descricao
*&---------------------------------------------------------------------*
FORM carrega_descricao.
DATA v_cgc TYPE j_1bwfield-cgc_number.
IF NOT /pws/zycie527-j_1bbranch IS INITIAL .
CALL FUNCTION 'J_1BREAD_BRANCH_DATA'
EXPORTING
branch = /pws/zycie527-j_1bbranch
bukrs = /pws/zycie527-bukrs
IMPORTING
cgc_number = v_cgc
EXCEPTIONS
branch_not_found = 1
address_not_found = 2
company_not_found = 3
OTHERS = 4.
WRITE v_cgc TO v_cnpj.
SELECT SINGLE name
FROM j_1bbranch
INTO (v_descrimp)
WHERE bukrs = /pws/zycie527-bukrs
AND branch = /pws/zycie527-j_1bbranch.
ENDIF.
ENDFORM. " carrega_descricao
*&---------------------------------------------------------------------*
*& Form carrega_textos
*&---------------------------------------------------------------------*
FORM carrega_textos.
DATA: v_land1 TYPE t001-land1.
SELECT SINGLE land1 FROM t001
INTO v_land1
WHERE bukrs EQ /pws/zycie527-bukrs.
SELECT SINGLE txt_container txt_di txt_material INTO
(txt_container, txt_di, txt_material)
FROM /pws/zycit531
WHERE land EQ v_land1.
ENDFORM. " carrega_textos
*&---------------------------------------------------------------------*
*& Form trata_tela_0100
*&---------------------------------------------------------------------*
FORM trata_tela_0100.
CASE okcode.
WHEN 'MALL'.
LOOP AT itab_zycit528 .
itab_zycit528-marc = 'X' .
MODIFY itab_zycit528.
ENDLOOP.
WHEN 'BTN_DALL'.
LOOP AT itab_zycit528 .
itab_zycit528-marc = ' ' .
MODIFY itab_zycit528.
ENDLOOP.
WHEN 'DELE'.
DELETE itab_zycit528 WHERE marc = 'X' .
WHEN 'DESP'.
READ TABLE itab_zycit528 WITH KEY marc = 'X' .
IF sy-subrc EQ 0 .
MOVE itab_zycit528 TO wa_zycie528 .
PERFORM trata_despesas.
CALL SCREEN '0101' .
ELSE.
MESSAGE s015 WITH text-003.
ENDIF.
WHEN 'REPL'.
PERFORM trata_replicacao.
WHEN 'SAVE'.
PERFORM salva_dados.
WHEN 'DELETE'.
PERFORM elimina_dados.
WHEN 'LOG_TRILHA' .
PERFORM log_trilha USING SY-REPID
/pws/zycie527-nrseq
' ' .
WHEN 'BACK'.
PERFORM verifica_alteracoes.
LEAVE TO SCREEN 0.
WHEN 'LEAVE'.
PERFORM verifica_alteracoes.
PERFORM limpa_tabelas.
LEAVE PROGRAM.
ENDCASE.
CLEAR okcode.
ENDFORM. " trata_tela_0100
*&---------------------------------------------------------------------*
*& Form trata_tela_0101
*&---------------------------------------------------------------------*
FORM trata_tela_0101.
CASE sy-ucomm.
WHEN 'BACK'.
LOOP AT itab_desp.
READ TABLE itab_zycit530 WITH KEY
container = itab_desp-container
codigo = itab_desp-codigo .
IF sy-subrc EQ 0.
itab_zycit530-vldp = itab_desp-vldp.
itab_zycit530-waers = itab_desp-waers.
MODIFY itab_zycit530 TRANSPORTING vldp waers
WHERE container EQ itab_desp-container
AND codigo EQ itab_desp-codigo .
ELSE.
itab_zycit530-mandt = sy-mandt.
itab_zycit530-nrseq = /pws/zycie001-nrseq.
itab_zycit530-container = itab_desp-container.
itab_zycit530-codigo = itab_desp-codigo.
itab_zycit530-vldp = itab_desp-vldp .
itab_zycit530-waers = itab_desp-waers .
APPEND itab_zycit530.
ENDIF.
ENDLOOP.
CLEAR itab_desp.
REFRESH itab_desp.
LEAVE TO SCREEN 0.
WHEN 'LEAVE'.
LEAVE PROGRAM.
ENDCASE.
ENDFORM. " trata_tela_0101
*&---------------------------------------------------------------------*
*& Form trata_despesas
*&---------------------------------------------------------------------*
FORM trata_despesas.
READ TABLE itab_zycit530
WITH KEY container = wa_zycie528-container.
IF sy-subrc EQ 0.
LOOP AT itab_despesas .
CLEAR itab_desp.
READ TABLE itab_zycit530 WITH KEY
codigo = itab_despesas-codigo
container = wa_zycie528-container.
IF sy-subrc EQ 0.
itab_desp-mandt = sy-mandt.
itab_desp-nrseq = /pws/zycie001-nrseq.
itab_desp-container = itab_zycit530-container.
itab_desp-codigo = itab_zycit530-codigo.
itab_desp-descricao = itab_despesas-descricao.
itab_desp-vldp = itab_zycit530-vldp.
itab_desp-waers = itab_zycit530-waers.
APPEND itab_desp.
ELSE.
IF sy-tcode NE '/PWS/ZYCI085_E' .
itab_desp-mandt = sy-mandt.
itab_desp-nrseq = /pws/zycie001-nrseq.
itab_desp-container = wa_zycie528-container.
itab_desp-codigo = itab_despesas-codigo.
itab_desp-descricao = itab_despesas-descricao.
APPEND itab_desp.
ENDIF.
ENDIF.
ENDLOOP.
ELSE.
LOOP AT itab_despesas .
CLEAR itab_desp.
MOVE-CORRESPONDING itab_despesas TO itab_desp.
itab_desp-nrseq = /pws/zycie001-nrseq .
itab_desp-container = wa_zycie528-container.
itab_desp-descricao = itab_despesas-descricao.
APPEND itab_desp.
ENDLOOP.
ENDIF.
ENDFORM. " trata_despesas
*&---------------------------------------------------------------------*
*& Form limpa_tabelas
*&---------------------------------------------------------------------*
FORM limpa_tabelas.
CLEAR : itab_desp, itab_despesas, itab_zycit003, itab_repl,
itab_zycit528, itab_zycit529, itab_zycit530,
itab_zycit528_sv, itab_zycit529_sv, itab_zycit530_sv,
wa_zycie001, wa_zycie528, wa_zycie527_sv.
REFRESH: itab_desp, itab_despesas, itab_zycit003, itab_repl,
itab_zycit528, itab_zycit529, itab_zycit530,
itab_zycit528_sv, itab_zycit529_sv, itab_zycit530_sv.
ENDFORM. " limpa_tabelas
*&---------------------------------------------------------------------*
*& Form trata_replicacao
*&---------------------------------------------------------------------*
FORM trata_replicacao.
MOVE itab_zycit528[] TO itab_repl[].
READ TABLE itab_repl WITH KEY marc = 'X' .
MOVE itab_repl TO wa_repl .
DELETE itab_repl WHERE marc = 'X' .
CALL SCREEN '0102' STARTING AT 5 2.
ENDFORM. " trata_replicacao
*&---------------------------------------------------------------------*
*& Form trata_tela_0102
*&---------------------------------------------------------------------*
FORM trata_tela_0102.
CASE sy-ucomm.
WHEN 'ENTE'.
READ TABLE itab_repl WITH KEY marc = 'X'.
IF sy-subrc NE 0 .
MESSAGE s015 WITH text-004.
ENDIF.
MOVE itab_zycit530[] TO itab_zycit530_aux[] .
LOOP AT itab_repl WHERE marc = 'X' .
LOOP AT itab_zycit530_aux WHERE
container = wa_repl-container .
READ TABLE itab_zycit530 WITH KEY
container = itab_repl-container
codigo = itab_zycit530_aux-codigo.
IF sy-subrc EQ 0.
itab_zycit530-vldp = itab_zycit530_aux-vldp.
itab_zycit530-waers = itab_zycit530_aux-waers.
MODIFY itab_zycit530 TRANSPORTING vldp waers
WHERE container = itab_repl-container
AND codigo = itab_zycit530_aux-codigo.
ELSE.
itab_zycit530-mandt = sy-mandt.
itab_zycit530-nrseq = /pws/zycie001-nrseq.
itab_zycit530-container = itab_repl-container.
itab_zycit530-codigo = itab_zycit530_aux-codigo.
itab_zycit530-vldp = itab_zycit530_aux-vldp.
itab_zycit530-waers = itab_zycit530_aux-waers.
APPEND itab_zycit530.
ENDIF.
ENDLOOP.
ENDLOOP.
LOOP AT itab_repl.
itab_repl-marc = ' ' .
MODIFY itab_repl.
ENDLOOP.
LEAVE TO SCREEN 0 .
WHEN 'CANCEL'.
LEAVE TO SCREEN 0 .
WHEN 'MALLR'.
LOOP AT itab_repl .
itab_repl-marc = 'X' .
MODIFY itab_repl .
ENDLOOP.
WHEN 'DALLR'.
LOOP AT itab_repl .
itab_repl-marc = ' ' .
MODIFY itab_repl .
ENDLOOP.
ENDCASE.
ENDFORM. " trata_tela_0102
*&---------------------------------------------------------------------*
*& Form salva_dados
*&---------------------------------------------------------------------*
FORM salva_dados.
DATA: wa_zycit527_save TYPE /pws/zycit527 ,
v_table(13) TYPE c.
DATA:
itab_zycit528s TYPE STANDARD TABLE OF /pws/zycit528
WITH HEADER LINE,
itab_zycit529s TYPE STANDARD TABLE OF /pws/zycit529
WITH HEADER LINE,
itab_zycit530s TYPE STANDARD TABLE OF /pws/zycit530
WITH HEADER LINE.
PERFORM consiste_dados.
IF v_erro = 'X' .
EXIT.
ENDIF.
*Log de modificação e inclusão
DEFINE m_log.
if sy-subrc eq 0.
* Registro modificado
perform carrega_log using v_table 'U'
sy-tcode '/PWS/SAPMZYCI085' /pws/zycie527-nrseq.
else.
* Novo registro
perform carrega_log using v_table 'I'
sy-tcode '/PWS/SAPMZYCI085' /pws/zycie527-nrseq.
endif.
END-OF-DEFINITION.
*Log de Exclusão
DEFINE m_log_d.
perform carrega_log using v_table 'D'
sy-tcode '/PWS/SAPMZYCI085' /pws/zycie527-nrseq.
END-OF-DEFINITION.
IF sy-tcode EQ '/PWS/ZYCI085_A' .
SELECT * FROM /pws/zycit528
INTO TABLE itab_zycit528_save
WHERE nrseq = /pws/zycie001-nrseq.
SELECT * FROM /pws/zycit529
INTO TABLE itab_zycit529_save
WHERE nrseq = /pws/zycie001-nrseq.
SELECT * FROM /pws/zycit530
INTO TABLE itab_zycit530_save
WHERE nrseq = /pws/zycie001-nrseq.
ENDIF.
/pws/zycit527 = /pws/zycie527.
v_table = '/PWS/ZYCIT527'.
SELECT SINGLE * FROM /pws/zycit527
INTO wa_zycit527_save
WHERE nrseq = /pws/zycie001-nrseq.
m_log.
MODIFY /pws/zycit527 FROM /pws/zycie527.
v_table = '/PWS/ZYCIT528' .
LOOP AT itab_zycit528.
itab_zycit528s = itab_zycit528.
READ TABLE itab_zycit528_save WITH KEY
nrseq = itab_zycit528-nrseq
container = itab_zycit528-container.
IF sy-subrc NE 0 OR
itab_zycit528_save NE itab_zycit528s.
/pws/zycit528 = itab_zycit528.
m_log.
APPEND itab_zycit528s.
ENDIF.
DELETE itab_zycit528_save
WHERE nrseq = itab_zycit528-nrseq
AND container = itab_zycit528-container.
ENDLOOP.
LOOP AT itab_zycit528_save.
/pws/zycit528 = itab_zycit528_save.
m_log_d.
DELETE FROM /pws/zycit528
WHERE nrseq EQ itab_zycit528_save-nrseq
AND container EQ itab_zycit528_save-container.
ENDLOOP.
MODIFY /pws/zycit528 FROM TABLE itab_zycit528.
v_table = '/PWS/ZYCIT529' .
LOOP AT itab_zycit529.
itab_zycit529s = itab_zycit529.
READ TABLE itab_zycit529_save WITH KEY
nrseq = itab_zycit529-nrseq
ebeln = itab_zycit529-ebeln
ebelp = itab_zycit529-ebelp
material = itab_zycit529-material.
IF sy-subrc NE 0 OR
itab_zycit529_save NE itab_zycit529s.
/pws/zycit529 = itab_zycit529.
m_log.
APPEND itab_zycit529s.
ENDIF.
DELETE itab_zycit529_save
WHERE nrseq = itab_zycit529-nrseq
AND ebeln = itab_zycit529-ebeln
AND ebelp = itab_zycit529-ebelp
AND material = itab_zycit529-material.
ENDLOOP.
LOOP AT itab_zycit529_save.
/pws/zycit529 = itab_zycit529_save.
m_log_d.
DELETE FROM /pws/zycit529
WHERE nrseq EQ itab_zycit529_save-nrseq
AND ebeln EQ itab_zycit529_save-ebeln
AND ebelp EQ itab_zycit529_save-ebelp.
ENDLOOP.
MODIFY /pws/zycit529 FROM TABLE itab_zycit529.
v_table = '/PWS/ZYCIT530' .
LOOP AT itab_zycit530.
itab_zycit530s = itab_zycit530.
READ TABLE itab_zycit530_save WITH KEY
nrseq = itab_zycit530-nrseq
container = itab_zycit530-container
codigo = itab_zycit530-codigo .
IF sy-subrc NE 0 OR
itab_zycit530_save NE itab_zycit530s.
/pws/zycit530 = itab_zycit530.
m_log.
APPEND itab_zycit530s.
ENDIF.
DELETE itab_zycit530_save
WHERE nrseq = itab_zycit530-nrseq
AND container = itab_zycit530-container
AND codigo = itab_zycit530-codigo .
ENDLOOP.
LOOP AT itab_zycit530_save.
/pws/zycit530 = itab_zycit530_save.
m_log_d.
DELETE FROM /pws/zycit530
WHERE nrseq EQ itab_zycit530_save-nrseq
AND container EQ itab_zycit530_save-container
AND codigo EQ itab_zycit530_save-codigo.
ENDLOOP.
MODIFY /pws/zycit530 FROM TABLE itab_zycit530.
COMMIT WORK.
MESSAGE i017 WITH text-005.
wa_zycie527_sv = /pws/zycie527.
itab_zycit528_sv[] = itab_zycit528[].
itab_zycit529_sv[] = itab_zycit529[].
itab_zycit530_sv[] = itab_zycit530[].
ENDFORM. " salva_dados
*&---------------------------------------------------------------------*
*& Form elimina_dados
*&---------------------------------------------------------------------*
FORM elimina_dados.
DATA: wa_zycit100 TYPE /pws/zycit100.
DATA: v_resposta.
SELECT SINGLE * FROM /pws/zycit100
INTO wa_zycit100
WHERE nrseq EQ /pws/zycie001-nrseq.
IF sy-subrc EQ 0.
MESSAGE i015 WITH text-014 text-015.
EXIT.
ENDIF.
CALL FUNCTION 'POPUP_TO_CONFIRM_WITH_MESSAGE'
EXPORTING
defaultoption = 'Y'
diagnosetext1 = text-011
textline1 = text-012
titel = text-013
IMPORTING
answer = v_resposta.
IF v_resposta EQ 'J' .
MOVE-CORRESPONDING /pws/zycie527 TO /pws/zycit527.
PERFORM carrega_log USING '/PWS/ZYCIT527' 'D'
sy-tcode '/PWS/SAPMZYCI085' /pws/zycit527-nrseq.
DELETE FROM /pws/zycit527 WHERE nrseq = /pws/zycie001-nrseq.
IF sy-subrc EQ 0.
SELECT * FROM /pws/zycit528 INTO TABLE itab_zycit528_save
WHERE nrseq = /pws/zycie527-nrseq.
SELECT * FROM /pws/zycit529 INTO TABLE itab_zycit529_save
WHERE nrseq = /pws/zycie527-nrseq.
SELECT * FROM /pws/zycit530 INTO TABLE itab_zycit530_save
WHERE nrseq = /pws/zycie527-nrseq.
LOOP AT itab_zycit528_save.
MOVE-CORRESPONDING itab_zycit528_save TO /pws/zycit528.
PERFORM carrega_log USING '/PWS/ZYCIT528' 'D'
sy-tcode '/PWS/SAPMZYCI085' /pws/zycit528-nrseq.
ENDLOOP.
LOOP AT itab_zycit529_save.
MOVE-CORRESPONDING itab_zycit529_save TO /pws/zycit529.
PERFORM carrega_log USING '/PWS/ZYCIT529' 'D'
sy-tcode '/PWS/SAPMZYCI085' /pws/zycit529-nrseq.
ENDLOOP.
LOOP AT itab_zycit530_save.
MOVE-CORRESPONDING itab_zycit530_save TO /pws/zycit530.
PERFORM carrega_log USING '/PWS/ZYCIT530' 'D'
sy-tcode '/PWS/SAPMZYCI085' /pws/zycit530-nrseq.
ENDLOOP.
DELETE FROM /pws/zycit528 WHERE nrseq = /pws/zycie001-nrseq.
DELETE FROM /pws/zycit529 WHERE nrseq = /pws/zycie001-nrseq.
DELETE FROM /pws/zycit530 WHERE nrseq = /pws/zycie001-nrseq.
ENDIF.
COMMIT WORK.
LEAVE PROGRAM.
ENDIF.
ENDFORM. " elimina_dados
*&---------------------------------------------------------------------*
*& Form consiste_dados
*&---------------------------------------------------------------------*
FORM consiste_dados.
LOOP AT itab_zycit529 WHERE NOT agrupamento IS initial.
READ TABLE itab_zycit528 WITH KEY
container = itab_zycit529-agrupamento.
IF sy-subrc NE 0.
v_erro = 'X' .
EXIT.
ENDIF.
ENDLOOP.
IF v_erro = 'X' .
MESSAGE s015 WITH text-010 .
ENDIF.
ENDFORM. " consiste_dados
*&---------------------------------------------------------------------*
*& Form verifica_alteracoes
*&---------------------------------------------------------------------*
FORM verifica_alteracoes.
IF sy-tcode NE '/PWS/ZYCI085_E' .
IF wa_zycie527_sv NE /pws/zycie527 OR
itab_zycit528_sv[] NE itab_zycit528[] OR
itab_zycit529_sv[] NE itab_zycit529[] OR
itab_zycit530_sv[] NE itab_zycit530[].
CALL FUNCTION 'POPUP_TO_CONFIRM_WITH_MESSAGE'
EXPORTING
defaultoption = 'Y'
diagnosetext1 = text-016
textline1 = text-017
titel = text-018
IMPORTING
answer = v_resposta.
IF v_resposta EQ 'J'.
PERFORM salva_dados.
ENDIF.
ENDIF.
ENDIF.
ENDFORM. " verifica_alteracoes
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI085I01
*Criar o include conforme abaixo programa
*----------------------------------------------------------------------*
***INCLUDE /PWS/MZYCI085I01 .
*----------------------------------------------------------------------*
*&---------------------------------------------------------------------*
*& Module USER_COMMAND INPUT
*&---------------------------------------------------------------------*
MODULE user_command INPUT.
CASE sy-dynnr.
WHEN '0001' .
PERFORM trata_tela_0001 .
WHEN '0100'.
PERFORM trata_tela_0100.
WHEN '0101'.
PERFORM trata_tela_0101.
WHEN '0102'.
PERFORM trata_tela_0102.
ENDCASE.
ENDMODULE. " USER_COMMAND INPUT
*&---------------------------------------------------------------------*
*& Module atualiza_itab INPUT
*&---------------------------------------------------------------------*
MODULE atualiza_itab INPUT.
CASE sy-dynnr.
WHEN '0100'.
IF NOT /pws/zycie528-container IS INITIAL.
MOVE-CORRESPONDING /pws/zycie528 TO itab_zycit528.
itab_zycit528-mandt = sy-mandt.
itab_zycit528-nrseq = /pws/zycie001-nrseq.
MODIFY itab_zycit528 INDEX tc_agrup-current_line.
IF sy-subrc NE 0.
APPEND itab_zycit528.
ENDIF.
ENDIF.
WHEN '0101'.
MOVE-CORRESPONDING /pws/zycie530 TO itab_desp.
MOVE /pws/zycit526t-descricao TO itab_desp-descricao .
MODIFY itab_desp INDEX tc_desp-current_line.
WHEN '0102'.
MODIFY itab_repl INDEX tc_repl-current_line.
ENDCASE.
ENDMODULE. " atualiza_itab INPUT
*&---------------------------------------------------------------------*
*& Module atualiza_itens INPUT
*&---------------------------------------------------------------------*
MODULE atualiza_itens INPUT.
MOVE-CORRESPONDING /pws/zycie529 TO itab_zycit529 .
itab_zycit529-mandt = sy-mandt.
itab_zycit529-nrseq = /pws/zycie001-nrseq.
MODIFY itab_zycit529 INDEX tc_itens-current_line.
IF sy-subrc NE 0.
APPEND itab_zycit529.
ENDIF.
ENDMODULE. " atualiza_itens INPUT
*&---------------------------------------------------------------------*
*& Module seta_matchcode INPUT
*&---------------------------------------------------------------------*
MODULE seta_matchcode INPUT.
DATA: value(20).
DATA: BEGIN OF f_tab OCCURS 10.
INCLUDE STRUCTURE help_value.
DATA: END OF f_tab,
BEGIN OF v_tab OCCURS 200,
value(20) TYPE c,
END OF v_tab.
CLEAR : v_tab, f_tab.
REFRESH: v_tab, f_tab.
LOOP AT itab_zycit528.
MOVE itab_zycit528-container TO v_tab-value.
APPEND v_tab.
MOVE itab_zycit528-num_di TO v_tab-value.
APPEND v_tab.
MOVE itab_zycit528-material TO v_tab-value.
APPEND v_tab.
ENDLOOP.
MOVE: '/PWS/ZYCIT528' TO f_tab-tabname ,
'CONTAINER' TO f_tab-fieldname ,
'X' TO f_tab-selectflag.
APPEND f_tab.
CLEAR f_tab.
MOVE: '/PWS/ZYCIT528' TO f_tab-tabname ,
'NUM_DI' TO f_tab-fieldname .
APPEND f_tab.
CLEAR f_tab.
MOVE: '/PWS/ZYCIT528' TO f_tab-tabname ,
'MATERIAL' TO f_tab-fieldname .
APPEND f_tab.
CLEAR f_tab.
CALL FUNCTION 'HELP_VALUES_GET_WITH_TABLE'
EXPORTING
display = ' '
fieldname = text-005
tabname = '/PWS/ZYCIT528'
IMPORTING
select_value = value
TABLES
valuetab = v_tab
fields = f_tab.
MOVE value TO /pws/zycie529-agrupamento .
ENDMODULE. " seta_matchcode INPUT
*&---------------------------------------------------------------------*
*& Module verifica_container INPUT
*&---------------------------------------------------------------------*
MODULE verifica_container INPUT.
MOVE itab_zycit528[] TO itab_zycit528_aux[] .
READ TABLE itab_zycit528_aux WITH KEY
container = /pws/zycie528-container.
IF sy-subrc EQ 0.
MESSAGE s015 WITH text-006 .
CLEAR /pws/zycie528 .
ENDIF.
ENDMODULE. " verifica_container INPUT
*&---------------------------------------------------------------------*
*& Module verifica_agrupamento INPUT
*&---------------------------------------------------------------------*
module verifica_agrupamento input.
MOVE itab_zycit528[] TO itab_zycit528_aux[] .
READ TABLE itab_zycit528_aux WITH KEY
container = /pws/zycie529-agrupamento.
if sy-subrc ne 0.
MESSAGE s015 WITH text-010 .
CLEAR /pws/zycie529-agrupamento .
endif.
endmodule. " verifica_agrupamento INPUT
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI085O01
*Criar o include conforme abaixo programa
*----------------------------------------------------------------------*
***INCLUDE /PWS/MZYCI085O01 .
*----------------------------------------------------------------------*
*&---------------------------------------------------------------------*
*& Module carrega_dados. OUTPUT
*&---------------------------------------------------------------------*
MODULE carrega_dados OUTPUT.
PERFORM: carrega_descricao,
carrega_textos .
ENDMODULE. " carrega_dados OUTPUT
*&---------------------------------------------------------------------*
*& Module STATUS OUTPUT
*&---------------------------------------------------------------------*
MODULE status OUTPUT.
CASE sy-dynnr.
WHEN '0001'.
PERFORM status_0001 .
WHEN '0100'.
PERFORM status_0100.
WHEN '0101' .
PERFORM status_0101.
WHEN '0102'.
PERFORM status_0102.
ENDCASE.
ENDMODULE. " STATUS OUTPUT
*&---------------------------------------------------------------------*
*& Module preenche_estrutura OUTPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE preenche_estrutura OUTPUT.
CASE sy-dynnr.
WHEN '0100'.
MOVE-CORRESPONDING itab_zycit528 TO /pws/zycie528 .
WHEN '0101'.
MOVE-CORRESPONDING itab_desp TO /pws/zycie530 .
CALL METHOD /pws/cl_zyci_trata_moedas=>retorna_decimais
EXPORTING
waers = /pws/zycie530-waers
CHANGING
value = /pws/zycie530-vldp .
MOVE itab_desp-descricao TO /pws/zycit526t-descricao.
ENDCASE.
ENDMODULE. " preenche_estrutura OUTPUT
*&---------------------------------------------------------------------*
*& Module preenche_itens OUTPUT
*&---------------------------------------------------------------------*
MODULE preenche_itens OUTPUT.
MOVE-CORRESPONDING itab_zycit529 TO /pws/zycie529 .
ENDMODULE. " preenche_itens OUTPUT
*&---------------------------------------------------------------------*
*& Module set_screen OUTPUT
*&---------------------------------------------------------------------*
MODULE set_screen OUTPUT.
CASE sy-dynnr.
WHEN '0100'.
DESCRIBE TABLE itab_zycit528 LINES v_line.
LOOP AT SCREEN.
IF screen-name EQ 'BTN_REPL'
AND ( v_line LE 1 OR
sy-tcode EQ '/PWS/ZYCI085_E' ) .
screen-input = '0'.
screen-invisible = '1' .
MODIFY SCREEN .
ELSEIF screen-name EQ 'BTN_DELE'.
IF sy-tcode EQ '/PWS/ZYCI085_E'.
screen-input = '0'.
MODIFY SCREEN.
ENDIF.
ENDIF.
ENDLOOP.
IF sy-tcode EQ '/PWS/ZYCI085_E'.
LOOP AT tc_agrup-cols INTO wa_cols.
wa_cols-screen-input = 0.
MODIFY tc_agrup-cols FROM wa_cols.
ENDLOOP.
LOOP AT tc_itens-cols INTO wa_cols.
wa_cols-screen-input = 0.
MODIFY tc_itens-cols FROM wa_cols.
ENDLOOP.
ENDIF.
WHEN '0101' .
IF sy-tcode EQ '/PWS/ZYCI085_E'.
LOOP AT tc_desp-cols INTO wa_cols.
wa_cols-screen-input = 0.
MODIFY tc_desp-cols FROM wa_cols.
ENDLOOP.
ENDIF.
ENDCASE.
ENDMODULE. " set_screen OUTPUT
*&---------------------------------------------------------------------*
*& Module screen_lines OUTPUT
*&---------------------------------------------------------------------*
MODULE screen_lines OUTPUT.
DESCRIBE TABLE itab_zycit528 LINES v_line.
tc_agrup-lines = v_line + 5.
ENDMODULE. " screen_lines OUTPUT
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI085TOP
*Criar o include conforme abaixo programa
*&---------------------------------------------------------------------*
*& Include /PWS/MZYCI085TOP *
*& *
*&---------------------------------------------------------------------*
PROGRAM /pws/sapmzyci085 MESSAGE-ID /pws/zycim.
INCLUDE /pws/mzyci085x01.
CONTROLS:
tc_agrup TYPE TABLEVIEW USING SCREEN 0100,
tc_itens TYPE TABLEVIEW USING SCREEN 0100,
tc_desp TYPE TABLEVIEW USING SCREEN 0101,
tc_repl TYPE TABLEVIEW USING SCREEN 0102.
DATA: okcode TYPE sy-ucomm ,
wa_cols TYPE cxtab_column.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI085X01
*----------------------------------------------------------------------*
* INCLUDE /PWS/MZYCI085X01 *
*----------------------------------------------------------------------*
TABLES:
/pws/zycie001,
/pws/zycit526t,
/pws/zycie527,
/pws/zycit527,
/pws/zycie528,
/pws/zycie529,
/pws/zycie530,
/pws/zycit528,
/pws/zycit529,
/pws/zycit530.
DATA: BEGIN OF COMMON PART a.
DATA: itab_zycit529 TYPE STANDARD TABLE OF /pws/zycit529
WITH HEADER LINE,
itab_zycit528_aux TYPE STANDARD TABLE OF /pws/zycit528
WITH HEADER LINE,
itab_zycit529_sv TYPE STANDARD TABLE OF /pws/zycit529
WITH HEADER LINE.
DATA: wa_zycie001 TYPE /pws/zycie001,
wa_zycie528 TYPE /pws/zycie528,
wa_repl TYPE /pws/zycie528,
wa_zycie527_sv type /pws/zycie527.
DATA: BEGIN OF itab_zycit528 OCCURS 0.
INCLUDE STRUCTURE /pws/zycit528.
DATA: marc.
DATA: END OF itab_zycit528.
DATA: BEGIN OF itab_zycit528_sv OCCURS 0.
INCLUDE STRUCTURE /pws/zycit528.
DATA: marc.
DATA: END OF itab_zycit528_sv.
DATA: BEGIN OF itab_zycit530 OCCURS 0 .
INCLUDE STRUCTURE /pws/zycit530.
DATA: END OF itab_zycit530.
DATA: BEGIN OF itab_zycit530_sv OCCURS 0 .
INCLUDE STRUCTURE /pws/zycit530.
DATA: END OF itab_zycit530_sv.
DATA: BEGIN OF itab_zycit530_aux OCCURS 0 .
INCLUDE STRUCTURE /pws/zycit530.
DATA: END OF itab_zycit530_aux.
DATA: BEGIN OF itab_desp OCCURS 0 .
INCLUDE STRUCTURE /pws/zycit530.
DATA: descricao TYPE /pws/zycit526t-descricao .
DATA: END OF itab_desp.
DATA: BEGIN OF itab_zycit003 OCCURS 0 .
DATA: ebeln TYPE /pws/zycit003-ebeln,
ebelp TYPE /pws/zycit003-ebelp,
matnr TYPE /pws/zycit003-matnr,
descr TYPE /pws/zycit003-descr.
DATA: END OF itab_zycit003.
DATA: BEGIN OF itab_despesas OCCURS 0 .
INCLUDE STRUCTURE /pws/zycit526.
DATA: descricao TYPE /pws/zycit526t-descricao.
DATA: END OF itab_despesas.
DATA: BEGIN OF itab_repl OCCURS 0.
INCLUDE STRUCTURE /pws/zycit528.
DATA: marc.
DATA: END OF itab_repl.
DATA: BEGIN OF itab_botoes OCCURS 0,
fcode LIKE rsmpe-func,
END OF itab_botoes.
DATA: itab_zycit528_save TYPE STANDARD TABLE OF /pws/zycit528
WITH HEADER LINE,
itab_zycit529_save TYPE STANDARD TABLE OF /pws/zycit529
WITH HEADER LINE,
itab_zycit530_save TYPE STANDARD TABLE OF /pws/zycit530
WITH HEADER LINE.
DATA: txt_container(20),
txt_di(20),
txt_material(20),
v_descrimp TYPE j_1bbranch-name,
v_cnpj TYPE j_1bwfield-cgc_number,
mark,
v_land1 TYPE t001-land1,
v_line TYPE i ,
v_erro,
v_resposta.
DATA: END OF COMMON PART.
----------------------------------------------------------------------------------------------------
*O Download das telas encontra-se disponível no link abaixo
*
*http://produtos.sondait.com.br/home/PW.CE/Notas/
DYNP /PWS/SAPMZYCI085 0001
DYNP /PWS/SAPMZYCI085 0100
DYNP /PWS/SAPMZYCI085 0101
DYNP /PWS/SAPMZYCI085 0102
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPT /PWS/SAPMZYCI085
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 001
Texto: (19 caracteres)
"Shipment not found."
Comprimento máximo: 24
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 001
Texto: (24 caracteres)
"Embarque não encontrado."
Comprimento máximo: 24
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 001
Texto: (24 caracteres)
"Embarque no se encuentra"
Comprimento máximo: 24
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 003
Texto: (22 caracteres)
"Please select a group."
Comprimento máximo: 28
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 003
Texto: (28 caracteres)
"Favor marcar um agrupamento."
Comprimento máximo: 28
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 003
Texto: (20 caracteres)
"Seleccione un grupo."
Comprimento máximo: 28
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 004
Texto: (21 caracteres)
"Please select an item"
Comprimento máximo: 21
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 004
Texto: (21 caracteres)
"Favor marcar um item."
Comprimento máximo: 21
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 004
Texto: (19 caracteres)
"Seleccione un item."
Comprimento máximo: 21
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 005
Texto: (5 caracteres)
"Group"
Comprimento máximo: 12
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 005
Texto: (12 caracteres)
"Agrupamentos"
Comprimento máximo: 12
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 005
Texto: (5 caracteres)
"Grupo"
Comprimento máximo: 12
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 006
Texto: (20 caracteres)
"Group already exist."
Comprimento máximo: 25
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 006
Texto: (25 caracteres)
"Agrupamento já existente."
Comprimento máximo: 25
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 006
Texto: (19 caracteres)
"El grupo ya existe."
Comprimento máximo: 25
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 007
Texto: (31 caracteres)
"No authorization to transaction"
Comprimento máximo: 32
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 007
Texto: (32 caracteres)
"Sem autorização para a transação"
Comprimento máximo: 32
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 007
Texto: (30 caracteres)
"Sin autorización para transac."
Comprimento máximo: 32
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 008
Texto: (13 caracteres)
"/ PWS/ZYCI085"
Comprimento máximo: 13
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 008
Texto: (13 caracteres)
"/PWS/ZYCI085."
Comprimento máximo: 13
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 008
Texto: (12 caracteres)
"/PWS/ZYCI085"
Comprimento máximo: 13
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 009
Texto: (19 caracteres)
"Record was deleted."
Comprimento máximo: 23
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 009
Texto: (23 caracteres)
"Registro foi eliminado."
Comprimento máximo: 23
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 009
Texto: (23 caracteres)
"El registro fue elimina"
Comprimento máximo: 23
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 010
Texto: (19 caracteres)
"Report valid Group."
Comprimento máximo: 28
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 010
Texto: (28 caracteres)
"Informar Agrupamento válido."
Comprimento máximo: 28
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 010
Texto: (24 caracteres)
"Informe el grupo válido."
Comprimento máximo: 28
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 011
Texto: (37 caracteres)
"Data from this group will be deleted."
Comprimento máximo: 40
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 011
Texto: (40 caracteres)
"Dados deste Agrupamento serão excluídos."
Comprimento máximo: 40
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 011
Texto: (40 caracteres)
"Los datos de este grupo serán eliminados"
Comprimento máximo: 40
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 012
Texto: (30 caracteres)
"Want continuing the exclusion?"
Comprimento máximo: 35
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 012
Texto: (28 caracteres)
"Deseja prosseguir exclusão ?"
Comprimento máximo: 35
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 012
Texto: (26 caracteres)
"¿Quieres la exclusión?ión?"
Comprimento máximo: 35
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 013
Texto: (25 caracteres)
"Confirmation of Exclusion"
Comprimento máximo: 28
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 013
Texto: (23 caracteres)
"Confirmação de Exclusão"
Comprimento máximo: 28
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 013
Texto: (28 caracteres)
"La confirmación de la exclus"
Comprimento máximo: 28
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 014
Texto: (24 caracteres)
"Shipment already has DI."
Comprimento máximo: 27
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 014
Texto: (22 caracteres)
"Embarque já possui DI."
Comprimento máximo: 27
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 014
Texto: (22 caracteres)
"Embarque ya tienen DI."
Comprimento máximo: 27
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 015
Texto: (30 caracteres)
"The group can not be excluded."
Comprimento máximo: 34
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 015
Texto: (34 caracteres)
"Agrupamento não pode ser excluído."
Comprimento máximo: 34
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 015
Texto: (29 caracteres)
"El grupo no se puede excluir."
Comprimento máximo: 34
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 016
Texto: (18 caracteres)
"Changes were made."
Comprimento máximo: 24
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 016
Texto: (24 caracteres)
"Foram feitas alterações."
Comprimento máximo: 24
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 016
Texto: (24 caracteres)
"Fueron hechas Alteracion"
Comprimento máximo: 24
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 017
Texto: (28 caracteres)
"Do you wish to save bef.ex.?"
Comprimento máximo: 28
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 017
Texto: (28 caracteres)
"Deseja gravar antes de sair?"
Comprimento máximo: 28
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 017
Texto: (28 caracteres)
"Desea gravar antes de salir?"
Comprimento máximo: 28
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 018
Texto: (17 caracteres)
"Exit confirmation"
Comprimento máximo: 20
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 018
Texto: (20 caracteres)
"Confirmação de Saída"
Comprimento máximo: 20
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 018
Texto: (19 caracteres)
"Confirmación Salida"
Comprimento máximo: 20
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPT /PWS/SAPMZYCI059
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 240
Texto: (29 caracteres)
"varies in value of the group."
Comprimento máximo: 45
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 240
Texto: (33 caracteres)
"diverge em valor do Agrupamento ."
Comprimento máximo: 45
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 240
Texto: (27 caracteres)
"diverge en valor del Grupo."
Comprimento máximo: 45
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 241
Texto: (32 caracteres)
"varies in currency of the group."
Comprimento máximo: 45
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 241
Texto: (33 caracteres)
"diverge em moeda do Agrupamento ."
Comprimento máximo: 45
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 241
Texto: (28 caracteres)
"diverge en moneda del Grupo."
Comprimento máximo: 45
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 242
Texto: (35 caracteres)
"varies in value and cy of the group"
Comprimento máximo: 50
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 242
Texto: (41 caracteres)
"diverge em valor e moeda do Agrupamento ."
Comprimento máximo: 50
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 242
Texto: (36 caracteres)
"diverge en valor y moneda del Grupo."
Comprimento máximo: 50
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 243
Texto: (11 caracteres)
"The expense"
Comprimento máximo: 15
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 243
Texto: (9 caracteres)
"A despesa"
Comprimento máximo: 15
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 243
Texto: (8 caracteres)
"El gasto"
Comprimento máximo: 15
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 244
Texto: (31 caracteres)
"is not registered in the group."
Comprimento máximo: 40
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 244
Texto: (35 caracteres)
"não está cadastrada no Agrupamento."
Comprimento máximo: 40
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 244
Texto: (31 caracteres)
"no está registrada en el grupo."
Comprimento máximo: 40
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPT /PWS/SAPMZYCI004
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 134
Texto: (21 caracteres)
"Llenar la Fecha Base!"
Comprimento máximo: 50
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 135
Texto: (29 caracteres)
"varies in value of the group."
Comprimento máximo: 33
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 135
Texto: (27 caracteres)
"diverge en valor del Grupo."
Comprimento máximo: 33
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 136
Texto: (32 caracteres)
"varies in currency of the group."
Comprimento máximo: 33
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 136
Texto: (28 caracteres)
"diverge en moneda del Grupo."
Comprimento máximo: 33
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 137
Texto: (36 caracteres)
"varies in value and cy of the group."
Comprimento máximo: 45
------------------------------------------------------------------------
Modificado símbolo de texto:
Idioma: PT
Símbolo: 137
Texto: (40 caracteres)
"diverge em valor e moeda do Agrupamento."
Comprimento máximo: 45
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 137
Texto: (36 caracteres)
"diverge en valor y moneda del Grupo."
Comprimento máximo: 45
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 138
Texto: (11 caracteres)
"The expense"
Comprimento máximo: 12
------------------------------------------------------------------------
Modificado símbolo de texto:
Idioma: PT
Símbolo: 138
Texto: (9 caracteres)
"A despesa"
Comprimento máximo: 12
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 138
Texto: (8 caracteres)
"El gasto"
Comprimento máximo: 12
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 139
Texto: (31 caracteres)
"is not registered in the group."
Comprimento máximo: 50
------------------------------------------------------------------------
Modificado símbolo de texto:
Idioma: PT
Símbolo: 139
Texto: (35 caracteres)
"não está cadastrada no Agrupamento."
Comprimento máximo: 50
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 139
Texto: (31 caracteres)
"no está registrada en el grupo."
Comprimento máximo: 50
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPT /PWS/SAPMZYCI003
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 219
Texto: (32 caracteres)
"There's no value to be invoiced."
Comprimento máximo: 35
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 222
Texto: (29 caracteres)
"varies in value of the group."
Comprimento máximo: 33
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 222
Texto: (33 caracteres)
"diverge em valor do Agrupamento ."
Comprimento máximo: 33
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 222
Texto: (27 caracteres)
"diverge en valor del Grupo."
Comprimento máximo: 33
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 223
Texto: (32 caracteres)
"varies in currency of the group."
Comprimento máximo: 33
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 223
Texto: (33 caracteres)
"diverge em moeda do Agrupamento ."
Comprimento máximo: 33
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 223
Texto: (28 caracteres)
"diverge en moneda del Grupo."
Comprimento máximo: 33
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 224
Texto: (35 caracteres)
"varies in value and cy of the group"
Comprimento máximo: 41
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 224
Texto: (41 caracteres)
"diverge em valor e moeda do Agrupamento ."
Comprimento máximo: 41
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 224
Texto: (36 caracteres)
"diverge en valor y moneda del Grupo."
Comprimento máximo: 41
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 225
Texto: (11 caracteres)
"The expense"
Comprimento máximo: 15
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 225
Texto: (9 caracteres)
"A despesa"
Comprimento máximo: 15
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 225
Texto: (8 caracteres)
"El gasto"
Comprimento máximo: 9
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 226
Texto: (31 caracteres)
"is not registered in the group."
Comprimento máximo: 35
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 226
Texto: (35 caracteres)
"não está cadastrada no Agrupamento."
Comprimento máximo: 35
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 226
Texto: (31 caracteres)
"no está registrada en el grupo."
Comprimento máximo: 35
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 227
Texto: (35 caracteres)
"Type not allowed with service items"
Comprimento máximo: 40
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 227
Texto: (40 caracteres)
"Tipo não permitido com itens de serviço."
Comprimento máximo: 40
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 227
Texto: (40 caracteres)
"Tipo no permite que los elementos de ser"
Comprimento máximo: 40
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 228
Texto: (38 caracteres)
"Items are not bound service. Check it."
Comprimento máximo: 47
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 228
Texto: (47 caracteres)
"Itens vinculados não são de serviço. Verificar."
Comprimento máximo: 47
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 228
Texto: (46 caracteres)
"Los productos que no están obligados servicio."
Comprimento máximo: 47
------------------------------------------------------------------------
Incluído texto de seleção:
Idioma: EN
Variável (SELECT-OPTION / PARAMETER): S_ORIGEM
Texto: (14 caracteres)
"Origin"
Referência ao Dictionary: NÃO
------------------------------------------------------------------------
Incluído texto de seleção:
Idioma: EN
Variável (SELECT-OPTION / PARAMETER): S_PAISF
Texto: (28 caracteres)
"Manufacturer country"
Referência ao Dictionary: NÃO
------------------------------------------------------------------------
Incluído texto de seleção:
Idioma: EN
Variável (SELECT-OPTION / PARAMETER): S_TOINV
Texto: (19 caracteres)
"Qt.Invoiced"
Referência ao Dictionary: NÃO
------------------------------------------------------------------------
Incluído texto de seleção:
Idioma: EN
Variável (SELECT-OPTION / PARAMETER): S_VLDIF
Texto: (23 caracteres)
"Diference Value"
Referência ao Dictionary: NÃO
------------------------------------------------------------------------
Incluído texto de seleção:
Idioma: EN
Variável (SELECT-OPTION / PARAMETER): S_VLREAL
Texto: (18 caracteres)
"Real value"
Referência ao Dictionary: NÃO
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPT /PWS/SAPMZYCI001
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 533
Texto: (24 caracteres)
"Isn¿t possible create DI"
Comprimento máximo: 24
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 533
Texto: (24 caracteres)
"Não é possível criar DI."
Comprimento máximo: 24
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 534
Texto: (32 caracteres)
"Grouping information is missing."
Comprimento máximo: 34
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 534
Texto: (34 caracteres)
"Faltam informações de agrupamento."
Comprimento máximo: 34
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 535
Texto: (42 caracteres)
"Save shipment before execute functionality"
Comprimento máximo: 50
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 535
Texto: (50 caracteres)
"Gravar embarque antes de executar a funcionalidade"
Comprimento máximo: 50
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 535
Texto: (48 caracteres)
"Guardar embarque antes de ejecutar funcionalidad"
Comprimento máximo: 50
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 536
Texto: (44 caracteres)
"Errors occurred while updating the database."
Comprimento máximo: 46
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 536
Texto: (46 caracteres)
"Ocorreram erros ao atualizar o Banco de Dados."
Comprimento máximo: 60
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 536
Texto: (34 caracteres)
"Se han errores in actualización in"
Comprimento máximo: 46
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 537
Texto: (28 caracteres)
"There will be a new attempt."
Comprimento máximo: 35
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 537
Texto: (30 caracteres)
"Será feita uma nova tentativa."
Comprimento máximo: 35
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 538
Texto: (15 caracteres)
"item memorizado"
Comprimento máximo: 15
----------------------------------------------------------------------------------------------------
*Criar a transação TRANS /PWS/ZYCI085_A
CÓDIGO DE TRANSAÇÃO: /PWS/ZYCI085_A
ATRIBUTOS DA TRANSAÇÃO
TEXTO BREVE: Agrupamentos - Modificar
OBJETO DE EXECUÇÃO
(X) - PROGRAMA E TELA (TRANSAÇÃO DE DIÁLOGO)
TEXTO DA TRANSAÇÃO: Agrupamentos - Modificar
PROGRAMA: /PWS/SAPMZYCI085
TELA(SELEÇÃO): 0001
INÍCIO COM VARIANTE: _____________________________________________
OBJETO DE AUTORIZAÇÃO: ___________________________________________
(X) - ATUALIZAÇÃO DA VARIANTE DA TRANSAÇÃO STANDARD PERMITIDA
CLASSIFICAÇÃO
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
----------------------------------------------------------------------------------------------------
*Criar a transação TRANS /PWS/ZYCI085_E
CÓDIGO DE TRANSAÇÃO: /PWS/ZYCI085_E
ATRIBUTOS DA TRANSAÇÃO
TEXTO BREVE: Agrupamentos - Exibir
OBJETO DE EXECUÇÃO
(X) - PROGRAMA E TELA (TRANSAÇÃO DE DIÁLOGO)
TEXTO DA TRANSAÇÃO: Agrupamentos - Exibir
PROGRAMA: /PWS/SAPMZYCI085
TELA(SELEÇÃO): 0001
INÍCIO COM VARIANTE: _____________________________________________
OBJETO DE AUTORIZAÇÃO: ___________________________________________
(X) - ATUALIZAÇÃO DA VARIANTE DA TRANSAÇÃO STANDARD PERMITIDA
CLASSIFICAÇÃO
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
----------------------------------------------------------------------------------------------------
*Criar a transação TRANS /PWS/ZYCI085_C
CÓDIGO DE TRANSAÇÃO: /PWS/ZYCI085_C
ATRIBUTOS DA TRANSAÇÃO
TEXTO BREVE: CI - Agrupamento
OBJETO DE EXECUÇÃO
(X) - PROGRAMA E TELA (TRANSAÇÃO DE DIÁLOGO)
TEXTO DA TRANSAÇÃO: CI - Agrupamento
PROGRAMA: /PWS/SAPMZYCI085
TELA(SELEÇÃO): 0001
INÍCIO COM VARIANTE: _____________________________________________
OBJETO DE AUTORIZAÇÃO: ___________________________________________
(X) - ATUALIZAÇÃO DA VARIANTE DA TRANSAÇÃO STANDARD PERMITIDA
CLASSIFICAÇÃO
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
----------------------------------------------------------------------------------------------------
Menu /PWS/ZYCIAL
No menu /PWS/ZYCIAL --> Parâmetros --> Importação --> DI - América Latina
*Acrescentar
Entrada de menu Cód.de Transação
Despesas por agrupamento /PWS/ZYCIT526