CE PLUS - Nota 005706

Módulo: DOC. EXPORTAÇÃO

Funcionalidade: Parâmetros

Data/Hora da Publicação: 22/01/2008 00:00:00

Data/Hora Última Alteração: 04/03/2010 17:27:58

Descrição da Nota: RECUPERAÇÃO DE DESCRIÇÃO DE LOCAL NO CADASTRO DE TRANSIT TIME.

Sintoma

 

Cadastro de transit time não recupera descrição do local de embarque e destino.

 

Solução

 

Implementação de novas rotinas de recuperação da descrição no cadastro e na ajuda de pesquisa de

transit time.

Versões Tratadas

7.0

Informações Complementares

 

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

Nota Número 05706 Data: 22/01/2008 Hora: 12:05:32

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

 

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

Nota Número              : 05706

Categoria                : Melhoria

Prioridade               : Baixa

Versão PW.CE             : 7.0

Pacote                   : 00004

Agrupamento              : 00031

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

RECUPERAÇÃO DE DESCRIÇÃO DE LOCAL NO CADASTRO DE TRANSIT TIME.

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

Palavras Chave:

DESCRIÇÃO LOCAL CADASTRO TRANSIT TIME.

 

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

Objetos da nota:

FUGR /PWS/ZYCEGF1

PROG /PWS/LZYCEGF5TOP

FUNC /PWS/ZYCE_SHLP_EXIT_DESC_LOCAL

SHLD /PWS/ZYCEA288

TABD /PWS/ZYCET291

VIEW /PWS/ZYCEV291

 

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

Modificações efetuadas em PROG /PWS/LZYCEGF5TOP

 

FUNCTION-POOL /pws/zycegf5.

TABLES: /pws/zycee085.

* >> Início da inclusão:

TYPES:

  seahlpres_tab TYPE STANDARD TABLE OF seahlpres,

  BEGIN OF t_pais_posto,

    pais  TYPE /pws/zycet291-paisemb,

    posto TYPE /pws/zycet291-postoemb,

    descr TYPE t615t-bezei,

  END OF t_pais_posto,

  t_paises_postos TYPE STANDARD TABLE OF t_pais_posto.

* << Fim da inclusão

DATA: BEGIN OF record_tab OCCURS 1.

        INCLUDE STRUCTURE seahlpres .

DATA: END OF record_tab.

...

 

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

Modificações efetuadas em FUNC /PWS/ZYCE_SHLP_EXIT_DESC_LOCAL

 

CRIAR MÓDULO DE FUNÇÃO: FUNC /PWS/ZYCE_SHLP_EXIT_DESC_LOCAL

CARACTERÍSTICAS

 

CLASSIFICAÇÃO:

GRUPO DE FUNÇÕES: /PWS/ZYCEGF5

TEXTO BREVE: DE - Exit para ajuda de pesquisa para Transit Time

 

TIPO DE EXECUÇÃO:

(X) - MÓDULO DE FUNÇÃO NORMAL

 

MODIFIC.:

NOME PARAM.   ATRIB. TIPO REFERÊNCIA  VL. PROPOSTO OPCIONAL TRANSF. TEXT

SHLP          TYPE        SHLP_DESCR_T                      X

CALLCONTROL   LIKE        DDSHF4CTRL                        X

 

TABELAS:

NOME PARAM.   ATRIB. TIPO REFERÊNCIA  OPCIONAL TEXTO BREVE

SHLP_TAB      TYPE   SHLP_DESCR_TAB_T

RECORD_TAB    LIKE   SEAHLPRES

 

EXCEÇÕES:

EXCEÇÃO                    TEXTO BREVE

 

TEXTO FONTE

 

FUNCTION /pws/zyce_shlp_exit_desc_local .

  DATA it_descr TYPE STANDARD TABLE OF t_pais_posto.

  CHECK callcontrol-step = 'DISP'.

  PERFORM:

    recupera_descricoes_locais

      USING

        'PAISEMB' 'POSTOEMB'

      CHANGING

        it_descr shlp_tab[] record_tab[] shlp callcontrol,

    ajusta_descricoes_locais

      USING

        'DESCEMB' it_descr

      CHANGING

        shlp_tab[] record_tab[] shlp callcontrol,

    recupera_descricoes_locais

      USING

        'PAISDEST' 'POSTODEST'

      CHANGING

        it_descr shlp_tab[] record_tab[] shlp callcontrol,

    ajusta_descricoes_locais

      USING

        'DESCDEST' it_descr

      CHANGING

        shlp_tab[] record_tab[] shlp callcontrol.

ENDFUNCTION.

FORM retorna_valores_ajuda_pesquisa

  USING

    p_campo       TYPE shlpfield

  CHANGING

    p_shlp_tab    TYPE shlp_descr_tab_t

    p_record_tab  TYPE seahlpres_tab

    p_resultados  TYPE STANDARD TABLE

    p_shlp        TYPE shlp_descr_t

    p_callcontrol TYPE ddshf4ctrl

    p_erro        TYPE char1.

  CLEAR p_erro.

  CALL FUNCTION 'F4UT_PARAMETER_VALUE_GET'

       EXPORTING

            parameter         = p_campo

       TABLES

            shlp_tab          = p_shlp_tab

            record_tab        = p_record_tab

            results_tab       = p_resultados

       CHANGING

            shlp              = p_shlp

            callcontrol       = p_callcontrol

       EXCEPTIONS

            parameter_unknown = 1.

  CHECK sy-subrc NE 0.

  p_erro = 'X'.

ENDFORM.

FORM ajusta_valores_ajuda_pesquisa

  USING

    p_campo       TYPE shlpfield

  CHANGING

    p_shlp_tab    TYPE shlp_descr_tab_t

    p_record_tab  TYPE seahlpres_tab

    p_valores     TYPE STANDARD TABLE

    p_shlp        TYPE shlp_descr_t

    p_callcontrol TYPE ddshf4ctrl

    p_erro        TYPE char1.

  CHECK NOT p_valores IS INITIAL.

  CLEAR p_erro.

  CALL FUNCTION 'F4UT_PARAMETER_RESULTS_PUT'

       EXPORTING

            parameter         = p_campo

       TABLES

            shlp_tab          = p_shlp_tab

            record_tab        = p_record_tab

            source_tab        = p_valores

       CHANGING

            shlp              = p_shlp

            callcontrol       = p_callcontrol

       EXCEPTIONS

            parameter_unknown = 1.

  CHECK sy-subrc NE 0.

  p_erro = 'X'.

ENDFORM.

FORM recupera_descricoes_locais

  USING

    p_pais        TYPE shlpfield

    p_posto       TYPE shlpfield

  CHANGING

    p_pais_posto  TYPE t_paises_postos

    p_shlp_tab    TYPE shlp_descr_tab_t

    p_record_tab  TYPE seahlpres_tab

    p_shlp        TYPE shlp_descr_t

    p_callcontrol TYPE ddshf4ctrl.

  DATA:

    it_pais       TYPE STANDARD TABLE OF /pws/zycet291-paisemb,

    it_posto      TYPE STANDARD TABLE OF /pws/zycet291-postoemb,

    it_pais_posto TYPE STANDARD TABLE OF t_pais_posto,

    it_descricoes TYPE STANDARD TABLE OF t_pais_posto,

    wa_pais       TYPE /pws/zycet291-paisemb,

    wa_posto      TYPE /pws/zycet291-postoemb,

    wa_pais_posto TYPE t_pais_posto,

    v_erro(1)     TYPE c.

  FIELD-SYMBOLS <fs_pais_posto> TYPE t_pais_posto.

  CLEAR:

    it_pais, it_posto, it_pais_posto, p_pais_posto.

  PERFORM retorna_valores_ajuda_pesquisa

    USING

      p_pais

    CHANGING

      p_shlp_tab p_record_tab it_pais p_shlp p_callcontrol v_erro.

  CHECK v_erro = 0.

  PERFORM retorna_valores_ajuda_pesquisa

    USING

      p_posto

    CHANGING

      p_shlp_tab p_record_tab it_posto p_shlp p_callcontrol v_erro.

  CHECK v_erro = 0.

  LOOP AT it_pais INTO wa_pais.

    READ TABLE it_posto INTO wa_posto INDEX sy-tabix.

    wa_pais_posto-pais  = wa_pais.

    wa_pais_posto-posto = wa_posto.

    APPEND wa_pais_posto TO it_pais_posto.

  ENDLOOP.

  SELECT land1 zolla bezei

    FROM t615t

    INTO TABLE it_descricoes

    FOR ALL ENTRIES IN it_pais_posto

    WHERE

      spras = sy-langu AND

      land1 = it_pais_posto-pais AND

      zolla = it_pais_posto-posto.

  LOOP AT it_pais_posto ASSIGNING <fs_pais_posto>.

    READ TABLE it_descricoes INTO wa_pais_posto

      WITH KEY

        pais  = <fs_pais_posto>-pais

        posto = <fs_pais_posto>-posto

      TRANSPORTING descr.

    CHECK sy-subrc = 0.

    <fs_pais_posto>-descr = wa_pais_posto-descr.

  ENDLOOP.

  UNASSIGN <fs_pais_posto>.

  p_pais_posto = it_pais_posto.

ENDFORM.

FORM ajusta_descricoes_locais

  USING

    p_descricao   TYPE shlpfield

    p_pais_posto  TYPE t_paises_postos

  CHANGING

    p_shlp_tab    TYPE shlp_descr_tab_t

    p_record_tab  TYPE seahlpres_tab

    p_shlp        TYPE shlp_descr_t

    p_callcontrol TYPE ddshf4ctrl.

  DATA:

    it_descricao  TYPE STANDARD TABLE OF t_pais_posto-descr,

    wa_pais_posto TYPE t_pais_posto,

    v_erro(1)     TYPE c.

  LOOP AT p_pais_posto INTO wa_pais_posto.

    APPEND wa_pais_posto-descr TO it_descricao.

  ENDLOOP.

  PERFORM ajusta_valores_ajuda_pesquisa

    USING

      p_descricao

    CHANGING

      p_shlp_tab p_record_tab it_descricao p_shlp p_callcontrol v_erro.

ENDFORM.

 

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

Modificações efetuadas em SHLD /PWS/ZYCEA288

 

MODIFICAR AJUDA DE PESQUISA: /PWS/ZYCEA288

 

DEFINIÇÃO

 

EXIT AJUD. PESQUISA: /PWS/ZYCE_SHLP_EXIT_DESC_LOCAL

 

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

Modificações efetuadas em TABD /PWS/ZYCET291

 

MODIFICAR TABELA TRANSPARENTE: /PWS/ZYCET291

DESCRIÇÃO BREVE: CE - Tabela de Transit Times

 

CAMPOS EXCLUÍDOS

 

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

DESCEMB         BEZEI30

DESCDEST        BEZEI30

 

EXCLUIR INTERFACE DE ATUALIZAÇÃO PARA TABELA /PWS/ZYCET291

 

 

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

Modificações efetuadas em VIEW /PWS/ZYCEV291

 

 

CRIAR VISAO ATUALIZAÇÃO: /PWS/ZYCEV291

DESCRIÇÃO BREVE: CE - Transit Times

 

TABELAS/CONDIÇÕES JOIN

 

TABELAS:                            CONDIÇÕES JOIN:

                    TABELA       NOME CPO     = TABELA        NOME CPO

/PWS/ZYCET291       T615         MANDT        = /PWS/ZYCET291 MANDT

T615                T615         LAND1        = /PWS/ZYCET291 PAISEMB

T615T               T615         ZOLLA        = /PWS/ZYCET291 POSTODEST

                    T615         MANDT        = T615T         MANDT

                    T615         LAND1        = T615T         LAND1

                    T615         ZOLLA        = T615T         ZOLLA

 

CPOS. VISÃO

 

CAMPO VISÃO:     NOME TAB:     NOME CAMPO: CARACT. ATUAL.:   MOD:

MANDT            /PWS/ZYCET291 MANDT

PAISEMB          /PWS/ZYCET291 PAISEMB

POSTOEMB         /PWS/ZYCET291 POSTOEMB

PAISDEST         /PWS/ZYCET291 PAISDEST

POSTODEST        /PWS/ZYCET291 POSTODEST

ARMADOR          /PWS/ZYCET291 ARMADOR

TRANSIT          /PWS/ZYCET291 TRANSIT

DESCEMB          T615T         BEZEI       R

DESCDEST         T615T         BEZEI       R

 

CONDIÇÕES DE SELEÇÃO

 

TABELA:          NOME CPO.:   OPERADOR:       VL COMP:       AND/OR

T615T            SPRAS        EQ              SY-LANGU

 

STATUS AT.

 

ACESSO:

(X) - LER, MODIFICAR, ELIMINAR E INSERIR.

 

CLASSE DE ENTREGA: [C]

 

 

INTERFACE PARA ATUALIZAÇÃO PARA VISÃO /PWS/ZYCEV291

 

INDICAÇÕES TÉCNICAS PARA DIÁLOGO

 

GRUPO DE AUTORIZAÇÃO: /PWS/ZYCE

OBJETO AUTORIZAÇÃO:   S_TABU_DIS

GRUPO DE FUNÇÕES:     /PWS/ZYCEGF1

CL. DESENVOLVIMENTO:  /PWS/ZYCE

 

TELAS DE ATUALIZAÇÃO

 

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

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

 

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

 

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

 

 

MODIFICAR TELA DO DIÁLOGO DE ATUALIZAÇÃO

 

TELA: 291

 

MODIFICAR CAMPO TEXTO: */PWS/ZYCEV291-DESCEMB

COLUNA: DE: 7 PARA: 3

 

MODIFICAR CAMPO E/S: /PWS/ZYCEV291-DESCEMB

COLUNA: DE: 7 PARA: 3

 

MODIFICAR CAMPO TEXTO: */PWS/ZYCEV291-DESCDEST

COLUNA: DE: 8 PARA: 6

 

MODIFICAR CAMPO E/S: /PWS/ZYCEV291-DESCDEST

COLUNA: DE: 8 PARA: 6

 

 

ROTINAS QUE PODEM SER EXECUTADAS A PARTIR DA VISÃO DE ATUALIZAÇÃO

* Acessar o utilitário de geração de diálogo de atualização, menu

* "Ambiente->Modificação->Momentos" (ou "Horas", dependendo da tradução)

 

MOMENTO: [AA]

NOME DO FORM/PROGRAMA: GET_DATA_ZYCEV291

INCLUDE: /PWS/LZYCEGF1F01

 

FORM get_data_zycev291.                                     "#EC CALLED

  TYPES:

    BEGIN OF t_descr_local,

      land1 TYPE t615t-land1,

      zolla TYPE t615t-zolla,

      bezei TYPE t615t-bezei,

    END OF t_descr_local.

  DATA:

    it_transit_times TYPE STANDARD TABLE OF /pws/zycev291,

    it_descr_locais  TYPE STANDARD TABLE OF t_descr_local,

    it_locais        TYPE STANDARD TABLE OF t_descr_local,

    wa_descr_local   TYPE t_descr_local.

  PERFORM vim_fill_wheretab.

  REFRESH total.

  SELECT * FROM /pws/zycet291

    INTO TABLE it_transit_times

    WHERE (vim_wheretab) .

  IF sy-subrc = 0.

    CLEAR it_locais.

    LOOP AT it_transit_times INTO /pws/zycet291.

      wa_descr_local-land1 = /pws/zycet291-paisemb.

      wa_descr_local-zolla = /pws/zycet291-postoemb.

      APPEND wa_descr_local TO it_locais.

      wa_descr_local-land1 = /pws/zycet291-paisdest.

      wa_descr_local-zolla = /pws/zycet291-postodest.

      APPEND wa_descr_local TO it_locais.

    ENDLOOP.

    IF NOT it_locais IS INITIAL.

      SELECT land1 zolla bezei FROM t615t

        INTO TABLE it_descr_locais

        FOR ALL ENTRIES IN it_locais

        WHERE

          land1 = it_locais-land1 AND

          zolla = it_locais-zolla AND

          spras = sy-langu .

    ENDIF.

  ENDIF.

  LOOP AT it_transit_times INTO /pws/zycet291.

    CLEAR /pws/zycev291 .

    /pws/zycev291-mandt     = /pws/zycet291-mandt .

    /pws/zycev291-paisemb   = /pws/zycet291-paisemb .

    /pws/zycev291-postoemb  = /pws/zycet291-postoemb .

    /pws/zycev291-paisdest  = /pws/zycet291-paisdest .

    /pws/zycev291-postodest = /pws/zycet291-postodest .

    /pws/zycev291-armador   = /pws/zycet291-armador .

    /pws/zycev291-transit   = /pws/zycet291-transit .

    IF NOT it_descr_locais IS INITIAL.

      READ TABLE it_descr_locais

        INTO wa_descr_local WITH KEY

          land1 = /pws/zycet291-paisemb

          zolla = /pws/zycet291-postoemb

        TRANSPORTING bezei.

      IF sy-subrc = 0.

        /pws/zycev291-descemb = wa_descr_local-bezei.

      ELSE.

        CLEAR /pws/zycev291-descemb.

      ENDIF.

      READ TABLE it_descr_locais

        INTO wa_descr_local WITH KEY

          land1 = /pws/zycet291-paisdest

          zolla = /pws/zycet291-postodest

        TRANSPORTING bezei.

      IF sy-subrc = 0.

        /pws/zycev291-descdest = wa_descr_local-bezei.

      ELSE.

        CLEAR /pws/zycev291-descdest.

      ENDIF.

      APPEND /pws/zycev291 TO total.

    ENDIF.

  ENDLOOP.

  SORT total BY <vim_total_key>.

  <status>-alr_sorted = 'R'.

  IF x_header-selection NE space.

    PERFORM check_dynamic_select_options.

  ELSEIF x_header-delmdtflag NE space.

    PERFORM build_mainkey_tab.

  ENDIF.

  REFRESH extract.

ENDFORM.

 

 

MOMENTO: [AD]

NOME DO FORM/PROGRAMA: COMPL_DADOS_ZYCEV291

INCLUDE: /PWS/LZYCEGF1F01

 

FORM compl_dados_zycev291.                                  "#EC CALLED

  TYPES:

    BEGIN OF t_descr_local,

      land1 TYPE t615t-land1,

      zolla TYPE t615t-zolla,

      bezei TYPE t615t-bezei,

    END OF t_descr_local.

  DATA:

    it_descr_locais TYPE STANDARD TABLE OF t_descr_local,

    it_locais       TYPE STANDARD TABLE OF t_descr_local,

    wa_descr_local  TYPE t_descr_local.

  /pws/zycet291-mandt     = /pws/zycev291-mandt .

  /pws/zycet291-paisemb   = /pws/zycev291-paisemb .

  /pws/zycet291-postoemb  = /pws/zycev291-postoemb .

  /pws/zycet291-paisdest  = /pws/zycev291-paisdest .

  /pws/zycet291-postodest = /pws/zycev291-postodest .

  /pws/zycet291-armador   = /pws/zycev291-armador .

  /pws/zycet291-transit   = /pws/zycev291-transit .

  wa_descr_local-land1 = /pws/zycet291-paisemb.

  wa_descr_local-zolla = /pws/zycet291-postoemb.

  APPEND wa_descr_local TO it_locais.

  wa_descr_local-land1 = /pws/zycet291-paisdest.

  wa_descr_local-zolla = /pws/zycet291-postodest.

  APPEND wa_descr_local TO it_locais.

  IF NOT it_locais IS INITIAL.

    SELECT land1 zolla bezei FROM t615t

      INTO TABLE it_descr_locais

      FOR ALL ENTRIES IN it_locais

      WHERE

        land1 = it_locais-land1 AND

        zolla = it_locais-zolla AND

        spras = sy-langu .

    IF sy-subrc = 0.

      READ TABLE it_descr_locais

        INTO wa_descr_local WITH KEY

          land1 = /pws/zycet291-paisemb

          zolla = /pws/zycet291-postoemb

        TRANSPORTING bezei.

      IF sy-subrc = 0.

        /pws/zycev291-descemb = wa_descr_local-bezei.

      ELSE.

        CLEAR /pws/zycev291-descemb.

      ENDIF.

      READ TABLE it_descr_locais

        INTO wa_descr_local WITH KEY

          land1 = /pws/zycet291-paisdest

          zolla = /pws/zycet291-postodest

        TRANSPORTING bezei.

      IF sy-subrc = 0.

        /pws/zycev291-descdest = wa_descr_local-bezei.

      ELSE.

        CLEAR /pws/zycev291-descdest.

      ENDIF.

      CLEAR sy-subrc.

    ELSE.

      CLEAR sy-subrc.

      CLEAR /pws/zycev291-descemb .

      CLEAR /pws/zycev291-descdest .

    ENDIF.

  ELSE.

    CLEAR sy-subrc.

    CLEAR /pws/zycev291-descemb .

    CLEAR /pws/zycev291-descdest .

  ENDIF.

ENDFORM.

 

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

Modificações efetuadas em TRAN /PWS/ZYCET291

 

CÓDIGO DE TRANSAÇÃO: /PWS/ZYCET291

 

ATRIBUTOS DA TRANSAÇÃO

TEXTO BREVE: Parâmetro Transit Times

 

VALORES PROPOSTOS

NOME DO CAMPO DA TELA      VALOR

* >> Início da exclusão:

VIEWNAME                   /PWS/ZYCET291

* << Fim da exclusão

* >> Início da inclusão:

VIEWNAME                   /PWS/ZYCEV291

* << Fim da inclusão