CE PLUS - Nota 009689

Módulo: DRAWBACK

Funcionalidade: CE Reports Formulários

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

Data/Hora Última Alteração: 17/02/2011 15:09:02

Descrição da Nota: DESENVOLVIMENTO DO DRAFT DO ATO CONCESSÓRIO.

Sintoma

Desenvolvimento do Draft do ato concessório.

 

 

Solução

Desenvolvimento do Draft do ato concessório.

 

Versões Tratadas

8.0


Pré-Requisitos

Produto:

Nota

Descrição

ADITIVO PARA MUDANÇA DA DATA DE VENCIMENTO FINAL.

IMPLEMENTAÇÃO PERCENTUAL DE ACRÉSCIMO.

NÃO REAPURAR INSUMOS QUANDO JÁ EXISTIR VINCULAÇÃO.

Informações Complementares

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

Nota Número 09689 Data: 14/01/2010 Hora: 14:11:10

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

 

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

Nota Número              : 09689

Categoria                : Melhoria

Prioridade               : Média

Versão PW.CE             : 8.0

Pacote                   : 00002

Agrupamento              : 00004

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

Referência às notas relacionadas:

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

 

09129  - 00001 - 8.0    - 00001  - ADITIVO PARA MUDANÇA DA DATA DE VENCIMENTO FINAL.

09638  - 00002 - 8.0    - 00002  - NÃO REAPURAR INSUMOS QUANDO JÁ EXISTIR VINCULAÇÃO.

09671  - 00003 - 8.0    - 00002  - IMPLEMENTAÇÃO PERCENTUAL DE ACRÉSCIMO.

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

DESENVOLVIMENTO DO DRAFT DO ATO CONCESSÓRIO.

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

Palavras Chave:

DESENVOLVIMENTO DO DRAFT DO ATO CONCESSÓRIO.

 

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

Objetos da nota:

CUAD /PWS/SAPMZYCI040

REPS /PWS/MZYCI040F02

REPS /PWS/MZYCI040I01

REPS /PWS/MZYCI040X01

REPS /PWS/ZYCRR040

TRAN /PWS/ZYCRR040

 

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

Modificações efetuadas em CUAD /PWS/SAPMZYCI040

 

* Incluído o botão 'DRAFT' na barra de botões do ST0200 ( O botão foi incluido logo após o botão

* VFALT).

 

Código de função:  DRAFT

Texto de função:   DRAFT

Nome do ícone:     ICON_PRINT

Texto informativo: Draft do ato concessório

Tecla de função:   CTRL - SHIFT - F11

 

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

Modificações efetuadas em REPS /PWS/MZYCI040F02

 

...

 /pws/zycie244-nrseqd.

    wa_zycit244 = /pws/zycie244.

  ENDIF.

ENDFORM.

FORM set_page2.

  ts_cabec2-activetab = pressed_tab_2a.

ENDFORM.

FORM trata_botoes2.

  CLEAR itab_botoes2. REFRESH itab_botoes2.

  IF v_tcode2 EQ '/PWS/ZYCI040_C'.

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

    itab_botoes2-bname = 'DRAFT'.

    APPEND itab_botoes2.

* << Fim da inclusão

    itab_botoes2-bname = 'ACRESC'.

    APPEND itab_botoes2.

    IF /pws/zycie244-aditivo IS INITIAL OR

       /pws/zycie244-status NE 'D'.

      itab_botoes2-bname = 'VFALT'.

      APPEND itab_botoes2.

    ENDIF.

    itab_botoes2-bname = 'EXCL'.

    APPEND itab_botoes2.

    itab_botoes2-bname = 'ATUALIZ'.

...

 

...

  ELSEIF /pws/zycie244-status NE 'D'.

    itab_botoes2-bname = 'COMPR'.

    APPEND itab_botoes2.

    itab_botoes2-bname = 'ENCER'.

    APPEND itab_botoes2.

  ENDIF.

  IF /pws/zycie244-modalidade NE 'I'.

    itab_botoes2-bname = 'ACRESC'.

    APPEND itab_botoes2.

    itab_botoes2-bname = 'DOC'.

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

    APPEND itab_botoes2.

  ELSE.

    itab_botoes2-bname = 'DRAFT'.

* << Fim da inclusão

    APPEND itab_botoes2.

  ENDIF.

ENDFORM.

FORM carrega_icone2.

  IF /pws/zycie244-importacao EQ 'X'.

    CALL FUNCTION 'ICON_CREATE'

         EXPORTING

              name                  = text-001

              text                  = text-003

              info                  = text-003

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI040I01

 

...

          LOOP AT itab_zycit427.

            CLEAR: itab_zycit427-esgotado.

            itab_zycit427-nrseqd = /pws/zycit244-nrseqd.

            itab_zycit427-saldo = itab_zycit427-qtd_iten.

            MODIFY itab_zycit427.

          ENDLOOP.

        ENDIF.

      ENDIF.

    WHEN 'ACRESC'.

      perform acrescimo.

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

    WHEN 'DRAFT'.

      v_seq = /pws/zycie244-nrseqd.

      SET PARAMETER ID '/PWS/ZYCIP435' FIELD v_seq.

      CALL TRANSACTION '/PWS/ZYCRR040' .                 "#EC CI_CALLTA

* << Fim da inclusão

  ENDCASE.

  CLEAR ok_code2.

ENDMODULE.

MODULE user_command_0200_exit INPUT.

  CASE ok_code2.

    WHEN 'ABORT'.

      PERFORM check_button_abort2.

  ENDCASE.

ENDMODULE.

MODULE trata_forecast INPUT.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI040X01

 

...

     v_icoreal1         TYPE icons-text,

       vltot_brl LIKE /pws/zycie246-vltot,

      v_tcode2           LIKE sy-tcode              .

DATA: v_icorealiz        TYPE icons-text   .

DATA: v_txtfrete(20) TYPE c   .

DATA: v_txtseguro(20) TYPE c   .

DATA v_ordena(132) TYPE c.

DATA v_exec TYPE c.

DATA fs_mexp2(20) TYPE c.

data: v_statusv type c.

* >> Início da inclusão:

DATA: v_seq LIKE /pws/zycie244-nrseqd.

* << Fim da inclusão

DATA: END OF COMMON PART.

 

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

Modificações efetuadas em REPS /PWS/ZYCRR040

*Desenvolvimento do report /PWS/ZYCRR040

 

*Características:

 

Título: CR - Draft do ato concessório

Idioma original: PT

Categoria: Programa executavel

Classe de desenvolvimento: /PWS/ZYCI

Aritmética em ponto fixo.

 

*Código fonte:

 

* --------------------------------------------------------------------

* PROCWORK Software

* Produto  : pw.CE

* Módulo   : CR - pw.CE Reports

* Descrição: Report gerador de ACE59

* Help Desk: (11) 5504-0270

* --------------------------------------------------------------------

* ESTE PROGRAMA NÃO DEVE SER ALTERADO SEM PRÉVIA CONSULTA

* --------------------------------------------------------------------

* Chamado      Data         Descrição

* --------------------------------------------------------------------

* 1759798      12/01/10   Codificação inicial

* --------------------------------------------------------------------

 

REPORT /pws/zycrr040 MESSAGE-ID /pws/zycrm.

 

* INCLUDES ------------------------------------------------------------*

 

INCLUDE: /pws/zycri004, " Up/download de arquivos xls

         /pws/zycri003, " Interface com o Excel

         /pws/zycri002. " Rotinas comuns

 

*tables

 

* TIPOS ---------------------------------------------------------------*

* Tipo da estrutura do cabeçalho

TYPES: BEGIN OF s_cabecalho                       .

TYPES: empresa        TYPE t001-bukrs             ,

       desc_emp       TYPE t001-butxt             ,

       local_neg      TYPE t001w-j_1bbranch       ,

       ender(100)     TYPE c                      ,

       subtipo(20)    TYPE c                      ,

       cgc(19)        TYPE c                      ,

       vltot_mi       TYPE /pws/zycit245-netpr_t  .

INCLUDE TYPE /pws/zycit244 AS zycit244            .

TYPES:  END OF s_cabecalho                        .

 

* Tipo da estrutura e tabela dos itens de exportação

 

TYPES: BEGIN OF s_itens_exp.

        INCLUDE STRUCTURE /pws/zycit247.

TYPES des_ncm(300) TYPE c.

TYPES: END OF s_itens_exp,

       t_itens_exp TYPE STANDARD TABLE OF s_itens_exp.

 

* Tipo da estrutura e tabela dos itens de importação

TYPES: BEGIN OF s_itens_imp.

        INCLUDE STRUCTURE /pws/zycit245.

TYPES des_ncm(300) TYPE c.

TYPES: END OF s_itens_imp,

       t_itens_imp TYPE STANDARD TABLE OF s_itens_imp.

 

* Tipo da estrutura e tabela dos itens de mercado interno

TYPES: BEGIN OF s_itens_mi.

        INCLUDE STRUCTURE /pws/zycit245.

TYPES des_ncm(300) TYPE c.

TYPES: END OF s_itens_mi,

       t_itens_mi TYPE STANDARD TABLE OF s_itens_mi.

 

* Sumarização por NCM

DATA: BEGIN OF itab_ncm OCCURS 0          .

DATA: j_1bnbm  LIKE /pws/zycit245-j_1bnbm ,

      um_ncm   LIKE /pws/zycit245-um_ncm  ,

      qtd_ncm  LIKE /pws/zycit245-qtd_ncm ,

      netpr_t  LIKE /pws/zycit245-netpr_t ,

      pctcomis LIKE /pws/zycit247-pctcomis,

      vl_scamb LIKE /pws/zycit247-vl_scamb.

DATA END OF itab_ncm                      .

 

* Descrição dos NCM's

DATA: BEGIN OF itab_desc_ncm OCCURS 0.

DATA: steuc  LIKE t604n-steuc,

      text1  LIKE t604n-text1 ,

      text2  LIKE t604n-text2 ,

      text3  LIKE t604n-text3 ,

      text4  LIKE t604n-text4 ,

      text5  LIKE t604n-text5 .

DATA END OF itab_desc_ncm.

 

* VARIÁVEIS -----------------------------------------------------------*

 

* Cabeçalho e itens

DATA: wa_cabecalho   TYPE s_cabecalho,

      v_filename(20) TYPE c          ,

      it_itens_exp   TYPE t_itens_exp,

      it_itens_imp   TYPE t_itens_imp,

      it_itens_mi    TYPE t_itens_mi .

 

* Parâmetros de geração de reports

DATA: wa_gen_param     TYPE /pws/zycrt012,

      wa_rep_param     TYPE /pws/zycrt013,

      it_matrix        TYPE t_matrix,

      it_report_fields TYPE t_rep_fields,

      p_repmod TYPE /pws/zycrt010-report_module VALUE 'D' ,

      p_report TYPE /pws/zycrt010-report_id VALUE 'DRAFT_AC'.

 

* Dados para o arquivo do excel

DATA: it_excel_content TYPE t_excel_content,

      it_sect_height   TYPE t_sect_height.

DATA: it_generation_options TYPE t_generation_options.

 

* TELA DE SELEÇÃO -----------------------------------------------------*

SELECTION-SCREEN BEGIN OF BLOCK b1.

 

PARAMETERS: p_nrseqd TYPE /pws/zycit244-nrseqd        OBLIGATORY

                                                      MODIF ID key.

PARAMETERS: p_ncm AS CHECKBOX.

 

SELECTION-SCREEN END OF BLOCK b1.

 

* PBO DA TELA DE SELEÇÃO ----------------------------------------------*

 

AT SELECTION-SCREEN OUTPUT.

 

INITIALIZATION.

 

  GET PARAMETER ID '/PWS/ZYCIP435' FIELD p_nrseqd.

 

START-OF-SELECTION.

 

* Seleção e preparação de dados do cabeçalho e itens

  PERFORM select_data

          USING

             p_nrseqd

          CHANGING

             wa_cabecalho

             it_itens_exp

             it_itens_imp

             it_itens_mi.

 

 

  IF wa_cabecalho IS INITIAL.

 

    MESSAGE e015(/pws/zycim) WITH text-003.

 

  ENDIF.

 

* Seleção de parâmetros para geração do report

  PERFORM select_parameters

          USING

             p_repmod

             p_report

             'P'

             wa_cabecalho-zycit244-bukrs

             ''

             ''

             ''

             ''

             ''

             ''

             ''

             ''

             ''

             ''

          CHANGING

             wa_gen_param

             wa_rep_param

             it_matrix[]

             it_report_fields[].

 

  IF wa_gen_param IS INITIAL

      OR wa_rep_param IS INITIAL

      OR it_matrix[] IS INITIAL.

 

    msg_module = p_repmod.

    msg_report = p_report.

    msg_langu  = 'P'.

    msg_bukrs  = wa_cabecalho-bukrs.

 

    MESSAGE e000.

 

  ENDIF.

 

* Criação das tabelas de dados para o report

  PERFORM create_excel_content_table

          USING

             it_itens_exp[]

             it_itens_imp[]

             it_itens_mi[]

             wa_rep_param

             it_matrix[]

             it_report_fields[]

          CHANGING

             wa_cabecalho

             it_excel_content[]

             it_sect_height[].

 

* Determinação do nome do arquivo do report

  CLEAR: v_filename.

  CONCATENATE 'DRAFT_AC' wa_cabecalho-zycit244-nrseqd INTO v_filename.

 

  PERFORM generate_file_name

          USING

             v_filename

             wa_gen_param

             wa_rep_param

          CHANGING

             v_file_name.

 

* Baixa o report em branco na máquina do frontend

  PERFORM download_file

          USING

             wa_rep_param

             v_file_name.

 

* Cria o report

  PERFORM create_report

          USING

             wa_gen_param-report_generator

             v_file_name

             'REPORT'

              ''

             it_excel_content[]

             it_sect_height[]

             it_generation_options[].

 

 

  LEAVE PROGRAM.

 

END-OF-SELECTION.

 

* --------------------------------------------------------------------

* Form select_data

* --------------------------------------------------------------------

* Objetivo: Selecionar os dados do report: cabeçalho, itens,

*           sub_itens, etc.

* --------------------------------------------------------------------

* Parâmetros:   ( --> Entrada ) ( <-- Saída ) ( <-> Tabelas )

* --------------------------------------------------------------------

* --> p_nrseq      Seqüencial do embarque

* <-- p_cabecalho  Dados do cabeçalho do report

*     p_t_itens    Dados de itens do report

* <-> <nenhum>

* --------------------------------------------------------------------

* Chamado     Data            Descrição

* --------------------------------------------------------------------

* 1759798      12/01/10   Codificação inicial

* --------------------------------------------------------------------

FORM select_data

     USING

        p_nrseqd TYPE /pws/zycit244-nrseqd

     CHANGING

        p_cabecalho      TYPE s_cabecalho

        p_t_itens_exp    TYPE t_itens_exp

        p_t_itens_imp    TYPE t_itens_imp

        p_t_itens_mi     TYPE t_itens_mi.

 

  DATA: wa_itens_exp LIKE LINE OF p_t_itens_exp,

        wa_itens_imp LIKE LINE OF p_t_itens_imp,

        wa_itens_mi LIKE LINE OF p_t_itens_mi.

 

  SELECT SINGLE *

      INTO p_cabecalho-zycit244

      FROM /pws/zycit244

      WHERE nrseqd = p_nrseqd.

  CHECK sy-subrc = 0.

 

  SELECT SINGLE bukrs butxt

      INTO (p_cabecalho-empresa, p_cabecalho-desc_emp)

      FROM t001

      WHERE bukrs = p_cabecalho-zycit244-bukrs.

 

  SELECT SINGLE j_1bbranch stras

  FROM t001w

  INTO (p_cabecalho-local_neg, p_cabecalho-ender)

  WHERE werks = p_cabecalho-zycit244-werks.

 

 

  WRITE p_cabecalho-zycit244-cnpj TO p_cabecalho-cgc

           USING EDIT MASK '__.___.___/____-__'.

 

  IF p_cabecalho-verd_ama EQ space.

    p_cabecalho-subtipo = text-005.

    CLEAR p_cabecalho-s_compqtd.

  ELSEIF p_cabecalho-verd_ama EQ 'X'.

    p_cabecalho-subtipo = text-006.

  ELSEIF p_cabecalho-verd_ama EQ 2.

    p_cabecalho-subtipo = text-007.

  ENDIF.

 

  SELECT *

        FROM  /pws/zycit247

         INTO TABLE p_t_itens_exp

         WHERE nrseqd EQ p_nrseqd.

 

  SELECT *

        FROM  /pws/zycit245

         INTO TABLE p_t_itens_imp

         WHERE nrseqd EQ p_nrseqd

         AND   nritem < 90000.

 

  SELECT *

        FROM  /pws/zycit245

         INTO TABLE p_t_itens_mi

         WHERE nrseqd EQ p_nrseqd

         AND   nritem > 90000.

 

 

  IF p_ncm NE space. " Sumariza por NCM

* Exportações

    LOOP AT p_t_itens_exp INTO wa_itens_exp.

      MOVE-CORRESPONDING wa_itens_exp TO itab_ncm.

      COLLECT itab_ncm.

    ENDLOOP.

    REFRESH p_t_itens_exp.

    LOOP AT itab_ncm.

      MOVE-CORRESPONDING itab_ncm TO wa_itens_exp.

      APPEND wa_itens_exp TO p_t_itens_exp.

    ENDLOOP.

* Importações

    CLEAR itab_ncm. REFRESH itab_ncm.

    LOOP AT p_t_itens_imp INTO wa_itens_imp.

      MOVE-CORRESPONDING wa_itens_imp TO itab_ncm.

      COLLECT itab_ncm.

    ENDLOOP.

    REFRESH p_t_itens_imp.

    LOOP AT itab_ncm.

      MOVE-CORRESPONDING itab_ncm TO wa_itens_imp.

      APPEND wa_itens_imp TO p_t_itens_imp.

    ENDLOOP.

* Mercado interno

    CLEAR itab_ncm. REFRESH itab_ncm.

    LOOP AT p_t_itens_mi INTO wa_itens_mi.

      MOVE-CORRESPONDING wa_itens_mi TO itab_ncm.

      COLLECT itab_ncm.

    ENDLOOP.

    REFRESH p_t_itens_mi.

    LOOP AT itab_ncm.

      MOVE-CORRESPONDING itab_ncm TO wa_itens_mi.

      APPEND wa_itens_mi TO p_t_itens_mi.

    ENDLOOP.

  ENDIF.

 

 

  IF NOT p_t_itens_exp[] IS INITIAL.

    SELECT steuc text1 text2 text3 text4 text5

    APPENDING TABLE itab_desc_ncm

    FROM t604n FOR ALL ENTRIES IN p_t_itens_exp

    WHERE spras = 'P'

    AND   land1 = 'BR'

    AND   steuc = p_t_itens_exp-j_1bnbm.

  ENDIF.

  IF NOT p_t_itens_imp[] IS INITIAL.

    SELECT steuc text1 text2 text3 text4 text5

    APPENDING TABLE itab_desc_ncm

    FROM t604n FOR ALL ENTRIES IN p_t_itens_imp

    WHERE spras = 'P'

    AND   land1 = 'BR'

    AND   steuc = p_t_itens_imp-j_1bnbm.

  ENDIF.

  IF NOT p_t_itens_mi[] IS INITIAL.

    SELECT steuc text1 text2 text3 text4 text5

    APPENDING TABLE itab_desc_ncm

    FROM t604n FOR ALL ENTRIES IN p_t_itens_mi

    WHERE spras = 'P'

    AND   land1 = 'BR'

    AND   steuc = p_t_itens_mi-j_1bnbm.

  ENDIF.

 

  LOOP AT p_t_itens_exp INTO wa_itens_exp.

    CLEAR itab_desc_ncm.

    READ TABLE itab_desc_ncm WITH KEY steuc = wa_itens_exp-j_1bnbm.

    CONCATENATE itab_desc_ncm-text1 itab_desc_ncm-text2

    itab_desc_ncm-text3 itab_desc_ncm-text4 itab_desc_ncm-text5

    INTO wa_itens_exp-des_ncm.

    MODIFY p_t_itens_exp FROM wa_itens_exp.

  ENDLOOP.

 

  LOOP AT p_t_itens_imp INTO wa_itens_imp.

    CLEAR itab_desc_ncm.

    READ TABLE itab_desc_ncm WITH KEY steuc = wa_itens_imp-j_1bnbm.

    CONCATENATE itab_desc_ncm-text1 itab_desc_ncm-text2

    itab_desc_ncm-text3 itab_desc_ncm-text4 itab_desc_ncm-text5

    INTO wa_itens_imp-des_ncm.

    MODIFY p_t_itens_imp FROM wa_itens_imp.

  ENDLOOP.

 

  LOOP AT p_t_itens_mi INTO wa_itens_mi.

    p_cabecalho-vltot_mi = p_cabecalho-vltot_mi + wa_itens_mi-netpr_t.

    CLEAR itab_desc_ncm.

    READ TABLE itab_desc_ncm WITH KEY steuc = wa_itens_mi-j_1bnbm.

    CONCATENATE itab_desc_ncm-text1 itab_desc_ncm-text2

    itab_desc_ncm-text3 itab_desc_ncm-text4 itab_desc_ncm-text5

    INTO wa_itens_mi-des_ncm.

    MODIFY p_t_itens_mi FROM wa_itens_mi.

  ENDLOOP.

 

ENDFORM.                    " select_data

* --------------------------------------------------------------------

* Chamado     Data            Descrição

* --------------------------------------------------------------------

* 1759798      12/01/10   Codificação inicial

* --------------------------------------------------------------------

FORM create_excel_content_table

     USING

        p_t_items_exp     TYPE table

        p_t_items_imp     TYPE table

        p_t_items_mi      TYPE table

        p_rep_param       TYPE /pws/zycrt013

        p_t_matrix        TYPE t_matrix

        p_t_report_fields TYPE t_rep_fields

     CHANGING

        p_header          TYPE s_cabecalho

        p_t_excel_content TYPE t_excel_content

        p_t_sect_height   TYPE t_sect_height.

 

  DATA: current_row  TYPE i VALUE 1,

        section_rows TYPE i.

 

  DATA: current_item         TYPE i VALUE 1,

        v_lines              TYPE i.

 

  DATA: filled_section_height TYPE f.

 

  DATA: subrc TYPE sy-subrc.

 

  DATA: v_linhacab  TYPE i,  "Linhas do cabeçalho

        v_linhaexp  TYPE i,  "Linhas EXP

        v_linhaimp  TYPE i,  "Linhas Imp

        v_linhami   TYPE i.  "Linhas MI

 

*Work area de itens

 

  PERFORM select_row_height_cache

  USING

      p_rep_param-spras

      p_rep_param-file_id

  CHANGING

      p_t_sect_height[].

 

 

  PERFORM get_section_rows

          USING

             'CAB'

             p_t_sect_height[]

          CHANGING

             v_linhacab.

 

  PERFORM get_section_rows

          USING

             'EXP'

             p_t_sect_height[]

          CHANGING

             v_linhaexp.

 

  PERFORM get_section_rows

          USING

             'IMP'

             p_t_sect_height[]

          CHANGING

             v_linhaimp.

 

  PERFORM get_section_rows

          USING

             'MI'

             p_t_sect_height[]

          CHANGING

             v_linhami.

 

 

  PERFORM append_new_section

          USING

             'CAB'

             current_row

          CHANGING

             p_t_excel_content[].

  PERFORM fill_header_fields

          USING

             p_header

             'CAB'

             current_row

             p_t_matrix[]

             p_t_report_fields[]

          CHANGING

             p_t_excel_content[].

 

  ADD v_linhacab TO current_row.

 

 

  PERFORM append_new_section

           USING

              'EXP'

              current_row

           CHANGING

              p_t_excel_content[].

 

  section_rows = current_row.

 

  SUBTRACT 1 FROM current_row.

 

  CLEAR: v_lines, current_item.

  DESCRIBE TABLE p_t_items_exp[] LINES v_lines.

  WHILE current_item <= v_lines.

 

*       Preenche campos de item de exportação

    PERFORM fill_items_fields

            USING

               p_t_items_exp[]

               'EXP'

               current_row

               p_t_matrix[]

               p_t_report_fields[]

               p_t_sect_height[]

               current_item

            CHANGING

               filled_section_height

               p_t_excel_content[]

               subrc.

    ADD 1 TO current_row.

    ADD 1 TO current_item.

 

  ENDWHILE.

 

  ADD v_linhaexp TO current_row.

 

  PERFORM append_new_section

           USING

              'IMP'

              current_row

           CHANGING

              p_t_excel_content[].

 

  section_rows = current_row.

 

  SUBTRACT 1 FROM current_row.

 

  CLEAR: v_lines, current_item.

  DESCRIBE TABLE p_t_items_imp[] LINES v_lines.

  WHILE current_item <= v_lines.

 

*       Preenche campos de item de importação

    PERFORM fill_items_fields

            USING

               p_t_items_imp[]

               'IMP'

               current_row

               p_t_matrix[]

               p_t_report_fields[]

               p_t_sect_height[]

               current_item

            CHANGING

               filled_section_height

               p_t_excel_content[]

               subrc.

    ADD 1 TO current_row.

    ADD 1 TO current_item.

 

  ENDWHILE.

 

  IF p_header-verd_ama NE space.

    ADD v_linhaimp TO current_row.

 

    PERFORM append_new_section

             USING

                'MI'

                current_row

             CHANGING

                p_t_excel_content[].

 

    section_rows = current_row.

 

    SUBTRACT 1 FROM current_row.

 

    CLEAR: v_lines, current_item.

    DESCRIBE TABLE p_t_items_mi[] LINES v_lines.

    WHILE current_item <= v_lines.

 

 

*       Preenche campos de item de mercado interno

      PERFORM fill_items_fields

              USING

                 p_t_items_mi[]

                 'MI'

                 current_row

                 p_t_matrix[]

                 p_t_report_fields[]

                 p_t_sect_height[]

                 current_item

              CHANGING

                 filled_section_height

                 p_t_excel_content[]

                 subrc.

      ADD 1 TO current_row.

      ADD 1 TO current_item.

 

    ENDWHILE.

  ENDIF.

ENDFORM.                    " create_excel_content_table

 

 

*Textos:

003 Ato Concessório não exite!

004 Total do NCM:

005 Normal

006 Verde-amarelo

007 Integrado

 

*Textos de seleção:

P_NCM Sumarizar por NCM

P_NRSEQD Nº Seq. Ato Concessório

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

Modificações efetuadas em TRAN /PWS/ZYCRR040

*Criar transação /PWS/ZYCRR040

 

Código da transação: /PWS/ZYCRR040

Texto breve: DB - Draft do ato concesório

Objeto de execução: Programa e tela de seleção (transação de report)

Programa: /PWS/ZYCRR040