CE PLUS - Nota 004465

Módulo: CÂMBIO EXPORTAÇÃO

Funcionalidade: Associação Ordem de Pagamento

Data/Hora da Publicação: 21/08/2007 00:00:00

Data/Hora Última Alteração: 10/03/2010 16:08:12

Descrição da Nota: ASSOCIAÇÃO ORDEM PAGAMENTO - MATCHCODE - FILTRO POR EMISSOR ORDEM

Sintoma

 

No programa de associação de ordem de pagamento no embarque/remessa, quando selecionamos o "Nº

Ordem" pelo Match code o sistema exibe todas as ordens de pagamentos, independentemente da empresa

do embarque/remessa. Nas restrições da seleção temos o campo "Emissor da ordem", verificar se é

possível quando abrir o match code, já exibir utilizando o filtro "Emissor da ordem" = cliente da

fatura como padrão.

 

Solução

 

Inclusão de tratamento na função de ajuda de pesquisa, para carregar somente com emissor da ordem

igual ao cliente do embarque.

Versões Tratadas

7.0

Informações Complementares

 

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

Nota Número 04465 Data: 21/08/2007 Hora: 10:25:44

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

 

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

Nota Número              : 04465

Categoria                : Melhoria

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00002

Agrupamento              : 00008

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

ASSOCIAÇÃO ORDEM PAGAMENTO - MATCHCODE - FILTRO POR EMISSOR ORDEM

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

Palavras Chave:

ASSOCIAÇÃO ORDEM PAGAMENTO MATCHCODE FILTRO POR EMISSOR ORDEM

CLIENTE AJUDA DE PESQUISA /PWS/ZYCBA277

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

Objetos da nota:

FUNC /PWS/ZYCBA277

REPS /PWS/MZYCB035F01

REPS /PWS/MZYCB035TOP

 

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

Modificações efetuadas em FUNC /PWS/ZYCBA277

 

...

    shlp.

  TYPES:

    BEGIN OF t_s_ordem,

      nrseq        TYPE /pws/zycbv217-nrseq,

      sld_associar TYPE /pws/zycbv217-sld_associar,

    END OF t_s_ordem,

    t_t_ordem TYPE STANDARD TABLE OF t_s_ordem

      WITH NON-UNIQUE KEY nrseq.

  DATA:

    itab_ordem  TYPE t_t_ordem,

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

    v_nr_ordem TYPE STRING,

* << Fim da inclusão

    v_fieldname TYPE dfies-lfieldname.

  FIELD-SYMBOLS:

    <fs_shlp>       LIKE LINE OF shlp_tab,

    <fs_fielddescr> LIKE LINE OF shlp_tab-fielddescr.

  IF callcontrol-step = 'DISP'.

    READ TABLE shlp_tab INDEX 1 ASSIGNING <fs_shlp>.

    CHECK <fs_shlp> IS ASSIGNED.

    LOOP AT <fs_shlp>-fielddescr ASSIGNING <fs_fielddescr>.

      CHECK: <fs_fielddescr>-fieldname = 'NRSEQ' OR

             <fs_fielddescr>-fieldname = 'SLD_ASSOCIAR'.

...

 

...

      IF sy-subrc <> 0.

        EXIT.

      ENDIF.

    ENDLOOP.

    UNASSIGN: <fs_shlp>, <fs_fielddescr>.

    LOOP AT itab_ordem

      TRANSPORTING NO FIELDS

      WHERE sld_associar <= 0.

      DELETE record_tab INDEX sy-tabix.

      DELETE itab_ordem.

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

    ENDLOOP.

    IMPORT v_nr_ordem FROM MEMORY ID '500'.

    IF NOT v_nr_ordem IS INITIAL .

      LOOP AT record_tab.

        IF record_tab+29(10) <> v_nr_ordem.

          DELETE record_Tab.

        ENDIF.

* << Fim da inclusão

    ENDLOOP.

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

      FREE MEMORY ID '500'.

    ENDIF.

* << Fim da inclusão

  ENDIF.

ENDFUNCTION.

 

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

Modificações efetuadas em REPS /PWS/MZYCB035F01

 

...

    itab_result TYPE STANDARD TABLE OF ddshretval

      WITH NON-UNIQUE DEFAULT KEY,

    itab_dynpread   TYPE t_t_dynpread,

    wa_dynpread     LIKE LINE OF itab_dynpread,

    itab_nrseq      TYPE t_t_ordem_chave,

    wa_nrseq        LIKE LINE OF itab_nrseq,

    v_conv_exit(10) TYPE c,

    v_linha         TYPE i.

  FIELD-SYMBOLS

    <fs_result> LIKE LINE OF itab_result.

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

  v_nr_ordem = /PWS/ZYCBE227A-KUNAG.

  EXPORT v_nr_ordem TO MEMORY ID '500'.

* << Fim da inclusão

  CALL FUNCTION 'F4IF_FIELD_VALUE_REQUEST'

       EXPORTING

            tabname           = c_tabname

            fieldname         = c_fieldname

            searchhelp        = c_searchhelp

            shlpparam         = c_shlpparam

            multiple_choice   = 'X'

       TABLES

            return_tab        = itab_result

       EXCEPTIONS

            field_not_found   = 1

            no_help_for_field = 2

            inconsistent_help = 3

            no_values_found   = 4

            OTHERS            = 5.

  IF sy-subrc <> 0.

    EXIT.

  ENDIF.

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

  FREE MEMORY ID '500'.

* << Fim da inclusão

  DESCRIBE FIELD /pws/zycbe228a-nrseq EDIT MASK v_conv_exit.

  LOOP AT itab_result ASSIGNING <fs_result>.

    CHECK <fs_result>-fieldname = c_nrseq.

    wa_nrseq = <fs_result>-fieldval.

    IF NOT v_conv_exit IS INITIAL.

      CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

           EXPORTING

                input  = wa_nrseq

           IMPORTING

                output = wa_nrseq.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB035TOP

 

...

    WITH NON-UNIQUE DEFAULT KEY,

  t_t_dynpread TYPE STANDARD TABLE OF dynpread

    WITH NON-UNIQUE DEFAULT KEY.

TABLES:

  /pws/zycbe227a,

  /pws/zycbe228a,

  /pws/zycbe229a.

DATA:

  btn_embarque(1) TYPE c VALUE 'X',

  btn_remessa(1)  TYPE c VALUE space,

* >> Início da inclusão:

  v_nr_ordem TYPE STRING,

* << Fim da inclusão

  ok_code         TYPE sy-ucomm.

CONTROLS:

  tc_ordens TYPE TABLEVIEW USING SCREEN 0102.

DATA:

  itab_tabstrip  TYPE t_t_tabstrip,

  itab_tbcontrol TYPE t_t_tbcontrol,

  itab_drilldown TYPE t_t_drilldown,

  itab_mensagem  TYPE t_t_mensagem,

  wa_controle    TYPE t_s_controle,

  wa_tabstrip    LIKE LINE OF itab_tabstrip.