CE PLUS - Nota 011494

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Nota Fiscal

Data/Hora da Publicação: 24/10/2011 15:37:23

Data/Hora Última Alteração: 24/10/2011 15:37:23

Descrição da Nota: ACRESCENTAR TRATAMENTO PARA LINHA DO II NA NF.

Sintoma

Acrescentar tratamento para linha do II na NF. NOte 1616778 - NF-e: NT2011/004 (SAP),

 

 

Solução

Fazer tratamento para destacar linha do II na NF e retirar do campo despesas quando estiver

parametrizado na /PWS/ZYCIT398

 

Versões Tratadas

8.0


Pré-Requisitos

Produto:

Nota

Descrição

NÃO APRESENTA A LINHA DO COFINS NA NF REMESSA

VALOR DE FRETE E SEGURO COM DIFERENÇA DE CENTAVOS

LEI FISCAL REFERENTE PIS/COFINS NA NOTA FISCAL

TRAMENTO PARA DIFERENÇA DE CENTAVOS DEVIDO RATEIO DE DESPESAS

NF GLOBAL ESTA COM UMA DIFERENÇA DE 0,50 ENTRE A BASE DO ICMS E O TOTAL

O VALOR TOTAL DA NOTA DE REMESSA ESTÁ DIFERENTE DA GLOBAL

PREENCHE LEI DE PIS E COFINS SEMPRE QUE PARAMETRIZADO.

NA CRIAÇÃO DA NF DE REMESSA, O IPI NÃO OBDECE PARÂMETRO DA /PWS/ZYCIT033

AJUSTE PARA LEVAR A BASE DE IPI PARA NOTA FISCAL DE REMESSA.

LEGISLAÇÃO PARA DESENVOLVIMENTO DE ICMS ST NA DI E NF.

Informações Complementares

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

Nota Número 11494 Data: 29/09/2011 Hora: 08:22:48

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

 

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

Nota Número              : 11494

Categoria                : Melhoria

Prioridade               : Alta

Versão PW.CE             : 8.0

Pacote                   : 00009

Agrupamento              : 00087

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

Referência às notas relacionadas:

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

 

01547  - 00002 - 6.0    - 00023  - NF GLOBAL ESTA COM UMA DIFERENÇA DE 0,50 ENTRE A BASE DO ICMS E O

01580  - 00001 - 6.0    - 00023  - ERRO NO SEGURO DA NF EM JPY.

02112  - 00003 - 6.0    - 00024  - NA CRIAÇÃO DA NF DE REMESSA, O IPI NÃO OBDECE PARÂMETRO DA /PWS/Z

02780  - 00004 - 6.0    - 00026  - AJUSTE PARA LEVAR A BASE DE IPI PARA NOTA FISCAL DE REMESSA.

03588  - 00005 - 7.0    - 00001  - LEI FISCAL REFERENTE PIS/COFINS NA NOTA FISCAL

03667  - 00006 - 7.0    - 00001  - PREENCHE LEI DE PIS E COFINS SEMPRE QUE PARAMETRIZADO.

08149  - 00007 - 7.0    - 00008  - VALOR DE FRETE E SEGURO COM DIFERENÇA DE CENTAVOS

08953  - 00008 - 8.0    - 00001  - TRAMENTO PARA DIFERENÇA DE CENTAVOS DEVIDO RATEIO DE DESPESAS

09430  - 00009 - 8.0    - 00001  - O VALOR TOTAL TOTAL DA NOTA DE REMESSA ESTÁ DIFERENTE DA GLOBAL

11157  - 00010 - 8.0    - 00007  - LEGISLAÇÃO PARA DESENVOLVIMENTO DE ICMS ST NA DI E NF.

11227  - 00011 - 8.0    - 00007  - NÃO APRESENTA A LINHA DO COFINS NA NF REMESSA

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

ACRESCENTAR TRATAMENTO PARA LINHA DO II NA NF.

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

Palavras Chave:

LINHA DO II - DESTACADO - NF - LEGISLAÇÃO.

 

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

Objetos da nota:

DTEL /PWS/ZYGLL1436

DTEL /PWS/ZYGLL1437

FUNC /PWS/ZYCI_TRANSACAO_J1B1N

REPS /PWS/MZYCI016F01

TABD /PWS/ZYCEE007

TABD /PWS/ZYCIT398

TOBJ /PWS/ZYCIT398S

 

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

Modificações efetuadas em DTEL /PWS/ZYGLL1436

 

 

CRIAR ELEMENTO DE DADOS: /PWS/ZYGLL1436

DESCRIÇÃO BREVE: "CI  - Lei PIS"

 

DEFINIÇÃO

 

CATEGORIA DE DADOS:

   (x) - TIPO INSTALADO     CTG. DADOS: CHAR

         CUMPRIMEN.3 DECIMAIS.________

 

 

DENOM. DE CAMPO:

 

BREVE : 07  "Lei PIS"

MÉDIO : 07  "Lei PIS"

LONGA : 07  "Lei PIS"

TÍTULO: 07  "Lei PIS"

 

 

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

Modificações efetuadas em DTEL /PWS/ZYGLL1437

 

 

CRIAR ELEMENTO DE DADOS: /PWS/ZYGLL1437

DESCRIÇÃO BREVE: "CI - Lei Cofins"

 

DEFINIÇÃO

 

CATEGORIA DE DADOS:

   (x) - TIPO INSTALADO     CTG. DADOS: CHAR

         CUMPRIMEN.3 DECIMAIS.________

 

 

DENOM. DE CAMPO:

 

BREVE : 10  "Lei Cofins"

MÉDIO : 10  "Lei Cofins"

LONGA : 10  "Lei Cofins"

TÍTULO: 10  "Lei Cofins"

 

 

 

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

Modificações efetuadas em FUNC /PWS/ZYCI_TRANSACAO_J1B1N

 

...

 

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

DaTa:

    v_othbas_ii(17),

    v_base_ii(15),

    v_taxval_ii(15),

    v_iiexcbas(20),

    v_aliqii(8).

* << Fim da inclusão

...

 

...

           t_itens-st_excbas TO v_stexcbas  CURRENCY  t_itens-waers,

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

           t_itens-rate_st   TO v_aliqst    CURRENCY  t_itens-waers.

* << Fim da exclusão

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

               t_itens-rate_st   TO v_aliqst    CURRENCY  t_itens-waers,

              t_itens-othbas_ii  TO v_othbas_ii CURRENCY  t_itens-waers,

              t_itens-base_ii    TO v_base_ii   CURRENCY  t_itens-waers,

              t_itens-taxval_ii  TO v_taxval_ii CURRENCY  t_itens-waers,

              t_itens-ii_excbas  TO v_iiexcbas  CURRENCY  t_itens-waers,

              t_itens-rate_ii    TO v_aliqii    CURRENCY  t_itens-waers.

* << Fim da inclusão

      PERFORM bdc_campo  USING:

             'J_1BDYSTX-TAXTYP(01)'    t_itens-taxtyp,

             'J_1BDYSTX-BASE(01)'      v_base,

             'J_1BDYSTX-RATE(01)'      v_aliqicms,

...

 

...

             'J_1BDYSTX-RATE(05)'      v_aliqst,

             'J_1BDYSTX-TAXVAL(05)'    v_taxval_st,

             'J_1BDYSTX-EXCBAS(05)'    v_stexcbas,

             'J_1BDYSTX-OTHBAS(05)'    v_othbas_st,

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

                   'J_1BDYSTX-TAXTYP(06)'    t_itens-taxtyp_ii,

                   'J_1BDYSTX-BASE(06)'      v_base_ii,

                   'J_1BDYSTX-RATE(06)'      v_aliqii,

                   'J_1BDYSTX-TAXVAL(06)'    v_taxval_ii,

                   'J_1BDYSTX-EXCBAS(06)'    v_iiexcbas,

                   'J_1BDYSTX-OTHBAS(06)'    v_othbas_ii,

* << Fim da inclusão

             v_linesel                 'X',

             'BDC_OKCODE'              '=ITEM'.

      IF NOT v_lines = v_tabix.

        PERFORM bdc_tela USING 'SAPLJ1BB2' '3000'.

        PERFORM bdc_campo  USING:

               'BDC_OKCODE'              '=ADIT'.

      ENDIF.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI016F01

 

...

        v_vlseg = itab_zycit036_di-vlmov.

        PERFORM trata_decimais USING itab_zycit036_di-waers_mov

                              CHANGING v_vlseg.

        it_zycee007-netins = v_vlseg.

      ENDIF.

    ELSEIF itab_zycit036-codigo = 'II'.

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

      READ TABLE itab_zycit398 WITH KEY tributos = 'II'.

      IF sy-subrc NE 0 .

* << Fim da inclusão

      IF /pws/zycit062-arbase EQ 'X' AND

        NOT itab_zycit036_di-vlreal IS INITIAL.

        v_despesas         = itab_zycit100-vlii.

      ELSE.

        v_despesas         = itab_zycit036-vlreal.

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

        ENDIF.

* << Fim da inclusão

      ENDIF.

    ENDIF.

...

 

...

        NOT itab_zycit036_di-vlmov IS INITIAL.

        it_zycee007-netins =

          ( itab_zycit100-vlseg / itab_zycit044-menge ) *

                                     itab_zycit044-qtd_item.

      ELSE.

        it_zycee007-netins =

            ( itab_zycit036_di-vlmov / itab_zycit044-menge ) *

                                        itab_zycit044-qtd_item.

      ENDIF.

    ELSEIF itab_zycit036-codigo = 'II'.

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

      READ TABLE itab_zycit398 WITH KEY tributos = 'II'.

      IF sy-subrc NE 0.

* << Fim da inclusão

      IF /pws/zycit062-arbase EQ 'X' AND

        NOT itab_zycit036_di-vlreal IS INITIAL.

        v_despesas =

          ( itab_zycit100-vlii / itab_zycit044-menge ) *

                                     itab_zycit044-qtd_item.

      ELSE.

        v_despesas         = itab_zycit036-vlreal /

          itab_zycit044-menge * itab_zycit044-qtd_item.

      ENDIF.

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

      ENDIF.

* << Fim da inclusão

    ELSEIF itab_zycit036-codigo = 'IPI'.

      IF /pws/zycit062-arbase EQ 'X' AND

        NOT itab_zycit036_di-vlreal IS INITIAL.

        v_ipi =

          ( itab_zycit100-vlipi / itab_zycit044-menge ) *

                                     itab_zycit044-qtd_item.

      ELSE.

        v_ipi              = itab_zycit036-vlreal /

          itab_zycit044-menge * itab_zycit044-qtd_item.

      ENDIF.

...

 

...

FORM itens_nfnew.

 

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

  SELECT * FROM /pws/zycit398

   INTO TABLE itab_zycit398

    WHERE bukrs EQ /pws/zycie041-bukrs

      AND clnf  EQ itab_zycit033-clnf

      AND tpnf  EQ itab_zycit033-tpnf

      AND ( tributos EQ 'PIS' OR

            tributos EQ 'COFINS' OR

            tributos EQ 'II' OR

            tributos EQ 'ICMSST' ).

* << Fim da inclusão

...

 

...

        ENDIF.

        IF itab_zycit100-codregtriicms EQ '3'.

          it_zycee007-p_excbas = itab_zycit100-vlicms.

        ENDIF.

    ENDCASE.

  ENDIF.

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

  SELECT * FROM /pws/zycit398

   INTO TABLE itab_zycit398

    WHERE bukrs EQ /pws/zycie041-bukrs

      AND clnf  EQ itab_zycit033-clnf

      AND tpnf  EQ itab_zycit033-tpnf

      AND ( tributos EQ 'PIS' OR

            tributos EQ 'COFINS' OR

            tributos EQ 'ICMSST' ).

* << Fim da exclusão

  READ TABLE itab_zycit398 WITH KEY tributos = 'PIS'.

  IF sy-subrc EQ 0.

    it_zycee007-leipis = itab_zycit398-leipis.

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

    it_zycee007-taxtyp_pis = itab_zycit398-taxtyp.

  ELSE.

    CLEAR it_zycee007-taxtyp_pis.

* << Fim da inclusão

  ENDIF.

  IF NOT itab_zycit100-vlpis IS INITIAL.

    CLEAR itab_zycit036.

    READ TABLE itab_zycit036 WITH KEY nrseq  = itab_zycit042-nrseq

                                      ebeln  = itab_zycit042-ebeln

                                      ebelp  = itab_zycit042-ebelp

                                      codigo = 'PIS'.

    it_zycee007-taxval_pis = itab_zycit036-vlreal.

  ELSE.

    CLEAR it_zycee007-taxval_pis .

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

  ENDIF.

  READ TABLE itab_zycit398 WITH KEY tributos = 'PIS'.

  IF sy-subrc EQ 0.

    it_zycee007-taxtyp_pis = itab_zycit398-taxtyp.

  ELSE.

    CLEAR it_zycee007-taxtyp_pis.

* << Fim da exclusão

  ENDIF.

  IF NOT it_zycee007-taxval_pis IS INITIAL.

    it_zycee007-rate_pis   = itab_zycit100-advalpis.

  ENDIF.

  CASE itab_zycit398-tribpiscof.

...

 

...

    WHEN 3.

      PERFORM verifica_montante.

      v_montante1 = itab_zycit100-basepis.

      it_zycee007-othbas_pis = v_montante1.

  ENDCASE.

  READ TABLE itab_zycit398 WITH KEY tributos = 'COFINS'.

  IF sy-subrc EQ 0.

    it_zycee007-leicofins = itab_zycit398-leicofins.

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

    it_zycee007-taxtyp_cof = itab_zycit398-taxtyp.

  ELSE.

    CLEAR it_zycee007-taxtyp_cof.

* << Fim da inclusão

  ENDIF.

  IF NOT itab_zycit100-vlcofins IS INITIAL.

    CLEAR itab_zycit036.

    READ TABLE itab_zycit036 WITH KEY nrseq  = itab_zycit042-nrseq

                                      ebeln  = itab_zycit042-ebeln

                                      ebelp  = itab_zycit042-ebelp

                                      codigo = 'COFINS'.

    it_zycee007-taxval_cof = itab_zycit036-vlreal.

  ELSE .

    CLEAR it_zycee007-taxval_cof .

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

  ENDIF.

  READ TABLE itab_zycit398 WITH KEY tributos = 'COFINS'.

  IF sy-subrc EQ 0.

    it_zycee007-taxtyp_cof = itab_zycit398-taxtyp.

  ELSE.

    CLEAR it_zycee007-taxtyp_cof.

* << Fim da exclusão

  ENDIF.

  IF NOT it_zycee007-taxval_cof IS INITIAL.

    it_zycee007-rate_cof   = itab_zycit100-advalcofins.

  ENDIF.

  CASE itab_zycit398-tribpiscof.

    WHEN 1.

      PERFORM verifica_montante.

      v_montante1 = itab_zycit100-basecofins.

      it_zycee007-base_cof = v_montante1.

    WHEN 2.

      PERFORM verifica_montante.

      v_montante1 = itab_zycit100-basecofins.

      it_zycee007-cof_excbas = v_montante1.

      CLEAR it_zycee007-taxval_cof.

    WHEN 3.

      PERFORM verifica_montante.

      v_montante1 = itab_zycit100-basecofins.

      it_zycee007-othbas_cof = v_montante1.

  ENDCASE.

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

  READ TABLE itab_zycit398 WITH KEY tributos = 'COFINS'.

  IF sy-subrc EQ 0.

    it_zycee007-leicofins = itab_zycit398-leicofins.

  ENDIF.

* << Fim da exclusão

  READ TABLE itab_zycit398 WITH KEY tributos = 'ICMSST'.

  IF sy-subrc EQ 0.

    IF NOT itab_zycit100-vlcofins IS INITIAL.

      CLEAR itab_zycit036.

      READ TABLE itab_zycit036 WITH KEY nrseq  = itab_zycit042-nrseq

...

 

...

      WHEN 3.

        PERFORM verifica_montante.

        v_montante1 = itab_zycit100-baseicms_st.

        it_zycee007-othbas_st = v_montante1.

    ENDCASE.

  ELSE.

    CLEAR it_zycee007-taxtyp_st.

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

  ENDIF.

  READ TABLE itab_zycit398 WITH KEY tributos = 'II'.

  IF sy-subrc EQ 0.

    it_zycee007-taxtyp_ii = itab_zycit398-taxtyp.

  ELSE.

    CLEAR it_zycee007-taxtyp_ii.

  ENDIF.

  IF NOT itab_zycit100-vlii IS INITIAL.

    CLEAR itab_zycit036.

    READ TABLE itab_zycit036 WITH KEY nrseq  = itab_zycit042-nrseq

                                      ebeln  = itab_zycit042-ebeln

                                      ebelp  = itab_zycit042-ebelp

                                      codigo = 'II'.

    it_zycee007-taxval_ii = itab_zycit036-vlreal.

  ELSE .

    CLEAR it_zycee007-taxval_ii .

  ENDIF.

  IF NOT it_zycee007-taxval_ii IS INITIAL.

    it_zycee007-rate_ii   = itab_zycit003-advalii.

* << Fim da inclusão

  ENDIF.

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

  CASE itab_zycit398-tribpiscof.

    WHEN 1.

      PERFORM verifica_montante.

      v_montante1 = itab_zycit100-baseii.

      it_zycee007-base_ii = v_montante1.

    WHEN 2.

      PERFORM verifica_montante.

      v_montante1 = itab_zycit100-baseii.

      it_zycee007-ii_excbas = v_montante1.

      CLEAR it_zycee007-taxval_ii.

    WHEN 3.

      PERFORM verifica_montante.

      v_montante1 = itab_zycit100-baseii.

      it_zycee007-othbas_ii = v_montante1.

  ENDCASE.

* << Fim da inclusão

  IF ( NOT /pws/zycie001-modalidade EQ '05' AND

     NOT /pws/zycie001-tpdecl EQ 'DI' ) OR

     itab_zycit480[] IS INITIAL.

    IF /pws/zycit062-flag_icms = 'X' AND /pws/zycit001-meioemba NE 'PS'.

      IF NOT v_basred IS INITIAL.

        IF /pws/zycit062-tred IS INITIAL.

          v_basred = '100'.

        ENDIF.

...

 

...

  DATA: itab_zycit398 LIKE /pws/zycit398 OCCURS 0 WITH HEADER LINE.

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

    SELECT * FROM /pws/zycit398

     INTO TABLE itab_zycit398

      WHERE bukrs EQ /pws/zycie041-bukrs

        AND clnf  EQ itab_zycit033-clnf

        AND tpnf  EQ itab_zycit033-tpnf

        AND ( tributos EQ 'PIS' OR

              tributos EQ 'COFINS' OR

              tributos EQ 'II' OR

              tributos EQ 'ICMSST' ).

* << Fim da inclusão

...

 

...

        ELSE.

          it_zycee007-taxval = v_icms.

        ENDIF.

        v_base = it_zycee007-othbas.

    ENDCASE.

    it_zycee007-taxtyp  = itab_zycit033-taxtyp.

    it_zycee007-taxtyp2 = itab_zycit033-taxtyp2.

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

    SELECT * FROM /pws/zycit398

     INTO TABLE itab_zycit398

      WHERE bukrs EQ /pws/zycie041-bukrs

        AND clnf  EQ itab_zycit033-clnf

        AND tpnf  EQ itab_zycit033-tpnf

        AND ( tributos EQ 'PIS' OR

              tributos EQ 'COFINS' OR

              tributos EQ 'ICMSST' ).

* << Fim da exclusão

    READ TABLE itab_zycit398 WITH KEY tributos = 'PIS'.

    IF sy-subrc EQ 0.

      it_zycee007-leipis = itab_zycit398-leipis.

    ENDIF.

    READ TABLE itab_zycit398 WITH KEY tributos = 'COFINS'.

    IF sy-subrc EQ 0.

      it_zycee007-leicofins = itab_zycit398-leicofins.

    ENDIF.

...

 

...

        WHEN 3.

          v_montante1 = itab_zycit100-baseicms_st.

          it_zycee007-othbas_st = v_montante1.

      ENDCASE.

    ELSE.

      CLEAR it_zycee007-taxtyp_st.

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

    ENDIF.

    READ TABLE itab_zycit398 WITH KEY tributos = 'II'.

    IF sy-subrc EQ 0.

      it_zycee007-taxtyp_ii = itab_zycit398-taxtyp.

    ELSE.

      CLEAR it_zycee007-taxtyp_ii.

    ENDIF.

    IF NOT it_zycee007-taxval_ii IS INITIAL.

      it_zycee007-rate_ii   = itab_zycit003-advalii.

* << Fim da inclusão

    ENDIF.

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

    CASE itab_zycit398-tribpiscof.

      WHEN 1.

        v_montante1 = itab_zycit100-baseii.

        it_zycee007-base_ii = v_montante1.

      WHEN 2.

        v_montante1 = itab_zycit100-baseii.

        it_zycee007-ii_excbas = v_montante1.

        CLEAR it_zycee007-taxval_ii.

        CLEAR it_zycee007-rate_ii.

      WHEN 3.

        v_montante1 = itab_zycit100-baseii.

        it_zycee007-othbas_ii = v_montante1.

    ENDCASE.

* << Fim da inclusão

    CASE itab_zycit033-tribipi.

      WHEN 1.

        IF NOT itab_zycit100-baseipi IS INITIAL.

          it_zycee007-base2 = itab_zycit100-baseipi /

             itab_zycit044-menge * itab_zycit044-qtd_item .

...

 

 

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

Modificações efetuadas em TABD /PWS/ZYCEE007

 

Acrescentado os campos abaixo, no final da tabela:

 

 

Campos

 

     Nome campo Elem.dados    Tab.verif. N CtDt Comp. Grupo

 

     TAXTYP_II  J_1BTAXTYP                 CHAR     4

     II_EXCBAS  J_1BEXCBAS                 CURR    15

     OTHBAS_II  J_1BOTHBAS                 CURR    15

     BASE_II    J_1BBASE                   CURR    15

     RATE_II    J_1BTXRATE                 DEC      6

     TAXVAL_II  J_1BTAXVAL                 CURR    15

 

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

Modificações efetuadas em TABD /PWS/ZYCIT398

 

Alterado os elementos de dados dos campos abaixo:

 

 

Campos

 

     Nome campo Chv Elem.dados     Tab.verif.    N CtDt Comp. Grupo

 

*PARA:

     LEIPIS         /PWS/ZYGLL1436                 CHAR     3

*DE:

     LEIPIS         CHAR3                          CHAR     3

*PARA:

     LEICOFINS      /PWS/ZYGLL1437                 CHAR     3

*DE:

     LEICOFINS      CHAR3                          CHAR     3

 

 

 

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

Modificações efetuadas em TOBJ /PWS/ZYCIT398S

 

Gerar visão de atualização de tabela /PWS/ZYCIT398

 

Na SE54, selecionar objetos gerados. Clicar no lapis e selecionar todas as opções. Mandar gerar.