Módulo: DOC. EXPORTAÇÃO
Funcionalidade: Relatórios
Data/Hora da Publicação: 05/10/2006 00:00:00
Data/Hora Última Alteração: 22/02/2011 11:40:55
Descrição da Nota: CERTIFICADO DE ORIGEM ONLINE - COOL
Sintoma
Ausência de funcionalidade para geração de arquivo de processo para emissão de certificado de origem
via web.
Solução
Implementação da funcionalidade "Certificado de Origem Online".
6.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 02213 Data: 05/10/2006 Hora: 09:53:33
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 02213
Categoria : Melhoria
Prioridade : Baixa
Versão PW.CE : 6.0
Pacote : 00025
Agrupamento : 00134
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
00188 - 00001 - 6.0 - 00021 - ATUALIZAÇÃO DO PROGRAMA DE DECLARAÇÃO DE ORIGEM
----------------------------------------------------------------------------------------------------
CERTIFICADO DE ORIGEM ONLINE - COOL
----------------------------------------------------------------------------------------------------
Palavras Chave:
CERTIFICADO; ORIGEM; ONLINE; COOL;
----------------------------------------------------------------------------------------------------
Objetos da nota:
DOMA /PWS/ZYCED630
DOMA /PWS/ZYCED631
DOMA /PWS/ZYCED632
DOMA /PWS/ZYCED633
DOMA /PWS/ZYCED634
DOMA /PWS/ZYCED635
DOMA /PWS/ZYCED636
DOMA /PWS/ZYCED637
DOMA /PWS/ZYCED638
DOMA /PWS/ZYCED639
DOMA /PWS/ZYCED640
DOMA /PWS/ZYCED641
DOMA /PWS/ZYCED642
DOMA /PWS/ZYCED643
DOMA /PWS/ZYCED644
DOMA /PWS/ZYCED645
DOMA /PWS/ZYCED646
DOMA /PWS/ZYCED647
DOMA /PWS/ZYCED648
DTEL /PWS/ZYCEL680
DTEL /PWS/ZYCEL681
DTEL /PWS/ZYCEL682
DTEL /PWS/ZYCEL683
DTEL /PWS/ZYCEL684
DTEL /PWS/ZYCEL685
DTEL /PWS/ZYCEL686
DTEL /PWS/ZYCEL687
DTEL /PWS/ZYCEL688
DTEL /PWS/ZYCEL689
DTEL /PWS/ZYCEL690
DTEL /PWS/ZYCEL691
DTEL /PWS/ZYCEL692
DTEL /PWS/ZYCEL693
DTEL /PWS/ZYCEL694
DTEL /PWS/ZYCEL695
DTEL /PWS/ZYCEL696
DTEL /PWS/ZYCEL697
DTEL /PWS/ZYCEL698
ENQU /PWS/EZYCET545
REPS /PWS/MZYCE310F01
REPS /PWS/MZYCE310I01
REPS /PWS/MZYCE310O01
REPS /PWS/MZYCE310TOP
REPS /PWS/MZYCE311F01
REPS /PWS/MZYCE311F02
REPS /PWS/MZYCE311F03
REPS /PWS/MZYCE311F04
REPS /PWS/MZYCE311F05
REPS /PWS/MZYCE311F06
REPS /PWS/MZYCE311F07
REPS /PWS/MZYCE311F08
REPS /PWS/MZYCE311X01
REPS /PWS/SAPMZYCE310
REPS /PWS/ZYCER311
REPT /PWS/SAPMZYCE310
REPT /PWS/ZYCER311
SHLP /PWS/ZYCEA520
SHLP /PWS/ZYCEA521
SHLP /PWS/ZYCEA522
SHLP /PWS/ZYCEA523
TABL /PWS/ZYCEE545
TABL /PWS/ZYCET540
TABL /PWS/ZYCET541
TABL /PWS/ZYCET542
TABL /PWS/ZYCET543
TABL /PWS/ZYCET544
TABL /PWS/ZYCET545
TABL /PWS/ZYCET546
TRAN /PWS/ZYCE545
TRAN /PWS/ZYCER311
TRAN /PWS/ZYCET540
TRAN /PWS/ZYCET541
TRAN /PWS/ZYCET542
TRAN /PWS/ZYCET543
TRAN /PWS/ZYCET544
TRAN /PWS/ZYCET546
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DOMA /PWS/ZYCED630
------------------------------------------------------------------------
Domínio incluído: /PWS/ZYCED630
Descrição breve incluída (21 caracteres), idioma: PT
"CE - Código do Acordo"
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Categoria de dados: CHAR
Número de posições: 2
Comprimento de saída: 2
Rotina de conversão:
Letras minúsculas: NÃO
Incluída tabela de valores:
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DOMA /PWS/ZYCED631
------------------------------------------------------------------------
Domínio incluído: /PWS/ZYCED631
Descrição breve incluída (21 caracteres), idioma: PT
"CE - Acordo Comercial"
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Categoria de dados: CHAR
Número de posições: 40
Comprimento de saída: 40
Rotina de conversão:
Letras minúsculas: NÃO
Incluída tabela de valores:
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DOMA /PWS/ZYCED632
------------------------------------------------------------------------
Domínio incluído: /PWS/ZYCED632
Descrição breve incluída (26 caracteres), idioma: PT
"CE - Código de Agrupamento"
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Categoria de dados: CHAR
Número de posições: 1
Comprimento de saída: 1
Rotina de conversão:
Letras minúsculas: NÃO
-Valores individuais
Incluído valor fixo "A"
Texto incluído, idioma: PT (6 caracteres):
"Nenhum"
Incluído valor fixo "B"
Texto incluído, idioma: PT (38 caracteres):
"NCM + Desc. Do Material + Un. de Venda"
Incluído valor fixo "C"
Texto incluído, idioma: PT (23 caracteres):
"NCM + Desc. Do Material"
Incluída tabela de valores:
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DOMA /PWS/ZYCED633
------------------------------------------------------------------------
Domínio incluído: /PWS/ZYCED633
Descrição breve incluída (26 caracteres), idioma: PT
"CE - Código de Denominação"
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Categoria de dados: CHAR
Número de posições: 1
Comprimento de saída: 1
Rotina de conversão:
Letras minúsculas: NÃO
-Valores individuais
Incluído valor fixo "B"
Texto incluído, idioma: PT (42 caracteres):
"Código do Produto + Descrição do Material"
Incluído valor fixo "D"
Texto incluído, idioma: PT (60 caracteres):
"Código do Produto + Descrição do Material + Descrição do NCM"
Incluído valor fixo "F"
Texto incluído, idioma: PT (60 caracteres):
"Código Produto + Desc. Material + Desc. NCM + Unidade Medida"
Incluído valor fixo "H"
Texto incluído, idioma: PT (58 caracteres):
"Código do Produto + Descrição do Material + Unidade Medida"
Incluído valor fixo "K"
Texto incluído, idioma: PT (40 caracteres):
"Descrição do NCM + Descrição do Material"
Incluído valor fixo "A"
Texto incluído, idioma: PT (41 caracteres):
"Descrição do Material + Código do Produto"
Incluído valor fixo "C"
Texto incluído, idioma: PT (60 caracteres):
"Descrição do Material + Código do Produto + Descrição do NCM"
Incluído valor fixo "E"
Texto incluído, idioma: PT (60 caracteres):
"Descrição Material + Código Produto + Desc. NCM + Un. Medida"
Incluído valor fixo "G"
Texto incluído, idioma: PT (57 caracteres):
"Descrição do Mat. + Código do Produto + Unidade de Medida"
Incluído valor fixo "I"
Texto incluído, idioma: PT (37 caracteres):
"Descrição do Material + Descrição NCM"
Incluído valor fixo "J"
Texto incluído, idioma: PT (56 caracteres):
"Descrição NCM + Descrição do Material + Unidade de Venda"
Incluído valor fixo "L"
Texto incluído, idioma: PT (21 caracteres):
"Descrição do Material"
Incluída tabela de valores:
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DOMA /PWS/ZYCED634
------------------------------------------------------------------------
Domínio incluído: /PWS/ZYCED634
Descrição breve incluída (46 caracteres), idioma: PT
"CE - Obrigatoriedade para Declaração de Origem"
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Categoria de dados: CHAR
Número de posições: 1
Comprimento de saída: 1
Rotina de conversão:
Letras minúsculas: NÃO
-Valores individuais
Incluído valor fixo "E"
Texto incluído, idioma: PT (3 caracteres):
"Sim"
Incluído valor fixo "W"
Texto incluído, idioma: PT (3 caracteres):
"Não"
Incluída tabela de valores:
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DOMA /PWS/ZYCED635
------------------------------------------------------------------------
Domínio incluído: /PWS/ZYCED635
Descrição breve incluída (19 caracteres), idioma: PT
"CE - Código do País"
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Categoria de dados: NUMC
Número de posições: 3
Comprimento de saída: 3
Rotina de conversão:
Incluída tabela de valores:
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DOMA /PWS/ZYCED636
------------------------------------------------------------------------
Domínio incluído: /PWS/ZYCED636
Descrição breve incluída (27 caracteres), idioma: PT
"CE - Descrição do País COOL"
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Categoria de dados: CHAR
Número de posições: 50
Comprimento de saída: 50
Rotina de conversão:
Letras minúsculas: NÃO
Incluída tabela de valores:
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DOMA /PWS/ZYCED637
------------------------------------------------------------------------
Domínio incluído: /PWS/ZYCED637
Descrição breve incluída (20 caracteres), idioma: PT
"CE - Código da Norma"
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Categoria de dados: NUMC
Número de posições: 3
Comprimento de saída: 3
Rotina de conversão:
Incluída tabela de valores:
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DOMA /PWS/ZYCED638
------------------------------------------------------------------------
Domínio incluído: /PWS/ZYCED638
Descrição breve incluída (20 caracteres), idioma: PT
"CE - Norma de Origem"
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Categoria de dados: CHAR
Número de posições: 150
Comprimento de saída: 150
Rotina de conversão:
Letras minúsculas: SIM
Incluída tabela de valores:
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DOMA /PWS/ZYCED639
------------------------------------------------------------------------
Domínio incluído: /PWS/ZYCED639
Descrição breve incluída (39 caracteres), idioma: PT
"CE - Identificador de Unidade de Medida"
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Categoria de dados: NUMC
Número de posições: 3
Comprimento de saída: 3
Rotina de conversão:
Incluída tabela de valores:
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DOMA /PWS/ZYCED640
------------------------------------------------------------------------
Domínio incluído: /PWS/ZYCED640
Descrição breve incluída (31 caracteres), idioma: PT
"CE - Sigla da Unidade de Medida"
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Categoria de dados: CHAR
Número de posições: 5
Comprimento de saída: 5
Rotina de conversão:
Letras minúsculas: NÃO
Incluída tabela de valores:
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DOMA /PWS/ZYCED641
------------------------------------------------------------------------
Domínio incluído: /PWS/ZYCED641
Descrição breve incluída (35 caracteres), idioma: PT
"CE - Descrição da Unidade de Medida"
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Categoria de dados: CHAR
Número de posições: 20
Comprimento de saída: 20
Rotina de conversão:
Letras minúsculas: NÃO
Incluída tabela de valores:
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DOMA /PWS/ZYCED642
------------------------------------------------------------------------
Domínio incluído: /PWS/ZYCED642
Descrição breve incluída (35 caracteres), idioma: PT
"CE - Código da Declaração de Origem"
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Categoria de dados: CHAR
Número de posições: 10
Comprimento de saída: 10
Rotina de conversão:
Letras minúsculas: NÃO
Incluída tabela de valores:
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DOMA /PWS/ZYCED643
------------------------------------------------------------------------
Domínio incluído: /PWS/ZYCED643
Descrição breve incluída (15 caracteres), idioma: PT
"CE - Assinatura"
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Categoria de dados: CHAR
Número de posições: 77
Comprimento de saída: 77
Rotina de conversão:
Letras minúsculas: SIM
Incluída tabela de valores:
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DOMA /PWS/ZYCED644
------------------------------------------------------------------------
Domínio incluído: /PWS/ZYCED644
Descrição breve incluída (31 caracteres), idioma: PT
"CE - Origem do número da fatura"
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Categoria de dados: CHAR
Número de posições: 1
Comprimento de saída: 1
Rotina de conversão:
Letras minúsculas: NÃO
-Valores individuais
Incluído valor fixo "E"
Texto incluído, idioma: PT (18 caracteres):
"Número do embarque"
Incluído valor fixo "S"
Texto incluído, idioma: PT (32 caracteres):
"Número do sequencial do embarque"
Incluída tabela de valores:
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DOMA /PWS/ZYCED645
------------------------------------------------------------------------
Domínio incluído: /PWS/ZYCED645
Descrição breve incluída (29 caracteres), idioma: PT
"CE - Origem da data da fatura"
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Categoria de dados: CHAR
Número de posições: 1
Comprimento de saída: 1
Rotina de conversão:
Letras minúsculas: NÃO
-Valores individuais
Incluído valor fixo "H"
Texto incluído, idioma: PT (11 caracteres):
"Data do dia"
Incluído valor fixo "E"
Texto incluído, idioma: PT (16 caracteres):
"Data do embarque"
Incluído valor fixo "P"
Texto incluído, idioma: PT (25 caracteres):
"Data prevista de embarque"
Incluído valor fixo "V"
Texto incluído, idioma: PT (18 caracteres):
"Data do vencimento"
Incluído valor fixo "I"
Texto incluído, idioma: PT (28 caracteres):
"Data de inclusão do embarque"
Incluída tabela de valores:
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DOMA /PWS/ZYCED646
------------------------------------------------------------------------
Domínio incluído: /PWS/ZYCED646
Descrição breve incluída (15 caracteres), idioma: PT
"CE - Observação"
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Categoria de dados: LCHR
Número de posições: 497
Comprimento de saída: 497
Rotina de conversão:
Letras minúsculas: SIM
Incluída tabela de valores:
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DOMA /PWS/ZYCED647
------------------------------------------------------------------------
Domínio incluído: /PWS/ZYCED647
Descrição breve incluída (52 caracteres), idioma: PT
"CE - Indicador de singularidade da unidade de medida"
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Categoria de dados: CHAR
Número de posições: 1
Comprimento de saída: 1
Rotina de conversão:
Letras minúsculas: NÃO
-Valores individuais
Incluído valor fixo "S"
Texto incluído, idioma: PT (8 caracteres):
"Singular"
Incluído valor fixo "P"
Texto incluído, idioma: PT (6 caracteres):
"Plural"
Incluído valor fixo "N"
Texto incluído, idioma: PT (13 caracteres):
"Não Aplicável"
Incluída tabela de valores:
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DOMA /PWS/ZYCED648
------------------------------------------------------------------------
Domínio incluído: /PWS/ZYCED648
Descrição breve incluída (24 caracteres), idioma: PT
"CE - Tipo de Certificado"
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Categoria de dados: CHAR
Número de posições: 1
Comprimento de saída: 1
Rotina de conversão:
Letras minúsculas: NÃO
-Valores individuais
Incluído valor fixo "A"
Texto incluído, idioma: PT (13 caracteres):
"Certificado A"
Incluído valor fixo "B"
Texto incluído, idioma: PT (13 caracteres):
"Certificado B"
Incluído valor fixo "C"
Texto incluído, idioma: PT (13 caracteres):
"Certificado C"
Incluído valor fixo "D"
Texto incluído, idioma: PT (13 caracteres):
"Certificado D"
Incluído valor fixo "E"
Texto incluído, idioma: PT (13 caracteres):
"Certificado E"
Incluído valor fixo "F"
Texto incluído, idioma: PT (13 caracteres):
"Certificado F"
Incluído valor fixo "G"
Texto incluído, idioma: PT (13 caracteres):
"Certificado G"
Incluído valor fixo "H"
Texto incluído, idioma: PT (22 caracteres):
"Certificado Específico"
Incluída tabela de valores:
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCEL680
------------------------------------------------------------------------
Elemento de dados incluído: /PWS/ZYCEL680
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Descrição breve incluída: (21 caracteres), idioma: PT
"CE - Código do Acordo"
Categoria de dados: Domínio
Domínio: /PWS/ZYCED630
ID parâmetro:
Nome componente default:
Documentar modificações: NÃO
Nome da ajuda de pesquisa:
Parâmetro da ajuda de pesquisa:
Comprimento máximo do denominador breve: 10
Denominador breve incluído (9 caracteres), idioma: PT
"C. Acordo"
Comprimento máximo do denominador médio: 15
Denominador médio incluído (11 caracteres), idioma: PT
"Cód. Acordo"
Comprimento máximo do denominador longo: 20
Denominador longo incluído (16 caracteres), idioma: PT
"Código do Acordo"
Comprimento máximo do título: 16
Título incluído (16 caracteres), idioma: PT
"Código do Acordo"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCEL681
------------------------------------------------------------------------
Elemento de dados incluído: /PWS/ZYCEL681
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Descrição breve incluída: (21 caracteres), idioma: PT
"CE - Acordo Comercial"
Categoria de dados: Domínio
Domínio: /PWS/ZYCED631
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 (10 caracteres), idioma: PT
"Ac. Comer."
Comprimento máximo do denominador médio: 15
Denominador médio incluído (11 caracteres), idioma: PT
"Acordo Com."
Comprimento máximo do denominador longo: 20
Denominador longo incluído (16 caracteres), idioma: PT
"Acordo Comercial"
Comprimento máximo do título: 16
Título incluído (16 caracteres), idioma: PT
"Acordo Comercial"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCEL682
------------------------------------------------------------------------
Elemento de dados incluído: /PWS/ZYCEL682
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Descrição breve incluída: (26 caracteres), idioma: PT
"CE - Código de Agrupamento"
Categoria de dados: Domínio
Domínio: /PWS/ZYCED632
ID parâmetro:
Nome componente default:
Documentar modificações: NÃO
Nome da ajuda de pesquisa:
Parâmetro da ajuda de pesquisa:
Comprimento máximo do denominador breve: 10
Denominador breve incluído (9 caracteres), idioma: PT
"Cód. Agr."
Comprimento máximo do denominador médio: 17
Denominador médio incluído (17 caracteres), idioma: PT
"Cód. Agrupamento"
Comprimento máximo do denominador longo: 21
Denominador longo incluído (21 caracteres), idioma: PT
"Código de Agrupamento"
Comprimento máximo do título: 21
Título incluído (21 caracteres), idioma: PT
"Código de Agrupamento"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCEL683
------------------------------------------------------------------------
Elemento de dados incluído: /PWS/ZYCEL683
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Descrição breve incluída: (26 caracteres), idioma: PT
"CE - Código de Denominação"
Categoria de dados: Domínio
Domínio: /PWS/ZYCED633
ID parâmetro:
Nome componente default:
Documentar modificações: NÃO
Nome da ajuda de pesquisa:
Parâmetro da ajuda de pesquisa:
Comprimento máximo do denominador breve: 10
Denominador breve incluído (9 caracteres), idioma: PT
"Cód. Den."
Comprimento máximo do denominador médio: 16
Denominador médio incluído (16 caracteres), idioma: PT
"Cód. Denominação"
Comprimento máximo do denominador longo: 21
Denominador longo incluído (21 caracteres), idioma: PT
"Código de Denominação"
Comprimento máximo do título: 21
Título incluído (21 caracteres), idioma: PT
"Código de Denominação"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCEL684
------------------------------------------------------------------------
Elemento de dados incluído: /PWS/ZYCEL684
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Descrição breve incluída: (46 caracteres), idioma: PT
"CE - Obrigatoriedade para Declaração de Origem"
Categoria de dados: Domínio
Domínio: /PWS/ZYCED634
ID parâmetro:
Nome componente default:
Documentar modificações: NÃO
Nome da ajuda de pesquisa:
Parâmetro da ajuda de pesquisa:
Comprimento máximo do denominador breve: 10
Denominador breve incluído (9 caracteres), idioma: PT
"Obrig. DP"
Comprimento máximo do denominador médio: 20
Denominador médio incluído (20 caracteres), idioma: PT
"Obrig. Decl. Produto"
Comprimento máximo do denominador longo: 39
Denominador longo incluído (39 caracteres), idioma: PT
"Obrigatoriedade para Declaração Produto"
Comprimento máximo do título: 42
Título incluído (42 caracteres), idioma: PT
"Obrigatoriedade para Declaração do Produto"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCEL685
------------------------------------------------------------------------
Elemento de dados incluído: /PWS/ZYCEL685
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Descrição breve incluída: (24 caracteres), idioma: PT
"CE - Código do país COOL"
Categoria de dados: Domínio
Domínio: /PWS/ZYCED635
ID parâmetro:
Nome componente default:
Documentar modificações: NÃO
Nome da ajuda de pesquisa:
Parâmetro da ajuda de pesquisa:
Comprimento máximo do denominador breve: 10
Denominador breve incluído (9 caracteres), idioma: PT
"País COOL"
Comprimento máximo do denominador médio: 15
Denominador médio incluído (14 caracteres), idioma: PT
"Cód. País COOL"
Comprimento máximo do denominador longo: 20
Denominador longo incluído (19 caracteres), idioma: PT
"Código do País COOL"
Comprimento máximo do título: 19
Título incluído (19 caracteres), idioma: PT
"Código do País COOL"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCEL686
------------------------------------------------------------------------
Elemento de dados incluído: /PWS/ZYCEL686
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Descrição breve incluída: (27 caracteres), idioma: PT
"CE - Descrição do País COOL"
Categoria de dados: Domínio
Domínio: /PWS/ZYCED636
ID parâmetro:
Nome componente default:
Documentar modificações: NÃO
Nome da ajuda de pesquisa:
Parâmetro da ajuda de pesquisa:
Comprimento máximo do denominador breve: 10
Denominador breve incluído (9 caracteres), idioma: PT
"País COOL"
Comprimento máximo do denominador médio: 15
Denominador médio incluído (15 caracteres), idioma: PT
"Desc. País COOL"
Comprimento máximo do denominador longo: 22
Denominador longo incluído (22 caracteres), idioma: PT
"Descrição do País COOL"
Comprimento máximo do título: 22
Título incluído (22 caracteres), idioma: PT
"Descrição do País COOL"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCEL687
------------------------------------------------------------------------
Elemento de dados incluído: /PWS/ZYCEL687
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Descrição breve incluída: (20 caracteres), idioma: PT
"CE - Código da Norma"
Categoria de dados: Domínio
Domínio: /PWS/ZYCED637
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: PT
"C. Norma"
Comprimento máximo do denominador médio: 15
Denominador médio incluído (10 caracteres), idioma: PT
"Cód. Norma"
Comprimento máximo do denominador longo: 20
Denominador longo incluído (15 caracteres), idioma: PT
"Código da Norma"
Comprimento máximo do título: 15
Título incluído (15 caracteres), idioma: PT
"Código da Norma"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCEL688
------------------------------------------------------------------------
Elemento de dados incluído: /PWS/ZYCEL688
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Descrição breve incluída: (33 caracteres), idioma: PT
"CE - Descrição da Norma de Origem"
Categoria de dados: Domínio
Domínio: /PWS/ZYCED638
ID parâmetro:
Nome componente default:
Documentar modificações: NÃO
Nome da ajuda de pesquisa:
Parâmetro da ajuda de pesquisa:
Comprimento máximo do denominador breve: 10
Denominador breve incluído (9 caracteres), idioma: PT
"N. Origem"
Comprimento máximo do denominador médio: 15
Denominador médio incluído (12 caracteres), idioma: PT
"Norma Origem"
Comprimento máximo do denominador longo: 20
Denominador longo incluído (15 caracteres), idioma: PT
"Norma de Origem"
Comprimento máximo do título: 15
Título incluído (15 caracteres), idioma: PT
"Norma de Origem"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCEL689
------------------------------------------------------------------------
Elemento de dados incluído: /PWS/ZYCEL689
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Descrição breve incluída: (39 caracteres), idioma: PT
"CE - Identificador de unidade de medida"
Categoria de dados: Domínio
Domínio: /PWS/ZYCED639
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: PT
"Id. med."
Comprimento máximo do denominador médio: 16
Denominador médio incluído (16 caracteres), idioma: PT
"Id. Unid. Medida"
Comprimento máximo do denominador longo: 34
Denominador longo incluído (34 caracteres), idioma: PT
"Identificador de Unidade de Medida"
Comprimento máximo do título: 34
Título incluído (34 caracteres), idioma: PT
"Identificador de Unidade de Medida"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCEL690
------------------------------------------------------------------------
Elemento de dados incluído: /PWS/ZYCEL690
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Descrição breve incluída: (31 caracteres), idioma: PT
"CE - Sigla de Unidade de Medida"
Categoria de dados: Domínio
Domínio: /PWS/ZYCED640
ID parâmetro:
Nome componente default:
Documentar modificações: NÃO
Nome da ajuda de pesquisa:
Parâmetro da ajuda de pesquisa:
Comprimento máximo do denominador breve: 10
Denominador breve incluído (9 caracteres), idioma: PT
"S. medida"
Comprimento máximo do denominador médio: 15
Denominador médio incluído (14 caracteres), idioma: PT
"Sigla Un. Med."
Comprimento máximo do denominador longo: 26
Denominador longo incluído (26 caracteres), idioma: PT
"Sigla da Unidade de Medida"
Comprimento máximo do título: 26
Título incluído (26 caracteres), idioma: PT
"Sigla da Unidade de Medida"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCEL691
------------------------------------------------------------------------
Elemento de dados incluído: /PWS/ZYCEL691
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Descrição breve incluída: (35 caracteres), idioma: PT
"CE - Descrição da Unidade de Medida"
Categoria de dados: Domínio
Domínio: /PWS/ZYCED641
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: PT
"Ds. Med."
Comprimento máximo do denominador médio: 15
Denominador médio incluído (14 caracteres), idioma: PT
"Desc. Un. Med."
Comprimento máximo do denominador longo: 30
Denominador longo incluído (30 caracteres), idioma: PT
"Descrição da Unidade de Medida"
Comprimento máximo do título: 30
Título incluído (30 caracteres), idioma: PT
"Descrição da Unidade de Medida"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCEL692
------------------------------------------------------------------------
Elemento de dados incluído: /PWS/ZYCEL692
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Descrição breve incluída: (35 caracteres), idioma: PT
"CE - Código da Declaração de Origem"
Categoria de dados: Domínio
Domínio: /PWS/ZYCED642
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 (10 caracteres), idioma: PT
"Dec. Orig."
Comprimento máximo do denominador médio: 15
Denominador médio incluído (12 caracteres), idioma: PT
"Decl. Origem"
Comprimento máximo do denominador longo: 20
Denominador longo incluído (20 caracteres), idioma: PT
"Declaração de Origem"
Comprimento máximo do título: 20
Título incluído (20 caracteres), idioma: PT
"Declaração de Origem"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCEL693
------------------------------------------------------------------------
Elemento de dados incluído: /PWS/ZYCEL693
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Descrição breve incluída: (15 caracteres), idioma: PT
"CE - Assinatura"
Categoria de dados: Domínio
Domínio: /PWS/ZYCED643
ID parâmetro:
Nome componente default:
Documentar modificações: NÃO
Nome da ajuda de pesquisa:
Parâmetro da ajuda de pesquisa:
Comprimento máximo do denominador breve: 10
Denominador breve incluído (6 caracteres), idioma: PT
"Assin."
Comprimento máximo do denominador médio: 15
Denominador médio incluído (8 caracteres), idioma: PT
"Assinat."
Comprimento máximo do denominador longo: 20
Denominador longo incluído (10 caracteres), idioma: PT
"Assinatura"
Comprimento máximo do título: 77
Título incluído (10 caracteres), idioma: PT
"Assinatura"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCEL694
------------------------------------------------------------------------
Elemento de dados incluído: /PWS/ZYCEL694
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Descrição breve incluída: (31 caracteres), idioma: PT
"CE - Origem do número da fatura"
Categoria de dados: Domínio
Domínio: /PWS/ZYCED644
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: PT
"Nr. Fat."
Comprimento máximo do denominador médio: 15
Denominador médio incluído (11 caracteres), idioma: PT
"Núm. Fatura"
Comprimento máximo do denominador longo: 20
Denominador longo incluído (16 caracteres), idioma: PT
"Número da Fatura"
Comprimento máximo do título: 16
Título incluído (16 caracteres), idioma: PT
"Número da Fatura"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCEL695
------------------------------------------------------------------------
Elemento de dados incluído: /PWS/ZYCEL695
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Descrição breve incluída: (29 caracteres), idioma: PT
"CE - Origem da data da fatura"
Categoria de dados: Domínio
Domínio: /PWS/ZYCED645
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: PT
"Dt. Fat."
Comprimento máximo do denominador médio: 15
Denominador médio incluído (10 caracteres), idioma: PT
"Dt. Fatura"
Comprimento máximo do denominador longo: 20
Denominador longo incluído (14 caracteres), idioma: PT
"Data da Fatura"
Comprimento máximo do título: 14
Título incluído (14 caracteres), idioma: PT
"Data da Fatura"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCEL696
------------------------------------------------------------------------
Elemento de dados incluído: /PWS/ZYCEL696
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Descrição breve incluída: (15 caracteres), idioma: PT
"CE - Observação"
Categoria de dados: Domínio
Domínio: /PWS/ZYCED646
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 (4 caracteres), idioma: PT
"Obs."
Comprimento máximo do denominador médio: 15
Denominador médio incluído (7 caracteres), idioma: PT
"Observ."
Comprimento máximo do denominador longo: 20
Denominador longo incluído (10 caracteres), idioma: PT
"Observação"
Comprimento máximo do título: 97
Título incluído (10 caracteres), idioma: PT
"Observação"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCEL697
------------------------------------------------------------------------
Elemento de dados incluído: /PWS/ZYCEL697
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Descrição breve incluída: (42 caracteres), idioma: PT
"CE - Indicador de singularidade da unidade"
Categoria de dados: Domínio
Domínio: /PWS/ZYCED647
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 (5 caracteres), idioma: PT
"Sing."
Comprimento máximo do denominador médio: 15
Denominador médio incluído (9 caracteres), idioma: PT
"Singular."
Comprimento máximo do denominador longo: 20
Denominador longo incluído (13 caracteres), idioma: PT
"Singularidade"
Comprimento máximo do título: 13
Título incluído (13 caracteres), idioma: PT
"Singularidade"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DTEL /PWS/ZYCEL698
------------------------------------------------------------------------
Elemento de dados incluído: /PWS/ZYCEL698
Classe de desenvolvimento: /PWS/ZYCE
Idioma original: PT
Descrição breve incluída: (24 caracteres), idioma: PT
"CE - Tipo de certificado"
Categoria de dados: Domínio
Domínio: /PWS/ZYCED648
ID parâmetro:
Nome componente default:
Documentar modificações: NÃO
Nome da ajuda de pesquisa:
Parâmetro da ajuda de pesquisa:
Comprimento máximo do denominador breve: 10
Denominador breve incluído (9 caracteres), idioma: PT
"Tp. Cert."
Comprimento máximo do denominador médio: 15
Denominador médio incluído (15 caracteres), idioma: PT
"Tipo de Certif."
Comprimento máximo do denominador longo: 20
Denominador longo incluído (19 caracteres), idioma: PT
"Tipo de Certificado"
Comprimento máximo do título: 19
Título incluído (19 caracteres), idioma: PT
"Tipo de Certificado"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em ENQU /PWS/EZYCET545
MODIFICAR OBJETO DE BLOQUEIO: /PWS/EZYCET545
DESCRIÇÃO BREVE: CE - Parâmetros Gerais Certificado de Origem
CARACTERÍSTICAS
(_) AUTORIZAR RFC
TABELAS
TABELA PRIMÁRIA:
NOME: /PWS/ZYCET545
MODO DE BLOQUEIO: Bloqueio de escrita
TABELAS SECUNDÁRIAS:
NOME: MODO BLOQUEIO:
PARAM. BLOQUEIO
POND: PARÂMETRO DE BLOQUEIO: TABELA: NOME CAMPO:
X MANDT /PWS/ZYCET545 MANDT
X CDACD /PWS/ZYCET545 CDACD
X KUNNR /PWS/ZYCET545 KUNNR
X LAND1 /PWS/ZYCET545 LAND1
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCE310F01
FORM seleciona_parametros.
DATA
wa_observacao TYPE /pws/zycet545-obser.
SELECT SINGLE *
FROM /pws/zycet545
INTO /pws/zycee545
WHERE
cdacd = p_cdacd AND
kunnr = p_kunnr AND
land1 = p_land1.
IF NOT sy-subrc IS INITIAL.
CLEAR /pws/zycee545.
MOVE:
p_cdacd TO /pws/zycee545-cdacd,
p_kunnr TO /pws/zycee545-kunnr,
p_land1 TO /pws/zycee545-land1.
v_modo = c_modif.
ELSE.
MOVE /pws/zycee545-obser TO wa_observacao.
APPEND wa_observacao TO it_observacao.
v_modo = c_leitura.
ENDIF.
SELECT SINGLE dsacd
FROM /pws/zycet540
INTO v_dsacd
WHERE
cdacd = p_cdacd.
SELECT SINGLE name1
FROM kna1
INTO v_kunnr
WHERE
kunnr = p_kunnr.
SELECT SINGLE landx
FROM t005t
INTO v_land1
WHERE
spras = sy-langu AND
land1 = p_land1.
ENDFORM.
FORM salva_parametros.
DATA:
v_modificado TYPE i,
wa_observacao TYPE LINE OF t_observacao.
CALL METHOD ref_te_observacao->get_text_as_stream
EXPORTING
only_when_modified = ref_te_observacao->false
IMPORTING
text = it_observacao
is_modified = v_modificado
EXCEPTIONS
error_dp = 1
error_cntl_call_method = 2
OTHERS = 3.
IF NOT sy-subrc = 0.
MESSAGE ID sy-msgid TYPE 'X' NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ELSE.
DELETE FROM /pws/zycet545
WHERE
cdacd = /pws/zycee545-cdacd AND
kunnr = /pws/zycee545-kunnr AND
land1 = /pws/zycee545-land1.
READ TABLE it_observacao INTO wa_observacao INDEX 1.
MOVE wa_observacao TO /pws/zycee545-obser.
/pws/zycee545-tmobs = strlen( wa_observacao ).
INSERT INTO /pws/zycet545 VALUES /pws/zycee545.
COMMIT WORK.
CLEAR v_atualizado.
ENDIF.
ENDFORM.
FORM inicializa_objetos.
DATA
wa_pfstatus TYPE t_pfstatus.
DEFINE ajusta_pfstatus.
wa_pfstatus-pfstatus = &1.
append wa_pfstatus to it_pfstatus.
END-OF-DEFINITION.
IF ref_cc_observacao IS INITIAL.
CREATE OBJECT ref_cc_observacao
EXPORTING
container_name = 'CC_OBS'
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2
create_error = 3
lifetime_error = 4
lifetime_dynpro_dynpro_link = 5
others = 6.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE 'X' NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDIF.
IF ref_te_observacao IS INITIAL.
CREATE OBJECT ref_te_observacao
EXPORTING
max_number_chars = c_max_char
parent = ref_cc_observacao
EXCEPTIONS
error_cntl_create = 1
error_cntl_init = 2
error_cntl_link = 3
error_dp_create = 4
gui_type_not_supported = 5
others = 6.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE 'X' NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CALL METHOD ref_te_observacao->set_toolbar_mode
EXPORTING
toolbar_mode = ref_te_observacao->false.
CALL METHOD ref_te_observacao->set_statusbar_mode
EXPORTING
statusbar_mode = ref_te_observacao->false.
ajusta_pfstatus:
'NOVO',
'SELE',
'DELE'.
ENDIF.
PERFORM preenche_observacao USING it_observacao.
IF v_modo = c_leitura.
PERFORM ajusta_apenas_leitura USING c_sim.
ELSE.
PERFORM ajusta_apenas_leitura USING c_nao.
ENDIF.
CLEAR v_atualizado.
ENDFORM.
FORM ajusta_leitura_observacao
USING p_leitura TYPE char1.
DATA
v_ro TYPE i.
CASE p_leitura.
WHEN c_sim.
v_ro = ref_te_observacao->true.
WHEN c_nao.
v_ro = ref_te_observacao->false.
ENDCASE.
CALL METHOD ref_te_observacao->set_readonly_mode
EXPORTING readonly_mode = v_ro
EXCEPTIONS
error_cntl_call_method = 1
invalid_parameter = 2
OTHERS = 3.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE 'X' NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDFORM.
FORM atualiza_parametros.
IF v_modo = c_modif.
v_atualizado = 'X'.
ENDIF.
ENDFORM.
FORM ajusta_apenas_leitura
USING p_modo TYPE char1.
IF NOT p_modo IS INITIAL.
v_modo = c_leitura.
ELSE.
v_modo = c_modif.
ENDIF.
PERFORM bloqueio_registro
USING
v_modo
p_cdacd
p_kunnr
p_land1.
PERFORM ajusta_leitura_observacao USING p_modo.
ENDFORM.
FORM preenche_observacao
USING p_observacao TYPE t_observacao.
CALL METHOD ref_te_observacao->set_text_as_stream
EXPORTING
text = p_observacao
EXCEPTIONS
error_dp = 1
error_dp_create = 2
OTHERS = 3.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE 'X' NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDFORM.
FORM remove_parametros
USING p_acordo TYPE /pws/zycee545-cdacd
p_cliente TYPE /pws/zycee545-kunnr
p_pais TYPE /pws/zycee545-land1.
DATA
v_confirma(1) TYPE c.
CALL FUNCTION 'POPUP_TO_CONFIRM_STEP'
EXPORTING
defaultoption = 'N'
textline1 = 'Confirma remoção do parâmetro?'(000)
titel = 'Confirmar'(001)
IMPORTING
answer = v_confirma.
CHECK v_confirma = 'J'.
DELETE FROM /pws/zycet545
WHERE cdacd = p_acordo AND
kunnr = p_cliente AND
land1 = p_pais.
CLEAR:
/pws/zycee545,
it_observacao.
MESSAGE s001 WITH 'Parâmetro removido.'(002).
LEAVE TO SCREEN 1.
ENDFORM.
FORM retorna_selecao.
DATA
v_confirma(1) TYPE c.
IF NOT v_atualizado IS INITIAL.
CALL FUNCTION 'POPUP_TO_CONFIRM_STEP'
EXPORTING
defaultoption = 'N'
textline1 =
'Parâmetros sofreram alteração. Confirma saída?'(003)
titel = 'Confirmar'(001)
IMPORTING
answer = v_confirma.
CHECK v_confirma = 'J'.
IF v_modo = c_modif.
PERFORM bloqueio_registro
USING
c_leitura
p_cdacd
p_kunnr
p_land1.
ENDIF.
CLEAR sy-ucomm.
LEAVE TO SCREEN 1.
ELSE.
IF v_modo = c_modif.
PERFORM bloqueio_registro
USING
c_leitura
p_cdacd
p_kunnr
p_land1.
ENDIF.
CLEAR sy-ucomm.
LEAVE TO SCREEN 1.
ENDIF.
ENDFORM.
FORM bloqueio_registro
USING
p_modo TYPE char1
p_acordo TYPE /pws/zycet545-cdacd
p_cliente TYPE /pws/zycet545-kunnr
p_pais TYPE /pws/zycet545-land1.
CASE p_modo.
WHEN c_modif.
CALL FUNCTION 'ENQUEUE_/PWS/EZYCET545'
EXPORTING
mandt = sy-mandt
cdacd = p_acordo
kunnr = p_cliente
land1 = p_pais
EXCEPTIONS
foreign_lock = 1
system_failure = 2
OTHERS = 3.
CHECK sy-subrc NE 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
WHEN c_leitura.
CALL FUNCTION 'DEQUEUE_/PWS/EZYCET545'
EXPORTING
mandt = sy-mandt
cdacd = p_acordo
kunnr = p_cliente
land1 = p_pais.
ENDCASE.
ENDFORM.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCE310I01
MODULE user_command_0100 INPUT.
CASE okcode.
WHEN 'SAVE'.
PERFORM salva_parametros.
WHEN 'BACK' or 'NOVO'.
clear okcode.
PERFORM retorna_selecao.
WHEN 'ENTE'.
PERFORM atualiza_parametros.
WHEN 'EDIT'.
IF v_modo = c_leitura.
PERFORM ajusta_apenas_leitura USING c_nao.
ELSE.
PERFORM ajusta_apenas_leitura USING c_sim.
ENDIF.
WHEN 'DELE'.
PERFORM remove_parametros
USING /pws/zycee545-cdacd
/pws/zycee545-kunnr
/pws/zycee545-land1.
ENDCASE.
CLEAR okcode.
ENDMODULE.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCE310O01
MODULE ajusta_tela_0100 OUTPUT.
LOOP AT SCREEN.
CASE screen-group1.
WHEN 'L'.
IF v_modo = c_leitura.
screen-input = 0.
ELSE.
screen-input = 1.
ENDIF.
MODIFY SCREEN.
ENDCASE.
ENDLOOP.
ENDMODULE.
MODULE status_0100 OUTPUT.
CASE v_modo.
WHEN c_leitura.
SET PF-STATUS '0100' EXCLUDING it_pfstatus.
WHEN c_modif.
SET PF-STATUS '0100'.
ENDCASE.
SET TITLEBAR '0100'.
ENDMODULE.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCE310TOP
PROGRAM /pws/sapmzyce310 MESSAGE-ID /pws/zycem.
TABLES:
/pws/zycee545.
CONSTANTS:
c_max_char TYPE i VALUE 497,
c_sim(1) TYPE c VALUE 'X',
c_nao(1) TYPE c VALUE space,
c_leitura(1) TYPE c VALUE 'L',
c_modif(1) TYPE c VALUE 'M'.
TYPES:
t_observacao TYPE TABLE OF /pws/zycet545-obser INITIAL SIZE 1,
BEGIN OF t_pfstatus,
pfstatus(20) TYPE c,
END OF t_pfstatus.
DATA:
okcode TYPE sy-ucomm,
v_dsacd TYPE /pws/zycet540-dsacd,
v_kunnr TYPE kna1-name1,
v_land1 TYPE t005t-landx,
v_dsnrm TYPE /pws/zycet542-dsnrm,
v_modo(1) TYPE c,
v_atualizado(1) TYPE c,
it_observacao TYPE t_observacao,
it_pfstatus TYPE TABLE OF t_pfstatus,
ref_cc_observacao TYPE REF TO cl_gui_custom_container,
ref_te_observacao TYPE REF TO cl_gui_textedit.
SELECTION-SCREEN BEGIN OF SCREEN 0001.
PARAMETERS:
p_cdacd TYPE /pws/zycet545-cdacd OBLIGATORY,
p_kunnr TYPE /pws/zycet545-kunnr OBLIGATORY,
p_land1 TYPE /pws/zycet545-land1 OBLIGATORY.
SELECTION-SCREEN END OF SCREEN 0001.
AT SELECTION-SCREEN.
CLEAR it_pfstatus.
CALL FUNCTION 'RS_SET_SELSCREEN_STATUS'
EXPORTING
p_status = '0001'
TABLES
p_exclude = it_pfstatus.
MOVE sy-ucomm TO okcode.
CASE okcode.
WHEN 'CRET'.
PERFORM seleciona_parametros.
PERFORM inicializa_objetos.
CALL SCREEN '0100'.
WHEN 'BACK'.
LEAVE PROGRAM.
ENDCASE.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCE311F01
TYPES:
t_wa_cab_embarque TYPE /pws/zycet001,
t_wa_itens_embarque TYPE /pws/zycet002,
t_wa_carta_credito TYPE /pws/zycet014,
t_wa_param_inco TYPE /pws/zycet065,
t_wa_config_acordo TYPE /pws/zycet540,
t_wa_paises_cool TYPE /pws/zycet541,
t_wa_unidades TYPE /pws/zycet543,
t_wa_dp_material TYPE /pws/zycet544,
t_wa_param_acordo TYPE /pws/zycet545,
t_wa_param_ncm TYPE /pws/zycet546,
t_it_itens_embarque TYPE TABLE OF t_wa_itens_embarque,
BEGIN OF t_wa_arquivo_co,
conteudo(500) TYPE c,
quebra_linha(2) TYPE x,
END OF t_wa_arquivo_co,
t_it_arquivo_co TYPE TABLE OF t_wa_arquivo_co,
BEGIN OF t_wa_msg,
tipo(1) TYPE c,
pos(3) TYPE n,
msg TYPE char100,
END OF t_wa_msg,
t_it_msg TYPE TABLE OF t_wa_msg.
DEFINE preenche_meio_transporte.
wa_meio_transporte-viatrans = &1.
wa_meio_transporte-transporte = &2.
append wa_meio_transporte to it_meio_transporte.
END-OF-DEFINITION.
DEFINE formata_num3c.
move &1 to &2.
multiply &2 by 1000.
END-OF-DEFINITION.
DEFINE formata_num3c_x10.
move &1 to &2.
multiply &2 by 10.
END-OF-DEFINITION.
DEFINE determina_ascii.
assign &1 to <hex> casting.
move <hex> to &2.
END-OF-DEFINITION.
INTERFACE i_certificado.
METHODS:
retorna_certificado
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co
p_log_erros TYPE t_it_msg.
ENDINTERFACE.
CLASS lcl_certificado DEFINITION
ABSTRACT.
PUBLIC SECTION.
METHODS:
constructor
IMPORTING
p_embarque TYPE t_wa_cab_embarque-nrseq
p_acordo TYPE t_wa_config_acordo
p_idioma TYPE spras
EXCEPTIONS
dados_invalidos.
PROTECTED SECTION.
CONSTANTS:
c_erro(1) TYPE c VALUE 'E',
c_alerta(1) TYPE c VALUE 'W',
c_ok(1) TYPE c VALUE '',
c_peso_bruto(1) TYPE c VALUE 'B',
c_peso_liquido(1) TYPE c VALUE 'L'.
TYPES:
BEGIN OF t_co_hdr_arquivo,
id_registro(3) TYPE n,
tipo_arquivo(5) TYPE n,
cnpj(14) TYPE n,
razao_social(60) TYPE c,
vazio(418) TYPE c,
END OF t_co_hdr_arquivo,
BEGIN OF t_co_hdr_proc_certif,
id_registro(3) TYPE n,
acordo(2) TYPE c,
op_triangular(1) TYPE n,
vazio(494) TYPE c,
END OF t_co_hdr_proc_certif,
BEGIN OF t_co_hdr_fat_export,
id_registro(3) TYPE n,
importador(60) TYPE c,
endereco_imp(150) TYPE c,
pais_imp(3) TYPE n,
num_fatura(30) TYPE c,
data_fatura(10) TYPE c,
peso_liquido(12) TYPE n,
peso_bruto(12) TYPE n,
vl_tot_fatura(12) TYPE n,
vazio(208) TYPE c,
END OF t_co_hdr_fat_export,
BEGIN OF t_co_hdr_consig_x,
id_registro(3) TYPE n,
consignatario(60) TYPE c,
pais_consig(300) TYPE c,
vazio(137) TYPE c,
END OF t_co_hdr_consig_x,
BEGIN OF t_co_hdr_produtor_x,
id_registro(3) TYPE n,
produtor(60) TYPE c,
end_pais_prd(300) TYPE c,
vazio(137) TYPE c,
END OF t_co_hdr_produtor_x,
BEGIN OF t_co_hdr_transporte_x,
id_registro(3) TYPE n,
transporte(60) TYPE c,
rota(300) TYPE c,
vazio(137) TYPE c,
END OF t_co_hdr_transporte_x,
BEGIN OF t_co_det_fat_export,
id_registro(3) TYPE n,
quantidade(12) TYPE n,
un_medida(3) TYPE n,
denominacao(300) TYPE c,
vl_fob(12) TYPE n,
cod_declaracao(10) TYPE c,
vazio(160) TYPE c,
END OF t_co_det_fat_export,
BEGIN OF t_co_trl_fat_export,
id_registro(3) TYPE n,
num_fatura(30) TYPE c,
vazio(467) TYPE c,
END OF t_co_trl_fat_export,
BEGIN OF t_co_trl_proc_certif,
id_registro(3) TYPE n,
acordo(2) TYPE c,
vazio(495) TYPE c,
END OF t_co_trl_proc_certif,
BEGIN OF t_co_trl_arquivo,
id_registro(3) TYPE n,
quantidade(4) TYPE n,
vazio(493) TYPE c,
END OF t_co_trl_arquivo,
BEGIN OF t_co_hdr_observacao,
id_registro(3) TYPE n,
observacao(497) TYPE c,
END OF t_co_hdr_observacao,
BEGIN OF t_co_det_itens_denom_x,
id_registro(3) TYPE n,
denominacao(300) TYPE c,
vazio(197) TYPE c,
END OF t_co_det_itens_denom_x,
BEGIN OF t_co_trl_certificado_x,
id_registro(3) TYPE n,
vazio(497) TYPE c,
END OF t_co_trl_certificado_x,
num3(3) TYPE n,
t_denominacao(497) TYPE c,
BEGIN OF t_wa_dsmat,
matnr TYPE makt-matnr,
maktx TYPE makt-maktx,
END OF t_wa_dsmat,
BEGIN OF t_wa_contador_ncm,
steuc TYPE t_wa_itens_embarque-steuc,
pos TYPE i,
contador TYPE i,
END OF t_wa_contador_ncm.
DATA:
it_log_msg TYPE t_it_msg,
it_paises_cool TYPE TABLE OF t_wa_paises_cool,
it_dp_material TYPE TABLE OF t_wa_dp_material,
it_dsmat TYPE TABLE OF t_wa_dsmat,
it_param_ncm TYPE TABLE OF t_wa_param_ncm,
wa_cab_embarque_gen TYPE t_wa_cab_embarque,
it_itens_embarque_gen TYPE t_it_itens_embarque,
wa_carta_credito_gen TYPE t_wa_carta_credito,
wa_config_acordo_gen TYPE t_wa_config_acordo,
wa_param_acordo_gen TYPE t_wa_param_acordo,
wa_param_inco TYPE t_wa_param_inco,
it_contador_ncm TYPE TABLE OF t_wa_contador_ncm,
it_arquivo_co TYPE t_it_arquivo_co.
METHODS:
inclui_mensagem
IMPORTING
p_dado TYPE any
p_tipo TYPE char1
p_msg1 TYPE char100
p_msg2 TYPE char100
p_msg3 TYPE char100
p_msg4 TYPE char100
p_pos TYPE num3,
converte_peso_para_quilos
IMPORTING
p_item_embarque TYPE t_wa_itens_embarque
p_origem_peso TYPE char1
EXPORTING
p_peso_quilos TYPE ekpo-menge,
determina_classificacao
IMPORTING
p_item_embarque TYPE t_wa_itens_embarque
p_cab_embarque TYPE t_wa_cab_embarque
EXPORTING
p_param_ncm TYPE t_wa_param_ncm,
determina_unidade_medida
IMPORTING
p_unidade_r3 TYPE t_wa_unidades-msehi
p_quantidade TYPE num16
EXPORTING
p_unidade_co TYPE t_wa_unidades-idmed,
determina_denominacao
IMPORTING
p_idioma TYPE spras
p_item_embarque TYPE t_wa_itens_embarque
p_param_acordo TYPE t_wa_param_acordo
EXPORTING
p_denominacao1 TYPE t_denominacao
p_denominacao2 TYPE t_denominacao,
calcula_valor_fob
IMPORTING
p_cab_embarque TYPE t_wa_cab_embarque
p_item_embarque TYPE t_wa_itens_embarque
EXPORTING
p_valor_fob TYPE t_wa_itens_embarque-vlfob,
inicializa_contador_ncm
IMPORTING
p_itens_embarque TYPE t_it_itens_embarque,
retorna_contador_ncm
IMPORTING
p_item_embarque TYPE t_wa_itens_embarque
EXPORTING
p_num_ordem TYPE char4,
adicionar_header_arquivo
IMPORTING
p_cab_embarque TYPE t_wa_cab_embarque
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_header_proc_certif
IMPORTING
p_param_acordo TYPE t_wa_param_acordo
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_header_fat_export
IMPORTING
p_cab_embarque TYPE t_wa_cab_embarque
p_carta_credito TYPE t_wa_carta_credito
p_param_acordo TYPE t_wa_param_acordo
p_itens_embarque TYPE t_it_itens_embarque
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_details_fat_export
IMPORTING
p_idioma TYPE spras
p_cab_embarque TYPE t_wa_cab_embarque
p_param_acordo TYPE t_wa_param_acordo
p_itens_embarque TYPE t_it_itens_embarque
p_config_acordo TYPE t_wa_config_acordo
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_trailler_fat_export
IMPORTING
p_cab_embarque TYPE t_wa_cab_embarque
p_param_acordo TYPE t_wa_param_acordo
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_header_observacao
IMPORTING
p_cab_embarque TYPE t_wa_cab_embarque
p_param_acordo TYPE t_wa_param_acordo
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_trailler_proc_certif
IMPORTING
p_param_acordo TYPE t_wa_param_acordo
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_trailler_arquivo
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co.
PRIVATE SECTION.
TYPES:
BEGIN OF t_wa_agrupado,
steuc TYPE t_wa_itens_embarque-steuc,
fkimg TYPE t_wa_itens_embarque-fkimg,
vrkme TYPE t_wa_itens_embarque-vrkme,
vlme TYPE t_wa_itens_embarque-vlme,
matnr TYPE t_wa_itens_embarque-matnr,
arktx TYPE t_wa_itens_embarque-arktx,
gewei TYPE t_wa_itens_embarque-gewei,
werks TYPE t_wa_itens_embarque-werks,
brgew TYPE t_wa_itens_embarque-brgew,
ntgew TYPE t_wa_itens_embarque-ntgew,
vlemb TYPE t_wa_itens_embarque-vlfob,
vlfob TYPE t_wa_itens_embarque-vlfob,
vlfrete TYPE t_wa_itens_embarque-vlfrete,
vlseguro TYPE t_wa_itens_embarque-vlseguro,
waers TYPE t_wa_itens_embarque-waers,
END OF t_wa_agrupado,
t_it_agrupado TYPE HASHED TABLE OF t_wa_agrupado
WITH UNIQUE KEY
steuc vrkme matnr arktx gewei werks waers.
DATA
it_unidades TYPE TABLE OF t_wa_unidades.
METHODS:
carrega_dados_empresa
IMPORTING
p_werks TYPE t_wa_cab_embarque-werks
p_bukrs TYPE t_wa_cab_embarque-bukrs
EXPORTING
p_cnpj TYPE t_co_hdr_arquivo-cnpj
p_sadr TYPE sadr,
determina_numero_fatura
IMPORTING
p_cod_fatura TYPE t_wa_param_acordo-nrfat
p_cab_embarque TYPE t_wa_cab_embarque
EXPORTING
p_num_fatura TYPE char30,
determina_data_fatura
IMPORTING
p_cod_data TYPE t_wa_param_acordo-dtfat
p_cab_embarque TYPE t_wa_cab_embarque
EXPORTING
p_dt_fatura TYPE char10,
agrupa_itens
IMPORTING
p_config_acordo TYPE t_wa_config_acordo
p_itens_embarque TYPE t_it_itens_embarque
p_idioma TYPE spras
EXPORTING
p_agrupado TYPE t_it_agrupado,
retorna_peso_liquido_embarque
IMPORTING
p_itens_embarque TYPE t_it_itens_embarque
EXPORTING
p_peso_liquido TYPE t_wa_cab_embarque-speso,
retorna_peso_bruto_embarque
IMPORTING
p_itens_embarque TYPE t_it_itens_embarque
EXPORTING
p_peso_bruto TYPE t_wa_cab_embarque-speso,
retorna_valor_total_fatura
IMPORTING
p_cab_embarque TYPE t_wa_cab_embarque
p_itens_embarque TYPE t_it_itens_embarque
EXPORTING
p_valor_total TYPE t_wa_itens_embarque-vlme_r,
converte_montante
IMPORTING
p_montante_origem TYPE t_wa_itens_embarque-vlme
p_moeda_origem TYPE tcurr-fcurr
p_data_base TYPE datum
EXPORTING
p_montante_final TYPE t_wa_itens_embarque-vlme.
ENDCLASS.
CLASS lcl_certificado IMPLEMENTATION.
METHOD constructor.
TYPES:
BEGIN OF t_matnr,
matnr TYPE makt-matnr,
END OF t_matnr.
DATA:
it_matnr TYPE SORTED TABLE OF t_matnr WITH UNIQUE KEY matnr,
wa_matnr TYPE t_matnr,
wa_dp_material TYPE t_wa_dp_material.
SELECT SINGLE *
FROM /pws/zycet001
INTO wa_cab_embarque_gen
WHERE
nrseq = p_embarque.
IF sy-subrc = 0.
SELECT *
FROM /pws/zycet002
INTO TABLE it_itens_embarque_gen
WHERE
nrseq = p_embarque.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = it_itens_embarque_gen
p_tipo = c_erro
p_msg1 = 'Itens do embarque não encontrados.'(003)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = 0.
SELECT SINGLE *
FROM /pws/zycet014
INTO wa_carta_credito_gen
WHERE
nrseq = p_embarque.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = wa_carta_credito_gen
p_tipo = c_erro
p_msg1 = 'Dados da carta de crédito não encontrados.'(004)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = 0.
SELECT SINGLE *
FROM /pws/zycet065
INTO wa_param_inco
WHERE
inco1 = wa_cab_embarque_gen-inco1.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = wa_param_inco
p_tipo = c_erro
p_msg1 = 'Incoterm não parametrizado.'(014)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = 0.
ENDIF.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = wa_cab_embarque_gen
p_tipo = c_erro
p_msg1 = 'Embarque não encontrado.'(000)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = 0.
SELECT *
FROM /pws/zycet541
INTO TABLE it_paises_cool.
SELECT *
FROM /pws/zycet544
INTO TABLE it_dp_material
WHERE
cdacd = p_acordo-cdacd.
LOOP AT it_dp_material INTO wa_dp_material.
MOVE wa_dp_material-matnr TO wa_matnr-matnr.
APPEND wa_matnr TO it_matnr.
ENDLOOP.
SELECT matnr maktx
FROM makt
INTO TABLE it_dsmat
FOR ALL ENTRIES IN it_matnr
WHERE
matnr = it_matnr-matnr AND
spras = p_idioma.
SELECT *
FROM /pws/zycet543
INTO TABLE it_unidades.
SELECT *
FROM /pws/zycet546
INTO TABLE it_param_ncm
WHERE
land1 = 'BR' AND
land = wa_cab_embarque_gen-paisdest.
wa_config_acordo_gen = p_acordo.
SELECT SINGLE *
FROM /pws/zycet545
INTO wa_param_acordo_gen
WHERE
cdacd = p_acordo-cdacd AND
kunnr = wa_cab_embarque_gen-codportd AND
land1 = wa_cab_embarque_gen-paisdest.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = wa_config_acordo_gen
p_tipo = c_erro
p_msg1 = 'Parâmetros do acordo inválidos.'(005)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = 0.
ENDMETHOD.
METHOD determina_classificacao.
CLEAR p_param_ncm.
READ TABLE it_param_ncm INTO p_param_ncm
WITH KEY
matnr = p_item_embarque-matnr
ncmbr = p_item_embarque-steuc.
ENDMETHOD.
METHOD inicializa_contador_ncm.
DATA:
wa_item_embarque TYPE t_wa_itens_embarque,
wa_contador_ncm TYPE t_wa_contador_ncm,
v_qtsteuc TYPE i.
CLEAR it_contador_ncm.
LOOP AT p_itens_embarque INTO wa_item_embarque.
READ TABLE it_contador_ncm INTO wa_contador_ncm
WITH KEY
steuc = wa_item_embarque-steuc.
IF sy-subrc NE 0.
ADD 1 TO v_qtsteuc.
wa_contador_ncm-steuc = wa_item_embarque-steuc.
wa_contador_ncm-contador = v_qtsteuc.
wa_contador_ncm-pos = 1.
APPEND wa_contador_ncm TO it_contador_ncm.
ENDIF.
ENDLOOP.
ENDMETHOD.
METHOD retorna_contador_ncm.
DATA:
wa_contador_ncm TYPE t_wa_contador_ncm,
v_pos(2) TYPE c,
v_total(2) TYPE c,
v_tabix TYPE sy-tabix.
READ TABLE it_contador_ncm INTO wa_contador_ncm
WITH KEY
steuc = p_item_embarque-steuc.
v_tabix = sy-tabix.
CHECK sy-subrc = 0.
WRITE:
wa_contador_ncm-pos TO v_pos,
wa_contador_ncm-contador TO v_total.
UNPACK v_pos TO v_pos.
CONCATENATE
v_pos
'/'
v_total
INTO p_num_ordem.
CHECK wa_contador_ncm-pos LT 99.
ADD 1 TO wa_contador_ncm-pos.
MODIFY it_contador_ncm FROM wa_contador_ncm INDEX v_tabix.
ENDMETHOD.
METHOD calcula_valor_fob.
DATA
v_despesas TYPE t_wa_itens_embarque-vlme_r.
p_valor_fob = p_item_embarque-vlfob.
IF p_cab_embarque-inco1 = 'CIF'.
IF NOT wa_param_inco-frete IS INITIAL.
ADD p_item_embarque-vlfrete_r TO v_despesas.
ENDIF.
IF NOT wa_param_inco-seguro IS INITIAL.
ADD p_item_embarque-vlseguro_r TO v_despesas.
ENDIF.
IF NOT wa_param_inco-comissao IS INITIAL.
ADD p_item_embarque-vlagente_r TO v_despesas.
ENDIF.
IF NOT wa_param_inco-outras_desp IS INITIAL.
ADD p_item_embarque-vlod_r TO v_despesas.
ENDIF.
IF NOT wa_param_inco-acrescimo IS INITIAL.
ADD p_item_embarque-vlacrescimo_r TO v_despesas.
ENDIF.
IF NOT wa_param_inco-outras_desp IS INITIAL.
SUBTRACT p_item_embarque-vldesconto_r FROM v_despesas.
ENDIF.
IF NOT p_cab_embarque-tpcalc IS INITIAL.
SUBTRACT v_despesas FROM p_valor_fob.
ELSE.
ADD v_despesas TO p_valor_fob.
ENDIF.
ENDIF.
IF p_item_embarque-waers NE 'USD'.
CALL METHOD converte_montante
EXPORTING
p_montante_origem = p_valor_fob
p_moeda_origem = p_item_embarque-waers
p_data_base = p_cab_embarque-dtemb
IMPORTING
p_montante_final = p_valor_fob.
ENDIF.
ENDMETHOD.
METHOD converte_peso_para_quilos.
DATA
v_peso TYPE ekpo-menge.
CASE p_origem_peso.
WHEN c_peso_liquido.
v_peso = p_item_embarque-ntgew_r.
WHEN c_peso_bruto.
v_peso = p_item_embarque-brgew_r.
ENDCASE.
p_peso_quilos = v_peso.
CHECK p_item_embarque-gewei NE 'KG'.
CALL FUNCTION 'MD_CONVERT_MATERIAL_UNIT'
EXPORTING
i_matnr = p_item_embarque-matnr
i_in_me = p_item_embarque-gewei
i_out_me = 'KG'
i_menge = v_peso
IMPORTING
e_menge = p_peso_quilos
EXCEPTIONS
error_in_application = 1
error = 2
OTHERS = 3.
CHECK sy-subrc = 0.
ENDMETHOD.
METHOD converte_montante.
DATA
v_msg TYPE char100.
CALL FUNCTION '/PWS/ZYCE_MONTANTE_CONVERTE'
EXPORTING
i_montante = p_montante_origem
i_demoeda = p_moeda_origem
i_paramoeda = 'USD'
i_ctmoeda = 'M'
i_dtbase = p_data_base
IMPORTING
e_montante = p_montante_final
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
OTHERS = 8.
CHECK sy-subrc NE 0.
CLEAR p_montante_final.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = p_montante_final
p_tipo = c_erro
p_msg1 = 'Erro de conversão de moeda.'(031)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = 000.
ENDMETHOD.
METHOD retorna_valor_total_fatura.
DATA:
v_despesas TYPE t_wa_itens_embarque-vlme_r,
v_vlfob TYPE t_wa_itens_embarque-vlfob,
wa_item_embarque TYPE t_wa_itens_embarque.
LOOP AT p_itens_embarque INTO wa_item_embarque
WHERE st_vd = 'VD'.
ADD wa_item_embarque-vlfob TO v_vlfob.
CHECK p_cab_embarque-inco1 = 'CIF'.
IF NOT wa_param_inco-frete IS INITIAL.
ADD wa_item_embarque-vlfrete_r TO v_despesas.
ENDIF.
IF NOT wa_param_inco-seguro IS INITIAL.
ADD wa_item_embarque-vlseguro_r TO v_despesas.
ENDIF.
IF NOT wa_param_inco-comissao IS INITIAL.
ADD wa_item_embarque-vlagente_r TO v_despesas.
ENDIF.
IF NOT wa_param_inco-outras_desp IS INITIAL.
ADD wa_item_embarque-vlod_r TO v_despesas.
ENDIF.
IF NOT wa_param_inco-acrescimo IS INITIAL.
ADD wa_item_embarque-vlacrescimo_r TO v_despesas.
ENDIF.
IF NOT wa_param_inco-outras_desp IS INITIAL.
SUBTRACT wa_item_embarque-vldesconto_r FROM v_despesas.
ENDIF.
ENDLOOP.
p_valor_total = v_vlfob.
READ TABLE p_itens_embarque INTO wa_item_embarque INDEX 1.
IF p_cab_embarque-inco1 = 'CIF' AND p_cab_embarque-tpcalc = '1'.
SUBTRACT v_despesas FROM p_valor_total.
ENDIF.
CHECK wa_item_embarque-waers NE 'USD'.
CALL METHOD converte_montante
EXPORTING
p_montante_origem = v_vlfob
p_moeda_origem = wa_item_embarque-waers
p_data_base = p_cab_embarque-dtemb
IMPORTING
p_montante_final = p_valor_total.
ENDMETHOD.
METHOD retorna_peso_liquido_embarque.
DATA:
wa_item_embarque TYPE t_wa_itens_embarque,
v_menge TYPE ekpo-menge.
CLEAR p_peso_liquido.
LOOP AT p_itens_embarque INTO wa_item_embarque
WHERE st_vd = 'VD'.
CALL METHOD converte_peso_para_quilos
EXPORTING
p_item_embarque = wa_item_embarque
p_origem_peso = c_peso_liquido
IMPORTING
p_peso_quilos = v_menge.
wa_item_embarque-ntgew_r = v_menge.
ADD wa_item_embarque-ntgew_r TO p_peso_liquido.
ENDLOOP.
ENDMETHOD.
METHOD retorna_peso_bruto_embarque.
DATA:
wa_item_embarque TYPE t_wa_itens_embarque,
v_menge TYPE ekpo-menge.
CLEAR p_peso_bruto.
LOOP AT p_itens_embarque INTO wa_item_embarque
WHERE st_vd = 'VD'.
CALL METHOD converte_peso_para_quilos
EXPORTING
p_item_embarque = wa_item_embarque
p_origem_peso = c_peso_bruto
IMPORTING
p_peso_quilos = v_menge.
wa_item_embarque-brgew_r = v_menge.
ADD wa_item_embarque-brgew_r TO p_peso_bruto.
ENDLOOP.
ENDMETHOD.
METHOD determina_denominacao.
DATA:
v_denominacao(700) TYPE c,
len TYPE i,
v_arktx TYPE arktx,
v_dsncm TYPE t_denominacao,
wa_dsmat TYPE t_wa_dsmat.
READ TABLE it_dsmat INTO wa_dsmat
WITH KEY
matnr = p_item_embarque-matnr.
CASE p_param_acordo-cdden.
WHEN 'A'.
CONCATENATE p_item_embarque-arktx
p_item_embarque-matnr
INTO v_denominacao
SEPARATED BY space.
WHEN 'B'.
CONCATENATE p_item_embarque-matnr
p_item_embarque-arktx
INTO v_denominacao
SEPARATED BY space.
WHEN 'C'.
CONCATENATE p_item_embarque-arktx
p_item_embarque-matnr
v_dsncm
INTO v_denominacao
SEPARATED BY space.
WHEN 'D'.
CONCATENATE p_item_embarque-matnr
p_item_embarque-arktx
v_dsncm
INTO v_denominacao
SEPARATED BY space.
WHEN 'E'.
CONCATENATE p_item_embarque-arktx
p_item_embarque-matnr
v_dsncm
p_item_embarque-gewei
INTO v_denominacao
SEPARATED BY space.
WHEN 'F'.
CONCATENATE p_item_embarque-matnr
p_item_embarque-arktx
v_dsncm
p_item_embarque-gewei
INTO v_denominacao
SEPARATED BY space.
WHEN 'G'.
CONCATENATE p_item_embarque-arktx
p_item_embarque-matnr
p_item_embarque-gewei
INTO v_denominacao
SEPARATED BY space.
WHEN 'H'.
CONCATENATE p_item_embarque-matnr
p_item_embarque-arktx
p_item_embarque-gewei
INTO v_denominacao
SEPARATED BY space.
WHEN 'I'.
CONCATENATE p_item_embarque-arktx
v_dsncm
INTO v_denominacao
SEPARATED BY space.
WHEN 'J'.
CONCATENATE v_dsncm
p_item_embarque-arktx
p_item_embarque-vrkme
INTO v_denominacao
SEPARATED BY space.
WHEN 'K'.
CONCATENATE v_dsncm
p_item_embarque-arktx
INTO v_denominacao
SEPARATED BY space.
WHEN 'L'.
MOVE p_item_embarque-arktx TO v_denominacao.
ENDCASE.
p_denominacao1 = v_denominacao(497).
len = strlen( v_denominacao ).
IF len > 497.
p_denominacao2 = v_denominacao+497(203).
ENDIF.
ENDMETHOD.
METHOD determina_unidade_medida.
CONSTANTS:
c_singular(1) TYPE c VALUE 'S',
c_plural(1) TYPE c VALUE 'P',
c_na(1) TYPE c VALUE 'N'.
DATA:
v_singu(1) TYPE c,
wa_unidades TYPE t_wa_unidades.
IF p_quantidade GT 1.
v_singu = c_plural.
ELSE.
v_singu = c_singular.
ENDIF.
READ TABLE it_unidades INTO wa_unidades
WITH KEY
msehi = p_unidade_r3
singu = v_singu.
IF sy-subrc NE 0.
READ TABLE it_unidades INTO wa_unidades
WITH KEY
msehi = p_unidade_r3
singu = c_na.
ENDIF.
p_unidade_co = wa_unidades-idmed.
ENDMETHOD.
METHOD agrupa_itens.
TYPES:
BEGIN OF t_agrupa,
steuc TYPE t_wa_itens_embarque-steuc,
matnr TYPE t_wa_itens_embarque-matnr,
arktx TYPE t_wa_itens_embarque-arktx,
vrkme TYPE t_wa_itens_embarque-vrkme,
END OF t_agrupa.
DATA:
wa_itens_embarque TYPE t_wa_itens_embarque,
wa_agrupa TYPE t_agrupa,
it_agrupa TYPE TABLE OF t_agrupa,
wa_agrupado TYPE t_wa_agrupado,
v_det_fat_export TYPE t_co_det_fat_export.
LOOP AT p_itens_embarque INTO wa_itens_embarque.
MOVE-CORRESPONDING wa_itens_embarque TO wa_agrupa.
APPEND wa_agrupa TO it_agrupa.
ENDLOOP.
SORT it_agrupa ASCENDING.
DELETE ADJACENT DUPLICATES FROM it_agrupa.
CLEAR p_agrupado.
LOOP AT it_agrupa INTO wa_agrupa.
LOOP AT p_itens_embarque INTO wa_itens_embarque
WHERE steuc = wa_agrupa-steuc AND
matnr = wa_agrupa-matnr AND
vrkme = wa_agrupa-vrkme.
MOVE-CORRESPONDING wa_itens_embarque TO wa_agrupado.
COLLECT wa_agrupado INTO p_agrupado.
ENDLOOP.
ENDLOOP.
ENDMETHOD.
METHOD determina_data_fatura.
CASE p_cod_data.
WHEN 'H'.
WRITE sy-datlo TO p_dt_fatura
USING EDIT MASK '__/__/____'.
WHEN 'E'.
CHECK NOT p_cab_embarque-dtemb IS INITIAL.
WRITE p_cab_embarque-dtemb TO p_dt_fatura
USING EDIT MASK '__/__/____'.
WHEN 'P'.
CHECK NOT p_cab_embarque-dtprev IS INITIAL.
WRITE p_cab_embarque-dtprev TO p_dt_fatura
USING EDIT MASK '__/__/____'.
WHEN 'V'.
CHECK NOT p_cab_embarque-dtvencto IS INITIAL.
WRITE p_cab_embarque-dtvencto TO p_dt_fatura
USING EDIT MASK '__/__/____'.
WHEN 'I'.
CHECK NOT p_cab_embarque-dtincl IS INITIAL.
WRITE p_cab_embarque-dtincl TO p_dt_fatura
USING EDIT MASK '__/__/____'.
WHEN OTHERS.
ENDCASE.
ENDMETHOD.
METHOD determina_numero_fatura.
CASE p_cod_fatura.
WHEN 'S'.
p_num_fatura = p_cab_embarque-nrseq.
WHEN 'E'.
p_num_fatura = p_cab_embarque-nremb.
ENDCASE.
ENDMETHOD.
METHOD inclui_mensagem.
DATA
wa_log_msg TYPE t_wa_msg.
CHECK p_dado IS INITIAL.
CONCATENATE
p_msg1
p_msg2
p_msg3
p_msg4
INTO
wa_log_msg-msg
SEPARATED BY space.
wa_log_msg-tipo = p_tipo.
wa_log_msg-pos = p_pos.
APPEND wa_log_msg TO it_log_msg.
ENDMETHOD.
METHOD carrega_dados_empresa.
DATA:
v_bukrs TYPE t_wa_cab_embarque-bukrs,
v_branch TYPE j_1bbranch-branch,
v_sadr TYPE sadr,
v_cnpj TYPE t_co_hdr_arquivo-cnpj.
IF NOT p_werks IS INITIAL.
SELECT SINGLE j_1bbranch
INTO v_branch
FROM t001w
WHERE werks = p_werks.
ELSE.
CALL FUNCTION 'J_1BREAD_CGC_COMPANY'
EXPORTING
bukrs = p_bukrs
IMPORTING
branch = v_branch.
ENDIF.
CALL FUNCTION 'J_1BREAD_BRANCH_DATA'
EXPORTING
branch = v_branch
bukrs = p_bukrs
IMPORTING
address = v_sadr
cgc_number = v_cnpj
EXCEPTIONS
branch_not_found = 1
address_not_found = 2
company_not_found = 3
OTHERS = 4.
CHECK sy-subrc = 0.
p_cnpj = v_cnpj.
p_sadr = v_sadr.
ENDMETHOD.
METHOD adicionar_header_arquivo.
DATA v_header_arquivo TYPE t_co_hdr_arquivo.
DATA: v_branch TYPE j_1bbranch-branch,
v_sadr TYPE sadr.
v_header_arquivo-id_registro = '010'.
v_header_arquivo-tipo_arquivo = '00003'.
CALL METHOD carrega_dados_empresa
EXPORTING
p_werks = p_cab_embarque-werks
p_bukrs = p_cab_embarque-bukrs
IMPORTING
p_cnpj = v_header_arquivo-cnpj
p_sadr = v_sadr.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_arquivo-cnpj
p_tipo = c_erro
p_msg1 = 'CNPJ da empresa em branco.'(015)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_arquivo-id_registro.
v_header_arquivo-razao_social = v_sadr-name1.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_arquivo-razao_social
p_tipo = c_erro
p_msg1 = 'Razao social da empresa em branco.'(016)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_arquivo-id_registro.
APPEND v_header_arquivo TO p_arquivo_co.
ENDMETHOD.
METHOD adicionar_header_proc_certif.
DATA v_header_proc_certif TYPE t_co_hdr_proc_certif.
v_header_proc_certif-id_registro = '020'.
v_header_proc_certif-acordo = p_param_acordo-cdacd.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_proc_certif-acordo
p_tipo = c_erro
p_msg1 = 'Acordo comercial não parametrizado'(017)
p_msg2 = 'em Parâmetros Gerais.'(059)
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_proc_certif-id_registro.
APPEND v_header_proc_certif TO p_arquivo_co.
ENDMETHOD.
METHOD adicionar_header_fat_export.
DATA: v_header_fat_export TYPE t_co_hdr_fat_export,
v_header_proc_export TYPE t_co_hdr_proc_certif,
v_cidade TYPE t_wa_carta_credito-import3,
v_pais TYPE t_wa_carta_credito-import4,
v_paisdest TYPE char100,
wa_paises_cool TYPE t_wa_paises_cool,
v_peso TYPE t_wa_cab_embarque-speso,
v_valor_total TYPE t_wa_itens_embarque-vlme_r.
v_header_fat_export-id_registro = '030'.
v_header_fat_export-importador = p_carta_credito-import1.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_fat_export-importador
p_tipo = c_erro
p_msg1 = 'Nome do importador em branco.'(018)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_fat_export-id_registro.
v_header_fat_export-endereco_imp = p_carta_credito-import2.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_fat_export-endereco_imp
p_tipo = c_erro
p_msg1 = 'Endereço do importador em branco.'(019)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_fat_export-id_registro.
READ TABLE it_paises_cool INTO wa_paises_cool
WITH KEY land1 = p_cab_embarque-paisdest.
v_header_fat_export-pais_imp = wa_paises_cool-cdlnd.
v_paisdest = p_cab_embarque-paisdest.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_fat_export-pais_imp
p_tipo = c_erro
p_msg1 = 'País do importador em branco.'(022)
p_msg2 = 'Verificar parâmetro de países para'(023)
p_msg3 = v_paisdest
p_msg4 = ''
p_pos = v_header_fat_export-id_registro.
CALL METHOD determina_numero_fatura
EXPORTING
p_cod_fatura = p_param_acordo-nrfat
p_cab_embarque = p_cab_embarque
IMPORTING
p_num_fatura = v_header_fat_export-num_fatura.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_fat_export-num_fatura
p_tipo = c_erro
p_msg1 = 'Número da fatura do exportador em branco.'(024)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_fat_export-id_registro.
CALL METHOD determina_data_fatura
EXPORTING
p_cod_data = p_param_acordo-dtfat
p_cab_embarque = p_cab_embarque
IMPORTING
p_dt_fatura = v_header_fat_export-data_fatura.
IF p_param_acordo-dtfat NE 'X'.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_fat_export-data_fatura
p_tipo = c_erro
p_msg1 = 'Data da fatura comercial em branco.'(025)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_fat_export-id_registro.
ENDIF.
CALL METHOD retorna_peso_liquido_embarque
EXPORTING
p_itens_embarque = p_itens_embarque
IMPORTING
p_peso_liquido = v_peso.
formata_num3c
v_peso
v_header_fat_export-peso_liquido.
CALL METHOD retorna_peso_bruto_embarque
EXPORTING
p_itens_embarque = p_itens_embarque
IMPORTING
p_peso_bruto = v_peso.
formata_num3c
v_peso
v_header_fat_export-peso_bruto.
CALL METHOD retorna_valor_total_fatura
EXPORTING
p_cab_embarque = p_cab_embarque
p_itens_embarque = p_itens_embarque
IMPORTING
p_valor_total = v_valor_total.
formata_num3c
v_valor_total
v_header_fat_export-vl_tot_fatura.
APPEND v_header_fat_export TO p_arquivo_co.
ENDMETHOD.
METHOD adicionar_details_fat_export.
DATA:
v_details_fat_export TYPE t_co_det_fat_export,
wa_item_embarque TYPE t_wa_itens_embarque,
wa_dp_material TYPE t_wa_dp_material,
v_denominacao1 TYPE t_denominacao,
v_denominacao2 TYPE t_denominacao,
v_tipo_msg TYPE smesg-msgty,
v_msg TYPE char100,
it_itens_agrupados TYPE t_it_agrupado,
wa_item_agrupado TYPE t_wa_agrupado,
it_itens_embarque TYPE t_it_itens_embarque,
v_montante TYPE t_wa_itens_embarque-vlme_r,
v_quantidade TYPE num16.
v_details_fat_export-id_registro = '040'.
IF p_config_acordo-cdagr NE 'A'.
CALL METHOD agrupa_itens
EXPORTING
p_idioma = p_idioma
p_config_acordo = p_config_acordo
p_itens_embarque = p_itens_embarque
IMPORTING
p_agrupado = it_itens_agrupados.
LOOP AT it_itens_agrupados INTO wa_item_agrupado.
MOVE-CORRESPONDING wa_item_agrupado TO wa_item_embarque.
APPEND wa_item_embarque TO it_itens_embarque.
ENDLOOP.
MOVE it_itens_embarque TO it_itens_embarque_gen.
ELSE.
MOVE p_itens_embarque TO it_itens_embarque.
ENDIF.
LOOP AT it_itens_embarque INTO wa_item_embarque.
formata_num3c
wa_item_embarque-fkimg
v_details_fat_export-quantidade.
v_quantidade = wa_item_embarque-fkimg.
CALL METHOD determina_unidade_medida
EXPORTING
p_unidade_r3 = wa_item_embarque-vrkme
p_quantidade = v_quantidade
IMPORTING
p_unidade_co = v_details_fat_export-un_medida.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_details_fat_export-un_medida
p_tipo = c_alerta
p_msg1 = 'Unidade de medida não determinada.'(026)
p_msg2 = 'Verificar parâmetros de medida do COOL.'(059)
p_msg3 = ''
p_msg4 = ''
p_pos = v_details_fat_export-id_registro.
CALL METHOD determina_denominacao
EXPORTING
p_idioma = p_idioma
p_item_embarque = wa_item_embarque
p_param_acordo = p_param_acordo
IMPORTING
p_denominacao1 = v_denominacao1
p_denominacao2 = v_denominacao2.
v_details_fat_export-denominacao = v_denominacao1(300).
CONCATENATE:
'Verificar denominação para acordo.'(027)
p_config_acordo-cdacd
INTO v_msg
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_details_fat_export-denominacao
p_tipo = c_erro
p_msg1 = v_msg
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_details_fat_export-id_registro.
CALL METHOD calcula_valor_fob
EXPORTING
p_cab_embarque = p_cab_embarque
p_item_embarque = wa_item_embarque
IMPORTING
p_valor_fob = v_montante.
formata_num3c_x10
v_montante
v_details_fat_export-vl_fob.
READ TABLE it_dp_material INTO wa_dp_material
WITH KEY
matnr = wa_item_embarque-matnr.
v_details_fat_export-cod_declaracao = wa_dp_material-decor.
IF p_config_acordo-fldec IS INITIAL.
v_tipo_msg = c_alerta.
ELSE.
v_tipo_msg = c_erro.
ENDIF.
CONCATENATE:
'Verificar código de declaração para material:'(028)
wa_item_embarque-arktx
INTO v_msg
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_details_fat_export-cod_declaracao
p_tipo = v_tipo_msg
p_msg1 = v_msg
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_details_fat_export-id_registro.
APPEND v_details_fat_export TO p_arquivo_co.
ENDLOOP.
ENDMETHOD.
METHOD adicionar_trailler_fat_export.
DATA
v_trailler_fat_export TYPE t_co_trl_fat_export.
v_trailler_fat_export-id_registro = '050'.
CALL METHOD determina_numero_fatura
EXPORTING
p_cod_fatura = p_param_acordo-nrfat
p_cab_embarque = p_cab_embarque
IMPORTING
p_num_fatura = v_trailler_fat_export-num_fatura.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_trailler_fat_export-num_fatura
p_tipo = c_erro
p_msg1 =
'Número da fatura do exportador em branco.'(029)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_trailler_fat_export-id_registro.
APPEND v_trailler_fat_export TO p_arquivo_co.
ENDMETHOD.
METHOD adicionar_header_observacao.
CONSTANTS:
c_cr TYPE i VALUE 13,
c_lf TYPE i VALUE 10.
DATA:
v_header_observacao TYPE t_co_hdr_observacao,
v_contador TYPE i,
v_ascii TYPE i.
FIELD-SYMBOLS
<hex> TYPE x.
v_header_observacao-id_registro = '093'.
IF p_cab_embarque-txtobs2 IS INITIAL.
v_header_observacao-observacao = p_param_acordo-obser.
ELSE.
v_header_observacao-observacao = p_cab_embarque-txtobs2.
ENDIF.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_observacao-observacao
p_tipo = c_alerta
p_msg1 = 'Observação em branco.'(040)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_observacao-id_registro.
CLEAR v_contador.
DO 497 TIMES.
determina_ascii
v_header_observacao-observacao+v_contador(1)
v_ascii.
IF v_ascii = c_cr OR v_ascii = c_lf.
v_header_observacao-observacao+v_contador(1) = space.
ENDIF.
ADD 1 TO v_contador.
ENDDO.
APPEND v_header_observacao TO p_arquivo_co.
ENDMETHOD.
METHOD adicionar_trailler_proc_certif.
DATA
v_trailler_proc_certif TYPE t_co_trl_proc_certif.
v_trailler_proc_certif-id_registro = '120'.
v_trailler_proc_certif-acordo = p_param_acordo-cdacd.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_trailler_proc_certif-acordo
p_tipo = c_erro
p_msg1 = 'Acordo comercial em branco.'(017)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_trailler_proc_certif-id_registro.
APPEND v_trailler_proc_certif TO p_arquivo_co.
ENDMETHOD.
METHOD adicionar_trailler_arquivo.
DATA:
v_trailler_arquivo TYPE t_co_trl_arquivo,
v_header_proc_export TYPE t_co_hdr_proc_certif,
v_tabix TYPE sy-tabix.
v_trailler_arquivo-id_registro = '130'.
READ TABLE p_arquivo_co WITH KEY table_line(3) = '020'
TRANSPORTING NO FIELDS.
v_tabix = sy-tabix.
IF sy-subrc = 0 .
LOOP AT p_arquivo_co INTO v_header_proc_export FROM v_tabix.
IF v_header_proc_export-id_registro = '020'.
ADD 1 TO v_trailler_arquivo-quantidade.
ELSE.
EXIT.
ENDIF.
ENDLOOP.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_trailler_arquivo-quantidade
p_tipo = c_alerta
p_msg1 = 'Quantidade de processos em branco.'(030)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_trailler_arquivo-id_registro.
APPEND v_trailler_arquivo TO p_arquivo_co.
ENDIF.
ENDMETHOD.
ENDCLASS.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCE311F02
CLASS lcl_certificado_a DEFINITION
INHERITING FROM lcl_certificado.
PUBLIC SECTION.
INTERFACES
i_certificado.
ALIASES:
retorna_certificado FOR i_certificado~retorna_certificado.
METHODS:
constructor
IMPORTING
p_embarque TYPE t_wa_cab_embarque-nrseq
p_acordo TYPE t_wa_config_acordo
p_idioma TYPE spras
EXCEPTIONS
dados_invalidos.
PROTECTED SECTION.
METHODS:
adicionar_header_exportador_a
IMPORTING
p_cab_embarque TYPE t_wa_cab_embarque
p_carta_credito TYPE t_wa_carta_credito
p_param_acordo TYPE t_wa_param_acordo
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_header_consign_a
IMPORTING
p_carta_credito TYPE t_wa_carta_credito
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_itens_certificado_a
IMPORTING
p_param_acordo TYPE t_wa_param_acordo
p_config_acordo TYPE t_wa_config_acordo
p_cab_embarque TYPE t_wa_cab_embarque
p_itens_embarque TYPE t_it_itens_embarque
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_itens_denominacao_a
IMPORTING
p_idioma TYPE spras
p_config_acordo TYPE t_wa_config_acordo
p_itens_embarque TYPE t_it_itens_embarque
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_trailler_certif_a
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co.
PRIVATE SECTION.
TYPES:
BEGIN OF t_co_hdr_exportador_a,
id_registro(3) TYPE n,
end_pais_exp(300) TYPE c,
embarque(60) TYPE c,
transporte(60) TYPE c,
assinante(77) TYPE c,
END OF t_co_hdr_exportador_a,
t_co_hdr_consig_a TYPE t_co_hdr_consig_x,
BEGIN OF t_co_det_itens_cert_a,
id_registro(3) TYPE n,
num_ordem(4) TYPE n,
classificacao(20) TYPE c,
norma(3) TYPE n,
peso_liq_qtde(12) TYPE n,
vl_fob(12) TYPE n,
cod_declaracao(10) TYPE c,
vazio(436) TYPE c,
END OF t_co_det_itens_cert_a,
t_co_det_itens_denom_a TYPE t_co_det_itens_denom_x,
t_co_trl_certificado_a TYPE t_co_trl_certificado_x.
ENDCLASS.
CLASS lcl_certificado_a IMPLEMENTATION.
METHOD constructor.
CALL METHOD super->constructor
EXPORTING
p_embarque = p_embarque
p_acordo = p_acordo
p_idioma = p_idioma
EXCEPTIONS
dados_invalidos = 1.
IF sy-subrc NE 0.
RAISE dados_invalidos.
ENDIF.
CALL METHOD adicionar_header_arquivo
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_proc_certif
EXPORTING
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_fat_export
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
p_carta_credito = wa_carta_credito_gen
p_param_acordo = wa_param_acordo_gen
p_itens_embarque = it_itens_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_details_fat_export
EXPORTING
p_idioma = p_idioma
p_cab_embarque = wa_cab_embarque_gen
p_param_acordo = wa_param_acordo_gen
p_config_acordo = wa_config_acordo_gen
p_itens_embarque = it_itens_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_fat_export
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_exportador_a
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
p_carta_credito = wa_carta_credito_gen
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_consign_a
EXPORTING
p_carta_credito = wa_carta_credito_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_observacao
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_itens_certificado_a
EXPORTING
p_param_acordo = wa_param_acordo_gen
p_config_acordo = wa_config_acordo_gen
p_cab_embarque = wa_cab_embarque_gen
p_itens_embarque = it_itens_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_itens_denominacao_a
EXPORTING
p_idioma = p_idioma
p_itens_embarque = it_itens_embarque_gen
p_config_acordo = wa_config_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_certif_a
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_proc_certif
EXPORTING
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_arquivo
IMPORTING
p_arquivo_co = it_arquivo_co.
ENDMETHOD.
METHOD i_certificado~retorna_certificado.
p_arquivo_co = it_arquivo_co.
p_log_erros = it_log_msg.
ENDMETHOD.
METHOD adicionar_header_exportador_a.
DATA
v_header_exportador TYPE t_co_hdr_exportador_a.
v_header_exportador-id_registro = '090'.
CONCATENATE p_carta_credito-export1
p_carta_credito-export2
p_carta_credito-export3
p_carta_credito-export4
INTO v_header_exportador-end_pais_exp
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_exportador-end_pais_exp
p_tipo = c_erro
p_msg1 = 'Endereço/país do exportador em branco.'(033)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_exportador-id_registro.
v_header_exportador-embarque = p_cab_embarque-portemb.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_exportador-embarque
p_tipo = c_alerta
p_msg1 = 'Porto/local de embarque em branco.'(034)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_exportador-id_registro.
v_header_exportador-transporte = p_cab_embarque-viatrans.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_exportador-transporte
p_tipo = c_erro
p_msg1 = 'Meio de transporte em branco.'(035)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_exportador-id_registro.
v_header_exportador-assinante = p_param_acordo-assin.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_exportador-assinante
p_tipo = c_erro
p_msg1 = 'Assinante em branco.'(036)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_exportador-id_registro.
APPEND v_header_exportador TO p_arquivo_co.
ENDMETHOD.
METHOD adicionar_header_consign_a.
DATA:
v_header_consign TYPE t_co_hdr_consig_a,
v_msg(100) TYPE c.
v_header_consign-id_registro = '092'.
v_header_consign-consignatario = p_carta_credito-import1.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_consign-consignatario
p_tipo = c_erro
p_msg1 = 'Nome do consignatário em branco.'(037)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_consign-id_registro.
v_header_consign-pais_consig = p_carta_credito-import4.
CONCATENATE
'Verificar código para país:'(039)
p_carta_credito-import4
INTO v_msg
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_consign-pais_consig
p_tipo = c_erro
p_msg1 = 'País do consignatário em branco.'(038)
p_msg2 = v_msg
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_consign-id_registro.
APPEND v_header_consign TO p_arquivo_co.
ENDMETHOD.
METHOD adicionar_itens_certificado_a.
DATA:
v_itens_certificado TYPE t_co_det_itens_cert_a,
wa_item_embarque TYPE t_wa_itens_embarque,
wa_param_ncm TYPE t_wa_param_ncm,
wa_dp_material TYPE t_wa_dp_material,
v_tipo_msg TYPE smesg-msgty,
v_msg1(100) TYPE c,
v_msg2(100) TYPE c,
v_montante TYPE t_wa_itens_embarque-vlme_r,
v_peso TYPE ekpo-menge.
v_itens_certificado-id_registro = '100'.
LOOP AT p_itens_embarque INTO wa_item_embarque.
v_itens_certificado-num_ordem = sy-tabix.
CLEAR wa_param_ncm.
READ TABLE it_param_ncm INTO wa_param_ncm
WITH KEY
matnr = wa_item_embarque-matnr
ncmbr = wa_item_embarque-steuc.
v_itens_certificado-classificacao = wa_param_ncm-ncm.
IF sy-subrc NE 0.
CONCATENATE
wa_item_embarque-arktx
'. Verificar parâmetros NCM/NALADI.'(041)
INTO v_msg1.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_certificado-classificacao
p_tipo = c_alerta
p_msg1 = 'Classificação do produto em branco:'(042)
p_msg2 = v_msg1
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_certificado-id_registro.
ENDIF.
v_itens_certificado-norma = wa_param_ncm-cod_norma.
IF v_itens_certificado-norma IS INITIAL.
CONCATENATE:
'Verificar norma para o NCM:'(043)
wa_item_embarque-steuc
INTO v_msg1
SEPARATED BY space,
'para material:'(044)
wa_item_embarque-arktx
INTO v_msg2
SEPARATED BY space.
ENDIF.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_certificado-norma
p_tipo = c_erro
p_msg1 = v_msg1
p_msg2 = v_msg2
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_certificado-id_registro.
CALL METHOD converte_peso_para_quilos
EXPORTING
p_item_embarque = wa_item_embarque
p_origem_peso = c_peso_liquido
IMPORTING
p_peso_quilos = v_peso.
formata_num3c
v_peso
v_itens_certificado-peso_liq_qtde.
CALL METHOD calcula_valor_fob
EXPORTING
p_cab_embarque = p_cab_embarque
p_item_embarque = wa_item_embarque
IMPORTING
p_valor_fob = v_montante.
formata_num3c
v_montante
v_itens_certificado-vl_fob.
CLEAR wa_dp_material-decor.
READ TABLE it_dp_material INTO wa_dp_material
WITH KEY
cdacd = p_config_acordo-cdacd
matnr = wa_item_embarque-matnr.
v_itens_certificado-cod_declaracao = wa_dp_material-decor.
IF sy-subrc NE 0.
v_tipo_msg = p_config_acordo-fldec.
CONCATENATE
'Verificar código de declaração para material:'(028)
wa_item_embarque-arktx
INTO v_msg1
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_certificado-cod_declaracao
p_tipo = v_tipo_msg
p_msg1 = v_msg1
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_certificado-id_registro.
ENDIF.
APPEND v_itens_certificado TO p_arquivo_co.
ENDLOOP.
ENDMETHOD.
METHOD adicionar_itens_denominacao_a.
DATA:
v_itens_denominacao TYPE t_co_det_itens_denom_a,
v_denominacao1 TYPE t_denominacao,
v_denominacao2 TYPE t_denominacao,
wa_item_embarque TYPE t_wa_itens_embarque,
v_msg(100) TYPE c.
v_itens_denominacao-id_registro = '101'.
LOOP AT p_itens_embarque INTO wa_item_embarque.
CALL METHOD determina_denominacao
EXPORTING
p_idioma = p_idioma
p_item_embarque = wa_item_embarque
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_denominacao1 = v_denominacao1
p_denominacao2 = v_denominacao2.
v_itens_denominacao-denominacao = v_denominacao1(300).
APPEND v_itens_denominacao TO p_arquivo_co.
CONCATENATE
'Verificar denominação para acordo'(046)
p_config_acordo-cdacd
INTO v_msg
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_denominacao-denominacao
p_tipo = c_erro
p_msg1 = v_msg
p_msg2 = '.'
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_denominacao-id_registro.
ENDLOOP.
ENDMETHOD.
METHOD adicionar_trailler_certif_a.
DATA
v_trailler_certif TYPE t_co_trl_certificado_a.
v_trailler_certif-id_registro = '110'.
APPEND v_trailler_certif TO p_arquivo_co.
ENDMETHOD.
ENDCLASS.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCE311F03
CLASS lcl_certificado_b DEFINITION
INHERITING FROM lcl_certificado.
PUBLIC SECTION.
INTERFACES
i_certificado.
ALIASES:
retorna_certificado FOR i_certificado~retorna_certificado.
METHODS:
constructor
IMPORTING
p_embarque TYPE t_wa_cab_embarque-nrseq
p_acordo TYPE t_wa_config_acordo
p_idioma TYPE spras
EXCEPTIONS
dados_invalidos.
PRIVATE SECTION.
TYPES:
BEGIN OF t_co_hdr_exportador_b,
id_registro(3) TYPE n,
end_pais_exp(300) TYPE c,
assinante(77) TYPE c,
vazio(120) TYPE c,
END OF t_co_hdr_exportador_b,
BEGIN OF t_co_det_itens_cert_b,
id_registro(3) TYPE n,
num_ordem(4) TYPE n,
classificacao(20) TYPE c,
norma(3) TYPE n,
cod_declaracao(10) TYPE c,
vazio(436) TYPE c,
END OF t_co_det_itens_cert_b,
t_co_det_itens_denom_b TYPE t_co_det_itens_denom_x,
t_co_trl_certificado_b TYPE t_co_trl_certificado_x.
METHODS:
adicionar_header_exportador_b
IMPORTING
p_carta_credito TYPE t_wa_carta_credito
p_param_acordo TYPE t_wa_param_acordo
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_itens_certificado_b
IMPORTING
p_param_acordo TYPE t_wa_param_acordo
p_config_acordo TYPE t_wa_config_acordo
p_cab_embarque TYPE t_wa_cab_embarque
p_itens_embarque TYPE t_it_itens_embarque
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_itens_denominacao_b
IMPORTING
p_idioma TYPE spras
p_config_acordo TYPE t_wa_config_acordo
p_itens_embarque TYPE t_it_itens_embarque
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_trailler_certif_b
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co.
ENDCLASS.
CLASS lcl_certificado_b IMPLEMENTATION.
METHOD constructor.
CALL METHOD super->constructor
EXPORTING
p_embarque = p_embarque
p_acordo = p_acordo
p_idioma = p_idioma
EXCEPTIONS
dados_invalidos = 1.
IF sy-subrc NE 0.
RAISE dados_invalidos.
ENDIF.
CALL METHOD adicionar_header_arquivo
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_proc_certif
EXPORTING
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_fat_export
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
p_carta_credito = wa_carta_credito_gen
p_param_acordo = wa_param_acordo_gen
p_itens_embarque = it_itens_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_details_fat_export
EXPORTING
p_idioma = p_idioma
p_cab_embarque = wa_cab_embarque_gen
p_param_acordo = wa_param_acordo_gen
p_config_acordo = wa_config_acordo_gen
p_itens_embarque = it_itens_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_fat_export
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_exportador_b
EXPORTING
p_carta_credito = wa_carta_credito_gen
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_observacao
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_itens_certificado_b
EXPORTING
p_param_acordo = wa_param_acordo_gen
p_config_acordo = wa_config_acordo_gen
p_cab_embarque = wa_cab_embarque_gen
p_itens_embarque = it_itens_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_itens_denominacao_b
EXPORTING
p_idioma = p_idioma
p_itens_embarque = it_itens_embarque_gen
p_config_acordo = wa_config_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_certif_b
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_proc_certif
EXPORTING
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_arquivo
IMPORTING
p_arquivo_co = it_arquivo_co.
ENDMETHOD.
METHOD i_certificado~retorna_certificado.
p_arquivo_co = it_arquivo_co.
p_log_erros = it_log_msg.
ENDMETHOD.
METHOD adicionar_header_exportador_b.
DATA
v_header_exportador TYPE t_co_hdr_exportador_b.
v_header_exportador-id_registro = '090'.
CONCATENATE p_carta_credito-export1
p_carta_credito-export2
p_carta_credito-export3
p_carta_credito-export4
INTO v_header_exportador-end_pais_exp
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_exportador-end_pais_exp
p_tipo = c_erro
p_msg1 = 'Endereço/país do exportador em branco.'(033)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_exportador-id_registro.
v_header_exportador-assinante = p_param_acordo-assin.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_exportador-assinante
p_tipo = c_erro
p_msg1 = 'Assinante em branco.'(036)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_exportador-id_registro.
APPEND v_header_exportador TO p_arquivo_co.
ENDMETHOD.
METHOD adicionar_itens_certificado_b.
DATA:
v_itens_certificado TYPE t_co_det_itens_cert_b,
wa_item_embarque TYPE t_wa_itens_embarque,
wa_param_ncm TYPE t_wa_param_ncm,
wa_dp_material TYPE t_wa_dp_material,
v_tipo_msg TYPE smesg-msgty,
v_msg1(100) TYPE c,
v_msg2(100) TYPE c,
v_montante TYPE t_wa_itens_embarque-vlme_r.
v_itens_certificado-id_registro = '100'.
LOOP AT p_itens_embarque INTO wa_item_embarque.
v_itens_certificado-num_ordem = sy-tabix.
CLEAR wa_param_ncm.
READ TABLE it_param_ncm INTO wa_param_ncm
WITH KEY
matnr = wa_item_embarque-matnr
ncmbr = wa_item_embarque-steuc.
v_itens_certificado-classificacao = wa_param_ncm-ncm.
IF sy-subrc NE 0.
CONCATENATE
wa_item_embarque-arktx
'. Verificar parâmetros NCM/NALADI.'(041)
INTO v_msg1.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_certificado-classificacao
p_tipo = c_alerta
p_msg1 = 'Classificação do produto em branco:'(042)
p_msg2 = v_msg1
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_certificado-id_registro.
ENDIF.
v_itens_certificado-norma = wa_param_ncm-cod_norma.
IF v_itens_certificado-norma IS INITIAL.
CONCATENATE:
'Verificar norma para o NCM:'(043)
wa_item_embarque-steuc
INTO v_msg1
SEPARATED BY space,
'item do fornec.:'(044)
wa_item_embarque-posnl
'/ fornecimento:'(045)
wa_item_embarque-vbeln_vl
wa_item_embarque-arktx
INTO v_msg2
SEPARATED BY space.
ENDIF.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_certificado-norma
p_tipo = c_erro
p_msg1 = v_msg1
p_msg2 = v_msg2
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_certificado-id_registro.
CLEAR wa_dp_material-decor.
READ TABLE it_dp_material INTO wa_dp_material
WITH KEY
cdacd = p_config_acordo-cdacd
matnr = wa_item_embarque-matnr.
v_itens_certificado-cod_declaracao = wa_dp_material-decor.
IF sy-subrc NE 0.
v_tipo_msg = p_config_acordo-fldec.
CONCATENATE
'Verificar código de declaração para material:'(028)
wa_item_embarque-arktx
INTO v_msg1
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_certificado-cod_declaracao
p_tipo = v_tipo_msg
p_msg1 = v_msg1
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_certificado-id_registro.
ENDIF.
APPEND v_itens_certificado TO p_arquivo_co.
ENDLOOP.
ENDMETHOD.
METHOD adicionar_itens_denominacao_b.
DATA:
v_itens_denominacao TYPE t_co_det_itens_denom_b,
v_denominacao1 TYPE t_denominacao,
v_denominacao2 TYPE t_denominacao,
wa_item_embarque TYPE t_wa_itens_embarque,
v_msg(100) TYPE c.
v_itens_denominacao-id_registro = '101'.
LOOP AT p_itens_embarque INTO wa_item_embarque.
CALL METHOD determina_denominacao
EXPORTING
p_idioma = p_idioma
p_item_embarque = wa_item_embarque
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_denominacao1 = v_denominacao1
p_denominacao2 = v_denominacao2.
v_itens_denominacao-denominacao = v_denominacao1(300).
APPEND v_itens_denominacao TO p_arquivo_co.
CONCATENATE
'Verificar denominação para acordo'(046)
p_config_acordo-cdacd
INTO v_msg
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_denominacao-denominacao
p_tipo = c_erro
p_msg1 = v_msg
p_msg2 = '.'
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_denominacao-id_registro.
ENDLOOP.
ENDMETHOD.
METHOD adicionar_trailler_certif_b.
DATA
v_trailler_certif TYPE t_co_trl_certificado_b.
v_trailler_certif-id_registro = '110'.
APPEND v_trailler_certif TO p_arquivo_co.
ENDMETHOD.
ENDCLASS.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCE311F04
CLASS lcl_certificado_c DEFINITION
INHERITING FROM lcl_certificado.
PUBLIC SECTION.
INTERFACES
i_certificado.
ALIASES:
retorna_certificado FOR i_certificado~retorna_certificado.
METHODS:
constructor
IMPORTING
p_embarque TYPE t_wa_cab_embarque-nrseq
p_acordo TYPE t_wa_config_acordo
p_idioma TYPE spras
EXCEPTIONS
dados_invalidos.
PRIVATE SECTION.
TYPES:
BEGIN OF t_co_hdr_exportador_c,
id_registro(3) TYPE n,
end_pais_exp(300) TYPE c,
assinante(77) TYPE c,
vazio(120) TYPE c,
END OF t_co_hdr_exportador_c,
BEGIN OF t_co_det_itens_cert_c,
id_registro(3) TYPE n,
num_ordem(4) TYPE n,
classificacao(20) TYPE c,
norma(3) TYPE n,
cod_declaracao(10) TYPE c,
vazio(460) TYPE c,
END OF t_co_det_itens_cert_c,
t_co_det_itens_denom_c TYPE t_co_det_itens_denom_x,
t_co_trl_certificado_c TYPE t_co_trl_certificado_x.
METHODS:
adicionar_header_exportador_c
IMPORTING
p_carta_credito TYPE t_wa_carta_credito
p_param_acordo TYPE t_wa_param_acordo
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_itens_certificado_c
IMPORTING
p_param_acordo TYPE t_wa_param_acordo
p_config_acordo TYPE t_wa_config_acordo
p_cab_embarque TYPE t_wa_cab_embarque
p_itens_embarque TYPE t_it_itens_embarque
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_itens_denominacao_c
IMPORTING
p_idioma TYPE spras
p_config_acordo TYPE t_wa_config_acordo
p_itens_embarque TYPE t_it_itens_embarque
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_trailler_certif_c
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co.
ENDCLASS.
CLASS lcl_certificado_c IMPLEMENTATION.
METHOD constructor.
CALL METHOD super->constructor
EXPORTING
p_embarque = p_embarque
p_acordo = p_acordo
p_idioma = p_idioma
EXCEPTIONS
dados_invalidos = 1.
IF sy-subrc NE 0.
RAISE dados_invalidos.
ENDIF.
CALL METHOD adicionar_header_arquivo
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_proc_certif
EXPORTING
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_fat_export
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
p_carta_credito = wa_carta_credito_gen
p_param_acordo = wa_param_acordo_gen
p_itens_embarque = it_itens_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_details_fat_export
EXPORTING
p_idioma = p_idioma
p_cab_embarque = wa_cab_embarque_gen
p_param_acordo = wa_param_acordo_gen
p_config_acordo = wa_config_acordo_gen
p_itens_embarque = it_itens_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_fat_export
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_exportador_c
EXPORTING
p_carta_credito = wa_carta_credito_gen
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_observacao
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_itens_certificado_c
EXPORTING
p_param_acordo = wa_param_acordo_gen
p_config_acordo = wa_config_acordo_gen
p_cab_embarque = wa_cab_embarque_gen
p_itens_embarque = it_itens_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_itens_denominacao_c
EXPORTING
p_idioma = p_idioma
p_itens_embarque = it_itens_embarque_gen
p_config_acordo = wa_config_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_certif_c
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_proc_certif
EXPORTING
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_arquivo
IMPORTING
p_arquivo_co = it_arquivo_co.
ENDMETHOD.
METHOD i_certificado~retorna_certificado.
p_arquivo_co = it_arquivo_co.
p_log_erros = it_log_msg.
ENDMETHOD.
METHOD adicionar_header_exportador_c.
DATA
v_header_exportador TYPE t_co_hdr_exportador_c.
v_header_exportador-id_registro = '090'.
CONCATENATE p_carta_credito-export1
p_carta_credito-export2
p_carta_credito-export3
p_carta_credito-export4
INTO v_header_exportador-end_pais_exp
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_exportador-end_pais_exp
p_tipo = c_erro
p_msg1 = 'Endereço/país do exportador em branco.'(033)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_exportador-id_registro.
v_header_exportador-assinante = p_param_acordo-assin.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_exportador-assinante
p_tipo = c_erro
p_msg1 = 'Assinante em branco.'(036)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_exportador-id_registro.
APPEND v_header_exportador TO p_arquivo_co.
ENDMETHOD.
METHOD adicionar_itens_certificado_c.
DATA:
v_itens_certificado TYPE t_co_det_itens_cert_c,
wa_item_embarque TYPE t_wa_itens_embarque,
wa_param_ncm TYPE t_wa_param_ncm,
wa_dp_material TYPE t_wa_dp_material,
v_tipo_msg TYPE smesg-msgty,
v_msg1(100) TYPE c,
v_msg2(100) TYPE c,
v_montante TYPE t_wa_itens_embarque-vlme_r.
v_itens_certificado-id_registro = '100'.
LOOP AT p_itens_embarque INTO wa_item_embarque.
v_itens_certificado-num_ordem = sy-tabix.
CLEAR wa_param_ncm.
READ TABLE it_param_ncm INTO wa_param_ncm
WITH KEY
matnr = wa_item_embarque-matnr
ncmbr = wa_item_embarque-steuc.
v_itens_certificado-classificacao = wa_param_ncm-ncm.
IF sy-subrc NE 0.
CONCATENATE
wa_item_embarque-arktx
'. Verificar parâmetros NCM/NALADI.'(041)
INTO v_msg1.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_certificado-classificacao
p_tipo = c_alerta
p_msg1 = 'Classificação do produto em branco:'(042)
p_msg2 = v_msg1
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_certificado-id_registro.
ENDIF.
v_itens_certificado-norma = wa_param_ncm-cod_norma.
IF v_itens_certificado-norma IS INITIAL.
CONCATENATE:
'Verificar norma para o NCM:'(043)
wa_item_embarque-steuc
INTO v_msg1
SEPARATED BY space,
'item do fornec.:'(044)
wa_item_embarque-posnl
'/ fornecimento:'(045)
wa_item_embarque-vbeln_vl
wa_item_embarque-arktx
INTO v_msg2
SEPARATED BY space.
ENDIF.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_certificado-norma
p_tipo = c_erro
p_msg1 = v_msg1
p_msg2 = v_msg2
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_certificado-id_registro.
CLEAR wa_dp_material-decor.
READ TABLE it_dp_material INTO wa_dp_material
WITH KEY
cdacd = p_config_acordo-cdacd
matnr = wa_item_embarque-matnr.
v_itens_certificado-cod_declaracao = wa_dp_material-decor.
IF sy-subrc NE 0.
v_tipo_msg = p_config_acordo-fldec.
CONCATENATE
'Verificar código de declaração para material:'(028)
wa_item_embarque-arktx
INTO v_msg1
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_certificado-cod_declaracao
p_tipo = v_tipo_msg
p_msg1 = v_msg1
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_certificado-id_registro.
ENDIF.
APPEND v_itens_certificado TO p_arquivo_co.
ENDLOOP.
ENDMETHOD.
METHOD adicionar_itens_denominacao_c.
DATA:
v_itens_denominacao TYPE t_co_det_itens_denom_c,
v_denominacao1 TYPE t_denominacao,
v_denominacao2 TYPE t_denominacao,
wa_item_embarque TYPE t_wa_itens_embarque,
v_msg(100) TYPE c.
v_itens_denominacao-id_registro = '101'.
LOOP AT p_itens_embarque INTO wa_item_embarque.
CALL METHOD determina_denominacao
EXPORTING
p_idioma = p_idioma
p_item_embarque = wa_item_embarque
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_denominacao1 = v_denominacao1
p_denominacao2 = v_denominacao2.
v_itens_denominacao-denominacao = v_denominacao1(300).
APPEND v_itens_denominacao TO p_arquivo_co.
CONCATENATE
'Verificar denominação para acordo'(046)
p_config_acordo-cdacd
INTO v_msg
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_denominacao-denominacao
p_tipo = c_erro
p_msg1 = v_msg
p_msg2 = '.'
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_denominacao-id_registro.
ENDLOOP.
ENDMETHOD.
METHOD adicionar_trailler_certif_c.
DATA
v_trailler_certif TYPE t_co_trl_certificado_c.
v_trailler_certif-id_registro = '110'.
APPEND v_trailler_certif TO p_arquivo_co.
ENDMETHOD.
ENDCLASS.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCE311F05
CLASS lcl_certificado_d DEFINITION
INHERITING FROM lcl_certificado.
PUBLIC SECTION.
INTERFACES
i_certificado.
ALIASES:
retorna_certificado FOR i_certificado~retorna_certificado.
METHODS:
constructor
IMPORTING
p_embarque TYPE t_wa_cab_embarque-nrseq
p_acordo TYPE t_wa_config_acordo
p_idioma TYPE spras
EXCEPTIONS
dados_invalidos.
PRIVATE SECTION.
TYPES:
BEGIN OF t_co_hdr_exportador_d,
id_registro(3) TYPE n,
end_pais_exp(300) TYPE c,
num_folhas(4) TYPE n,
assinante(77) TYPE c,
vazio(116) TYPE c,
END OF t_co_hdr_exportador_d,
t_co_hdr_produtor_d TYPE t_co_hdr_produtor_x,
BEGIN OF t_co_det_itens_cert_d,
id_registro(3) TYPE n,
classificacao(20) TYPE c,
cr_origem(3) TYPE n,
quantidade(12) TYPE c,
un_medida(3) TYPE n,
cod_declaracao(10) TYPE c,
vazio(449) TYPE c,
END OF t_co_det_itens_cert_d,
t_co_det_itens_denom_d TYPE t_co_det_itens_denom_x,
t_co_trl_certificado_d TYPE t_co_trl_certificado_x.
METHODS:
adicionar_header_exportador_d
IMPORTING
p_carta_credito TYPE t_wa_carta_credito
p_param_acordo TYPE t_wa_param_acordo
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_header_produtor_d
IMPORTING
p_carta_credito TYPE t_wa_carta_credito
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_itens_certificado_d
IMPORTING
p_param_acordo TYPE t_wa_param_acordo
p_config_acordo TYPE t_wa_config_acordo
p_cab_embarque TYPE t_wa_cab_embarque
p_itens_embarque TYPE t_it_itens_embarque
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co
EXCEPTIONS
multiplos_naladi,
adicionar_itens_denominacao_d
IMPORTING
p_idioma TYPE spras
p_config_acordo TYPE t_wa_config_acordo
p_itens_embarque TYPE t_it_itens_embarque
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_trailler_certif_d
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co.
ENDCLASS.
CLASS lcl_certificado_d IMPLEMENTATION.
METHOD constructor.
CALL METHOD super->constructor
EXPORTING
p_embarque = p_embarque
p_acordo = p_acordo
p_idioma = p_idioma
EXCEPTIONS
dados_invalidos = 1.
IF sy-subrc NE 0.
RAISE dados_invalidos.
ENDIF.
CALL METHOD adicionar_header_arquivo
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_proc_certif
EXPORTING
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_fat_export
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
p_carta_credito = wa_carta_credito_gen
p_param_acordo = wa_param_acordo_gen
p_itens_embarque = it_itens_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_details_fat_export
EXPORTING
p_idioma = p_idioma
p_cab_embarque = wa_cab_embarque_gen
p_param_acordo = wa_param_acordo_gen
p_config_acordo = wa_config_acordo_gen
p_itens_embarque = it_itens_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_fat_export
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_exportador_d
EXPORTING
p_carta_credito = wa_carta_credito_gen
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_produtor_d
EXPORTING
p_carta_credito = wa_carta_credito_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_itens_certificado_d
EXPORTING
p_param_acordo = wa_param_acordo_gen
p_config_acordo = wa_config_acordo_gen
p_cab_embarque = wa_cab_embarque_gen
p_itens_embarque = it_itens_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co
EXCEPTIONS
multiplos_naladi = 1.
CALL METHOD adicionar_itens_denominacao_d
EXPORTING
p_idioma = p_idioma
p_itens_embarque = it_itens_embarque_gen
p_config_acordo = wa_config_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_certif_d
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_proc_certif
EXPORTING
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_arquivo
IMPORTING
p_arquivo_co = it_arquivo_co.
ENDMETHOD.
METHOD i_certificado~retorna_certificado.
p_arquivo_co = it_arquivo_co.
p_log_erros = it_log_msg.
ENDMETHOD.
METHOD adicionar_header_exportador_d.
DATA
v_header_exportador TYPE t_co_hdr_exportador_d.
v_header_exportador-id_registro = '090'.
CONCATENATE p_carta_credito-export1
p_carta_credito-export2
p_carta_credito-export3
p_carta_credito-export4
INTO v_header_exportador-end_pais_exp
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_exportador-end_pais_exp
p_tipo = c_erro
p_msg1 = 'Endereço/país do exportador em branco.'(033)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_exportador-id_registro.
v_header_exportador-assinante = p_param_acordo-assin.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_exportador-assinante
p_tipo = c_erro
p_msg1 = 'Assinante em branco.'(036)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_exportador-id_registro.
APPEND v_header_exportador TO p_arquivo_co.
ENDMETHOD.
METHOD adicionar_header_produtor_d.
DATA v_header_produtor TYPE t_co_hdr_produtor_d.
v_header_produtor-id_registro = '091'.
v_header_produtor-produtor = p_carta_credito-export1.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_produtor-produtor
p_tipo = c_alerta
p_msg1 = 'Nome do produtor em branco.'(048)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_produtor-id_registro.
CONCATENATE p_carta_credito-export2
p_carta_credito-export3
p_carta_credito-export4
INTO v_header_produtor-end_pais_prd
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_produtor-end_pais_prd
p_tipo = c_alerta
p_msg1 = 'Endereço do produtor em branco.'(047)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_produtor-id_registro.
APPEND v_header_produtor TO p_arquivo_co.
ENDMETHOD.
METHOD adicionar_itens_certificado_d.
DATA:
v_itens_certificado TYPE t_co_det_itens_cert_d,
wa_item_embarque TYPE t_wa_itens_embarque,
wa_param_ncm TYPE t_wa_param_ncm,
wa_dp_material TYPE t_wa_dp_material,
v_tipo_msg TYPE smesg-msgty,
v_msg1(100) TYPE c,
v_msg2(100) TYPE c,
v_unidade_co TYPE t_wa_unidades-idmed,
v_quantidade TYPE num16.
v_itens_certificado-id_registro = '100'.
LOOP AT p_itens_embarque INTO wa_item_embarque.
CALL METHOD determina_classificacao
EXPORTING
p_item_embarque = wa_item_embarque
p_cab_embarque = p_cab_embarque
IMPORTING
p_param_ncm = wa_param_ncm.
v_itens_certificado-classificacao = wa_param_ncm-ncm.
IF sy-subrc NE 0.
CONCATENATE
wa_item_embarque-arktx
'. Verificar parâmetros NCM/NALADI.'(041)
INTO v_msg1.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_certificado-classificacao
p_tipo = c_alerta
p_msg1 = 'Classificação do produto em branco:'(042)
p_msg2 = v_msg1
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_certificado-id_registro.
ENDIF.
v_itens_certificado-cr_origem = wa_param_ncm-cod_norma.
IF v_itens_certificado-cr_origem IS INITIAL.
CONCATENATE:
'Verificar norma para o NCM:'(043)
wa_item_embarque-steuc
INTO v_msg1
SEPARATED BY space,
'item do fornec.:'(044)
wa_item_embarque-posnl
'/ fornecimento:'(045)
wa_item_embarque-vbeln_vl
wa_item_embarque-arktx
INTO v_msg2
SEPARATED BY space.
ENDIF.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_certificado-cr_origem
p_tipo = c_erro
p_msg1 = v_msg1
p_msg2 = v_msg2
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_certificado-id_registro.
formata_num3c
wa_item_embarque-fkimg
v_itens_certificado-quantidade.
v_quantidade = wa_item_embarque-fkimg.
CALL METHOD determina_unidade_medida
EXPORTING
p_unidade_r3 = wa_item_embarque-vrkme
p_quantidade = v_quantidade
IMPORTING
p_unidade_co = v_unidade_co.
v_itens_certificado-un_medida = v_unidade_co.
CLEAR wa_dp_material-decor.
READ TABLE it_dp_material INTO wa_dp_material
WITH KEY
cdacd = p_config_acordo-cdacd
matnr = wa_item_embarque-matnr.
v_itens_certificado-cod_declaracao = wa_dp_material-decor.
IF sy-subrc NE 0.
v_tipo_msg = p_config_acordo-fldec.
CONCATENATE
'Verificar código de declaração para material:'(028)
wa_item_embarque-arktx
INTO v_msg1
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_certificado-cod_declaracao
p_tipo = v_tipo_msg
p_msg1 = v_msg1
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_certificado-id_registro.
ENDIF.
APPEND v_itens_certificado TO p_arquivo_co.
ENDLOOP.
ENDMETHOD.
METHOD adicionar_itens_denominacao_d.
DATA:
v_itens_denominacao TYPE t_co_det_itens_denom_d,
v_denominacao1 TYPE t_denominacao,
v_denominacao2 TYPE t_denominacao,
wa_item_embarque TYPE t_wa_itens_embarque,
v_msg(100) TYPE c.
v_itens_denominacao-id_registro = '101'.
LOOP AT p_itens_embarque INTO wa_item_embarque.
CALL METHOD determina_denominacao
EXPORTING
p_idioma = p_idioma
p_item_embarque = wa_item_embarque
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_denominacao1 = v_denominacao1
p_denominacao2 = v_denominacao2.
v_itens_denominacao-denominacao = v_denominacao1(300).
APPEND v_itens_denominacao TO p_arquivo_co.
CONCATENATE
'Verificar denominação para acordo'(046)
p_config_acordo-cdacd
INTO v_msg
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_denominacao-denominacao
p_tipo = c_erro
p_msg1 = v_msg
p_msg2 = '.'
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_denominacao-id_registro.
ENDLOOP.
ENDMETHOD.
METHOD adicionar_trailler_certif_d.
DATA
v_trailler_certif TYPE t_co_trl_certificado_d.
v_trailler_certif-id_registro = '110'.
APPEND v_trailler_certif TO p_arquivo_co.
ENDMETHOD.
ENDCLASS.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCE311F06
CLASS lcl_certificado_e DEFINITION
INHERITING FROM lcl_certificado.
PUBLIC SECTION.
INTERFACES
i_certificado.
ALIASES:
retorna_certificado FOR i_certificado~retorna_certificado.
METHODS:
constructor
IMPORTING
p_embarque TYPE t_wa_cab_embarque-nrseq
p_acordo TYPE t_wa_config_acordo
p_idioma TYPE spras
EXCEPTIONS
dados_invalidos.
PRIVATE SECTION.
TYPES:
BEGIN OF t_co_hdr_exportador_e,
id_registro(3) TYPE n,
end_pais_exp(300) TYPE c,
assinante(77) TYPE c,
vazio(120) TYPE c,
END OF t_co_hdr_exportador_e,
t_co_hdr_produtor_e TYPE t_co_hdr_produtor_x,
t_co_hdr_transporte_e TYPE t_co_hdr_transporte_x,
BEGIN OF t_co_det_itens_cert_e,
id_registro(3) TYPE n,
num_ordem(4) TYPE n,
classificacao(20) TYPE c,
peso_brt_qtde(12) TYPE n,
un_medida(3) TYPE n,
cod_declaracao(10) TYPE c,
vazio(448) TYPE c,
END OF t_co_det_itens_cert_e,
t_co_det_itens_denom_e TYPE t_co_det_itens_denom_x,
t_co_trl_certificado_e TYPE t_co_trl_certificado_x.
METHODS:
adicionar_header_exportador_e
IMPORTING
p_carta_credito TYPE t_wa_carta_credito
p_param_acordo TYPE t_wa_param_acordo
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_header_produtor_e
IMPORTING
p_carta_credito TYPE t_wa_carta_credito
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_header_transporte_e
IMPORTING
p_cab_embarque TYPE t_wa_cab_embarque
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_itens_certificado_e
IMPORTING
p_param_acordo TYPE t_wa_param_acordo
p_config_acordo TYPE t_wa_config_acordo
p_cab_embarque TYPE t_wa_cab_embarque
p_itens_embarque TYPE t_it_itens_embarque
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_itens_denominacao_e
IMPORTING
p_idioma TYPE spras
p_config_acordo TYPE t_wa_config_acordo
p_itens_embarque TYPE t_it_itens_embarque
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_trailler_certif_e
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co.
ENDCLASS.
CLASS lcl_certificado_e IMPLEMENTATION.
METHOD constructor.
CALL METHOD super->constructor
EXPORTING
p_embarque = p_embarque
p_acordo = p_acordo
p_idioma = p_idioma
EXCEPTIONS
dados_invalidos = 1.
IF sy-subrc NE 0.
RAISE dados_invalidos.
ENDIF.
CALL METHOD adicionar_header_arquivo
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_proc_certif
EXPORTING
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_fat_export
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
p_carta_credito = wa_carta_credito_gen
p_param_acordo = wa_param_acordo_gen
p_itens_embarque = it_itens_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_details_fat_export
EXPORTING
p_idioma = p_idioma
p_cab_embarque = wa_cab_embarque_gen
p_param_acordo = wa_param_acordo_gen
p_config_acordo = wa_config_acordo_gen
p_itens_embarque = it_itens_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_fat_export
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_exportador_e
EXPORTING
p_carta_credito = wa_carta_credito_gen
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_produtor_e
EXPORTING
p_carta_credito = wa_carta_credito_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_transporte_e
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_itens_certificado_e
EXPORTING
p_param_acordo = wa_param_acordo_gen
p_config_acordo = wa_config_acordo_gen
p_cab_embarque = wa_cab_embarque_gen
p_itens_embarque = it_itens_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_itens_denominacao_e
EXPORTING
p_idioma = p_idioma
p_itens_embarque = it_itens_embarque_gen
p_config_acordo = wa_config_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_certif_e
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_proc_certif
EXPORTING
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_arquivo
IMPORTING
p_arquivo_co = it_arquivo_co.
ENDMETHOD.
METHOD i_certificado~retorna_certificado.
p_arquivo_co = it_arquivo_co.
p_log_erros = it_log_msg.
ENDMETHOD.
METHOD adicionar_header_exportador_e.
DATA
v_header_exportador TYPE t_co_hdr_exportador_e.
v_header_exportador-id_registro = '090'.
CONCATENATE p_carta_credito-export1
p_carta_credito-export2
p_carta_credito-export3
p_carta_credito-export4
INTO v_header_exportador-end_pais_exp
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_exportador-end_pais_exp
p_tipo = c_erro
p_msg1 = 'Endereço/país do exportador em branco.'(033)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_exportador-id_registro.
v_header_exportador-assinante = p_param_acordo-assin.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_exportador-assinante
p_tipo = c_erro
p_msg1 = 'Assinante em branco.'(036)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_exportador-id_registro.
APPEND v_header_exportador TO p_arquivo_co.
ENDMETHOD.
METHOD adicionar_header_produtor_e.
DATA v_header_produtor TYPE t_co_hdr_produtor_e.
v_header_produtor-id_registro = '091'.
v_header_produtor-produtor = p_carta_credito-export1.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_produtor-produtor
p_tipo = c_alerta
p_msg1 = 'Nome do produtor em branco.'(048)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_produtor-id_registro.
CONCATENATE p_carta_credito-export2
p_carta_credito-export3
p_carta_credito-export4
INTO v_header_produtor-end_pais_prd
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_produtor-end_pais_prd
p_tipo = c_alerta
p_msg1 = 'Endereço do produtor em branco.'(047)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_produtor-id_registro.
APPEND v_header_produtor TO p_arquivo_co.
ENDMETHOD.
METHOD adicionar_header_transporte_e.
TYPES:
BEGIN OF t_wa_meio_transporte,
viatrans TYPE t_wa_cab_embarque-viatrans,
transporte TYPE t_co_hdr_transporte_e-transporte,
END OF t_wa_meio_transporte.
DATA:
v_header_transporte TYPE t_co_hdr_transporte_e,
it_meio_transporte TYPE TABLE OF t_wa_meio_transporte,
wa_meio_transporte TYPE t_wa_meio_transporte.
v_header_transporte-id_registro = '094'.
preenche_meio_transporte:
'DT' 'Conduto / Rede de Transmissão'(049),
'EN' 'Entrada / Saída Ficta'(050),
'FL' 'Navegação Fluvial'(051),
'FR' 'Ferroviário'(052),
'LC' 'Lacustre'(053),
'MA' 'Marítimo'(054),
'PP' 'Meios Próprios'(055),
'PS' 'Postal'(056).
READ TABLE it_meio_transporte INTO wa_meio_transporte
WITH KEY
viatrans = p_cab_embarque-viatrans.
v_header_transporte-transporte = wa_meio_transporte-transporte.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_transporte-transporte
p_tipo = c_erro
p_msg1 = 'Meio de transporte em branco.'(057)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_transporte-id_registro.
CONCATENATE
p_cab_embarque-portemb
p_cab_embarque-portdest
INTO v_header_transporte-rota
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_transporte-rota
p_tipo = c_alerta
p_msg1 = 'Rota/itinerário em branco.'(058)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_transporte-id_registro.
APPEND v_header_transporte TO p_arquivo_co.
ENDMETHOD.
METHOD adicionar_itens_certificado_e.
DATA:
v_itens_certificado TYPE t_co_det_itens_cert_e,
wa_item_embarque TYPE t_wa_itens_embarque,
wa_param_ncm TYPE t_wa_param_ncm,
wa_dp_material TYPE t_wa_dp_material,
v_tipo_msg TYPE smesg-msgty,
v_msg1(100) TYPE c,
v_msg2(100) TYPE c,
v_montante TYPE t_wa_itens_embarque-vlme_r,
v_quantidade TYPE num16,
v_unidade_co TYPE t_wa_unidades-idmed,
v_peso TYPE ekpo-brgew.
v_itens_certificado-id_registro = '100'.
LOOP AT p_itens_embarque INTO wa_item_embarque.
v_itens_certificado-num_ordem = sy-tabix.
CLEAR wa_param_ncm.
READ TABLE it_param_ncm INTO wa_param_ncm
WITH KEY
matnr = wa_item_embarque-matnr
ncmbr = wa_item_embarque-steuc.
v_itens_certificado-classificacao = wa_param_ncm-ncm.
IF sy-subrc NE 0.
CONCATENATE
wa_item_embarque-arktx
'. Verificar parâmetros NCM/NALADI.'(041)
INTO v_msg1.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_certificado-classificacao
p_tipo = c_alerta
p_msg1 = 'Classificação do produto em branco:'(042)
p_msg2 = v_msg1
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_certificado-id_registro.
ENDIF.
CALL METHOD converte_peso_para_quilos
EXPORTING
p_item_embarque = wa_item_embarque
p_origem_peso = c_peso_bruto
IMPORTING
p_peso_quilos = v_peso.
formata_num3c
v_peso
v_itens_certificado-peso_brt_qtde.
v_quantidade = wa_item_embarque-brgew.
CALL METHOD determina_unidade_medida
EXPORTING
p_unidade_r3 = wa_item_embarque-vrkme
p_quantidade = v_quantidade
IMPORTING
p_unidade_co = v_unidade_co.
CLEAR wa_dp_material-decor.
READ TABLE it_dp_material INTO wa_dp_material
WITH KEY
cdacd = p_config_acordo-cdacd
matnr = wa_item_embarque-matnr.
v_itens_certificado-cod_declaracao = wa_dp_material-decor.
IF sy-subrc NE 0.
v_tipo_msg = p_config_acordo-fldec.
CONCATENATE
'Verificar código de declaração para material:'(028)
wa_item_embarque-arktx
INTO v_msg1
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_certificado-cod_declaracao
p_tipo = v_tipo_msg
p_msg1 = v_msg1
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_certificado-id_registro.
ENDIF.
APPEND v_itens_certificado TO p_arquivo_co.
ENDLOOP.
ENDMETHOD.
METHOD adicionar_itens_denominacao_e.
DATA:
v_itens_denominacao TYPE t_co_det_itens_denom_e,
v_denominacao1 TYPE t_denominacao,
v_denominacao2 TYPE t_denominacao,
wa_item_embarque TYPE t_wa_itens_embarque,
v_msg(100) TYPE c.
v_itens_denominacao-id_registro = '101'.
LOOP AT p_itens_embarque INTO wa_item_embarque.
CALL METHOD determina_denominacao
EXPORTING
p_idioma = p_idioma
p_item_embarque = wa_item_embarque
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_denominacao1 = v_denominacao1
p_denominacao2 = v_denominacao2.
v_itens_denominacao-denominacao = v_denominacao1(300).
APPEND v_itens_denominacao TO p_arquivo_co.
CONCATENATE
'Verificar denominação para acordo'(046)
p_config_acordo-cdacd
INTO v_msg
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_denominacao-denominacao
p_tipo = c_erro
p_msg1 = v_msg
p_msg2 = '.'
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_denominacao-id_registro.
ENDLOOP.
ENDMETHOD.
METHOD adicionar_trailler_certif_e.
DATA
v_trailler_certif TYPE t_co_trl_certificado_e.
v_trailler_certif-id_registro = '110'.
APPEND v_trailler_certif TO p_arquivo_co.
ENDMETHOD.
ENDCLASS.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCE311F07
CLASS lcl_certificado_f DEFINITION
INHERITING FROM lcl_certificado.
PUBLIC SECTION.
INTERFACES
i_certificado.
ALIASES:
retorna_certificado FOR i_certificado~retorna_certificado.
METHODS:
constructor
IMPORTING
p_embarque TYPE t_wa_cab_embarque-nrseq
p_acordo TYPE t_wa_config_acordo
p_idioma TYPE spras
EXCEPTIONS
dados_invalidos.
PRIVATE SECTION.
TYPES:
BEGIN OF t_co_hdr_exportador_f,
id_registro(3) TYPE n,
end_pais_exp(300) TYPE c,
assinante(77) TYPE c,
vazio(120) TYPE c,
END OF t_co_hdr_exportador_f,
t_co_hdr_consig_f TYPE t_co_hdr_consig_x,
t_co_hdr_transporte_f TYPE t_co_hdr_transporte_x,
BEGIN OF t_co_det_itens_cert_f,
id_registro(3) TYPE n,
num_item(4) TYPE n,
registro(60) TYPE c,
cr_origem(3) TYPE n,
peso_brt_qtde(12) TYPE n,
un_medida(3) TYPE n,
cod_declaracao(10) TYPE c,
vazio(405) TYPE c,
END OF t_co_det_itens_cert_f,
t_co_det_itens_denom_f TYPE t_co_det_itens_denom_x,
t_co_trl_certificado_f TYPE t_co_trl_certificado_x.
METHODS:
adicionar_header_exportador_f
IMPORTING
p_carta_credito TYPE t_wa_carta_credito
p_param_acordo TYPE t_wa_param_acordo
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_header_consign_f
IMPORTING
p_carta_credito TYPE t_wa_carta_credito
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_header_transporte_f
IMPORTING
p_cab_embarque TYPE t_wa_cab_embarque
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_itens_certificado_f
IMPORTING
p_param_acordo TYPE t_wa_param_acordo
p_config_acordo TYPE t_wa_config_acordo
p_cab_embarque TYPE t_wa_cab_embarque
p_itens_embarque TYPE t_it_itens_embarque
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_itens_denominacao_f
IMPORTING
p_idioma TYPE spras
p_config_acordo TYPE t_wa_config_acordo
p_itens_embarque TYPE t_it_itens_embarque
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_trailler_certif_f
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co.
ENDCLASS.
CLASS lcl_certificado_f IMPLEMENTATION.
METHOD constructor.
CALL METHOD super->constructor
EXPORTING
p_embarque = p_embarque
p_acordo = p_acordo
p_idioma = p_idioma
EXCEPTIONS
dados_invalidos = 1.
IF sy-subrc NE 0.
RAISE dados_invalidos.
ENDIF.
CALL METHOD adicionar_header_arquivo
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_proc_certif
EXPORTING
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_fat_export
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
p_carta_credito = wa_carta_credito_gen
p_param_acordo = wa_param_acordo_gen
p_itens_embarque = it_itens_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_details_fat_export
EXPORTING
p_idioma = p_idioma
p_cab_embarque = wa_cab_embarque_gen
p_param_acordo = wa_param_acordo_gen
p_config_acordo = wa_config_acordo_gen
p_itens_embarque = it_itens_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_fat_export
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_exportador_f
EXPORTING
p_carta_credito = wa_carta_credito_gen
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_consign_f
EXPORTING
p_carta_credito = wa_carta_credito_gen.
CALL METHOD adicionar_header_transporte_f
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_itens_certificado_f
EXPORTING
p_param_acordo = wa_param_acordo_gen
p_config_acordo = wa_config_acordo_gen
p_cab_embarque = wa_cab_embarque_gen
p_itens_embarque = it_itens_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_itens_denominacao_f
EXPORTING
p_idioma = p_idioma
p_itens_embarque = it_itens_embarque_gen
p_config_acordo = wa_config_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_certif_f
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_proc_certif
EXPORTING
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_arquivo
IMPORTING
p_arquivo_co = it_arquivo_co.
ENDMETHOD.
METHOD i_certificado~retorna_certificado.
p_arquivo_co = it_arquivo_co.
p_log_erros = it_log_msg.
ENDMETHOD.
METHOD adicionar_header_exportador_f.
DATA
v_header_exportador TYPE t_co_hdr_exportador_f.
v_header_exportador-id_registro = '090'.
CONCATENATE p_carta_credito-export1
p_carta_credito-export2
p_carta_credito-export3
p_carta_credito-export4
INTO v_header_exportador-end_pais_exp
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_exportador-end_pais_exp
p_tipo = c_erro
p_msg1 = 'Endereço/país do exportador em branco.'(033)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_exportador-id_registro.
v_header_exportador-assinante = p_param_acordo-assin.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_exportador-assinante
p_tipo = c_erro
p_msg1 = 'Assinante em branco.'(036)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_exportador-id_registro.
APPEND v_header_exportador TO p_arquivo_co.
ENDMETHOD.
METHOD adicionar_header_consign_f.
DATA:
v_header_consign TYPE t_co_hdr_consig_f,
v_msg(100) TYPE c.
v_header_consign-id_registro = '092'.
v_header_consign-consignatario = p_carta_credito-import1.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_consign-consignatario
p_tipo = c_erro
p_msg1 = 'Nome do consignatário em branco.'(037)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_consign-id_registro.
v_header_consign-pais_consig = p_carta_credito-import4.
CONCATENATE
'Verificar código para país:'(039)
p_carta_credito-import4
INTO v_msg
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_consign-pais_consig
p_tipo = c_erro
p_msg1 = 'País do consignatário em branco.'(038)
p_msg2 = v_msg
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_consign-id_registro.
APPEND v_header_consign TO p_arquivo_co.
ENDMETHOD.
METHOD adicionar_header_transporte_f.
TYPES:
BEGIN OF t_wa_meio_transporte,
viatrans TYPE t_wa_cab_embarque-viatrans,
transporte TYPE t_co_hdr_transporte_f-transporte,
END OF t_wa_meio_transporte.
DATA:
v_header_transporte TYPE t_co_hdr_transporte_f,
it_meio_transporte TYPE TABLE OF t_wa_meio_transporte,
wa_meio_transporte TYPE t_wa_meio_transporte.
v_header_transporte-id_registro = '094'.
preenche_meio_transporte:
'DT' 'Conduto / Rede de Transmissão'(049),
'EN' 'Entrada / Saída Ficta'(050),
'FL' 'Navegação Fluvial'(051),
'FR' 'Ferroviário'(052),
'LC' 'Lacustre'(053),
'MA' 'Marítimo'(054),
'PP' 'Meios Próprios'(055),
'PS' 'Postal'(056).
READ TABLE it_meio_transporte INTO wa_meio_transporte
WITH KEY
viatrans = p_cab_embarque-viatrans.
v_header_transporte-transporte = wa_meio_transporte-transporte.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_transporte-transporte
p_tipo = c_erro
p_msg1 = 'Meio de transporte em branco.'(057)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_transporte-id_registro.
CONCATENATE
p_cab_embarque-portemb
p_cab_embarque-portdest
INTO v_header_transporte-rota
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_transporte-rota
p_tipo = c_alerta
p_msg1 = 'Rota/itinerário em branco.'(058)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_transporte-id_registro.
APPEND v_header_transporte TO p_arquivo_co.
ENDMETHOD.
METHOD adicionar_itens_certificado_f.
DATA:
v_itens_certificado TYPE t_co_det_itens_cert_f,
wa_item_embarque TYPE t_wa_itens_embarque,
wa_param_ncm TYPE t_wa_param_ncm,
wa_dp_material TYPE t_wa_dp_material,
v_tipo_msg TYPE smesg-msgty,
v_msg1(100) TYPE c,
v_msg2(100) TYPE c,
v_quantidade TYPE num16.
v_itens_certificado-id_registro = '100'.
LOOP AT p_itens_embarque INTO wa_item_embarque.
v_itens_certificado-num_item = sy-tabix.
CLEAR wa_param_ncm.
READ TABLE it_param_ncm INTO wa_param_ncm
WITH KEY
matnr = wa_item_embarque-matnr
ncmbr = wa_item_embarque-steuc.
v_itens_certificado-cr_origem = wa_param_ncm-cod_norma.
IF v_itens_certificado-cr_origem IS INITIAL.
CONCATENATE:
'Verificar norma para o NCM:'(043)
wa_item_embarque-steuc
INTO v_msg1
SEPARATED BY space,
'item do fornec.:'(044)
wa_item_embarque-posnl
'/ fornecimento:'(045)
wa_item_embarque-vbeln_vl
wa_item_embarque-arktx
INTO v_msg2
SEPARATED BY space.
ENDIF.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_certificado-cr_origem
p_tipo = c_erro
p_msg1 = v_msg1
p_msg2 = v_msg2
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_certificado-id_registro.
formata_num3c
wa_item_embarque-brgew
v_itens_certificado-peso_brt_qtde.
v_quantidade = wa_item_embarque-fkimg.
CALL METHOD determina_unidade_medida
EXPORTING
p_unidade_r3 = wa_item_embarque-gewei
p_quantidade = v_quantidade
IMPORTING
p_unidade_co = v_itens_certificado-un_medida.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_certificado-un_medida
p_tipo = c_alerta
p_msg1 = 'Unidade de medida não determinada.'(026)
p_msg2 = 'Verificar parâmetros de medida do COOL.'(059)
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_certificado-id_registro.
CLEAR wa_dp_material-decor.
READ TABLE it_dp_material INTO wa_dp_material
WITH KEY
cdacd = p_config_acordo-cdacd
matnr = wa_item_embarque-matnr.
v_itens_certificado-cod_declaracao = wa_dp_material-decor.
IF sy-subrc NE 0.
v_tipo_msg = p_config_acordo-fldec.
CONCATENATE
'Verificar código de declaração para material:'(028)
wa_item_embarque-arktx
INTO v_msg1
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_certificado-cod_declaracao
p_tipo = v_tipo_msg
p_msg1 = v_msg1
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_certificado-id_registro.
ENDIF.
APPEND v_itens_certificado TO p_arquivo_co.
ENDLOOP.
ENDMETHOD.
METHOD adicionar_itens_denominacao_f.
DATA:
v_itens_denominacao TYPE t_co_det_itens_denom_f,
v_denominacao1 TYPE t_denominacao,
v_denominacao2 TYPE t_denominacao,
wa_item_embarque TYPE t_wa_itens_embarque,
v_msg(100) TYPE c.
v_itens_denominacao-id_registro = '101'.
LOOP AT p_itens_embarque INTO wa_item_embarque.
CALL METHOD determina_denominacao
EXPORTING
p_idioma = p_idioma
p_item_embarque = wa_item_embarque
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_denominacao1 = v_denominacao1
p_denominacao2 = v_denominacao2.
v_itens_denominacao-denominacao = v_denominacao1(300).
APPEND v_itens_denominacao TO p_arquivo_co.
CONCATENATE
'Verificar denominação para acordo'(046)
p_config_acordo-cdacd
INTO v_msg
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_denominacao-denominacao
p_tipo = c_erro
p_msg1 = v_msg
p_msg2 = '.'
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_denominacao-id_registro.
ENDLOOP.
ENDMETHOD.
METHOD adicionar_trailler_certif_f.
DATA
v_trailler_certif TYPE t_co_trl_certificado_f.
v_trailler_certif-id_registro = '110'.
APPEND v_trailler_certif TO p_arquivo_co.
ENDMETHOD.
ENDCLASS.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCE311F08
CLASS lcl_certificado_g DEFINITION
INHERITING FROM lcl_certificado.
PUBLIC SECTION.
INTERFACES
i_certificado.
ALIASES:
retorna_certificado FOR i_certificado~retorna_certificado.
METHODS:
constructor
IMPORTING
p_embarque TYPE t_wa_cab_embarque-nrseq
p_acordo TYPE t_wa_config_acordo
p_idioma TYPE spras
EXCEPTIONS
dados_invalidos.
PRIVATE SECTION.
TYPES:
BEGIN OF t_co_hdr_exportador_g,
id_registro(3) TYPE n,
end_pais_exp(300) TYPE c,
cidade(30) TYPE c,
pais(50) TYPE c,
vazio(177) TYPE c,
END OF t_co_hdr_exportador_g,
t_co_hdr_consig_g TYPE t_co_hdr_consig_x,
BEGIN OF t_co_det_itens_cert_g,
id_registro(3) TYPE n,
quantidade(12) TYPE n,
embalagem(60) TYPE c,
peso_liq_qtde(12) TYPE n,
peso_brt_qtde(12) TYPE n,
cod_declaracao(10) TYPE c,
vazio(391) TYPE c,
END OF t_co_det_itens_cert_g,
t_co_det_itens_denom_g TYPE t_co_det_itens_denom_x,
t_co_trl_certificado_g TYPE t_co_trl_certificado_x,
BEGIN OF t_wa_embalagens,
matnr TYPE mara-matnr,
vtext TYPE tvtyt-vtext,
END OF t_wa_embalagens,
t_it_embalagens TYPE TABLE OF t_wa_embalagens,
t_it_dsmat TYPE TABLE OF t_wa_dsmat.
DATA
it_embalagens TYPE t_it_embalagens.
METHODS:
seleciona_embalagens
IMPORTING
p_materiais TYPE t_it_dsmat
p_idioma TYPE spras,
adicionar_header_exportador_g
IMPORTING
p_cab_embarque TYPE t_wa_cab_embarque
p_carta_credito TYPE t_wa_carta_credito
p_param_acordo TYPE t_wa_param_acordo
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_header_consign_g
IMPORTING
p_carta_credito TYPE t_wa_carta_credito
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_itens_certificado_g
IMPORTING
p_param_acordo TYPE t_wa_param_acordo
p_config_acordo TYPE t_wa_config_acordo
p_cab_embarque TYPE t_wa_cab_embarque
p_itens_embarque TYPE t_it_itens_embarque
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_itens_denominacao_g
IMPORTING
p_idioma TYPE spras
p_config_acordo TYPE t_wa_config_acordo
p_itens_embarque TYPE t_it_itens_embarque
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co,
adicionar_trailler_certif_g
EXPORTING
p_arquivo_co TYPE t_it_arquivo_co.
ENDCLASS.
CLASS lcl_certificado_g IMPLEMENTATION.
METHOD constructor.
CALL METHOD super->constructor
EXPORTING
p_embarque = p_embarque
p_acordo = p_acordo
p_idioma = p_idioma
EXCEPTIONS
dados_invalidos = 1.
IF sy-subrc NE 0.
RAISE dados_invalidos.
ENDIF.
CALL METHOD seleciona_embalagens
EXPORTING
p_idioma = p_idioma
p_materiais = it_dsmat.
CALL METHOD adicionar_header_arquivo
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_proc_certif
EXPORTING
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_fat_export
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
p_carta_credito = wa_carta_credito_gen
p_param_acordo = wa_param_acordo_gen
p_itens_embarque = it_itens_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_details_fat_export
EXPORTING
p_idioma = p_idioma
p_cab_embarque = wa_cab_embarque_gen
p_param_acordo = wa_param_acordo_gen
p_config_acordo = wa_config_acordo_gen
p_itens_embarque = it_itens_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_fat_export
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_exportador_g
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
p_carta_credito = wa_carta_credito_gen
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_header_consign_g
EXPORTING
p_carta_credito = wa_carta_credito_gen.
CALL METHOD adicionar_header_observacao
EXPORTING
p_cab_embarque = wa_cab_embarque_gen
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_itens_certificado_g
EXPORTING
p_param_acordo = wa_param_acordo_gen
p_config_acordo = wa_config_acordo_gen
p_cab_embarque = wa_cab_embarque_gen
p_itens_embarque = it_itens_embarque_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_itens_denominacao_g
EXPORTING
p_idioma = p_idioma
p_itens_embarque = it_itens_embarque_gen
p_config_acordo = wa_config_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_certif_g
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_proc_certif
EXPORTING
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_arquivo_co = it_arquivo_co.
CALL METHOD adicionar_trailler_arquivo
IMPORTING
p_arquivo_co = it_arquivo_co.
ENDMETHOD.
METHOD i_certificado~retorna_certificado.
p_arquivo_co = it_arquivo_co.
p_log_erros = it_log_msg.
ENDMETHOD.
METHOD seleciona_embalagens.
TYPES:
BEGIN OF t_material,
matnr TYPE mara-matnr,
vhart TYPE mara-vhart,
END OF t_material,
BEGIN OF t_embalagens,
traty TYPE tvtyt-traty,
vtext TYPE tvtyt-vtext,
END OF t_embalagens.
DATA:
it_materiais TYPE SORTED TABLE OF t_material
WITH UNIQUE KEY matnr,
it_descr_embalagens TYPE HASHED TABLE OF t_embalagens
WITH UNIQUE KEY traty,
wa_material TYPE t_material,
wa_descr_embalagem TYPE t_embalagens,
wa_embalagem TYPE t_wa_embalagens.
SELECT matnr vhart
FROM mara
INTO TABLE it_materiais
FOR ALL ENTRIES IN p_materiais
WHERE
matnr = p_materiais-matnr.
SELECT traty vtext
FROM tvtyt
INTO TABLE it_descr_embalagens
FOR ALL ENTRIES IN it_materiais
WHERE
spras = p_idioma AND
traty = it_materiais-vhart.
CLEAR it_embalagens.
LOOP AT it_materiais INTO wa_material.
READ TABLE it_descr_embalagens INTO wa_descr_embalagem
WITH TABLE KEY
traty = wa_material-vhart.
CHECK sy-subrc = 0.
wa_embalagem-matnr = wa_material-matnr.
wa_embalagem-vtext = wa_descr_embalagem-vtext.
APPEND wa_embalagem TO it_embalagens.
ENDLOOP.
ENDMETHOD.
METHOD adicionar_header_exportador_g.
DATA
v_header_exportador TYPE t_co_hdr_exportador_g.
v_header_exportador-id_registro = '090'.
CONCATENATE p_carta_credito-export1
p_carta_credito-export2
p_carta_credito-export3
p_carta_credito-export4
INTO v_header_exportador-end_pais_exp
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_exportador-end_pais_exp
p_tipo = c_erro
p_msg1 = 'Endereço/país do exportador em branco.'(033)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_exportador-id_registro.
v_header_exportador-cidade = p_carta_credito-import3.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_exportador-cidade
p_tipo = c_alerta
p_msg1 = 'Cidade do importador em branco.'(020)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_exportador-id_registro.
v_header_exportador-pais = p_cab_embarque-paisdest.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_exportador-pais
p_tipo = c_erro
p_msg1 = 'País do importador em branco.'(022)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_exportador-id_registro.
APPEND v_header_exportador TO p_arquivo_co.
ENDMETHOD.
METHOD adicionar_header_consign_g.
DATA:
v_header_consign TYPE t_co_hdr_consig_g.
v_header_consign-id_registro = '092'.
v_header_consign-consignatario = p_carta_credito-import1.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_consign-consignatario
p_tipo = c_erro
p_msg1 = 'Nome do consignatário em branco.'(037)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_consign-id_registro.
CONCATENATE
p_carta_credito-consig2
p_carta_credito-consig4
INTO v_header_consign-pais_consig
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_header_consign-pais_consig
p_tipo = c_erro
p_msg1 =
'Endereço/País do consignatário em branco.'(059)
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_header_consign-id_registro.
APPEND v_header_consign TO p_arquivo_co.
ENDMETHOD.
METHOD adicionar_itens_certificado_g.
DATA:
v_itens_certificado TYPE t_co_det_itens_cert_g,
wa_item_embarque TYPE t_wa_itens_embarque,
wa_dp_material TYPE t_wa_dp_material,
v_tipo_msg TYPE smesg-msgty,
v_msg1(100) TYPE c,
v_msg2(100) TYPE c,
v_peso TYPE ekpo-menge.
v_itens_certificado-id_registro = '100'.
LOOP AT p_itens_embarque INTO wa_item_embarque.
formata_num3c
wa_item_embarque-fkimg
v_itens_certificado-quantidade.
CALL METHOD converte_peso_para_quilos
EXPORTING
p_item_embarque = wa_item_embarque
p_origem_peso = c_peso_liquido
IMPORTING
p_peso_quilos = v_peso.
formata_num3c
v_peso
v_itens_certificado-peso_liq_qtde.
CALL METHOD converte_peso_para_quilos
EXPORTING
p_item_embarque = wa_item_embarque
p_origem_peso = c_peso_bruto
IMPORTING
p_peso_quilos = v_peso.
formata_num3c
wa_item_embarque-brgew
v_itens_certificado-peso_brt_qtde.
CLEAR wa_dp_material-decor.
READ TABLE it_dp_material INTO wa_dp_material
WITH KEY
cdacd = p_config_acordo-cdacd
matnr = wa_item_embarque-matnr.
v_itens_certificado-cod_declaracao = wa_dp_material-decor.
IF sy-subrc NE 0.
v_tipo_msg = p_config_acordo-fldec.
CONCATENATE
'Verificar código de declaração para material:'(028)
wa_item_embarque-arktx
INTO v_msg1
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_certificado-cod_declaracao
p_tipo = v_tipo_msg
p_msg1 = v_msg1
p_msg2 = ''
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_certificado-id_registro.
ENDIF.
APPEND v_itens_certificado TO p_arquivo_co.
ENDLOOP.
ENDMETHOD.
METHOD adicionar_itens_denominacao_g.
DATA:
v_itens_denominacao TYPE t_co_det_itens_denom_g,
v_denominacao1 TYPE t_denominacao,
v_denominacao2 TYPE t_denominacao,
wa_item_embarque TYPE t_wa_itens_embarque,
v_msg(100) TYPE c.
v_itens_denominacao-id_registro = '101'.
LOOP AT p_itens_embarque INTO wa_item_embarque.
CALL METHOD determina_denominacao
EXPORTING
p_idioma = p_idioma
p_item_embarque = wa_item_embarque
p_param_acordo = wa_param_acordo_gen
IMPORTING
p_denominacao1 = v_denominacao1
p_denominacao2 = v_denominacao2.
v_itens_denominacao-denominacao = v_denominacao1(300).
APPEND v_itens_denominacao TO p_arquivo_co.
CONCATENATE
'Verificar denominação para acordo'(046)
p_config_acordo-cdacd
INTO v_msg
SEPARATED BY space.
CALL METHOD inclui_mensagem
EXPORTING
p_dado = v_itens_denominacao-denominacao
p_tipo = c_erro
p_msg1 = v_msg
p_msg2 = '.'
p_msg3 = ''
p_msg4 = ''
p_pos = v_itens_denominacao-id_registro.
ENDLOOP.
ENDMETHOD.
METHOD adicionar_trailler_certif_g.
DATA
v_trailler_certif TYPE t_co_trl_certificado_g.
v_trailler_certif-id_registro = '110'.
APPEND v_trailler_certif TO p_arquivo_co.
ENDMETHOD.
ENDCLASS.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCE311X01
DEFINE retorna_certificado.
create object &1
exporting
p_acordo = wa_config_acordo
p_embarque = p_nrseq
p_idioma = p_spras.
call method &1->retorna_certificado
importing
p_arquivo_co = it_arquivo_co
p_log_erros = it_msg.
free &1.
END-OF-DEFINITION.
DATA:
BEGIN OF COMMON PART c,
it_msg TYPE t_it_msg,
it_arquivo_co TYPE t_it_arquivo_co,
wa_config_acordo TYPE t_wa_config_acordo,
v_nrseq TYPE /pws/zycet001-nrseq,
v_spras TYPE kna1-spras,
v_werks TYPE /pws/zycee001-werks,
END OF COMMON PART c.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/SAPMZYCE310
INCLUDE /PWS/MZYCE310TOP.
INCLUDE /PWS/MZYCE310F01.
INCLUDE /PWS/MZYCE310O01.
INCLUDE /PWS/MZYCE310I01.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/ZYCER311
REPORT /pws/zycer311 MESSAGE-ID /pws/zycem.
INCLUDE /pws/mzyce311f01.
INCLUDE /pws/mzyce311f02.
INCLUDE /pws/mzyce311f03.
INCLUDE /pws/mzyce311f04.
INCLUDE /pws/mzyce311f05.
INCLUDE /pws/mzyce311f06.
INCLUDE /pws/mzyce311f07.
INCLUDE /pws/mzyce311f08.
INCLUDE /pws/mzyce311x01.
CONSTANTS:
c_erro(1) TYPE c VALUE 'E',
c_alerta(1) TYPE c VALUE 'W',
c_ok(1) TYPE c VALUE '',
c_cr_lf(2) TYPE x VALUE '0D0A'.
TYPES:
t_wa_param_exits TYPE /pws/zyglt100.
DATA
it_param_exits TYPE TABLE OF t_wa_param_exits.
PARAMETERS:
p_nrseq TYPE /pws/zycee001-nrseq OBLIGATORY,
p_cdacd TYPE /pws/zycet545-cdacd OBLIGATORY,
p_spras TYPE kna1-spras OBLIGATORY DEFAULT sy-langu.
START-OF-SELECTION.
PERFORM:
seleciona_dados,
cria_certificado,
grava_arquivo,
imprime_relatorio.
FORM cria_certificado.
DATA:
ref_cool_certif_a TYPE REF TO lcl_certificado_a,
ref_cool_certif_b TYPE REF TO lcl_certificado_b,
ref_cool_certif_c TYPE REF TO lcl_certificado_c,
ref_cool_certif_d TYPE REF TO lcl_certificado_d,
ref_cool_certif_e TYPE REF TO lcl_certificado_e,
ref_cool_certif_f TYPE REF TO lcl_certificado_f,
ref_cool_certif_g TYPE REF TO lcl_certificado_g.
v_nrseq = p_nrseq.
p_spras = p_spras.
CASE wa_config_acordo-tpcrt.
WHEN 'A'.
retorna_certificado ref_cool_certif_a.
WHEN 'B'.
retorna_certificado ref_cool_certif_b.
WHEN 'C'.
retorna_certificado ref_cool_certif_c.
WHEN 'D'.
retorna_certificado ref_cool_certif_d.
WHEN 'E'.
retorna_certificado ref_cool_certif_e.
WHEN 'F'.
retorna_certificado ref_cool_certif_f.
WHEN 'G'.
retorna_certificado ref_cool_certif_g.
WHEN 'H'.
PERFORM executa_exit USING 'COOL002'.
WHEN OTHERS.
MESSAGE e001
WITH 'Não existe regra de criação para esse certificado.'(006).
ENDCASE.
ENDFORM.
FORM incluir_cr_lf
CHANGING
p_arquivo_co TYPE t_it_arquivo_co.
DATA
wa_arquivo_co TYPE t_wa_arquivo_co.
wa_arquivo_co-quebra_linha = c_cr_lf.
MODIFY p_arquivo_co
FROM wa_arquivo_co
TRANSPORTING quebra_linha
WHERE quebra_linha <> c_cr_lf.
ENDFORM.
FORM grava_arquivo.
DATA:
wa_arquivo_co TYPE t_wa_arquivo_co,
wa_msg TYPE t_wa_msg,
filename TYPE string,
filesize TYPE i,
v_diretorio TYPE rlgrap-filename,
v_dtentrada TYPE sy-datlo,
v_hrentrada TYPE sy-uzeit.
READ TABLE it_msg INTO wa_msg
WITH KEY tipo = c_erro.
CHECK sy-subrc NE 0.
CLEAR v_diretorio.
CALL FUNCTION 'TMP_GUI_BROWSE_FOR_FOLDER'
EXPORTING
window_title = 'Selecione o diretório para download'(013)
initial_folder = v_diretorio
IMPORTING
selected_folder = v_diretorio
EXCEPTIONS
cntl_error = 1
OTHERS = 2.
IF sy-subrc IS INITIAL AND v_diretorio IS INITIAL.
WRITE / 'Gravação cancelada pelo usuário.'(032).
STOP.
ENDIF.
v_dtentrada = sy-datlo.
v_hrentrada = sy-uzeit.
CONCATENATE
v_diretorio
'\'
p_nrseq
v_dtentrada
v_hrentrada
'.REM'
INTO filename.
PERFORM incluir_cr_lf CHANGING it_arquivo_co.
DESCRIBE TABLE it_arquivo_co LINES filesize.
MULTIPLY filesize BY 502.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
bin_filesize = filesize
filename = filename
filetype = 'BIN'
TABLES
data_tab = it_arquivo_co
EXCEPTIONS
file_write_error = 1
no_batch = 2
gui_refuse_filetransfer = 3
invalid_type = 4
no_authority = 5
unknown_error = 6
header_not_allowed = 7
separator_not_allowed = 8
filesize_not_allowed = 9
header_too_long = 10
dp_error_create = 11
dp_error_send = 12
dp_error_write = 13
unknown_dp_error = 14
access_denied = 15
dp_out_of_memory = 16
disk_full = 17
dp_timeout = 18
file_not_found = 19
dataprovider_exception = 20
control_flush_error = 21
OTHERS = 22.
IF sy-subrc NE 0.
MESSAGE ID sy-msgid TYPE 'E' NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDFORM.
FORM imprime_relatorio.
DATA
wa_msg TYPE t_wa_msg.
WRITE 'Inconsistências encontradas:'(012).
IF it_msg IS INITIAL.
WRITE 'Nenhuma.'.
ENDIF.
LOOP AT it_msg INTO wa_msg.
WRITE: / wa_msg-pos,'['.
CASE wa_msg-tipo.
WHEN c_ok.
WRITE 'OK'(009).
WHEN c_erro.
WRITE 'Erro'(007).
WHEN c_alerta.
WRITE 'Alerta'(008).
ENDCASE.
WRITE: ']:',wa_msg-msg.
ENDLOOP.
READ TABLE it_msg INTO wa_msg
WITH KEY
tipo = c_erro.
WRITE /.
IF sy-subrc = 0.
WRITE / 'Gravação do certificado cancelada.'(010).
ELSE.
WRITE / 'Certificado gravado com sucesso.'(011).
ENDIF.
ENDFORM.
FORM seleciona_dados.
SELECT SINGLE *
INTO wa_config_acordo
FROM /pws/zycet540
WHERE
cdacd = p_cdacd.
SELECT *
FROM /pws/zyglt100
INTO TABLE it_param_exits
WHERE
codmod = 'X' AND
func = '/PWS/ZYCER311' AND
zexit_ativa = 'X'.
ENDFORM.
FORM executa_exit
USING p_exit TYPE t_wa_param_exits-zexit.
DATA:
wa_param_exit TYPE t_wa_param_exits,
wa_msg TYPE t_wa_msg.
READ TABLE it_param_exits INTO wa_param_exit
WITH KEY
zexit = p_exit.
IF NOT wa_param_exit-formulario IS INITIAL AND
NOT wa_param_exit-programa IS INITIAL AND
sy-subrc IS INITIAL.
PERFORM (wa_param_exit-formulario)
IN PROGRAM (wa_param_exit-programa)
IF FOUND.
ELSE.
wa_msg-tipo = c_erro.
CONCATENATE
'Parametrização de exit incorreta.' &
'Verificar parametrização de exit'(060)
p_exit
INTO wa_msg-msg
SEPARATED BY space.
wa_msg-pos = '000'.
APPEND wa_msg TO it_msg.
ENDIF.
ENDFORM.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPT /PWS/SAPMZYCE310
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 000
Texto: (30 caracteres)
"Confirma remoção do parâmetro?"
Comprimento máximo: 30
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 001
Texto: (9 caracteres)
"Confirmar"
Comprimento máximo: 9
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 002
Texto: (19 caracteres)
"Parâmetro removido."
Comprimento máximo: 19
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 003
Texto: (46 caracteres)
"Parâmetros sofreram alteração. Confirma saída?"
Comprimento máximo: 46
------------------------------------------------
Incluído texto de seleção:
Idioma: PT
Variável (SELECT-OPTION / PARAMETER): P_CDACD
Texto: (6 caracteres)
"Acordo"
Referência ao Dictionary: NÃO
------------------------------------------------
Incluído texto de seleção:
Idioma: PT
Variável (SELECT-OPTION / PARAMETER): P_KUNNR
Texto: (7 caracteres)
"Cliente"
Referência ao Dictionary: NÃO
------------------------------------------------
Incluído texto de seleção:
Idioma: PT
Variável (SELECT-OPTION / PARAMETER): P_LAND1
Texto: (4 caracteres)
"País"
Referência ao Dictionary: NÃO
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPT /PWS/ZYCER311
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 000
Texto: (24 caracteres)
"Embarque não encontrado."
Comprimento máximo: 24
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 001
Texto: (16 caracteres)
"Acordo inválido."
Comprimento máximo: 30
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 002
Texto: (32 caracteres)
"Configuração do acordo inválido."
Comprimento máximo: 32
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 003
Texto: (34 caracteres)
"Itens do embarque não encontrados."
Comprimento máximo: 34
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 004
Texto: (42 caracteres)
"Dados da carta de crédito não encontrados."
Comprimento máximo: 42
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 005
Texto: (31 caracteres)
"Parâmetros do acordo inválidos."
Comprimento máximo: 31
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 006
Texto: (50 caracteres)
"Não existe regra de criação para esse certificado."
Comprimento máximo: 50
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 007
Texto: (4 caracteres)
"Erro"
Comprimento máximo: 4
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 008
Texto: (6 caracteres)
"Alerta"
Comprimento máximo: 6
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 009
Texto: (2 caracteres)
"OK"
Comprimento máximo: 2
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 010
Texto: (34 caracteres)
"Gravação do certificado cancelada."
Comprimento máximo: 34
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 011
Texto: (32 caracteres)
"Certificado gravado com sucesso."
Comprimento máximo: 32
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 012
Texto: (28 caracteres)
"Inconsistências encontradas:"
Comprimento máximo: 28
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 013
Texto: (35 caracteres)
"Selecione o diretório para download"
Comprimento máximo: 35
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 014
Texto: (27 caracteres)
"Incoterm não parametrizado."
Comprimento máximo: 27
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 015
Texto: (26 caracteres)
"CNPJ da empresa em branco."
Comprimento máximo: 26
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 016
Texto: (34 caracteres)
"Razão social da empresa em branco."
Comprimento máximo: 34
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 017
Texto: (27 caracteres)
"Acordo comercial em branco."
Comprimento máximo: 27
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 018
Texto: (29 caracteres)
"Nome do importador em branco."
Comprimento máximo: 29
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 019
Texto: (33 caracteres)
"Endereço do importador em branco."
Comprimento máximo: 33
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 020
Texto: (31 caracteres)
"Cidade do importador em branco."
Comprimento máximo: 31
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 021
Texto: (36 caracteres)
"Verificar dados da carta de crédito."
Comprimento máximo: 36
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 022
Texto: (29 caracteres)
"País do importador em branco."
Comprimento máximo: 29
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 023
Texto: (34 caracteres)
"Verificar parâmetro de países para"
Comprimento máximo: 34
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 024
Texto: (41 caracteres)
"Número da fatura do exportador em branco."
Comprimento máximo: 41
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 025
Texto: (35 caracteres)
"Data da fatura comercial em branco."
Comprimento máximo: 35
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 026
Texto: (34 caracteres)
"Unidade de medida não determinada."
Comprimento máximo: 34
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 027
Texto: (34 caracteres)
"Verificar denominação para acordo."
Comprimento máximo: 34
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 028
Texto: (45 caracteres)
"Verificar código de declaração para material:"
Comprimento máximo: 45
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 029
Texto: (41 caracteres)
"Número da fatura do exportador em branco."
Comprimento máximo: 41
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 030
Texto: (34 caracteres)
"Quantidade de processos em branco."
Comprimento máximo: 34
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 031
Texto: (27 caracteres)
"Erro de conversão de moeda."
Comprimento máximo: 27
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 032
Texto: (32 caracteres)
"Gravação cancelada pelo usuário."
Comprimento máximo: 32
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 033
Texto: (38 caracteres)
"Endereço/país do exportador em branco."
Comprimento máximo: 38
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 034
Texto: (34 caracteres)
"Porto/local de embarque em branco."
Comprimento máximo: 34
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 035
Texto: (29 caracteres)
"Meio de transporte em branco."
Comprimento máximo: 29
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 036
Texto: (20 caracteres)
"Assinante em branco."
Comprimento máximo: 20
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 037
Texto: (32 caracteres)
"Nome do consignatário em branco."
Comprimento máximo: 32
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 038
Texto: (32 caracteres)
"País do consignatário em branco."
Comprimento máximo: 32
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 039
Texto: (27 caracteres)
"Verificar código para país:"
Comprimento máximo: 27
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 040
Texto: (21 caracteres)
"Observação em branco."
Comprimento máximo: 21
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 041
Texto: (34 caracteres)
". Verificar parâmetros NCM/NALADI."
Comprimento máximo: 34
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 042
Texto: (35 caracteres)
"Classificação do produto em branco:"
Comprimento máximo: 35
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 043
Texto: (27 caracteres)
"Verificar norma para o NCM:"
Comprimento máximo: 27
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 044
Texto: (14 caracteres)
"para material:"
Comprimento máximo: 14
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 045
Texto: (15 caracteres)
"/ fornecimento:"
Comprimento máximo: 15
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 046
Texto: (33 caracteres)
"Verificar denominação para acordo"
Comprimento máximo: 33
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 047
Texto: (31 caracteres)
"Endereço do produtor em branco."
Comprimento máximo: 31
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 048
Texto: (27 caracteres)
"Nome do produtor em branco."
Comprimento máximo: 27
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 049
Texto: (29 caracteres)
"Conduto / Rede de Transmissão"
Comprimento máximo: 29
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 050
Texto: (21 caracteres)
"Entrada / Saída Ficta"
Comprimento máximo: 21
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 051
Texto: (17 caracteres)
"Navegação Fluvial"
Comprimento máximo: 17
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 052
Texto: (11 caracteres)
"Ferroviário"
Comprimento máximo: 11
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 053
Texto: (8 caracteres)
"Lacustre"
Comprimento máximo: 8
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 054
Texto: (8 caracteres)
"Marítimo"
Comprimento máximo: 8
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 055
Texto: (14 caracteres)
"Meios Próprios"
Comprimento máximo: 14
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 056
Texto: (6 caracteres)
"Postal"
Comprimento máximo: 6
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 057
Texto: (29 caracteres)
"Meio de transporte em branco."
Comprimento máximo: 29
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 058
Texto: (26 caracteres)
"Rota/itinerário em branco."
Comprimento máximo: 26
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 059
Texto: (21 caracteres)
"em Parâmetros Gerais."
Comprimento máximo: 21
------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 060
Texto: (66 caracteres)
"Parametrização de exit incorreta. Verificar parametrização de exit"
Comprimento máximo: 66
------------------------------------------------
Incluído texto de seleção:
Idioma: PT
Variável (SELECT-OPTION / PARAMETER): P_CDACD
Texto: (6 caracteres)
"Acordo"
Referência ao Dictionary: NÃO
------------------------------------------------
Incluído texto de seleção:
Idioma: PT
Variável (SELECT-OPTION / PARAMETER): P_NRSEQ
Texto: (22 caracteres)
"Seqüencial do embarque"
Referência ao Dictionary: NÃO
------------------------------------------------
Incluído texto de seleção:
Idioma: PT
Variável (SELECT-OPTION / PARAMETER): P_SPRAS
Texto: (6 caracteres)
"Idioma"
Referência ao Dictionary: NÃO
----------------------------------------------------------------------------------------------------
Modificações efetuadas em SHLP /PWS/ZYCEA520
CRIAR AJUDA DE PESQUISA: /PWS/ZYCEA520
DESCRIÇÃO BREVE: CE - Acordos Comerciais
DEFINIÇÃO
OBTENÇÃO DE DADOS
MÉTODO DE SELEÇÃO: /PWS/ZYCET540
COMPORTAMENTO DE DIÁLOGO:
TIPO DE DIÁLOGO: Exibição de valores imediata
HOT KEY: ____
EXIT AJUD. PESQUISA: _________________________________
PARÂMETROS:
PARAM. IMP EXP POSL ISEL EXAJ ELEM. DADOS MOD VALOR PROPOSTO
CDACD X X 1 1 /PWS/ZYCEL680
DSACD X 2 0 /PWS/ZYCEL681
----------------------------------------------------------------------------------------------------
Modificações efetuadas em SHLP /PWS/ZYCEA521
CRIAR AJUDA DE PESQUISA: /PWS/ZYCEA521
DESCRIÇÃO BREVE: CE - Unidades de Medidas
DEFINIÇÃO
OBTENÇÃO DE DADOS
MÉTODO DE SELEÇÃO: H_T006
COMPORTAMENTO DE DIÁLOGO:
TIPO DE DIÁLOGO: Exibição de valores imediata
HOT KEY: ____
EXIT AJUD. PESQUISA: _________________________________
PARÂMETROS:
PARAM. IMP EXP POSL ISEL EXAJ ELEM. DADOS MOD VALOR PROPOSTO
MSEHI X X 1 1 MSEHI
MSEH3 X 2 0 MSEH3
MSEHL X 3 0 MSEHL
TXDIM X 4 0 TXDIM
----------------------------------------------------------------------------------------------------
Modificações efetuadas em SHLP /PWS/ZYCEA522
CRIAR AJUDA DE PESQUISA: /PWS/ZYCEA522
DESCRIÇÃO BREVE: CE - Materiais para declaração de origem
DEFINIÇÃO
OBTENÇÃO DE DADOS
MÉTODO DE SELEÇÃO: MARA
TABELA DE TEXTOS: MAKT
COMPORTAMENTO DE DIÁLOGO:
TIPO DE DIÁLOGO: Exibição de valores imediata
HOT KEY: ____
EXIT AJUD. PESQUISA: _________________________________
PARÂMETROS:
PARAM. IMP EXP POSL ISEL EXAJ ELEM. DADOS MOD VALOR PROPOSTO
MATNR X X 1 1 MATNR
MAKTX X 2 0 MAKTX
----------------------------------------------------------------------------------------------------
Modificações efetuadas em SHLP /PWS/ZYCEA523
CRIAR AJUDA DE PESQUISA: /PWS/ZYCEA523
DESCRIÇÃO BREVE: CE - Normas de origem
DEFINIÇÃO
OBTENÇÃO DE DADOS
MÉTODO DE SELEÇÃO: /PWS/ZYCET542
COMPORTAMENTO DE DIÁLOGO:
TIPO DE DIÁLOGO: Exibição de valores imediata
HOT KEY: ____
EXIT AJUD. PESQUISA: _________________________________
PARÂMETROS:
PARAM. IMP EXP POSL ISEL EXAJ ELEM. DADOS MOD VALOR PROPOSTO
CDACD X 1 0 /PWS/ZYCEL680
CDNRM X X 2 1 /PWS/ZYCEL687
DSNRM X 3 0 /PWS/ZYCEL688
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCEE545
CRIAR ESTRUTURA: /PWS/ZYCEE545
DESCRIÇÃO BREVE: CE - Parâmetros Gerais Certificado de Origem Online
COMPONENTES NOVOS
COMPONENTE: TP. COMP: TAB.REF.: CPO.REF.: AJUD. PESQU.
MANDT MANDT T000 H_T000
CDACD /PWS/ZYCEL680 /PWS/ZYCET540 /PWS/ZYCEA520
KUNNR KUNNR KNA1 DEBI
LAND1 LAND1 T005
ASSIN /PWS/ZYCEL693
CDDEN /PWS/ZYCEL683
NRFAT /PWS/ZYCEL694
DTFAT /PWS/ZYCEL695
TMOBS INT2
OBSER /PWS/ZYCEL696
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCET540
CRIAR TABELA TRANSPARENTE: /PWS/ZYCET540
DESCRIÇÃO BREVE: CE - Parâmetros de Códigos de Acordos Comerciais
CARACTERÍSTICAS
CATEGORIA DA TABELA: Tabela transparente
CLASSE DE ENTREGA: C
(X) - ATUALIZAÇÃO DE TABELAS PERMITIDA
CAMPOS NOVOS
CAMPOS: TP. CAMPO CH: INI: TAB.VERIF.: TAB.REF.: CPO.RE
MANDT MANDT X T000 T000
CDACD /PWS/ZYCEL680 X
TPCRT /PWS/ZYCEL698
DSACD /PWS/ZYCEL681
CDAGR /PWS/ZYCEL682
FLDEC /PWS/ZYCEL684
OPÇÕES TÉCNICAS
TIPO DE DADOS: APPL2
CATEGOR. TAMANHO: 0
(X) - AR. BUFFER NÃO PERMITIDO
(_) - AR. BUFFER PERMITIDO, MAS DESATIVADO
(_) - AR. BUFFER ATIVADO
(_) - RGSTS. IND ARMAZENADOS
(_) - ÁREA GEN ARMAZENADA EM BUFFER Nº DE CPOS CHAVE: ______
(_) - TOTALMENTE ARMAZENADO
(_) - REGISTRAR MODIFICS. DDS. EM LOG.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCET541
CRIAR TABELA TRANSPARENTE: /PWS/ZYCET541
DESCRIÇÃO BREVE: CE - Códigos de País
CARACTERÍSTICAS
CATEGORIA DA TABELA: Tabela transparente
CLASSE DE ENTREGA: C
(X) - ATUALIZAÇÃO DE TABELAS PERMITIDA
CAMPOS NOVOS
CAMPOS: TP. CAMPO CH: INI: TAB.VERIF.: TAB.REF.: CPO.RE
MANDT MANDT X T000 T000
LAND1 LAND1 X T005 T005
CDLND /PWS/ZYCEL685
DSLND /PWS/ZYCEL686
OPÇÕES TÉCNICAS
TIPO DE DADOS: APPL2
CATEGOR. TAMANHO: 0
(X) - AR. BUFFER NÃO PERMITIDO
(_) - AR. BUFFER PERMITIDO, MAS DESATIVADO
(_) - AR. BUFFER ATIVADO
(_) - RGSTS. IND ARMAZENADOS
(_) - ÁREA GEN ARMAZENADA EM BUFFER Nº DE CPOS CHAVE: ______
(_) - TOTALMENTE ARMAZENADO
(_) - REGISTRAR MODIFICS. DDS. EM LOG.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCET542
CRIAR TABELA TRANSPARENTE: /PWS/ZYCET542
DESCRIÇÃO BREVE: CE - Parâmetros Normas/Critérios de Origem
CARACTERÍSTICAS
CATEGORIA DA TABELA: Tabela transparente
CLASSE DE ENTREGA: C
(X) - ATUALIZAÇÃO DE TABELAS PERMITIDA
CAMPOS NOVOS
CAMPOS: TP. CAMPO CH: INI: TAB.VERIF.: TAB.REF.: AJ. PESQUISA
MANDT MANDT X T000 T000
CDACD /PWS/ZYCEL680 X /PWS/ZYCET540 /PWS/ZYCEA520
CDNRM /PWS/ZYCEL687 X
DSNRM /PWS/ZYCEL688
OPÇÕES TÉCNICAS
TIPO DE DADOS: APPL2
CATEGOR. TAMANHO: 1
(X) - AR. BUFFER NÃO PERMITIDO
(_) - AR. BUFFER PERMITIDO, MAS DESATIVADO
(_) - AR. BUFFER ATIVADO
(_) - RGSTS. IND ARMAZENADOS
(_) - ÁREA GEN ARMAZENADA EM BUFFER Nº DE CPOS CHAVE: ______
(_) - TOTALMENTE ARMAZENADO
(_) - REGISTRAR MODIFICS. DDS. EM LOG.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCET543
CRIAR TABELA TRANSPARENTE: /PWS/ZYCET543
DESCRIÇÃO BREVE: CE - Parâmetros de Medidas
CARACTERÍSTICAS
CATEGORIA DA TABELA: Tabela transparente
CLASSE DE ENTREGA: C
(X) - ATUALIZAÇÃO DE TABELAS PERMITIDA
CAMPOS NOVOS
CAMPOS: TP. CAMPO CH: INI: TAB.VERIF.: TAB.REF.: CPO.RE
MANDT MANDT X T000 T000
MSEHI MSEHI X T006 T006
SINGU /PWS/ZYCEL697 X
IDMED /PWS/ZYCEL689
CDMED /PWS/ZYCEL690
DSMED /PWS/ZYCEL691
OPÇÕES TÉCNICAS
TIPO DE DADOS: APPL2
CATEGOR. TAMANHO: 0
(X) - AR. BUFFER NÃO PERMITIDO
(_) - AR. BUFFER PERMITIDO, MAS DESATIVADO
(_) - AR. BUFFER ATIVADO
(_) - RGSTS. IND ARMAZENADOS
(_) - ÁREA GEN ARMAZENADA EM BUFFER Nº DE CPOS CHAVE: ______
(_) - TOTALMENTE ARMAZENADO
(_) - REGISTRAR MODIFICS. DDS. EM LOG.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCET544
CRIAR TABELA TRANSPARENTE: /PWS/ZYCET544
DESCRIÇÃO BREVE: CE - Declaração de Origem para Código de Material e Acordo
CARACTERÍSTICAS
CATEGORIA DA TABELA: Tabela transparente
CLASSE DE ENTREGA: A
(X) - ATUALIZAÇÃO DE TABELAS PERMITIDA
CAMPOS NOVOS
CAMPOS: TP. CAMPO CH: INI: TAB.VERIF.: TAB.REF.: CPO.RE
MANDT MANDT X T000 T000
CDACD /PWS/ZYCEL680 X /PWS/ZYCET540
MATNR MATNR X MARA MARA
DECOR /PWS/ZYCEL692
OPÇÕES TÉCNICAS
TIPO DE DADOS: APPL2
CATEGOR. TAMANHO: 1
(X) - AR. BUFFER NÃO PERMITIDO
(_) - AR. BUFFER PERMITIDO, MAS DESATIVADO
(_) - AR. BUFFER ATIVADO
(_) - RGSTS. IND ARMAZENADOS
(_) - ÁREA GEN ARMAZENADA EM BUFFER Nº DE CPOS CHAVE: ______
(_) - TOTALMENTE ARMAZENADO
(_) - REGISTRAR MODIFICS. DDS. EM LOG.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCET545
CRIAR TABELA TRANSPARENTE: /PWS/ZYCET545
DESCRIÇÃO BREVE: CE - Parâmetros Gerais Certificado de Origem Online
CARACTERÍSTICAS
CATEGORIA DA TABELA: Tabela transparente
CLASSE DE ENTREGA: C
(X) - ATUALIZAÇÃO DE TABELAS PERMITIDA
CAMPOS NOVOS
CAMPOS: TP. CAMPO CH: INI: TAB.VERIF.: TAB.REF.: CPO.RE
MANDT MANDT X T000 T000
CDACD /PWS/ZYCEL680 X /PWS/ZYCET540
KUNNR KUNNR X KNA1 KNA1
LAND1 LAND1 X T005 T005
ASSIN /PWS/ZYCEL693
CDDEN /PWS/ZYCEL683
NRFAT /PWS/ZYCEL694
DTFAT /PWS/ZYCEL695
TMOBS INT2
OBSER /PWS/ZYCEL696
OPÇÕES TÉCNICAS
TIPO DE DADOS: APPL2
CATEGOR. TAMANHO: 0
(X) - AR. BUFFER NÃO PERMITIDO
(_) - AR. BUFFER PERMITIDO, MAS DESATIVADO
(_) - AR. BUFFER ATIVADO
(_) - RGSTS. IND ARMAZENADOS
(_) - ÁREA GEN ARMAZENADA EM BUFFER Nº DE CPOS CHAVE: ______
(_) - TOTALMENTE ARMAZENADO
(_) - REGISTRAR MODIFICS. DDS. EM LOG.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCET546
CRIAR TABELA TRANSPARENTE: /PWS/ZYCET546
DESCRIÇÃO BREVE: CE - Parâmetros NCM / Naladi Múltiplos
CARACTERÍSTICAS
CATEGORIA DA TABELA: Tabela transparente
CLASSE DE ENTREGA: C
(X) - ATUALIZAÇÃO DE TABELAS PERMITIDA
CAMPOS NOVOS
CAMPOS: TP. CAMPO CH: INI: TAB.VERIF.: TAB.REF.: CPO.RE
MANDT MANDT X T000 T000
MATNR MATNR X MARA MARA
NCMBR STEUC X T604F T604F
LAND1 /PWS/ZYCEL445 X T005 T005
NCM /PWS/ZYCEL158 X /PWS/ZYCET081
LAND /PWS/ZYCEL445 X T005 T005
COD_NORMA /PWS/ZYCEL687 X /PWS/ZYCET542
OPÇÕES TÉCNICAS
TIPO DE DADOS: APPL2
CATEGOR. TAMANHO: 0
(X) - AR. BUFFER NÃO PERMITIDO
(_) - AR. BUFFER PERMITIDO, MAS DESATIVADO
(_) - AR. BUFFER ATIVADO
(_) - RGSTS. IND ARMAZENADOS
(_) - ÁREA GEN ARMAZENADA EM BUFFER Nº DE CPOS CHAVE: ______
(_) - TOTALMENTE ARMAZENADO
(_) - REGISTRAR MODIFICS. DDS. EM LOG.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TRAN /PWS/ZYCE545
CÓDIGO DE TRANSAÇÃO: /PWS/ZYCE545
ATRIBUTOS DA TRANSAÇÃO
TEXTO BREVE: CE - Parâmetros Gerais COOL
OBJETO DE EXECUÇÃO
(X) - PROGRAMA E TELA (TRANSAÇÃO DE DIÁLOGO)
(_) - PROGRAMA E TELA DE SELEÇÃO (TRANSAÇÃO DE REPORT)
TEXTO DA TRANSAÇÃO: CE - Parâmetros Gerais COOL
PROGRAMA: /PWS/SAPMZYCE310
TELA(SELEÇÃO): 1
(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
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TRAN /PWS/ZYCER311
CÓDIGO DE TRANSAÇÃO: /PWS/ZYCER311
ATRIBUTOS DA TRANSAÇÃO
TEXTO BREVE: CE - Emissão Certificado de Origem
OBJETO DE EXECUÇÃO
(_) - PROGRAMA E TELA (TRANSAÇÃO DE DIÁLOGO)
(X) - PROGRAMA E TELA DE SELEÇÃO (TRANSAÇÃO DE REPORT)
TEXTO DA TRANSAÇÃO: CE - Emissão Certificado de Origem
PROGRAMA: /PWS/ZYCER311
TELA(SELEÇÃO): 1000
INÍCIO COM VARIANTE: _____________________________________________
OBJETO DE AUTORIZAÇÃO: ___________________________________________
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
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TRAN /PWS/ZYCET540
CÓDIGO DE TRANSAÇÃO: /PWS/ZYCET540
ATRIBUTOS DA TRANSAÇÃO
TEXTO BREVE: CE - Parâmetros de Acordo Comercial
OBJETO DE EXECUÇÃO
(X) - TRANSAÇÃO C/ PARÂMETROS (TRANSAÇÃO DE PARÂMETROS)
TEXTO DA TRANSAÇÃO: CE - Parâmetros de Acordo Comercial
VALOR PROPOSTO PARA
(X) - TRANSAÇÃO SM30 (X) - OMITIR 1ºTELA
(_) - TELA _____________________
DO POOL MÓDULOS ___________________________
CLASSIFICAÇÃO
(_) - HERDAR CARACTERÍSTICAS GUI
CLASSIFICAÇÃO DE TRANSAÇÃO:
(X) - TRANSAÇÃO PROFESSIONAL USER
(_) - TRANSAÇÃO EASY WEB SERVIÇO: ___________________________
CAPACIDADE GUI:
(X) SAP GUI PARA HTML
(X) SAP GUI PARA JAVA
(X) SAP GUI PARA WINDOWS
VALORES PROPOSTOS
NOME DO CAMPO DA TELA VALOR
VIEWNAME /PWS/ZYCET540
UPDATE X
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TRAN /PWS/ZYCET541
CÓDIGO DE TRANSAÇÃO: /PWS/ZYCET541
ATRIBUTOS DA TRANSAÇÃO
TEXTO BREVE: CE - Código de Países COOL
OBJETO DE EXECUÇÃO
(X) - TRANSAÇÃO C/ PARÂMETROS (TRANSAÇÃO DE PARÂMETROS)
TEXTO DA TRANSAÇÃO: CE - Código de Países COOL
VALOR PROPOSTO PARA
(X) - TRANSAÇÃO SM30 (X) - OMITIR 1ºTELA
(_) - TELA _____________________
DO POOL MÓDULOS ___________________________
CLASSIFICAÇÃO
(_) - HERDAR CARACTERÍSTICAS GUI
CLASSIFICAÇÃO DE TRANSAÇÃO:
(X) - TRANSAÇÃO PROFESSIONAL USER
(_) - TRANSAÇÃO EASY WEB SERVIÇO: ___________________________
CAPACIDADE GUI:
(X) SAP GUI PARA HTML
(X) SAP GUI PARA JAVA
(X) SAP GUI PARA WINDOWS
VALORES PROPOSTOS
NOME DO CAMPO DA TELA VALOR
VIEWNAME /PWS/ZYCET541
UPDATE X
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TRAN /PWS/ZYCET542
CÓDIGO DE TRANSAÇÃO: /PWS/ZYCET542
ATRIBUTOS DA TRANSAÇÃO
TEXTO BREVE: CE - Normas/Critério de Origem
OBJETO DE EXECUÇÃO
(X) - TRANSAÇÃO C/ PARÂMETROS (TRANSAÇÃO DE PARÂMETROS)
TEXTO DA TRANSAÇÃO: CE - Normas/Critério de Origem
VALOR PROPOSTO PARA
(X) - TRANSAÇÃO SM30 (X) - OMITIR 1ºTELA
(_) - TELA _____________________
DO POOL MÓDULOS ___________________________
CLASSIFICAÇÃO
(_) - HERDAR CARACTERÍSTICAS GUI
CLASSIFICAÇÃO DE TRANSAÇÃO:
(X) - TRANSAÇÃO PROFESSIONAL USER
(_) - TRANSAÇÃO EASY WEB SERVIÇO: ___________________________
CAPACIDADE GUI:
(X) SAP GUI PARA HTML
(X) SAP GUI PARA JAVA
(X) SAP GUI PARA WINDOWS
VALORES PROPOSTOS
NOME DO CAMPO DA TELA VALOR
VIEWNAME /PWS/ZYCET542
UPDATE X
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TRAN /PWS/ZYCET543
CÓDIGO DE TRANSAÇÃO: /PWS/ZYCET543
ATRIBUTOS DA TRANSAÇÃO
TEXTO BREVE: CE - Parâmetros de Medidas
OBJETO DE EXECUÇÃO
(X) - TRANSAÇÃO C/ PARÂMETROS (TRANSAÇÃO DE PARÂMETROS)
TEXTO DA TRANSAÇÃO: CE - Parâmetros de Medidas
VALOR PROPOSTO PARA
(X) - TRANSAÇÃO SM30 (X) - OMITIR 1ºTELA
(_) - TELA _____________________
DO POOL MÓDULOS ___________________________
CLASSIFICAÇÃO
(_) - HERDAR CARACTERÍSTICAS GUI
CLASSIFICAÇÃO DE TRANSAÇÃO:
(X) - TRANSAÇÃO PROFESSIONAL USER
(_) - TRANSAÇÃO EASY WEB SERVIÇO: ___________________________
CAPACIDADE GUI:
(X) SAP GUI PARA HTML
(X) SAP GUI PARA JAVA
(X) SAP GUI PARA WINDOWS
VALORES PROPOSTOS
NOME DO CAMPO DA TELA VALOR
VIEWNAME /PWS/ZYCET543
UPDATE X
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TRAN /PWS/ZYCET544
CÓDIGO DE TRANSAÇÃO: /PWS/ZYCET544
ATRIBUTOS DA TRANSAÇÃO
TEXTO BREVE: CE - Declaração de Origem
OBJETO DE EXECUÇÃO
(X) - TRANSAÇÃO C/ PARÂMETROS (TRANSAÇÃO DE PARÂMETROS)
TEXTO DA TRANSAÇÃO: CE - Declaração de Origem
VALOR PROPOSTO PARA
(X) - TRANSAÇÃO SM30 (X) - OMITIR 1ºTELA
(_) - TELA _____________________
DO POOL MÓDULOS ___________________________
CLASSIFICAÇÃO
(_) - HERDAR CARACTERÍSTICAS GUI
CLASSIFICAÇÃO DE TRANSAÇÃO:
(X) - TRANSAÇÃO PROFESSIONAL USER
(_) - TRANSAÇÃO EASY WEB SERVIÇO: ___________________________
CAPACIDADE GUI:
(X) SAP GUI PARA HTML
(X) SAP GUI PARA JAVA
(X) SAP GUI PARA WINDOWS
VALORES PROPOSTOS
NOME DO CAMPO DA TELA VALOR
VIEWNAME /PWS/ZYCET544
UPDATE X
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TRAN /PWS/ZYCET546
CÓDIGO DE TRANSAÇÃO: /PWS/ZYCET546
ATRIBUTOS DA TRANSAÇÃO
TEXTO BREVE: CE - Parâmetros NCM/NALADI Múltiplos
OBJETO DE EXECUÇÃO
(X) - TRANSAÇÃO C/ PARÂMETROS (TRANSAÇÃO DE PARÂMETROS)
TEXTO DA TRANSAÇÃO: CE - Parâmetros NCM/NALADI Múltiplos
VALOR PROPOSTO PARA
(X) - TRANSAÇÃO SM30 (X) - OMITIR 1ºTELA
(_) - TELA _____________________
DO POOL MÓDULOS ___________________________
CLASSIFICAÇÃO
(_) - HERDAR CARACTERÍSTICAS GUI
CLASSIFICAÇÃO DE TRANSAÇÃO:
(X) - TRANSAÇÃO PROFESSIONAL USER
(_) - TRANSAÇÃO EASY WEB SERVIÇO: ___________________________
CAPACIDADE GUI:
(X) SAP GUI PARA HTML
(X) SAP GUI PARA JAVA
(X) SAP GUI PARA WINDOWS
VALORES PROPOSTOS
NOME DO CAMPO DA TELA VALOR
VIEWNAME /PWS/ZYCET546
UPDATE X
----------------------------------------------------------------------------------------------------
Modificações efetuadas em MENU /PWS/ZYCE
Entrar novas entradas de menu:
"em Documentos" (um nível abaixo):
TEXTO CÓD. DE TRANSAÇÃO/MENU
Certificado de Origem On-line
Entrar novas entradas de menu
"Certificado de Origem On-line" (um nível abaixo):
TEXTO CÓD. DE TRANSAÇÃO/MENU
Parâmetros de Códigos de Acordos Comerciais /PWS/ZYCET540
Parâmetros de Códigos de Países /PWS/ZYCET541
Parâmetros de Normas/Critérios de Origem /PWS/ZYCET542
Parâmetros de Medidas /PWS/ZYCET543
Declaração de Origem para Código de Material e Acordo /PWS/ZYCET544
Parâmetros Gerais /PWS/ZYCE545
Parâmetros NCM/NALADI Múltiplos /PWS/ZYCET546
Emissão do certificado de origem /PWS/ZYCER311
----------------------------------------------------------------------------------------------------
MODIFICAR SÍMBOLOS DE TEXTO : /PWS/SAPMZYCE310
TEXTOS NOVOS:
SÍM.: TEXTO: CD. CM.
000 Confirma remoção do parâmetro? 30 30
001 Confirmar 9 9
002 Parâmetro removido. 19 19
003 Parâmetros sofreram alteração. Confirma saída? 46 46
----------------------------------------------------------------------------------------------------
MODIFICAR SÍMBOLOS DE TEXTO : /PWS/ZYCER311
TEXTOS NOVOS:
SÍM.: TEXTO: CD. CM.
000 Embarque não encontrado. 24 24
001 Acordo inválido. 16 16
002 Configuração do acordo inválido. 32 32
003 Itens do embarque não encontrados. 34 34
004 Dados da carta de crédito não encontrados. 42 42
005 Parâmetros do acordo inválidos. 31 31
006 Não existe regra de criação para esse certificado. 50 50
007 Erro 4 4
008 Alerta 6 6
009 OK 2 2
010 Gravação do certificado cancelada. 34 34
011 Certificado gravado com sucesso. 32 32
012 Inconsistências encontradas: 28 28
013 Selecione o diretório para download 35 35
014 Incoterm não parametrizado. 27 27
015 CNPJ da empresa em branco. 26 26
016 Razao social da empresa em branco. 34 34
017 Acordo comercial em branco. 27 27
018 Nome do importador em branco. 29 29
019 Endereço do importador em branco. 33 33
020 Cidade do importador em branco. 31 31
021 Verificar dados da carta de crédito. 36 36
022 País do importador em branco. 29 29
023 Verificar parâmetro de países para 34 34
024 Número da fatura do exportador em branco. 41 41
025 Data da fatura comercial em branco. 35 35
026 Unidade de medida não determinada. 34 34
027 Verificar denominação para acordo. 34 34
028 Verificar código de declaração para material: 45 45
029 Número da fatura do exportador em branco. 41 41
030 Quantidade de processos em branco. 34 34
031 Erro de conversão de moeda. 27 27
032 Gravação cancelada pelo usuário. 32 32
033 Endereço/país do exportador em branco. 38 38
034 Porto/local de embarque em branco. 34 34
035 Meio de transporte em branco. 29 29
036 Assinante em branco. 20 20
037 Nome do consignatário em branco. 32 32
038 País do consignatário em branco. 32 32
039 Verificar código para país: 27 27
040 Observação em branco. 21 21
041 . Verificar parâmetros NCM/NALADI. 34 34
042 Classificação do produto em branco: 35 35
043 Verificar norma para o NCM: 27 27
044 para material: 14 14
045 / fornecimento: 15 15
046 Verificar denominação para acordo 33 33
047 Endereço do produtor em branco. 31 31
048 Nome do produtor em branco. 27 27
049 Conduto / Rede de Transmissão 29 29
050 Entrada / Saída Ficta 21 21
051 Navegação Fluvial 17 17
052 Ferroviário 11 11
053 Lacustre 8 8
054 Marítimo 8 8
055 Meios Próprios 14 14
056 Postal 6 6
057 Meio de transporte em branco. 29 29
058 Rota/itinerário em branco. 26 26
059 em Parâmetros Gerais. 21 21
060 Parametrização de exit incorreta. Verificar parametrização de exit 66 66
060 Parametrização de exit incorreta. Verificar parametrização de exit 66 66
060 Parametrização de exit incorreta. Verificar parametrização de exit 66 66
060 Parametrização de exit incorreta. Verificar parametrização de exit 66 66
060 Parametrização de exit incorreta. Verificar parametrização de exit 66 66
060 Parametrização de exit incorreta. Verificar parametrização de exit 66 66