Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Message type X

Former Member
0 Likes
5,295

Hi guys , I'm working in an ALV , One of my fields is currency and when I try to get the total of that currency column I receive the error MESSAGE_TYPE_X , I've already tried fieldcat_ln-datatype = 'QUAN'. and fieldcat_ln-Do_sum = 'X' . what I else i should see ??? thank you my friends.

15 REPLIES 15
Read only

Former Member
0 Likes
5,145

also try to use ref_fieldname and ref_tablename for the field in fieldcatalog.

Read only

Former Member
0 Likes
5,145

Hi,

Replace fieldcat_ln-datatype = 'QUAN'. with

fieldcat_ln-datatype = 'CUKY'. and check.

Cheers!!

VEnk@

Read only

0 Likes
5,145

Hi guys , I´ve tried this too , but with CUKY sigma button dissapear from the button bar , and with the following code I still get the same error.

CLEAR fieldcat_ln.
fieldcat_ln-fieldname = 'WTGBTR'.
fieldcat_ln-seltext_l = 'Valor/MT'.
* fieldcat_ln-datatype = 'CUKY'.
fieldcat_ln-ref_tabname   = 'COEP'.
fieldcat_ln-ref_fieldname = 'WTGBTR'.
fieldcat_ln-datatype = 'QUAN'.
* fieldcat_ln-key = space.
* fieldcat_ln-no_out = 'X'.
APPEND fieldcat_ln TO fieldcat.

Edited by: José Merida Sanchez on Nov 3, 2008 6:52 AM

Edited by: José Merida Sanchez on Nov 3, 2008 6:56 AM

Read only

0 Likes
5,145

Try changing your data type to CURR instead of QUAN.

Read only

0 Likes
5,145

try with the following changes

CLEAR fieldcat_ln.
fieldcat_ln-fieldname = 'WTGBTR'.
fieldcat_ln-seltext_l = 'Valor/MT'.
fieldcat_ln-ref_tabname   = 'COEP'.
fieldcat_ln-qfieldname   = 'TWAER'.  "unit field , it should be there in internal table
fieldcat_ln-qtabname  = 'ITAB'. "use your internal table name 
fieldcat_ln-ref_fieldname = 'WTGBTR'.
APPEND fieldcat_ln TO fieldcat.

Read only

0 Likes
5,145

Hi guys . I've tried boh suggestions , but still got the problem.

Read only

0 Likes
5,145

the problem lies in your code. post your internal table definiton. and fieldcatalog population.

Read only

0 Likes
5,145

Sure no problem and thank you.

*&---------------------------------------------------------------------*
*& Report  Z_FAC_PROJ
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT  z_fac_projectos.

INCLUDE: <icon>.

TABLES : afvc ,bkpf , coep, t001, zintptggpl.
TYPE-POOLS: slis.
RANGES  : r_set FOR setleaf-valfrom .


DATA: pep_lit(40)  TYPE c,
      pep_lit2(40) TYPE c,
      nr_acc TYPE i,
      nr_acc_rec TYPE i,
      nr_acc_gl TYPE i,
      nr_curr_amo TYPE i,
      nr_acc_pay TYPE i,
      projn2 TYPE afvc-projn,
      objnr_aux TYPE afvc-objnr,
      ind  TYPE i,
      sw TYPE c ,
      p_overw  TYPE  c,
      status_act TYPE c,
      acc_amount  TYPE coep-wtgbtr.


DATA : ti_verifica LIKE zdintptggpl OCCURS 0  WITH HEADER LINE,
       ti_setleaf  LIKE setleaf   OCCURS 0 WITH HEADER LINE.
DATA : BEGIN OF ti_afvc_2 OCCURS 0,
          projn     TYPE afvc-projn,
          objnr     TYPE afvc-objnr,
          wtgbtr    TYPE coep-wtgbtr,
          waers     TYPE coep-twaer,
          projn_n   TYPE afvc-projn,
          objnr_n   TYPE afvc-objnr,
          activ      TYPE bapiacgl09-activity,
          kstar     TYPE coep-kstar,
          gkstar    TYPE setleaf-setname,
          kstar_d   TYPE coep-kstar,
          bukrs_o   TYPE bseg-bukrs,
          belnr_o   TYPE bseg-belnr,
          gjahr_o   TYPE bseg-gjahr,
          status_o  TYPE zinclui_exclui,
          msg_err_o TYPE  bapiret2-message,
          bukrs_d   TYPE bseg-bukrs,
          belnr_d   TYPE bseg-belnr,
          gjahr_d   TYPE bseg-gjahr,
          status_d TYPE zinclui_exclui,
          msg_err_d   TYPE  bapiret2-message,
          diar_o    TYPE bseg-nplnr,
          diar_d    TYPE bseg-nplnr,
          err_nr(3)   TYPE  c,
          sel(1),
       END OF ti_afvc_2.

DATA : ti_afvc LIKE ti_afvc_2 OCCURS 0 WITH HEADER LINE,
       ti_sal_orig LIKE ti_afvc_2 OCCURS 0 WITH HEADER LINE,
       ln_ti_afvc LIKE LINE OF  ti_afvc_2.

DATA: BEGIN OF ti_coep_new OCCURS 0,
          projn   TYPE afvc-projn,
          wtgbtr  TYPE coep-wtgbtr,
          wkgbtr  TYPE coep-wkgbtr,
          wogbtr  TYPE coep-wtgbtr,
          objnr  TYPE afvc-objnr,
      END OF ti_coep_new.

DATA: ti_doc_head TYPE bapiache09,
        ti_acc_gl   TYPE bapiacgl09 OCCURS 0 WITH HEADER LINE,
        ti_acc_re   TYPE bapiacar09 OCCURS 0 WITH HEADER LINE,
        ti_acc_pa   TYPE bapiacap09 OCCURS 0 WITH HEADER LINE,
        ti_curr_amo TYPE bapiaccr09 OCCURS 0 WITH HEADER LINE.

DATA : ti_return LIKE  bapiret2 OCCURS 0 WITH HEADER LINE ,
       ti_grpcos LIKE zintptggpl OCCURS 0 WITH HEADER LINE.

DATA: fieldcat TYPE slis_t_fieldcat_alv,
      fieldcat_ln LIKE LINE OF fieldcat,
      sortcat TYPE slis_t_sortinfo_alv,
      sortcat_ln LIKE LINE OF sortcat,
      eventcat TYPE slis_t_event,
      eventcat_ln LIKE LINE OF eventcat,
      layout TYPE slis_layout_alv,
      pgm LIKE sy-repid,
      pf_status   TYPE slis_formname,
      user_com TYPE slis_formname.

DATA: g_program TYPE sy-repid,
      g_titulo TYPE sy-title,
      g_repid TYPE sy-repid,
      gs_sort TYPE slis_t_sortinfo_alv,
      p_tabix LIKE sy-tabix.


*---------------------------------------------------------------------*
*                          Ecran Inicial                              *
*                                                                     *
*---------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF BLOCK tela1 WITH FRAME TITLE text-001.
SELECT-OPTIONS :  s_perio FOR coep-perio OBLIGATORY,      " Periodo
                  s_projn FOR afvc-projn .                " PEP
PARAMETERS:       p_gjahr TYPE bkpf-gjahr  OBLIGATORY.    " Exercicio
SELECTION-SCREEN END OF BLOCK tela1.

SELECTION-SCREEN BEGIN OF BLOCK tela2 WITH FRAME TITLE text-002.
PARAMETERS  :   p_dat_do  TYPE bseg-augdt OBLIGATORY,                  " Data do documento
                p_dat_la TYPE bseg-augdt OBLIGATORY.                  " Data de lançamento


SELECTION-SCREEN SKIP 1.
PARAMETERS :    p_teste AS CHECKBOX DEFAULT 'X'.          " Teste
SELECTION-SCREEN END OF BLOCK tela2.

SELECTION-SCREEN BEGIN OF BLOCK tela3 WITH FRAME TITLE text-002.
*  p_ptg TYPE  DEFAULT 'D' NO-DISPLAY,                                       " Tipo de terceiro  PTG
*               p_gpl TYPE c DEFAULT 'K' NO-DISPLAY,                         " Tipo de terceiro GPL
PARAMETERS :   p_ncli TYPE  bapiacar09-customer DEFAULT '0000002590', "   DEFAULT '2604' NO-DISPLAY,    " No. de cliente.
*               p_nfon TYPE afvc-lifnr DEFAULT '12394' ,              " '12423' NO-DISPLAY,             " No. Fornecedor
               p_nfon TYPE afvc-lifnr DEFAULT '12423' ,              " '12423' NO-DISPLAY,             " No. Fornecedor
               p_tdoc TYPE bkpf-blart DEFAULT 'SA' , "   NO-DISPLAY,               " Tipo de actividade
               p_buko LIKE t001-bukrs DEFAULT 'PTG',"  NO-DISPLAY,
               p_bus  LIKE bapiache09-bus_act DEFAULT 'RFBU', " NO-DISPLAY ,
               p_bukd LIKE t001-bukrs DEFAULT 'GPL'. "   NO-DISPLAY.     "
SELECTION-SCREEN END OF BLOCK tela3.

AT SELECTION-SCREEN OUTPUT.

  LOOP AT SCREEN.
    CASE screen-name.
      WHEN 'P_NCLI'.
        screen-input  = '0'.
        MODIFY SCREEN.
      WHEN 'P_NFON'.
        screen-input = '0'.
        MODIFY SCREEN.
      WHEN 'P_TDOC'.
        screen-input = '0'.
        MODIFY SCREEN.
      WHEN 'P_BUKO'.
        screen-input = '0'.
        MODIFY SCREEN.
      WHEN 'P_BUKD'.
        screen-input = '0'.
        MODIFY SCREEN.
      WHEN 'P_BUS'.
        screen-input = '0'.
        MODIFY SCREEN.

    ENDCASE.
  ENDLOOP.

START-OF-SELECTION .

  SELECT SINGLE * FROM t001
                 WHERE bukrs EQ p_bukd.

  CHECK sy-subrc EQ 0.

  CLEAR ti_afvc_2.
  REFRESH ti_afvc_2.

  SELECT objnr projn
    FROM afvc
    INTO CORRESPONDING FIELDS OF TABLE  ti_afvc_2
    WHERE projn IN s_projn.

  CLEAR  p_tabix.

* Selecciona objectos
  LOOP AT   ti_afvc_2.
    MOVE sy-tabix TO p_tabix.

    CALL FUNCTION 'CONVERSION_EXIT_ABPSP_OUTPUT'
      EXPORTING
        input  = ti_afvc_2-projn
      IMPORTING
        output = pep_lit.

    MOVE pep_lit TO pep_lit2.

    IF pep_lit2+(1) = 'O' .
      REPLACE  pep_lit2+(1) WITH 'P' INTO pep_lit2+(1).
    ELSE.
      DELETE ti_afvc_2 INDEX p_tabix.
      CONTINUE.
    ENDIF.

    CALL FUNCTION 'CONVERSION_EXIT_ABPSP_INPUT'
      EXPORTING
        input     = pep_lit2
      IMPORTING
        output    = ti_afvc_2-projn_n  " Projn de 'P'
      EXCEPTIONS
        not_found = 1
        OTHERS    = 2.
    sw = 0.

    WHILE sw = 0.

      REPLACE '/' WITH space INTO pep_lit2 .
      REPLACE '.' WITH space INTO pep_lit2 .
      REPLACE '/' WITH space INTO pep_lit .
      REPLACE '.' WITH space INTO pep_lit .
      IF sy-subrc <> 0.
        sw = 1.
      ENDIF.
    ENDWHILE.
    CONDENSE: pep_lit2 NO-GAPS,
              pep_lit NO-GAPS .

    CONCATENATE: 'Z' pep_lit INTO ti_afvc_2-diar_o,
                 'Z' pep_lit2 INTO ti_afvc_2-diar_d.

    SELECT SINGLE objnr vornr
      FROM afvc
      INTO (ti_afvc_2-objnr_n, ti_afvc_2-activ)
      WHERE objnr EQ ti_afvc_2-objnr.
    MODIFY ti_afvc_2 INDEX p_tabix.
  ENDLOOP.

* Selecionar valores
  LOOP AT ti_afvc_2.

* Procuro Montantes para O
    SELECT *
      FROM coep
      WHERE  objnr =   ti_afvc_2-objnr
      AND    perio IN  s_perio
      AND    gjahr = p_gjahr
      ORDER BY kstar ASCENDING.

      MOVE: coep-kstar  TO ti_afvc_2-kstar,
            t001-waers  TO ti_afvc_2-waers,
            coep-wtgbtr TO ti_afvc_2-wtgbtr.

*Procuro Grupo  de classes de custo.

      SELECT *
      FROM setleaf
      INTO  ti_setleaf
      WHERE setclass = '0102'
        AND subclass  = 'POC'
        AND valsign   = 'I'
        AND valoption = 'EQ'
        AND valfrom   = coep-kstar. " Cost Element.

        SELECT SINGLE * FROM zintptggpl
        WHERE grclass  = ti_setleaf-setname.

        CHECK sy-subrc EQ 0.

        MOVE  ti_setleaf-setname TO ti_afvc_2-gkstar.

        MODIFY ti_afvc_2.

      ENDSELECT.

      IF coep-twaer NE t001-waers.
        PERFORM converte_valor(zuniversovmm) USING
                                      ti_afvc_2-wtgbtr coep-twaer
                                      ti_afvc_2-wtgbtr t001-waers.
      ENDIF.

      READ TABLE ti_afvc WITH KEY objnr = ti_afvc_2-objnr
                                  gkstar = ti_afvc_2-gkstar.

      IF sy-subrc EQ 0.
        ADD ti_afvc_2-wtgbtr TO ti_afvc-wtgbtr.
        MODIFY ti_afvc INDEX sy-tabix.
      ELSE.
        APPEND ti_afvc_2 TO ti_afvc.
      ENDIF.

    ENDSELECT.
  ENDLOOP.

  CLEAR: ti_afvc_2, nr_acc_gl, nr_acc_rec, nr_curr_amo, nr_acc_pay.
  REFRESH ti_afvc_2.

  IF NOT ti_afvc[] IS INITIAL.

    PERFORM emp_origen USING 'CHECK'.
    PERFORM emp_destino USING 'CHECK'.

  ENDIF.

  PERFORM formata_aspecto.
  PERFORM formata_colunas.
  PERFORM formata_eventos.
  PERFORM cria_listagem_alv.


*&---------------------------------------------------------------------*
*&      Form  formata_aspecto
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM  formata_aspecto.
* Parametrização do aspecto do ALV (layout)
  layout-colwidth_optimize = 'X'.
  layout-zebra = 'X'.
  layout-cell_merge = 'X'.
  layout-box_fieldname     = 'SEL'.
ENDFORM.                    "formata_aspecto

*&---------------------------------------------------------------------*
*&      Form  formata_colunas
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM formata_colunas.


  CLEAR   sortcat.
  REFRESH sortcat.

  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'STATUS_O'.
  fieldcat_ln-seltext_l = 'Status Origen'.
  fieldcat_ln-key = space.
  fieldcat_ln-ref_tabname   = 'ZINCLUI_EXCLUI'.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.

  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'PROJN'.
  fieldcat_ln-seltext_l = 'Elemento PEP Antigo'.
  fieldcat_ln-key = space.
  fieldcat_ln-ref_tabname   = 'AFVC'.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.

  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'OBJNR'.
  fieldcat_ln-seltext_l = 'Nº objeto Antigo'.
  fieldcat_ln-key = space.
  fieldcat_ln-ref_tabname   = 'AFVC'.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.

  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'BUKRS_O '.
  fieldcat_ln-seltext_l = 'Empresa Origen '.
  fieldcat_ln-key = space.
  fieldcat_ln-ref_tabname   = 'BSEG'.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.

  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'BELNR_O'.
  fieldcat_ln-seltext_l = 'Documento Origen '.
  fieldcat_ln-key = space.
  fieldcat_ln-ref_tabname   = 'BSEG'.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.

  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'GJHAR_O'.
  fieldcat_ln-seltext_l = 'Ejercicio Origen'.
  fieldcat_ln-key = space.
  fieldcat_ln-ref_tabname   = 'BSEG'.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.

  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'MSG_ERR_O'.
  fieldcat_ln-seltext_l = 'Mensagem Origen'.
  fieldcat_ln-ref_tabname =  'BAPIRET2'.
  fieldcat_ln-key = space.

*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.

  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'GKSTAR'.
  fieldcat_ln-seltext_l = 'Grupo Classe de custo'.
  fieldcat_ln-key = space.
  fieldcat_ln-ref_tabname = 'SETLEAF'.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.

  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'ACTIV'.
  fieldcat_ln-seltext_l = 'Nº operação'.
  fieldcat_ln-ref_tabname = 'BAPIACGL09'.
  fieldcat_ln-key = space.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.


  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'WTGBTR'.
  fieldcat_ln-seltext_l = 'Valor/MT'.
  fieldcat_ln-ref_tabname   = 'COEP'.
*  fieldcat_ln-qfieldname   = 'WAERS'.  "unit field , it should be there in internal table
*  fieldcat_ln-qtabname  = 'TI_AFVC_2'. "use your internal table name
  fieldcat_ln-ref_fieldname = 'WTGBTR'.
  fieldcat_ln-outputlen = '10'.
  fieldcat_ln-datatype = 'CUKY'.

  APPEND fieldcat_ln TO fieldcat.


  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'WAERS'.
  fieldcat_ln-seltext_l = 'Moeda'.
  fieldcat_ln-ref_tabname   = 'COEP'.
  fieldcat_ln-key = space.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.

  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'STATUS_D'.
  fieldcat_ln-seltext_l = 'Status Destino'.
  fieldcat_ln-key = space.
  fieldcat_ln-ref_tabname   = 'ZINCLUI_EXCLUI'.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.

  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'PROJN_N'.
  fieldcat_ln-seltext_l = 'Elemento PEP Novo'.
  fieldcat_ln-key = space.
  fieldcat_ln-ref_tabname   = 'AFVC'.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.

  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'OBJNR'.
  fieldcat_ln-seltext_l = 'Nº objeto Novo'.
  fieldcat_ln-ref_tabname   = 'AFVC'.
  fieldcat_ln-key = space.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.

  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'BUKRS_D '.
  fieldcat_ln-seltext_l = 'Empresa Destino '.
  fieldcat_ln-key = space.
  fieldcat_ln-ref_tabname   = 'BSEG'.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.

  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'BELNR_D'.
  fieldcat_ln-seltext_l = 'Documento Destino'.
  fieldcat_ln-ref_tabname   = 'BSEG'.
  fieldcat_ln-key = space.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.

  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'GJHAR_D'.
  fieldcat_ln-seltext_l = 'Ejercicio Destino'.
  fieldcat_ln-ref_tabname   = 'BSEG'.
  fieldcat_ln-key = space.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.

  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'KSTAR_D'.
  fieldcat_ln-seltext_l = 'Classe de custo Destino'.
  fieldcat_ln-key = space.
  fieldcat_ln-ref_tabname = 'SETLEAF'.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.

  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'MSG_ERR_D'.
  fieldcat_ln-seltext_l = 'Mensagem Destino'.
  fieldcat_ln-key = space.
  fieldcat_ln-ref_tabname =  'BAPIRET2'.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.

ENDFORM.                    "formata_colunas

*&---------------------------------------------------------------------*
*&      Form  formata_eventos
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM formata_eventos.
  eventcat_ln-name = 'TOP_OF_PAGE'.
  eventcat_ln-form = 'TOPOFPAGE'.
  APPEND eventcat_ln TO eventcat.
ENDFORM.                    "formata_eventos
*&---------------------------------------------------------------------*
*&      Form  cria_listagem_alv
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM cria_listagem_alv.
  pgm = sy-repid.

  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
      i_callback_program       = pgm
      i_callback_pf_status_set = 'SET_PF_STATUS'
      i_callback_user_command  = 'USERCOMMAND'
      is_layout                = layout
      it_fieldcat              = fieldcat
      it_sort                  = sortcat
    TABLES
      t_outtab                 = ti_afvc
    EXCEPTIONS
      program_error            = 1
      OTHERS                   = 2.
  IF sy-subrc <> 0.

    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

  ENDIF.
ENDFORM.                    " cria_listagem_alv
*&---------------------------------------------------------------------*
*&      Form  set_pf_status
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      -->EXTAB      text
*----------------------------------------------------------------------*
FORM set_pf_status USING extab TYPE slis_t_extab.

  SET PF-STATUS 'STANDARD' EXCLUDING extab.

ENDFORM.                    "SET_PF_STATUS
*&---------------------------------------------------------------------*
*&      Form  usercommand
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      -->UCOMM      text
*      -->SELFIELD   text
*----------------------------------------------------------------------*
FORM usercommand USING ucomm TYPE sy-ucomm
selfield TYPE slis_selfield.

  IF ucomm = '&EXE'.

    PERFORM emp_origen USING 'POST'.
    PERFORM emp_destino USING 'POST'.

**   overw = 'X'   adicionar registo a tabela de processados
**   CALL FUNCTION 'Z_INT_PTG_GPL'
**                EXPORTING
**                 overw        = 'X'
**                  status       = status_act
**               TABLES
**                  proj_ptg_gpl = ti_verifica.
    PERFORM cria_listagem_alv.
*ENDIF.
  ENDIF.
ENDFORM.                    "usercommand

*&---------------------------------------------------------------------*
*&      Form  FILL_DOC_FACT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM fill_head USING comp_code .
  CLEAR ti_doc_head.
  MOVE :comp_code   TO ti_doc_head-comp_code,
        p_bus  TO ti_doc_head-bus_act,
        p_dat_do TO ti_doc_head-doc_date,
        p_gjahr  TO ti_doc_head-fisc_year,
        p_tdoc   TO ti_doc_head-doc_type,
        sy-uname TO ti_doc_head-username,
        p_dat_la TO ti_doc_head-pstng_date,
        ''       TO ti_doc_head-header_txt.
ENDFORM.                    "fill_head


*&---------------------------------------------------------------------*
*&      Form  fill_doc_fact
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM fill_accountgl    USING  itemno_acc network activ .
  ADD 1 TO nr_acc_gl .
  MOVE:  nr_acc_gl  TO ti_acc_gl-itemno_acc,
         itemno_acc  TO ti_acc_gl-gl_account,
         '' TO ti_acc_gl-item_text,
         network TO ti_acc_gl-network,
         activ  TO ti_acc_gl-activity,
         p_dat_la TO ti_acc_gl-pstng_date.

*         p_tdoc TO ti_acc_gl-acttype.
  APPEND ti_acc_gl.
ENDFORM.                    "fill_accountgl
*&---------------------------------------------------------------------*
*&      Form  FILL_ACCOUNT_REC
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM fill_account_rec USING moeda.
*  ADD 1 TO nr_acc_rec .
  ADD 1 TO nr_acc_gl .
  MOVE: nr_acc_gl TO ti_acc_re-itemno_acc,
*        nr_acc_rec TO ti_acc_re-itemno_acc,
        p_ncli      TO ti_acc_re-customer,
        moeda       TO ti_acc_re-pymt_cur_iso.

  APPEND ti_acc_re.
ENDFORM.                    "FILL_ACCOUNT_REC
*&---------------------------------------------------------------------*
*&      Form  endform
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM fill_account_pay USING moeda.
*  ADD 1 TO nr_acc_pay .
  ADD 1 TO nr_acc_gl .
  MOVE:  nr_acc_gl  TO ti_acc_pa-itemno_acc,
*         nr_acc_pay  TO ti_acc_pa-itemno_acc,
          p_nfon TO ti_acc_pa-vendor_no,
          moeda TO  ti_acc_pa-pymt_cur_iso  .
  APPEND ti_acc_pa.
ENDFORM.                    "fill_account_pay

*&---------------------------------------------------------------------*
*&      Form  fill_currency_amo
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM fill_currency_amo USING moeda montante.
  ADD 1 TO nr_curr_amo.
  MOVE:  nr_curr_amo TO ti_curr_amo-itemno_acc,
         moeda TO ti_curr_amo-currency,
         moeda TO ti_curr_amo-currency_iso,
         montante   TO ti_curr_amo-amt_doccur.
  APPEND ti_curr_amo.
ENDFORM.                    "fill_currency_amo
*&---------------------------------------------------------------------*
*&      Form  asinar_conta
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM asinar_conta.

  CLEAR zintptggpl.
  SELECT SINGLE * FROM zintptggpl
     WHERE  grclass  = ti_sal_orig-gkstar.

ENDFORM.                    "asinar_conta
*&---------------------------------------------------------------------*
*&      Form  emp_origen
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      -->OP         text
*----------------------------------------------------------------------*
FORM emp_origen USING op.
  CLEAR ti_sal_orig.
  REFRESH ti_sal_orig.

  IF op = 'CHECK' .
    CLEAR:  nr_acc_gl, nr_acc_rec, nr_acc_pay, nr_curr_amo,acc_amount.
    CLEAR : ti_doc_head,ti_acc_gl,ti_acc_re,ti_curr_amo,ti_return.
    REFRESH : ti_acc_gl,ti_acc_re,ti_curr_amo,ti_return.
    LOOP AT  ti_afvc .
      IF ti_afvc-gkstar IS INITIAL.
        MOVE : '001' TO ti_afvc-err_nr,
               'Grupo de Classe de Custo não foi atribuido' TO ti_afvc-msg_err_o,
                icon_red_light TO ti_afvc-status_o ,
               'Grupo de Classe de Custo não foi atribuido' TO ti_afvc-msg_err_d,
               icon_red_light TO ti_afvc-status_d .
        MODIFY ti_afvc.
      ELSE.
        MOVE-CORRESPONDING : ti_afvc TO ti_sal_orig.
        APPEND ti_sal_orig.
      ENDIF.
    ENDLOOP.
  ENDIF.

  IF op = 'POST' .
    READ TABLE ti_afvc INTO ln_ti_afvc WITH KEY sel = 'X'.
    IF sy-subrc <> 0.
      MESSAGE 'Deve selecionar ao menos um registo para processar' TYPE 'S'.
    ELSE.
      CLEAR:  nr_acc_gl, nr_acc_rec, nr_curr_amo,acc_amount.
      CLEAR : ti_doc_head,ti_acc_gl,ti_acc_re,ti_curr_amo,ti_return.
      REFRESH : ti_acc_gl,ti_acc_re,ti_curr_amo,ti_return.
      LOOP AT  ti_afvc WHERE sel = 'X'.
        MOVE-CORRESPONDING : ti_afvc TO ti_sal_orig.
        APPEND ti_sal_orig.
      ENDLOOP.
    ENDIF.
  ENDIF.

  LOOP AT ti_sal_orig.
    acc_amount = acc_amount + ti_sal_orig-wtgbtr.
    PERFORM asinar_conta.
    CLEAR:   ti_acc_gl, ti_curr_amo, ti_return, ti_acc_re, ti_curr_amo.
    PERFORM fill_head USING  p_buko.
    PERFORM fill_accountgl USING zintptggpl-classo  ti_sal_orig-diar_o  ti_sal_orig-activ  .
*    PERFORM fill_account_rec USING ti_sal_orig-waers.
    PERFORM fill_currency_amo USING ti_sal_orig-waers ti_sal_orig-wtgbtr.


  ENDLOOP.

  IF sy-subrc EQ 0.

    PERFORM fill_account_rec USING ti_sal_orig-waers.

    acc_amount =  - acc_amount .
    PERFORM fill_currency_amo USING ti_sal_orig-waers acc_amount.
  ENDIF.

  IF op = 'CHECK' .

    CALL FUNCTION 'BAPI_ACC_DOCUMENT_CHECK'
    EXPORTING
      documentheader    = ti_doc_head
    TABLES
      accountgl         = ti_acc_gl
      accountreceivable = ti_acc_re
*          accountpayable    = ti_acc_pa
      currencyamount    = ti_curr_amo
      return            = ti_return.
*  mensaje S RW 614 indica que el chequeo fue exitoso
    IF sy-subrc = 0.
      READ TABLE ti_return WITH KEY type = 'E'.
      IF sy-subrc = 0.
        LOOP AT  ti_afvc WHERE err_nr <> '001'.
          MOVE: icon_red_light TO ti_afvc-status_o,
                         ti_return-message TO ti_afvc-msg_err_o.
          MODIFY ti_afvc .
        ENDLOOP.
      ELSE.
        LOOP AT  ti_afvc.
          MOVE icon_yellow_light  TO ti_afvc-status_o.
          MODIFY ti_afvc .
        ENDLOOP.
      ENDIF.
    ENDIF.
  ENDIF.

  IF op = 'POST'.
    IF p_teste <>  'X'.
      CALL FUNCTION 'BAPI_ACC_DOCUMENT_POST'
        EXPORTING
          documentheader    = ti_doc_head
        TABLES
          accountgl         = ti_acc_gl
          accountreceivable = ti_acc_re
          currencyamount    = ti_curr_amo
          return            = ti_return.
      IF sy-subrc = 0.
        LOOP AT ti_return WHERE type = 'E'
                            AND number <> '609'.
          EXIT.
        ENDLOOP.
        IF sy-subrc = 0.
          LOOP AT  ti_afvc WHERE sel = 'X'.
            MOVE: icon_red_light TO ti_afvc-status_o,
                  ti_return-message TO ti_afvc-msg_err_o.
            MODIFY ti_afvc .
          ENDLOOP.
        ELSE.
          LOOP AT  ti_afvc WHERE sel = 'X'.
            MOVE: icon_green_light  TO ti_afvc-status_o,
                  ti_return-message TO ti_afvc-msg_err_o.
            MODIFY ti_afvc .
          ENDLOOP.
        ENDIF.
      ENDIF.
    ENDIF.
  ENDIF.
ENDFORM.                    "emp_origen
*&---------------------------------------------------------------------*
*&      Form  emp_destino
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      -->OP         text
*----------------------------------------------------------------------*
FORM emp_destino USING op .
  CLEAR ti_sal_orig.
  REFRESH ti_sal_orig.
  IF op = 'CHECK' .
    CLEAR:  nr_acc_gl, nr_acc_pay, nr_curr_amo,acc_amount.
    CLEAR : ti_doc_head,ti_acc_gl,ti_acc_pa,ti_curr_amo,ti_return.
    REFRESH : ti_acc_gl,ti_acc_pa,ti_curr_amo,ti_return.
    LOOP AT  ti_afvc  .
      IF ti_afvc-gkstar IS INITIAL.
        MOVE : '001' TO ti_afvc-err_nr,
               'Grupo de Classe de Custo não foi atribuido' TO ti_afvc-msg_err_o,
                icon_red_light TO ti_afvc-status_o ,
               'Grupo de Classe de Custo não foi atribuido' TO ti_afvc-msg_err_d,
               icon_red_light TO ti_afvc-status_d .
        MODIFY ti_afvc.
      ELSE.
        MOVE-CORRESPONDING : ti_afvc TO ti_sal_orig.
        APPEND ti_sal_orig.
      ENDIF.
    ENDLOOP.
  ENDIF.
  IF op = 'POST' .

    READ TABLE ti_afvc INTO ln_ti_afvc WITH KEY sel = 'X'.
    IF sy-subrc <> 0.
      MESSAGE 'Deve selecionar ao menos um registo para processar' TYPE 'S'.
    ELSE.
      CLEAR:  nr_acc_gl, nr_acc_pay, nr_curr_amo,acc_amount.
      CLEAR : ti_doc_head,ti_acc_gl,ti_acc_pa,ti_curr_amo,ti_return.
      REFRESH : ti_acc_gl,ti_acc_pa,ti_curr_amo,ti_return.
      LOOP AT  ti_afvc WHERE sel = 'X'.
        MOVE-CORRESPONDING : ti_afvc TO ti_sal_orig.
        APPEND ti_sal_orig.
      ENDLOOP.
    ENDIF.
  ENDIF.
  LOOP AT ti_sal_orig.
    acc_amount = acc_amount + ti_sal_orig-wtgbtr.
    PERFORM asinar_conta.
    CLEAR:   ti_acc_gl, ti_curr_amo, ti_return, ti_acc_pa, ti_curr_amo.
    PERFORM fill_head USING  p_bukd.
    PERFORM fill_accountgl USING zintptggpl-classo  ti_sal_orig-diar_d  ti_sal_orig-activ  .
*    PERFORM fill_account_pay USING ti_sal_orig-waers.
    PERFORM fill_currency_amo USING ti_sal_orig-waers ti_sal_orig-wtgbtr.

  ENDLOOP.

  IF sy-subrc EQ 0.
    PERFORM fill_account_pay USING ti_sal_orig-waers.
    acc_amount =  - acc_amount .
    PERFORM fill_currency_amo USING ti_sal_orig-waers acc_amount.
  ENDIF.

  IF op = 'CHECK' .
    CALL FUNCTION 'BAPI_ACC_DOCUMENT_CHECK'
       EXPORTING
         documentheader    = ti_doc_head
       TABLES
         accountgl         = ti_acc_gl
*          accountreceivable = ti_acc_re
         accountpayable    = ti_acc_pa
         currencyamount    = ti_curr_amo
         return            = ti_return.

    IF sy-subrc = 0.
      LOOP AT ti_return WHERE type = 'E'
                          AND number <> '609'.
        EXIT.
      ENDLOOP.
      IF sy-subrc = 0.
        LOOP AT  ti_afvc.
          MOVE: icon_red_light TO ti_afvc-status_d,
                         ti_return-message TO ti_afvc-msg_err_d.
          MODIFY ti_afvc .
        ENDLOOP.
      ELSE.
        LOOP AT  ti_afvc.
          MOVE icon_yellow_light  TO ti_afvc-status_d.
          MODIFY ti_afvc .
        ENDLOOP.
      ENDIF.
    ENDIF.
  ENDIF.
  IF op = 'POST' .
    CALL FUNCTION 'BAPI_ACC_DOCUMENT_POST'
      EXPORTING
        documentheader = ti_doc_head
      TABLES
        accountgl      = ti_acc_gl
        accountpayable = ti_acc_pa
        currencyamount = ti_curr_amo
        return         = ti_return.

    IF sy-subrc = 0.
      LOOP AT ti_return WHERE type = 'E'
                          AND number <> '609'.
        EXIT.
      ENDLOOP.
      IF sy-subrc = 0.
        LOOP AT  ti_afvc WHERE sel = 'X'.
          MOVE: icon_red_light TO ti_afvc-status_d,
                         ti_return-message TO ti_afvc-msg_err_d.
          MODIFY ti_afvc .
        ENDLOOP.
      ELSE.
        LOOP AT  ti_afvc WHERE sel = 'X'.
          MOVE: icon_green_light  TO ti_afvc-status_d,
                ti_return-message TO ti_afvc-msg_err_d.
          MODIFY ti_afvc .
        ENDLOOP.
      ENDIF.
    ENDIF.
  ENDIF.
*           IF sy-subrc = 0.
*              DATA : p_overw  TYPE  c,
*                     status_act TYPE c.
*             MOVE :   ti_afvc-gjahr_o   TO ti_verifica-EXERCICIO,
*                      ti_afvc-belnr_o   TO ti_verifica-DOCUMENTO,
*                      p_buko            to TI_VERIFICA-EMPRESA  ,
*                      TI_AFVC-objnr_n    TO TI_VERIFICA-OBJETO.
*             append ti_verifica. *
*            ENDIF.
ENDFORM.                    "emp_destino

Read only

0 Likes
5,145

i modified the fieldcatalog. just copy paste this and test it once.

CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'STATUS_O'.
  fieldcat_ln-seltext_l = 'Status Origen'.
  fieldcat_ln-key = space.
  fieldcat_ln-tabname = 'TI_AFVC_2'.
*  fieldcat_ln-ref_tabname   = 'ZINCLUI_EXCLUI'.  "wrong
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'PROJN'.
  fieldcat_ln-seltext_l = 'Elemento PEP Antigo'.
  fieldcat_ln-key = space.
  fieldcat_ln-tabname = 'TI_AFVC_2'.  
  fieldcat_ln-ref_tabname   = 'AFVC'.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'OBJNR'.
  fieldcat_ln-seltext_l = 'Nº objeto Antigo'.
  fieldcat_ln-key = space.
  fieldcat_ln-tabname = 'TI_AFVC_2'.    
  fieldcat_ln-ref_tabname   = 'AFVC'.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'BUKRS_O '.
  fieldcat_ln-seltext_l = 'Empresa Origen '.
  fieldcat_ln-key = space.
  fieldcat_ln-tabname = 'TI_AFVC_2'.    
  fieldcat_ln-ref_tabname   = 'BSEG'.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'BELNR_O'.
  fieldcat_ln-seltext_l = 'Documento Origen '.
  fieldcat_ln-key = space.
  fieldcat_ln-tabname = 'TI_AFVC_2'.    
  fieldcat_ln-ref_tabname   = 'BSEG'.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'GJHAR_O'.
  fieldcat_ln-seltext_l = 'Ejercicio Origen'.
  fieldcat_ln-tabname = 'TI_AFVC_2'.    
  fieldcat_ln-key = space.
  fieldcat_ln-ref_tabname   = 'BSEG'.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'MSG_ERR_O'.
  fieldcat_ln-seltext_l = 'Mensagem Origen'.
  fieldcat_ln-tabname = 'TI_AFVC_2'.  
  fieldcat_ln-key = space.
 
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'GKSTAR'.
  fieldcat_ln-seltext_l = 'Grupo Classe de custo'.
  fieldcat_ln-key = space.
  fieldcat_ln-tabname = 'TI_AFVC_2'.    
  fieldcat_ln-ref_tabname = 'SETLEAF'.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'ACTIV'.
  fieldcat_ln-seltext_l = 'Nº operação'.
*  fieldcat_ln-ref_tabname = 'BAPIACGL09'.
  fieldcat_ln-tabname = 'TI_AFVC_2'.    
  fieldcat_ln-key = space.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.
 
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'WTGBTR'.
  fieldcat_ln-seltext_l = 'Valor/MT'.
  fieldcat_ln-ref_tabname   = 'COEP'.
  fieldcat_ln-cfieldname   = 'WAERS'.  "unit field , it should be there in internal table
  fieldcat_ln-ctabname  = 'TI_AFVC_2'. "use your internal table name
  fieldcat_ln-ref_fieldname = 'WTGBTR'.
  fieldcat_ln-outputlen = '10'.
 
  APPEND fieldcat_ln TO fieldcat.
 
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'WAERS'.
  fieldcat_ln-seltext_l = 'Moeda'.
  fieldcat_ln-ref_tabname = 'COEP'.
  fieldcat_ln-tabname = 'TI_AFVC_2'.    
  fieldcat_ln-key = space.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'STATUS_D'.
  fieldcat_ln-seltext_l = 'Status Destino'.
  fieldcat_ln-key = space.
*  fieldcat_ln-ref_tabname   = 'ZINCLUI_EXCLUI'.
  fieldcat_ln-tabname = 'TI_AFVC_2'.  
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'PROJN_N'.
  fieldcat_ln-seltext_l = 'Elemento PEP Novo'.
  fieldcat_ln-key = space.
  fieldcat_ln-ref_tabname   = 'AFVC'.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'OBJNR'.
  fieldcat_ln-seltext_l = 'Nº objeto Novo'.
  fieldcat_ln-ref_tabname   = 'AFVC'.
  fieldcat_ln-key = space.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'BUKRS_D '.
  fieldcat_ln-seltext_l = 'Empresa Destino '.
  fieldcat_ln-key = space.
  fieldcat_ln-ref_tabname   = 'BSEG'.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'BELNR_D'.
  fieldcat_ln-seltext_l = 'Documento Destino'.
  fieldcat_ln-ref_tabname   = 'BSEG'.
  fieldcat_ln-key = space.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'GJHAR_D'.
  fieldcat_ln-seltext_l = 'Ejercicio Destino'.
  fieldcat_ln-ref_tabname   = 'BSEG'.
  fieldcat_ln-key = space.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'KSTAR_D'.
  fieldcat_ln-seltext_l = 'Classe de custo Destino'.
  fieldcat_ln-key = space.
  fieldcat_ln-ref_tabname = 'SETLEAF'.
  fieldcat_ln-tabname = 'TI_AFVC_2'.  
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'MSG_ERR_D'.
  fieldcat_ln-seltext_l = 'Mensagem Destino'.
  fieldcat_ln-key = space.
  fieldcat_ln-tabname = 'TI_AFVC_2'.    
*  fieldcat_ln-ref_tabname =  'BAPIRET2'.
*  fieldcat_ln-no_out = 'X'.
  APPEND fieldcat_ln TO fieldcat.

Read only

0 Likes
5,145

Vijay , believe or not , is not working , I got the same error

Read only

0 Likes
5,145

i am not able to test the same, since you are using some custom objects in your code.

CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'STATUS_O'.
  fieldcat_ln-seltext_l = 'Status Origen'.
  fieldcat_ln-tabname = 'TI_AFVC_2'.
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'PROJN'.
  fieldcat_ln-seltext_l = 'Elemento PEP Antigo'.
  fieldcat_ln-tabname = 'TI_AFVC_2'.  
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'OBJNR'.
  fieldcat_ln-seltext_l = 'Nº objeto Antigo'.
  fieldcat_ln-tabname = 'TI_AFVC_2'.    
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'BUKRS_O '.
  fieldcat_ln-seltext_l = 'Empresa Origen '.
  fieldcat_ln-tabname = 'TI_AFVC_2'.    
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'BELNR_O'.
  fieldcat_ln-seltext_l = 'Documento Origen '.
  fieldcat_ln-tabname = 'TI_AFVC_2'.    
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'GJHAR_O'.
  fieldcat_ln-seltext_l = 'Ejercicio Origen'.
  fieldcat_ln-tabname = 'TI_AFVC_2'.    
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'MSG_ERR_O'.
  fieldcat_ln-seltext_l = 'Mensagem Origen'.
  fieldcat_ln-tabname = 'TI_AFVC_2'.  
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'GKSTAR'.
  fieldcat_ln-seltext_l = 'Grupo Classe de custo'.
  fieldcat_ln-tabname = 'TI_AFVC_2'.    
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'ACTIV'.
  fieldcat_ln-seltext_l = 'Nº operação'.
  fieldcat_ln-tabname = 'TI_AFVC_2'.    
  APPEND fieldcat_ln TO fieldcat.
 
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'WTGBTR'.
  fieldcat_ln-seltext_l = 'Valor/MT'.
  fieldcat_ln-ref_tabname   = 'COEP'.
  fieldcat_ln-cfieldname   = 'WAERS'.  "
  fieldcat_ln-ctabname  = 'TI_AFVC_2'. "
  fieldcat_ln-ref_fieldname = 'WTGBTR'.
  fieldcat_ln-outputlen = '10'.
   APPEND fieldcat_ln TO fieldcat.
 
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'WAERS'.
  fieldcat_ln-seltext_l = 'Moeda'.
  fieldcat_ln-tabname = 'TI_AFVC_2'.    
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'STATUS_D'.
  fieldcat_ln-seltext_l = 'Status Destino'.
  fieldcat_ln-tabname = 'TI_AFVC_2'.  
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'PROJN_N'.
  fieldcat_ln-seltext_l = 'Elemento PEP Novo'.
  fieldcat_ln-key = space.
  fieldcat_ln-tabname = 'TI_AFVC_2'.  
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'OBJNR'.
  fieldcat_ln-seltext_l = 'Nº objeto Novo'.
  fieldcat_ln-tabname = 'TI_AFVC_2'.  
 APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'BUKRS_D '.
  fieldcat_ln-seltext_l = 'Empresa Destino '.
  fieldcat_ln-tabname = 'TI_AFVC_2'.  
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'BELNR_D'.
  fieldcat_ln-seltext_l = 'Documento Destino'.
  fieldcat_ln-tabname = 'TI_AFVC_2'.  
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'GJHAR_D'.
  fieldcat_ln-seltext_l = 'Ejercicio Destino'.
  fieldcat_ln-tabname = 'TI_AFVC_2'.  
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'KSTAR_D'.
  fieldcat_ln-seltext_l = 'Classe de custo Destino'.
  fieldcat_ln-key = space.
  fieldcat_ln-tabname = 'TI_AFVC_2'.  
  APPEND fieldcat_ln TO fieldcat.
 
  CLEAR fieldcat_ln.
  fieldcat_ln-fieldname = 'MSG_ERR_D'.
  fieldcat_ln-seltext_l = 'Mensagem Destino'.
  fieldcat_ln-tabname = 'TI_AFVC_2'.    
  APPEND fieldcat_ln TO fieldcat.

This is my final Try. and you replace the fieldcat code with the above fieldcatalog code.

Read only

0 Likes
5,145

Not yet . Thank you for your help anyway . I´ll try to negociate with my costumer no to use the button ;).

Read only

0 Likes
5,145

it should work. i am not sure why it is not working in your case..?

Read only

0 Likes
5,145

Hit there, I had GJHAR instead of GJAHR

*  CLEAR fieldcat_ln.
*  fieldcat_ln-fieldname = 'GJHAR_D'.
*  fieldcat_ln-seltext_l = 'Ejercicio Destino'.
*  fieldcat_ln-tabname = 'TI_AFVC_2'.
*  APPEND fieldcat_ln TO fieldcat.


 *CLEAR fieldcat_ln.
 *fieldcat_ln-fieldname = 'GJHAR_O'.
 *fieldcat_ln-seltext_l = 'Ejercicio Origen'.
 *fieldcat_ln-tabname = 'TI_AFVC_2'.
 *APPEND fieldcat_ln TO fieldcat.

silly me

Read only

Former Member
0 Likes
5,145

I´ve already found the solution to my problem.