CE PLUS - Nota 001801

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: DI

Data/Hora da Publicação: 24/07/2006 00:00:00

Data/Hora Última Alteração: 20/09/2011 17:22:09

Descrição da Nota: RATEIO DE SEGURO DA DI DIFERE DO RATEIO DO SISCOMEX

Sintoma

Não temos a opção de rateio pelo valor FOB, porém é este critério que o Siscomex utiliza para rateio

do Seguro. Com isso, os valores de seguro que o PW.CE calcula para a condição de venda, quando se

tratar de Custo e Frete sempre estarão diferentes dos calculados pelo Siscomex.

 

 

 

Solução

Nova Funcionalidade na /PWS/ZYCIT000 para que o cliente indique se quer o rateio do Seguro pelo

valor

do incoterm como é hoje, ou , caso esteja flegado, o rateio por FOB.

 

Versões Tratadas

6.0


Pré-Requisitos

Produto:

Nota

Descrição

AJUSTES NO DETALHE DO ITEM / ADIÇÃO DA DI

AJUSTES HOMOLOGAÇÃO DI - CÁLCULOS, DESPESAS, REGIMES

Informações Complementares

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

Nota Número 01801 Data: 24/07/2006 Hora: 10:37:36

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

 

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

Nota Número              : 01801

Categoria                : Melhoria

Prioridade               : Alta

Versão PW.CE             : 6.0

Pacote                   : 00024

Agrupamento              : 00123

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

Referência às notas relacionadas:

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

 

01602  - 00001 - 6.0    - 00023  - AJUSTES HOMOLOGAÇÃO DI - CÁLCULOS, DESPESAS, REGIMES

01716  - 00002 - 6.0    - 00024  - AJUSTES NO DETALHE DO ITEM / ADIÇÃO DA DI

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

RATEIO DE SEGURO DA DI DIFERE DO RATEIO DO SISCOMEX

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

Palavras Chave:

RATEIO DE SEGURO - DI - FOB - INCOTERM - SISCOMEX

 

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

Objetos da nota:

DTEL /PWS/ZYCIL842

FUGR /PWS/ZYCIGF1

REPS /PWS/MZYCI023F01

REPS /PWS/MZYCI023F03

REPS /PWS/MZYCI058F01

REPS /PWS/MZYCI058F03

TABD /PWS/ZYCIT000

TOBJ /PWS/ZYCIT000S

 

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

Modificações efetuadas em DTEL /PWS/ZYCIL842

 

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

Elemento de dados incluído: /PWS/ZYCIL842

Classe de desenvolvimento: /PWS/ZYGL

Idioma original: PT

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

"GL -Rat.Seguro no Local do Embarque"

Categoria de dados: Domínio

Domínio: FLAG

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

"RatSeg Fob"

Comprimento máximo do denominador médio: 20

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

"Rat.Seguro.Local Emb"

Comprimento máximo do denominador longo: 22

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

"Rat.Seg.Local Embarque"

Comprimento máximo do título: 22

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

"Rat.Seg.Local Embarque"

 

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

Modificações efetuadas em REPS /PWS/MZYCI023F01

 

...

  ENDIF.

  IF p_tipo NE 'B' OR t_ivmle IS INITIAL OR v_dit = 'N'.

    t_ivmle_d2 = t_ivmle = t_vmle * /pws/zycie100a-dttaxbem.

  ENDIF.

  IF v_idx EQ v_ipt AND v_ipt NE 1.

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

    IF v_dit NE 'N'.

      t_ivseg = s_stvr - s_stvr_aux.

      v_tot_seg = v_sgtofat - s_stvr_aux1.

    ELSE.

* << Fim da exclusão

      PERFORM valor_cfr USING p_tipo.

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

    IF /pws/zycit000-rat_seg_fob IS INITIAL.

* << Fim da inclusão

      CASE s_inco1_ci.

...

 

...

        WHEN 'CIF'.

          v_cfr = t_ivmle + t_ivfre.

        WHEN 'FOB'.

          v_cfr = t_ivmle.

      ENDCASE.

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

    ELSE.

      IF s_inco1_ci EQ 'CIF'.

        v_cfr = t_ivmle + t_ivfre.

      ELSE.

        v_cfr = t_ivmle.

      ENDIF.

    ENDIF.

* << Fim da inclusão

      IF NOT v_tcfr IS INITIAL.

        t_ivseg = itab_it-vlseg = ( v_cfr / ( v_tcfr ) ) * s_stvr.

        v_tot_seg = ( v_cfr / ( v_tcfr ) ) * v_sgtofat.

      ENDIF.

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

    ENDIF.

* << Fim da exclusão

  ELSE.

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

    IF v_dit NE 'N'.

      t_ivseg = ( t_vmle3 / v_tval3  ) * s_stvr.

      v_tot_seg = ( t_vmle3 / v_tval3  ) * v_sgtofat.

    ELSE.

* << Fim da exclusão

      PERFORM valor_cfr USING p_tipo.

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

    IF /pws/zycit000-rat_seg_fob IS INITIAL.

* << Fim da inclusão

      CASE s_inco1_ci.

...

 

...

        WHEN 'CIF'.

          v_cfr = t_ivmle + t_ivfre.

        WHEN 'FOB'.

          v_cfr = t_ivmle.

      ENDCASE.

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

    ELSE.

      IF s_inco1_ci EQ 'CIF'.

        v_cfr = t_ivmle + t_ivfre.

      ELSE.

        v_cfr = t_ivmle.

      ENDIF.

    ENDIF.

* << Fim da inclusão

      IF NOT v_tcfr IS INITIAL.

        t_ivseg = itab_it-vlseg = ( v_cfr / ( v_tcfr ) ) * s_stvr.

        v_tot_seg = ( v_cfr / ( v_tcfr ) ) * v_sgtofat.

      ENDIF.

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

    ENDIF.

* << Fim da exclusão

    IF p_tipo = 'I'.

      s_stvr_aux = s_stvr_aux + t_ivseg.

      s_stvr_aux1 = s_stvr_aux1 + v_tot_seg.

    ENDIF.

  ENDIF.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI023F03

 

...

  ENDLOOP.

ENDFORM.

FORM valor_cfr USING p_tipo.

  CLEAR: v_tcfr.

  s_fbvr_s_d = /pws/zycie085-vlfob * /pws/zycie085-ukursfob.

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

  IF /pws/zycit000-rat_seg_fob IS INITIAL.

* << Fim da inclusão

  CASE s_inco1_ci.

    WHEN 'C&F'.

      v_tcfr = s_fbvr_s_d + s_frvr.

    WHEN 'CIF'.

      v_tcfr = s_fbvr_s_d + s_frvr  .

      v_tcfr = v_tcfr - ( ( v_tsegfat - v_sgtofat  ) *

               /pws/zycie085-ukursfob ).

    WHEN 'FOB'.

      v_tcfr = s_fbvr_s_d.

  ENDCASE.

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

  ELSE.

    IF s_inco1_ci EQ 'CIF'.

        v_tcfr = s_fbvr_s_d + s_frvr  .

    ELSE.

        v_tcfr = s_fbvr_s_d.

    ENDIF.

  ENDIF.

* << Fim da inclusão

ENDFORM.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI058F01

 

...

    MOVE /pws/zycie100a-dttaxbem TO itab_it-dttaxbem .

  ENDIF.

  IF p_tipo NE 'B' OR t_ivmle IS INITIAL OR v_dit = 'N'.

    t_ivmle_d2 = t_ivmle = t_vmle * /pws/zycie100a-dttaxbem.

  ENDIF.

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

  .

  IF v_idx EQ v_ipt AND v_ipt NE 1.

    t_ivseg = ( t_vmle3 / v_tval2  ) * s_stvr.

    v_tot_seg = ( t_vmle3 / v_tval2  ) * v_sgtofat.

  ELSE.

* << Fim da inclusão

  PERFORM valor_cfr USING p_tipo.

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

  IF p_tipo = 'I' OR p_tipo = 'T'.

* << Fim da exclusão

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

    IF /pws/zycit000-rat_seg_fob IS INITIAL.

* << Fim da inclusão

    CASE s_inco1_ci.

      WHEN 'C&F'.

        v_cfr = t_ivmle + t_ivfre.

      WHEN 'CIF'.

        v_cfr = t_ivmle + t_ivfre.

      WHEN 'FOB'.

        v_cfr = t_ivmle.

    ENDCASE.

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

    ELSE.

     IF S_INCO1_CI EQ 'CIF'.

          v_cfr = t_ivmle + t_ivfre.

     ELSE.

          v_cfr = t_ivmle.

     ENDIF.

* << Fim da inclusão

  ENDIF.

  IF NOT v_tcfr IS INITIAL.

    t_ivseg = itab_it-vlseg = ( v_cfr / ( v_tcfr ) ) * s_stvr.

    v_tot_seg = ( v_cfr / ( v_tcfr ) ) * v_sgtofat.

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

    ENDIF.

  ENDIF.

  IF p_tipo = 'I'.

    s_stvr_aux = s_stvr_aux + t_ivseg.

    s_stvr_aux1 = s_stvr_aux1 + v_tot_seg.

* << Fim da inclusão

  ENDIF.

  CLEAR: t_ivdesp.

  LOOP AT itab_zycit049 WHERE baseii EQ 'X' AND NOT vlreal IS initial.

    IF v_idx EQ v_ipt AND v_ipt NE 1.

      IF itab_zycit049-divabs  = 'X'.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI058F03

 

...

      /pws/zycie093-collect - /pws/zycie093-ternacion.

      perform calc_conv_frete changing v_bltofat.

    when 'CIF'.

      perform: calc_conv_frete changing v_bltofat,

               calc_conv_seg   changing v_sgtofat.

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

      v_tdif = v_tfrefat - v_bltofat +

               v_tsegfat - v_sgtofat.

* << Fim da exclusão

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

      v_tdif = v_tfrefat - v_bltofat .

* << Fim da inclusão

      v_bltofat = /pws/zycie093-prepaid +

      /pws/zycie093-collect - /pws/zycie093-ternacion.

      perform calc_conv_frete changing v_bltofat.

  endcase.

  clear v_ntgew.

...

 

...

  endloop.

endform.

form valor_cfr using p_tipo.

  clear: v_tcfr.

  s_fbvr_s_d = /pws/zycie085-vlfob * /pws/zycie085-ukursfob.

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

  IF /pws/zycit000-rat_seg_fob IS INITIAL.

* << Fim da inclusão

  case s_inco1_ci.

    when 'C&F'.

      v_tcfr = s_fbvr_s_d + s_frvr.

    when 'CIF'.

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

      v_tcfr = s_fbvr_s_d + s_frvr.

* << Fim da exclusão

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

        v_tcfr = s_fbvr_s_d + s_frvr  .

* << Fim da inclusão

      v_tcfr = v_tcfr - ( ( v_tsegfat - v_sgtofat  ) *

               /pws/zycie085-ukursfob ).

    when 'FOB'.

      v_tcfr = s_fbvr_s_d.

  endcase.

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

  ELSE.

    IF s_inco1_ci EQ 'CIF'.

        v_tcfr = s_fbvr_s_d + s_frvr  .

    ELSE.

        v_tcfr = s_fbvr_s_d.

    ENDIF.

  ENDIF.

* << Fim da inclusão

endform.

...

 

...

      endif.

      call transaction '/PWS/ZYCI003_A' using itab_bdc

                             mode  v_modo

                             update 'S'

                             messages into itab_msg.

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

      DATA: BEGIN OF itab_zycbt117 OCCURS 0.

       INCLUDE STRUCTURE /pws/zycbt117.

      DATA: END OF itab_zycbt117.

* << Fim da inclusão

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

      if sy-subrc eq 0.

* << Fim da exclusão

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

      COMMIT WORK.

* << Fim da inclusão

        select * from /pws/zycit132

                 into table itab_132

                 where nrseq eq /pws/zycie006-nrseq.

        if sy-subrc eq 0.

          loop at itab_132 where belnr_p is initial.

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

            message w015 with text-206 text-207.

* << Fim da exclusão

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

          MESSAGE i015 WITH text-206 text-207.

* << Fim da inclusão

            exit.

          endloop.

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

        IF sy-subrc NE 0.

          MESSAGE i015 WITH text-225.

        ENDIF.

        SELECT * FROM /pws/zycbt117

             INTO TABLE itab_zycbt117

             FOR ALL ENTRIES IN itab_zycit003

             WHERE ebeln = itab_zycit003-ebeln

               AND slpgant > 0

               AND status NE 'E'.

        IF sy-subrc EQ 0.

          MESSAGE i015 WITH text-224.

        ENDIF.

* << Fim da inclusão

        else.

          select single belnr_p from /pws/zycit006

                 into v_belnr_p

                 where nrseq eq /pws/zycie006-nrseq.

          if v_belnr_p is initial.

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

            message w015 with text-206 text-207.

* << Fim da exclusão

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

          MESSAGE i015 WITH text-206 text-207.

        ELSE.

          MESSAGE i015 WITH text-225.

          SELECT * FROM /pws/zycbt117

               INTO TABLE itab_zycbt117

               FOR ALL ENTRIES IN itab_zycit003

               WHERE ebeln = itab_zycit003-ebeln

                 AND slpgant > 0

                 AND status NE 'E'.

          IF sy-subrc EQ 0.

            MESSAGE i015 WITH text-224.

* << Fim da inclusão

          endif.

        endif.

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

      else.

        message w015 with text-206 text-207.

* << Fim da exclusão

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

        itab_zycit006-belnr_p = v_belnr_p.

        MODIFY itab_zycit006.

* << Fim da inclusão

      endif.

    endif.

  endloop.

endform.

...

 

 

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

Modificações efetuadas em TABD /PWS/ZYCIT000

 

*Criado o campo RAT_SEG_FOB

 

MODIFICAR TABELA TRANSPARENTE: /PWS/ZYCIT000

DESCRIÇÃO BREVE: CI - Param. Gerais de Importação

 

CAMPOS NOVOS

 

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

 

RAT_SEG_FOB     /PWS/ZYCIL842

 

 

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

Modificações efetuadas em TOBJ /PWS/ZYCIT000S

 

MODIFICAR VISÃO DA TABELA /PWS/ZYCIT000

 

INDICAÇÕES TÉCNICAS PARA DIÁLOGO

 

GRUPO DE AUTORIZAÇÃO: ZYCE

OBJETO AUTORIZAÇÃO:   S_TABU_DIS

GRUPO DE FUNÇÕES:     /PWS/ZYCIGF1

CL. DESENVOLVIMENTO:  /PWS/ZYCI

 

TELAS DE ATUALIZAÇÃO

 

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

                       (X) - 2 NÍVEIS

Nº TELA AUTORIZAÇÃO:   TELA SÍNTESE:    555

                       TELA INDIVIDUAL: 5

 

INDICAÇÕES PARA TRASNPORTE DE DADOS DE DIÁLOGO

 

ROTINA DE REGISTRO:    (X) - ROTINA REG. STANDARD

                       (_) - ROTINA REG. INDIVIDUAL