<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: fico report in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/fico-report/m-p/3313123#M793539</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;H para.&lt;/P&gt;&lt;P&gt;this is body of report.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Report  RFGLBALANCE message-id FDBL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...tables.............................................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;tables: SKC1A,&lt;/P&gt;&lt;P&gt;        SKC1C,&lt;/P&gt;&lt;P&gt;        RF42B,&lt;/P&gt;&lt;P&gt;        SSCRFIELDS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...selections.........................................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select-options: SO_SAKNR for RF42B-SAKNR memory id SAK&lt;/P&gt;&lt;P&gt;                             matchcode object SAKO&lt;/P&gt;&lt;P&gt;                             visible length 10,&lt;/P&gt;&lt;P&gt;                SO_BUKRS for SKC1C-BUKRS memory id BUK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;parameters:     GP_GJAHR like SKC1C-GJAHR memory id GJR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select-options: SO_GSBER for RF42B-GSBER memory id GSB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;parameters:     GP_CURTP like RFPDO2-ALLGCRTP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;selection-screen function key 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...selection screen for processing of worklists.......................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;selection-screen begin of screen 2000.&lt;/P&gt;&lt;P&gt;selection-screen begin of block ACCOUNT with frame title TEXT-010.&lt;/P&gt;&lt;P&gt;parameters: GP_WLSAK like RF42B-IDNTS.&lt;/P&gt;&lt;P&gt;select-options: SO_WLSAK for SKC1A-SAKNR memory id SAK.&lt;/P&gt;&lt;P&gt;selection-screen end of block ACCOUNT.&lt;/P&gt;&lt;P&gt;selection-screen begin of block COMPANY with frame title TEXT-011.&lt;/P&gt;&lt;P&gt;parameters: GP_WLBUK like RF42B-IDNTB.&lt;/P&gt;&lt;P&gt;select-options: SO_WLBUK for SKC1A-BUKRS memory id BUK.&lt;/P&gt;&lt;P&gt;selection-screen end of block COMPANY.&lt;/P&gt;&lt;P&gt;parameters: GP_GJHR2 type GJAHR memory id GJR.&lt;/P&gt;&lt;P&gt;select-options: SO_GSBR2 for SKC1C-GSBER.&lt;/P&gt;&lt;P&gt;parameters:     GP_CRTP2 like RFPDO2-ALLGCRTP.&lt;/P&gt;&lt;P&gt;selection-screen function key 2.&lt;/P&gt;&lt;P&gt;selection-screen end of screen 2000.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...internal data......................................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;constants: GC_LDB type TRDIR-LDBNAME value 'SDF',&lt;/P&gt;&lt;P&gt;           GC_KOART type KOART       value 'S'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: LS_PARAMS like RSPARAMS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: begin of LS_SAKNR,&lt;/P&gt;&lt;P&gt;        SIGN(1)   type C,&lt;/P&gt;&lt;P&gt;        OPTION(2) type C,&lt;/P&gt;&lt;P&gt;        LOW       type SAKNR,&lt;/P&gt;&lt;P&gt;        HIGH      type SAKNR,&lt;/P&gt;&lt;P&gt;      end of LS_SAKNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...internal data common for all account types.........................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;include RFBALANCEDATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...initialization.....................................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;initialization.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...initialize data table..............................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  refresh LT_BALANCE_DATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...remove user command for batch and print jobs.......................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform CHANGE_STATUS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...set text for additional function keys..............................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SSCRFIELDS-FUNCTXT_01 = TEXT-005.&lt;/P&gt;&lt;P&gt;  SSCRFIELDS-FUNCTXT_02 = TEXT-006.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...check selections...................................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;at selection-screen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...process user command...............................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  case SSCRFIELDS-UCOMM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    when 'ONLI'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...get local range for g/l account....................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      if not GP_WLSAK is initial.&lt;/P&gt;&lt;P&gt;        perform GET_RANGE_FROM_WORKLIST tables GT_RANGE&lt;/P&gt;&lt;P&gt;                                        using  GP_WLSAK&lt;/P&gt;&lt;P&gt;                                               'SAKNR'.&lt;/P&gt;&lt;P&gt;        refresh SO_WLSAK.&lt;/P&gt;&lt;P&gt;        loop at GT_RANGE.&lt;/P&gt;&lt;P&gt;          move-corresponding GT_RANGE to SO_WLSAK.&lt;/P&gt;&lt;P&gt;          append SO_WLSAK.&lt;/P&gt;&lt;P&gt;        endloop.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;      refresh LR_SAKNR.&lt;/P&gt;&lt;P&gt;      append lines of SO_WLSAK to LR_SAKNR.&lt;/P&gt;&lt;P&gt;      loop at SO_SAKNR.&lt;/P&gt;&lt;P&gt;        LS_SAKNR-SIGN   = SO_SAKNR-SIGN.&lt;/P&gt;&lt;P&gt;        LS_SAKNR-OPTION = SO_SAKNR-OPTION.&lt;/P&gt;&lt;P&gt;        if SO_SAKNR-LOW cn '0123456789'.&lt;/P&gt;&lt;P&gt;          LS_SAKNR-LOW = SO_SAKNR-LOW.&lt;/P&gt;&lt;P&gt;        else.&lt;/P&gt;&lt;P&gt;          LS_SAKNR-LOW    = SO_SAKNR-LOW+6.&lt;/P&gt;&lt;P&gt;        endif.&lt;/P&gt;&lt;P&gt;        if SO_SAKNR-HIGH cn '0123456789'.&lt;/P&gt;&lt;P&gt;          LS_SAKNR-HIGH = SO_SAKNR-HIGH.&lt;/P&gt;&lt;P&gt;        else.&lt;/P&gt;&lt;P&gt;          LS_SAKNR-HIGH   = SO_SAKNR-HIGH+6.&lt;/P&gt;&lt;P&gt;        endif.&lt;/P&gt;&lt;P&gt;        append LS_SAKNR to LR_SAKNR.&lt;/P&gt;&lt;P&gt;      endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...check, if at least one account has been specified..................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      if LR_SAKNR[] is initial.&lt;/P&gt;&lt;P&gt;        clear SSCRFIELDS-UCOMM.&lt;/P&gt;&lt;P&gt;        refresh LR_SAKNR.&lt;/P&gt;&lt;P&gt;        message E002.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...get local range for company code...................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      if not GP_WLBUK is initial.&lt;/P&gt;&lt;P&gt;        perform GET_RANGE_FROM_WORKLIST tables GT_RANGE&lt;/P&gt;&lt;P&gt;                                        using  GP_WLBUK&lt;/P&gt;&lt;P&gt;                                               'BUKRS'.&lt;/P&gt;&lt;P&gt;        refresh SO_WLBUK.&lt;/P&gt;&lt;P&gt;        loop at GT_RANGE.&lt;/P&gt;&lt;P&gt;          move-corresponding GT_RANGE to SO_WLBUK.&lt;/P&gt;&lt;P&gt;          append SO_WLBUK.&lt;/P&gt;&lt;P&gt;        endloop.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;      refresh LR_BUKRS.&lt;/P&gt;&lt;P&gt;      append lines of SO_WLBUK to LR_BUKRS.&lt;/P&gt;&lt;P&gt;      append lines of SO_BUKRS to LR_BUKRS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      if LR_BUKRS[] is initial.&lt;/P&gt;&lt;P&gt;        refresh LR_SAKNR.&lt;/P&gt;&lt;P&gt;        refresh LR_BUKRS.&lt;/P&gt;&lt;P&gt;        clear SSCRFIELDS-UCOMM.&lt;/P&gt;&lt;P&gt;        message E007.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...get local range for fiscal year....................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      LS_GJAHR-SIGN   = 'I'.&lt;/P&gt;&lt;P&gt;      LS_GJAHR-OPTION = 'EQ'.&lt;/P&gt;&lt;P&gt;      if GP_GJAHR is initial.&lt;/P&gt;&lt;P&gt;        LS_GJAHR-LOW = GP_GJHR2.&lt;/P&gt;&lt;P&gt;      else.&lt;/P&gt;&lt;P&gt;        LS_GJAHR-LOW    = GP_GJAHR.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;      clear LS_GJAHR-HIGH.&lt;/P&gt;&lt;P&gt;      if not LS_GJAHR-LOW is initial.&lt;/P&gt;&lt;P&gt;        append LS_GJAHR to LR_GJAHR.&lt;/P&gt;&lt;P&gt;      else.&lt;/P&gt;&lt;P&gt;        clear SSCRFIELDS-UCOMM.&lt;/P&gt;&lt;P&gt;        refresh LR_SAKNR.&lt;/P&gt;&lt;P&gt;        refresh LR_BUKRS.&lt;/P&gt;&lt;P&gt;        message E008.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...local ranges for business areas...................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      append lines of SO_GSBER to LR_GSBER.&lt;/P&gt;&lt;P&gt;      append lines of SO_GSBR2 to LR_GSBER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...check existence of given g/l accounts.............................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      loop at LR_SAKNR transporting no fields&lt;/P&gt;&lt;P&gt;        where OPTION ne 'EQ' or&lt;/P&gt;&lt;P&gt;                SIGN ne 'I'.&lt;/P&gt;&lt;P&gt;        exit.&lt;/P&gt;&lt;P&gt;      endloop.&lt;/P&gt;&lt;P&gt;      if SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;        select SAKNR from SKB1 into table LT_SAKNR&lt;/P&gt;&lt;P&gt;               where SAKNR in LR_SAKNR&lt;/P&gt;&lt;P&gt;                 and BUKRS in LR_BUKRS.&lt;/P&gt;&lt;P&gt;      else. " worklist&lt;/P&gt;&lt;P&gt;        select SAKNR from SKB1 into table LT_SAKNR&lt;/P&gt;&lt;P&gt;               for all entries in LR_SAKNR&lt;/P&gt;&lt;P&gt;               where SAKNR eq LR_SAKNR-LOW&lt;/P&gt;&lt;P&gt;               and BUKRS in LR_BUKRS.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      if SY-SUBRC ne 0.&lt;/P&gt;&lt;P&gt;        clear SSCRFIELDS-UCOMM.&lt;/P&gt;&lt;P&gt;        refresh LR_BUKRS.&lt;/P&gt;&lt;P&gt;        refresh LR_SAKNR.&lt;/P&gt;&lt;P&gt;        refresh LR_GSBER.&lt;/P&gt;&lt;P&gt;        refresh LR_GJAHR.&lt;/P&gt;&lt;P&gt;        message E030(MSITEM).&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;      clear LT_SAKNR.&lt;/P&gt;&lt;P&gt;      refresh LT_SAKNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...check authorizations.............................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      perform CHECK_AUTHORITY_GROUPS&lt;/P&gt;&lt;P&gt;                    using LR_BUKRS&lt;/P&gt;&lt;P&gt;                          LR_SAKNR&lt;/P&gt;&lt;P&gt;                          LR_KUNNR&lt;/P&gt;&lt;P&gt;                          LR_LIFNR&lt;/P&gt;&lt;P&gt;                          GC_KOART.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...switch on worklists..............................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    when 'FC01'.&lt;/P&gt;&lt;P&gt;      leave to transaction 'FS10NA'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...switch off worklists.............................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    when 'FC02'.&lt;/P&gt;&lt;P&gt;      leave to transaction 'FS10N'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  endcase.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...start-of-selection.................................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;start-of-selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...get valid currency type............................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if GP_CRTP2 is initial.&lt;/P&gt;&lt;P&gt;    LD_CURTP = GP_CURTP.&lt;/P&gt;&lt;P&gt;  else.&lt;/P&gt;&lt;P&gt;    LD_CURTP = GP_CRTP2.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;  if LD_CURTP is initial or LD_CURTP eq '00'.&lt;/P&gt;&lt;P&gt;    LD_CURTP = '10'.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...check, if all company codes given use the same fiscal year.........&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform CHECK_FISCAL_YEARS using LR_BUKRS&lt;/P&gt;&lt;P&gt;                                   LD_RC.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if LD_RC ne 0.&lt;/P&gt;&lt;P&gt;    message I021.&lt;/P&gt;&lt;P&gt;    return.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...check, if display currency is the same for all company codes.....&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...selected.........................................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform CHECK_CURTP tables LR_BUKRS&lt;/P&gt;&lt;P&gt;                      using  LD_CURTP&lt;/P&gt;&lt;P&gt;                             LD_RC.&lt;/P&gt;&lt;P&gt;  if LD_RC ne 0.&lt;/P&gt;&lt;P&gt;    message I022.&lt;/P&gt;&lt;P&gt;    return.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...build table with selection criteria..............................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform BUILD_COSEL tables LT_COSEL&lt;/P&gt;&lt;P&gt;                      using  LR_BUKRS&lt;/P&gt;&lt;P&gt;                             LR_KUNNR&lt;/P&gt;&lt;P&gt;                             LR_LIFNR&lt;/P&gt;&lt;P&gt;                             LR_SAKNR&lt;/P&gt;&lt;P&gt;                             LR_GJAHR&lt;/P&gt;&lt;P&gt;                             LR_GSBER&lt;/P&gt;&lt;P&gt;                             SPACE&lt;/P&gt;&lt;P&gt;                             SPACE&lt;/P&gt;&lt;P&gt;                             SPACE&lt;/P&gt;&lt;P&gt;                             GP_WLSAK&lt;/P&gt;&lt;P&gt;                             GP_WLBUK&lt;/P&gt;&lt;P&gt;                             LD_CURTP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...build table with selections for LDB................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform BUILD_RSPARAMS tables LT_COSEL&lt;/P&gt;&lt;P&gt;                                LT_PARAMS&lt;/P&gt;&lt;P&gt;                         using  GC_LDB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LS_PARAMS-SELNAME = 'SD_CURTP'.&lt;/P&gt;&lt;P&gt;  LS_PARAMS-SIGN    = 'I'.&lt;/P&gt;&lt;P&gt;  LS_PARAMS-OPTION  = 'EQ'.&lt;/P&gt;&lt;P&gt;  LS_PARAMS-LOW     = LD_CURTP.&lt;/P&gt;&lt;P&gt;  clear LS_PARAMS-HIGH.&lt;/P&gt;&lt;P&gt;  append LS_PARAMS to LT_PARAMS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...build table with callbacks.........................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform BUILD_CALLBACK tables LT_CALLBACKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...get transaction data...............................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  call function 'LDB_PROCESS'&lt;/P&gt;&lt;P&gt;    exporting&lt;/P&gt;&lt;P&gt;      LDBNAME                     = GC_LDB&lt;/P&gt;&lt;P&gt;    tables&lt;/P&gt;&lt;P&gt;      CALLBACK                    = LT_CALLBACKS&lt;/P&gt;&lt;P&gt;      SELECTIONS                  = LT_PARAMS&lt;/P&gt;&lt;P&gt;    exceptions&lt;/P&gt;&lt;P&gt;      LDB_SELECTIONS_NOT_ACCEPTED = 4&lt;/P&gt;&lt;P&gt;      others                      = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if SY-SUBRC eq 4.&lt;/P&gt;&lt;P&gt;    message id SY-MSGID type SY-MSGTY number SY-MSGNO&lt;/P&gt;&lt;P&gt;            with SY-MSGV1 SY-MSGV2.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;end-of-selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...check, if data has been fount at all.............................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if LT_BALANCE_DATA is initial.&lt;/P&gt;&lt;P&gt;    message I020 with GP_GJAHR.&lt;/P&gt;&lt;P&gt;    return.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...display data.....................................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  call function 'FDBL_BALANCES_DISPLAY'&lt;/P&gt;&lt;P&gt;    exporting&lt;/P&gt;&lt;P&gt;      PT_COSEL        = LT_COSEL&lt;/P&gt;&lt;P&gt;    changing&lt;/P&gt;&lt;P&gt;      PT_BALANCE_DATA = LT_BALANCE_DATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  include RFBALANCE.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 14 Mar 2008 04:32:30 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-03-14T04:32:30Z</dc:date>
    <item>
      <title>fico report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/fico-report/m-p/3313121#M793537</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi every body,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i have a fico report.&lt;/P&gt;&lt;P&gt;i have to get the output same as the transaction FS10N.&lt;/P&gt;&lt;P&gt;the problem is debit and credit is not tallying.&lt;/P&gt;&lt;P&gt;dosome body have this fico report?&lt;/P&gt;&lt;P&gt;can anybody assist me where i can find the fico reports.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;                                                           thanks.&lt;/P&gt;&lt;P&gt;                                                             raju.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 03 Feb 2008 11:48:21 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/fico-report/m-p/3313121#M793537</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-02-03T11:48:21Z</dc:date>
    </item>
    <item>
      <title>Re: fico report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/fico-report/m-p/3313122#M793538</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Pls refer the report for Vendor Performance report.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REPORT YMS_VENDORPERFORMANCE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES : BSIK, BAPIFVDEXP_VZZBEPP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : T_BSIK LIKE BSIK OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;T_BSAK LIKE BSAK OCCURS 0 WITH HEADER LINE,&lt;/P&gt;&lt;P&gt;DAYS LIKE BAPIFVDEXP_VZZBEPP-NUM4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF T_LFA1 OCCURS 0,&lt;/P&gt;&lt;P&gt;LIFNR LIKE LFA1-LIFNR,&lt;/P&gt;&lt;P&gt;NAME1 LIKE LFA1-NAME1,&lt;/P&gt;&lt;P&gt;ADRNR LIKE LFA1-ADRNR,&lt;/P&gt;&lt;P&gt;END OF T_LFA1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF T_ADRC OCCURS 0,&lt;/P&gt;&lt;P&gt;ADRNR LIKE LFA1-ADRNR,&lt;/P&gt;&lt;P&gt;STREET LIKE ADRC-STREET,&lt;/P&gt;&lt;P&gt;CITY1 LIKE ADRC-CITY1,&lt;/P&gt;&lt;P&gt;END OF T_ADRC.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF T_BSEG OCCURS 0,&lt;/P&gt;&lt;P&gt;ZFBDT LIKE BSEG-ZFBDT,&lt;/P&gt;&lt;P&gt;KOART LIKE BSEG-KOART,&lt;/P&gt;&lt;P&gt;KOSTL LIKE BSEG-KOSTL,&lt;/P&gt;&lt;P&gt;PROJK LIKE BSEG-PROJK,&lt;/P&gt;&lt;P&gt;END OF T_BSEG.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF T_PRPS OCCURS 0,&lt;/P&gt;&lt;P&gt;POSID LIKE PRPS-POSID,&lt;/P&gt;&lt;P&gt;OBJNR LIKE PRPS-OBJNR,&lt;/P&gt;&lt;P&gt;END OF T_PRPS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : T_KOSTL LIKE BSEG-KOSTL,&lt;/P&gt;&lt;P&gt;T_PROJK LIKE BSEG-PROJK,&lt;/P&gt;&lt;P&gt;TEXT(15).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF T_OUTPUT OCCURS 0,&lt;/P&gt;&lt;P&gt;LIFNR LIKE LFA1-LIFNR,&lt;/P&gt;&lt;P&gt;NAME1 LIKE LFA1-NAME1,&lt;/P&gt;&lt;P&gt;STREET LIKE ADRC-STREET,&lt;/P&gt;&lt;P&gt;CITY1 LIKE ADRC-CITY1,&lt;/P&gt;&lt;P&gt;OBJNR LIKE PRPS-OBJNR,&lt;/P&gt;&lt;P&gt;POSID LIKE PRPS-POSID,&lt;/P&gt;&lt;P&gt;KOSTL LIKE BSIK-KOSTL, " COST CENTER&lt;/P&gt;&lt;P&gt;UMSKZ LIKE BSIK-UMSKZ,&lt;/P&gt;&lt;P&gt;BELNR LIKE BSIK-BELNR,&lt;/P&gt;&lt;P&gt;BUKRS LIKE BSIK-BUKRS,&lt;/P&gt;&lt;P&gt;GJAHR LIKE BSIK-GJAHR,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;wrbtr like bsik-wrbtr, &lt;/P&gt;&lt;P&gt;DMBTR LIKE BSIK-WRBTR,&lt;/P&gt;&lt;P&gt;HKONT LIKE BSIK-HKONT,&lt;/P&gt;&lt;P&gt;DIF1 LIKE BSIK-WRBTR,&lt;/P&gt;&lt;P&gt;DIF2 LIKE BSIK-WRBTR,&lt;/P&gt;&lt;P&gt;DIF3 LIKE BSIK-WRBTR,&lt;/P&gt;&lt;P&gt;DIF4 LIKE BSIK-WRBTR,&lt;/P&gt;&lt;P&gt;DIF5 LIKE BSIK-WRBTR,&lt;/P&gt;&lt;P&gt;DAYS LIKE BAPIFVDEXP_VZZBEPP-NUM4,&lt;/P&gt;&lt;P&gt;END OF T_OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Alv data declaration &lt;/P&gt;&lt;P&gt;TYPE-POOLS : SLIS.&lt;/P&gt;&lt;P&gt;DATA :ALV_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE LIKE LINE OF ALV_FIELDCAT,&lt;/P&gt;&lt;P&gt;ALV_SORT TYPE SLIS_T_SORTINFO_ALV,&lt;/P&gt;&lt;P&gt;ALV_SORT_LINE LIKE LINE OF ALV_SORT,&lt;/P&gt;&lt;P&gt;ALV_LAYOUT TYPE SLIS_LAYOUT_ALV,&lt;/P&gt;&lt;P&gt;G_REPID LIKE SY-REPID VALUE SY-REPID,&lt;/P&gt;&lt;P&gt;ALV_STATUS_SET TYPE SLIS_FORMNAME VALUE 'ALV_STATUS_SET',&lt;/P&gt;&lt;P&gt;ALV_USER_COMM TYPE SLIS_FORMNAME VALUE 'ALV_USER_COMM',&lt;/P&gt;&lt;P&gt;GRID_TITLE TYPE LVC_TITLE,&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_ACTY TYPE SLIS_T_FIELDCAT_ALV,&lt;/P&gt;&lt;P&gt;G_SAVE,&lt;/P&gt;&lt;P&gt;GS_VARIANT LIKE DISVARIANT,&lt;/P&gt;&lt;P&gt;G_EXIT_CAUSED_BY_CALLER TYPE C,&lt;/P&gt;&lt;P&gt;GS_EXIT_CAUSED_BY_USER TYPE SLIS_EXIT_BY_USER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: ALV_FIELDCAT_LINE_ACTY LIKE LINE OF ALV_FIELDCAT_ACTY,&lt;/P&gt;&lt;P&gt;ALV_LAYOUT_ACTY TYPE SLIS_LAYOUT_ALV,&lt;/P&gt;&lt;P&gt;GT_LIST_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER,&lt;/P&gt;&lt;P&gt;GT_EVENTS TYPE SLIS_T_EVENT,&lt;/P&gt;&lt;P&gt;MESSAGE TYPE STRING,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;R_UCOMM LIKE SY-UCOMM,&lt;/P&gt;&lt;P&gt;RS_SELFIELD TYPE SLIS_SELFIELD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONSTANTS:&lt;/P&gt;&lt;P&gt;GC_FORMNAME_TOP_OF_PAGE TYPE SLIS_FORMNAME VALUE 'TOP_OF_PAGE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS : S_BUKRS FOR BSIK-BUKRS,&lt;/P&gt;&lt;P&gt;S_GJAHR FOR BSIK-GJAHR,&lt;/P&gt;&lt;P&gt;S_LIFNR FOR BSIK-LIFNR,&lt;/P&gt;&lt;P&gt;S_UMSKZ FOR BSIK-UMSKZ.&lt;/P&gt;&lt;P&gt;PARAMETERS : P_AUGDT LIKE BSIK-AUGDT OBLIGATORY.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK B1.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-002.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS : S_DATE1 FOR BAPIFVDEXP_VZZBEPP-NUM4 NO-EXTENSION OBLIGATORY&lt;/P&gt;&lt;P&gt;DEFAULT 1 TO 30,&lt;/P&gt;&lt;P&gt;S_DATE2 FOR BAPIFVDEXP_VZZBEPP-NUM4 NO-EXTENSION OBLIGATORY&lt;/P&gt;&lt;P&gt;DEFAULT 30 TO 60,&lt;/P&gt;&lt;P&gt;S_DATE3 FOR BAPIFVDEXP_VZZBEPP-NUM4 NO-EXTENSION OBLIGATORY&lt;/P&gt;&lt;P&gt;DEFAULT 60 TO 90,&lt;/P&gt;&lt;P&gt;S_DATE4 FOR BAPIFVDEXP_VZZBEPP-NUM4 NO-EXTENSION OBLIGATORY&lt;/P&gt;&lt;P&gt;DEFAULT 90 TO 120,&lt;/P&gt;&lt;P&gt;S_DATE5 FOR BAPIFVDEXP_VZZBEPP-NUM4 NO-EXTENSION OBLIGATORY&lt;/P&gt;&lt;P&gt;DEFAULT 120 TO 150.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK B2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INITIALIZATION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;PERFORM FETCH_DATA.&lt;/P&gt;&lt;P&gt;PERFORM DISPLAY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form fetch_data&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt; p1 text &lt;/P&gt;&lt;P&gt;&amp;lt;-- p2 text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;FORM FETCH_DATA .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT *&lt;/P&gt;&lt;P&gt;INTO TABLE T_BSIK&lt;/P&gt;&lt;P&gt;FROM BSIK&lt;/P&gt;&lt;P&gt;WHERE BUKRS IN S_BUKRS&lt;/P&gt;&lt;P&gt;AND GJAHR IN S_GJAHR&lt;/P&gt;&lt;P&gt;AND LIFNR IN S_LIFNR&lt;/P&gt;&lt;P&gt;AND UMSKZ IN S_UMSKZ&lt;/P&gt;&lt;P&gt;AND UMSKZ NOT IN ('F','P','L','G').&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AND zfbdt &amp;lt;= P_augdt. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;SELECT *&lt;/P&gt;&lt;P&gt;INTO TABLE T_BSAK&lt;/P&gt;&lt;P&gt;FROM BSAK&lt;/P&gt;&lt;P&gt;WHERE BUKRS IN S_BUKRS&lt;/P&gt;&lt;P&gt;AND GJAHR IN S_GJAHR&lt;/P&gt;&lt;P&gt;AND LIFNR IN S_LIFNR&lt;/P&gt;&lt;P&gt;AND UMSKZ IN S_UMSKZ&lt;/P&gt;&lt;P&gt;AND UMSKZ NOT IN ('F','P','L','G')&lt;/P&gt;&lt;P&gt;AND AUGDT &amp;gt; P_AUGDT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT T_BSAK.&lt;/P&gt;&lt;P&gt;MOVE-CORRESPONDING T_BSAK TO T_BSIK.&lt;/P&gt;&lt;P&gt;APPEND T_BSIK.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LOOP AT T_BSIK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if t_bsik-zfbdt is initial. &lt;/P&gt;&lt;P&gt;t_bsik-zfbdt = t_bsik-bldat. &lt;/P&gt;&lt;P&gt;modify t_bsik transporting zfbdt. &lt;/P&gt;&lt;P&gt;endif. &lt;/P&gt;&lt;P&gt;IF T_BSIK-BUDAT &amp;gt; P_AUGDT.&lt;/P&gt;&lt;P&gt;DELETE T_BSIK.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if t_bsik-umskz &amp;gt; P_augdt. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT LIFNR&lt;/P&gt;&lt;P&gt;NAME1&lt;/P&gt;&lt;P&gt;ADRNR&lt;/P&gt;&lt;P&gt;INTO TABLE T_LFA1&lt;/P&gt;&lt;P&gt;FROM LFA1&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN T_BSIK&lt;/P&gt;&lt;P&gt;WHERE LIFNR = T_BSIK-LIFNR.&lt;/P&gt;&lt;P&gt;IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;SELECT ADDRNUMBER AS ADRNR&lt;/P&gt;&lt;P&gt;STREET&lt;/P&gt;&lt;P&gt;CITY1&lt;/P&gt;&lt;P&gt;INTO TABLE T_ADRC&lt;/P&gt;&lt;P&gt;FROM ADRC&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN T_LFA1&lt;/P&gt;&lt;P&gt;WHERE ADDRNUMBER = T_LFA1-ADRNR.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;LOOP AT T_BSIK.&lt;/P&gt;&lt;P&gt;IF T_BSIK-SHKZG = 'S'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;t_bsik-WRBTR = t_bsik-WRBTR * -1. &lt;/P&gt;&lt;P&gt;T_BSIK-DMBTR = T_BSIK-DMBTR * -1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;REFRESH T_BSEG.&lt;/P&gt;&lt;P&gt;CLEAR : T_KOSTL, T_PROJK, T_OUTPUT.&lt;/P&gt;&lt;P&gt;IF T_BSIK-REBZG IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;SELECT ZFBDT&lt;/P&gt;&lt;P&gt;KOART&lt;/P&gt;&lt;P&gt;KOSTL&lt;/P&gt;&lt;P&gt;PROJK&lt;/P&gt;&lt;P&gt;INTO TABLE T_BSEG "t_bsik-ZFBDT&lt;/P&gt;&lt;P&gt;FROM BSEG&lt;/P&gt;&lt;P&gt;WHERE BUKRS = T_BSIK-BUKRS&lt;/P&gt;&lt;P&gt;AND BELNR = T_BSIK-REBZG&lt;/P&gt;&lt;P&gt;AND GJAHR = T_BSIK-REBZJ&lt;/P&gt;&lt;P&gt;AND KOART IN ('K','S').&lt;/P&gt;&lt;P&gt;LOOP AT T_BSEG.&lt;/P&gt;&lt;P&gt;IF T_BSEG-KOART = 'K' AND T_BSEG-ZFBDT IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;T_BSIK-BUDAT = T_BSEG-ZFBDT.&lt;/P&gt;&lt;P&gt;MODIFY T_BSIK TRANSPORTING BUDAT.&lt;/P&gt;&lt;P&gt;ELSEIF T_BSEG-KOART = 'S'.&lt;/P&gt;&lt;P&gt;T_KOSTL = T_BSEG-KOSTL.&lt;/P&gt;&lt;P&gt;T_PROJK = T_BSEG-PROJK.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;SELECT SINGLE KOSTL PROJK&lt;/P&gt;&lt;P&gt;INTO (T_KOSTL, T_PROJK)&lt;/P&gt;&lt;P&gt;FROM BSEG&lt;/P&gt;&lt;P&gt;WHERE BUKRS = T_BSIK-BUKRS&lt;/P&gt;&lt;P&gt;AND BELNR = T_BSIK-BELNR&lt;/P&gt;&lt;P&gt;AND GJAHR = T_BSIK-GJAHR&lt;/P&gt;&lt;P&gt;AND KOART = 'S'.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;MOVE-CORRESPONDING T_BSIK TO T_OUTPUT.&lt;/P&gt;&lt;P&gt;T_OUTPUT-KOSTL = T_KOSTL.&lt;/P&gt;&lt;P&gt;CONCATENATE 'PR' T_PROJK INTO T_OUTPUT-OBJNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;days = P_augdt - t_bsik-ZFBDT. &lt;/P&gt;&lt;P&gt;DAYS = P_AUGDT - T_BSIK-BUDAT.&lt;/P&gt;&lt;P&gt;READ TABLE T_LFA1 WITH KEY LIFNR = T_OUTPUT-LIFNR.&lt;/P&gt;&lt;P&gt;IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;T_OUTPUT-NAME1 = T_LFA1-NAME1.&lt;/P&gt;&lt;P&gt;READ TABLE T_ADRC WITH KEY ADRNR = T_LFA1-ADRNR.&lt;/P&gt;&lt;P&gt;IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;T_OUTPUT-STREET = T_ADRC-STREET.&lt;/P&gt;&lt;P&gt;T_OUTPUT-CITY1 = T_ADRC-CITY1.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;T_OUTPUT-DAYS = DAYS.&lt;/P&gt;&lt;P&gt;IF DAYS &amp;gt;= S_DATE1-LOW AND DAYS &amp;lt; S_DATE1-HIGH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;t_output-dif1 = t_bsik-wrbtr. " days. &lt;/P&gt;&lt;P&gt;T_OUTPUT-DIF1 = T_BSIK-DMBTR. " days.&lt;/P&gt;&lt;P&gt;ELSEIF DAYS &amp;gt;= S_DATE2-LOW AND DAYS &amp;lt; S_DATE2-HIGH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;t_output-dif2 = t_bsik-wrbtr. "days. &lt;/P&gt;&lt;P&gt;T_OUTPUT-DIF2 = T_BSIK-DMBTR. " days.&lt;/P&gt;&lt;P&gt;ELSEIF DAYS &amp;gt;= S_DATE3-LOW AND DAYS &amp;lt; S_DATE3-HIGH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;t_output-dif3 = t_bsik-wrbtr. "days. &lt;/P&gt;&lt;P&gt;T_OUTPUT-DIF3 = T_BSIK-DMBTR. " days.&lt;/P&gt;&lt;P&gt;ELSEIF DAYS &amp;gt;= S_DATE4-LOW AND DAYS &amp;lt; S_DATE4-HIGH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;t_output-dif4 = t_bsik-wrbtr. "days. &lt;/P&gt;&lt;P&gt;T_OUTPUT-DIF4 = T_BSIK-DMBTR. " days.&lt;/P&gt;&lt;P&gt;ELSEIF DAYS &amp;gt;= S_DATE5-LOW AND DAYS &amp;lt; S_DATE5-HIGH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;t_output-dif5 = t_bsik-wrbtr. "days. &lt;/P&gt;&lt;P&gt;T_OUTPUT-DIF5 = T_BSIK-DMBTR. " days.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;APPEND T_OUTPUT.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;IF T_OUTPUT[] IS NOT INITIAL.&lt;/P&gt;&lt;P&gt;SELECT POSID&lt;/P&gt;&lt;P&gt;OBJNR&lt;/P&gt;&lt;P&gt;INTO TABLE T_PRPS&lt;/P&gt;&lt;P&gt;FROM PRPS&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN T_OUTPUT&lt;/P&gt;&lt;P&gt;WHERE OBJNR = T_OUTPUT-OBJNR.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;LOOP AT T_OUTPUT.&lt;/P&gt;&lt;P&gt;READ TABLE T_PRPS WITH KEY OBJNR = T_OUTPUT-OBJNR.&lt;/P&gt;&lt;P&gt;IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;T_OUTPUT-POSID = T_PRPS-POSID.&lt;/P&gt;&lt;P&gt;MODIFY T_OUTPUT TRANSPORTING POSID.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " fetch_data&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form display&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt; p1 text &lt;/P&gt;&lt;P&gt;&amp;lt;-- p2 text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;FORM DISPLAY .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM BUILD_ALV_LAYOUT.&lt;/P&gt;&lt;P&gt;PERFORM S_SORT_BUILD USING ALV_SORT[].&lt;/P&gt;&lt;P&gt;PERFORM BUILD_FIELD_CATALOGS.&lt;/P&gt;&lt;P&gt;PERFORM EVENTTAB_BUILD CHANGING GT_EVENTS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SORT t_output BY . &lt;/P&gt;&lt;P&gt;G_SAVE = 'A'.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;I_CALLBACK_PROGRAM = G_REPID&lt;/P&gt;&lt;P&gt;I_CALLBACK_PF_STATUS_SET = ALV_STATUS_SET&lt;/P&gt;&lt;P&gt;I_CALLBACK_USER_COMMAND = ALV_USER_COMM&lt;/P&gt;&lt;P&gt;I_GRID_TITLE = GRID_TITLE&lt;/P&gt;&lt;P&gt;I_SAVE = G_SAVE&lt;/P&gt;&lt;P&gt;IS_VARIANT = GS_VARIANT&lt;/P&gt;&lt;P&gt;IS_LAYOUT = ALV_LAYOUT&lt;/P&gt;&lt;P&gt;IT_FIELDCAT = ALV_FIELDCAT[]&lt;/P&gt;&lt;P&gt;IT_EVENTS = GT_EVENTS[]&lt;/P&gt;&lt;P&gt;IT_SORT = ALV_SORT[]&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;E_EXIT_CAUSED_BY_CALLER = G_EXIT_CAUSED_BY_CALLER&lt;/P&gt;&lt;P&gt;ES_EXIT_CAUSED_BY_USER = GS_EXIT_CAUSED_BY_USER&lt;/P&gt;&lt;P&gt;TABLES&lt;/P&gt;&lt;P&gt;T_OUTTAB = T_OUTPUT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM ALV_USER_COMM USING R_UCOMM&lt;/P&gt;&lt;P&gt;RS_SELFIELD.&lt;/P&gt;&lt;P&gt;IF SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;IF G_EXIT_CAUSED_BY_CALLER = 'X'.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;IF GS_EXIT_CAUSED_BY_USER-BACK = 'X'. " F3&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;IF GS_EXIT_CAUSED_BY_USER-EXIT = 'X'. " F15&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;IF GS_EXIT_CAUSED_BY_USER-CANCEL = 'X'. " F12&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;*" Fatal error calling ALV&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM. " display&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form build_alv_layout&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;FORM BUILD_ALV_LAYOUT.&lt;/P&gt;&lt;P&gt;CLEAR ALV_LAYOUT.&lt;/P&gt;&lt;P&gt;ALV_LAYOUT-COLWIDTH_OPTIMIZE = 'X'. "always display full columns&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;alv_layout-box_fieldname = 'CHK'. &lt;/P&gt;&lt;P&gt;alv_layout-box_tabname = 'T_OUTPUT'. &lt;/P&gt;&lt;P&gt;ALV_LAYOUT-INFO_FIELDNAME = 'COLOR'. "color a line&lt;/P&gt;&lt;P&gt;ALV_LAYOUT-DETAIL_POPUP = 'X'.&lt;/P&gt;&lt;P&gt;ALV_LAYOUT-ZEBRA = 'X'. "Zebra output&lt;/P&gt;&lt;P&gt;ENDFORM. " build_alv_layout&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM s_sort_build * &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;........ * &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt; LT_SORT * &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------------------------" /&gt;&lt;P&gt;FORM S_SORT_BUILD USING LT_SORT TYPE SLIS_T_SORTINFO_ALV.&lt;/P&gt;&lt;P&gt;DATA: LS_SORT TYPE SLIS_SORTINFO_ALV.&lt;/P&gt;&lt;P&gt;CLEAR LS_SORT.&lt;/P&gt;&lt;P&gt;LS_SORT-SPOS = 1.&lt;/P&gt;&lt;P&gt;LS_SORT-FIELDNAME = 'LIFNR'.&lt;/P&gt;&lt;P&gt;LS_SORT-UP = 'X'.&lt;/P&gt;&lt;P&gt;LS_SORT-GROUP = 'UL'.&lt;/P&gt;&lt;P&gt;LS_SORT-SUBTOT = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;APPEND LS_SORT TO LT_SORT.&lt;/P&gt;&lt;P&gt;CLEAR LS_SORT.&lt;/P&gt;&lt;P&gt;LS_SORT-SPOS = 2.&lt;/P&gt;&lt;P&gt;LS_SORT-FIELDNAME = 'BELNR'.&lt;/P&gt;&lt;P&gt;LS_SORT-UP = 'X'.&lt;/P&gt;&lt;P&gt;LS_SORT-SUBTOT = 'X'.&lt;/P&gt;&lt;P&gt;LS_SORT-GROUP = 'UL'.&lt;/P&gt;&lt;P&gt;APPEND LS_SORT TO LT_SORT.&lt;/P&gt;&lt;P&gt;CLEAR LS_SORT.&lt;/P&gt;&lt;P&gt;ENDFORM. "s_sort_build&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form eventtab_build&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;FORM EVENTTAB_BUILD CHANGING LT_EVENTS TYPE SLIS_T_EVENT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FIELD-SYMBOLS: &amp;lt;LT_EVENTS&amp;gt; LIKE LINE OF LT_EVENTS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'REUSE_ALV_EVENTS_GET'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;I_LIST_TYPE = 0&lt;/P&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;P&gt;ET_EVENTS = LT_EVENTS&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;LIST_TYPE_WRONG = 1&lt;/P&gt;&lt;P&gt;OTHERS = 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Define TOP_OF_PAGE event &lt;/P&gt;&lt;P&gt;READ TABLE LT_EVENTS WITH KEY NAME = SLIS_EV_TOP_OF_PAGE&lt;/P&gt;&lt;P&gt;ASSIGNING &amp;lt;LT_EVENTS&amp;gt;.&lt;/P&gt;&lt;P&gt;IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;MOVE GC_FORMNAME_TOP_OF_PAGE TO &amp;lt;LT_EVENTS&amp;gt;-FORM.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " eventtab_build&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form TOP_OF_PAGE&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;FORM TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;REFRESH GT_LIST_TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;CLEAR GT_LIST_TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;PERFORM COMMENT_BUILD USING GT_LIST_TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Output GSPC logo on report header &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;IT_LIST_COMMENTARY = GT_LIST_TOP_OF_PAGE&lt;/P&gt;&lt;P&gt;I_LOGO = 'GSPC_LOGO'.&lt;/P&gt;&lt;P&gt;ENDFORM. "top_of_page&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form COMMENT_BUILD&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Build comments at top of page &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;FORM COMMENT_BUILD CHANGING GT_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER.&lt;/P&gt;&lt;P&gt;DATA: GS_LINE TYPE SLIS_LISTHEADER.&lt;/P&gt;&lt;P&gt;CLEAR GS_LINE.&lt;/P&gt;&lt;P&gt;GS_LINE-TYP = 'H'.&lt;/P&gt;&lt;P&gt;GS_LINE-INFO = 'Vendor Ageing'.&lt;/P&gt;&lt;P&gt;APPEND GS_LINE TO GT_TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR GS_LINE.&lt;/P&gt;&lt;P&gt;GS_LINE-TYP = 'S'.&lt;/P&gt;&lt;P&gt;GS_LINE-KEY = 'Report ID:'.&lt;/P&gt;&lt;P&gt;GS_LINE-INFO = SY-REPID.&lt;/P&gt;&lt;P&gt;APPEND GS_LINE TO GT_TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR GS_LINE.&lt;/P&gt;&lt;P&gt;GS_LINE-TYP = 'S'.&lt;/P&gt;&lt;P&gt;GS_LINE-KEY = 'User:'.&lt;/P&gt;&lt;P&gt;GS_LINE-INFO = SY-UNAME.&lt;/P&gt;&lt;P&gt;APPEND GS_LINE TO GT_TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR GS_LINE.&lt;/P&gt;&lt;P&gt;GS_LINE-TYP = 'S'.&lt;/P&gt;&lt;P&gt;GS_LINE-KEY = 'Date:'.&lt;/P&gt;&lt;P&gt;WRITE SY-DATUM TO GS_LINE-INFO MM/DD/YYYY.&lt;/P&gt;&lt;P&gt;APPEND GS_LINE TO GT_TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CLEAR GS_LINE.&lt;/P&gt;&lt;P&gt;GS_LINE-TYP = 'S'.&lt;/P&gt;&lt;P&gt;GS_LINE-KEY = 'Time:'.&lt;/P&gt;&lt;P&gt;WRITE SY-UZEIT TO GS_LINE-INFO USING EDIT MASK '__:__:__'.&lt;/P&gt;&lt;P&gt;APPEND GS_LINE TO GT_TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;CLEAR GS_LINE.&lt;/P&gt;&lt;P&gt;GS_LINE-TYP = 'S'.&lt;/P&gt;&lt;P&gt;GS_LINE-KEY = ''.&lt;/P&gt;&lt;P&gt;WRITE ' '.&lt;/P&gt;&lt;P&gt;APPEND GS_LINE TO GT_TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Output data from selection screen &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "comment_build&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;*Build ALV Summary field catalog&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form build_field_catalogs&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;FORM BUILD_FIELD_CATALOGS.&lt;/P&gt;&lt;P&gt;CLEAR: ALV_FIELDCAT.&lt;/P&gt;&lt;P&gt;REFRESH: ALV_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Vendor Number &lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-TABNAME = 'T_OUTPUT'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-SELTEXT_L = 'Vendor Number'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;alv_fieldcat_line-hotspot = 'X'. &lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-FIELDNAME = 'LIFNR'.&lt;/P&gt;&lt;P&gt;APPEND ALV_FIELDCAT_LINE TO ALV_FIELDCAT.&lt;/P&gt;&lt;P&gt;CLEAR ALV_FIELDCAT_LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Vendor Name &lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-TABNAME = 'T_OUTPUT'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-SELTEXT_L = 'Vendor Name'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-FIELDNAME = 'NAME1'.&lt;/P&gt;&lt;P&gt;APPEND ALV_FIELDCAT_LINE TO ALV_FIELDCAT.&lt;/P&gt;&lt;P&gt;CLEAR ALV_FIELDCAT_LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Vendor Address &lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-TABNAME = 'T_OUTPUT'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-SELTEXT_L = 'Vendor Address'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-FIELDNAME = 'STREET'.&lt;/P&gt;&lt;P&gt;APPEND ALV_FIELDCAT_LINE TO ALV_FIELDCAT.&lt;/P&gt;&lt;P&gt;CLEAR ALV_FIELDCAT_LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;City &lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-TABNAME = 'T_OUTPUT'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-SELTEXT_L = 'City'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-FIELDNAME = 'CITY1'.&lt;/P&gt;&lt;P&gt;APPEND ALV_FIELDCAT_LINE TO ALV_FIELDCAT.&lt;/P&gt;&lt;P&gt;CLEAR ALV_FIELDCAT_LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Object number # &lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-TABNAME = 'T_OUTPUT'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-SELTEXT_L = 'object #'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-FIELDNAME = 'OBJNR'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-NO_OUT = 'X'.&lt;/P&gt;&lt;P&gt;APPEND ALV_FIELDCAT_LINE TO ALV_FIELDCAT.&lt;/P&gt;&lt;P&gt;CLEAR ALV_FIELDCAT_LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WBS Element &lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-TABNAME = 'T_OUTPUT'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-SELTEXT_L = 'WBS Element'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-FIELDNAME = 'POSID'.&lt;/P&gt;&lt;P&gt;APPEND ALV_FIELDCAT_LINE TO ALV_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cost Center &lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-TABNAME = 'T_OUTPUT'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-SELTEXT_L = 'Cost Center'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-FIELDNAME = 'KOSTL'.&lt;/P&gt;&lt;P&gt;APPEND ALV_FIELDCAT_LINE TO ALV_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;GL Indicator &lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-TABNAME = 'T_OUTPUT'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-SELTEXT_L = 'GL Indicator'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-FIELDNAME = 'UMSKZ'.&lt;/P&gt;&lt;P&gt;APPEND ALV_FIELDCAT_LINE TO ALV_FIELDCAT.&lt;/P&gt;&lt;P&gt;CLEAR ALV_FIELDCAT_LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;General Ledger Account &lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-TABNAME = 'T_OUTPUT'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-SELTEXT_L = 'General Ledger Account'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-FIELDNAME = 'HKONT'.&lt;/P&gt;&lt;P&gt;APPEND ALV_FIELDCAT_LINE TO ALV_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Document No. &lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-TABNAME = 'T_OUTPUT'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-HOTSPOT = 'X'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-SELTEXT_L = 'Document No.'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-FIELDNAME = 'BELNR'.&lt;/P&gt;&lt;P&gt;APPEND ALV_FIELDCAT_LINE TO ALV_FIELDCAT.&lt;/P&gt;&lt;P&gt;CLEAR ALV_FIELDCAT_LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Amount &lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-TABNAME = 'T_OUTPUT'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-SELTEXT_L = 'Amount'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;alv_fieldcat_line-fieldname = 'WRBTR'. &lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-FIELDNAME = 'DMBTR'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-NO_OUT = 'X'.&lt;/P&gt;&lt;P&gt;APPEND ALV_FIELDCAT_LINE TO ALV_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;dif1 &lt;/P&gt;&lt;P&gt;CLEAR TEXT.&lt;/P&gt;&lt;P&gt;READ TABLE S_DATE1 INDEX 1.&lt;/P&gt;&lt;P&gt;CONCATENATE 'DAYS ' S_DATE1-LOW '-' S_DATE1-HIGH INTO TEXT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-TABNAME = 'T_OUTPUT'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-SELTEXT_L = TEXT.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-FIELDNAME = 'DIF1'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-DO_SUM = 'X'.&lt;/P&gt;&lt;P&gt;APPEND ALV_FIELDCAT_LINE TO ALV_FIELDCAT.&lt;/P&gt;&lt;P&gt;CLEAR ALV_FIELDCAT_LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;dif2 &lt;/P&gt;&lt;P&gt;CLEAR TEXT.&lt;/P&gt;&lt;P&gt;READ TABLE S_DATE2 INDEX 1.&lt;/P&gt;&lt;P&gt;CONCATENATE 'DAYS ' S_DATE2-LOW '-' S_DATE2-HIGH INTO TEXT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-TABNAME = 'T_OUTPUT'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-SELTEXT_L = TEXT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;alv_fieldcat_line-no_out = 'X'. &lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-FIELDNAME = 'DIF2'.&lt;/P&gt;&lt;P&gt;APPEND ALV_FIELDCAT_LINE TO ALV_FIELDCAT.&lt;/P&gt;&lt;P&gt;CLEAR ALV_FIELDCAT_LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;dif3 &lt;/P&gt;&lt;P&gt;CLEAR TEXT.&lt;/P&gt;&lt;P&gt;READ TABLE S_DATE3 INDEX 1.&lt;/P&gt;&lt;P&gt;CONCATENATE 'DAYS ' S_DATE3-LOW '-' S_DATE3-HIGH INTO TEXT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-TABNAME = 'T_OUTPUT'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-SELTEXT_L = TEXT.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-FIELDNAME = 'DIF3'.&lt;/P&gt;&lt;P&gt;APPEND ALV_FIELDCAT_LINE TO ALV_FIELDCAT.&lt;/P&gt;&lt;P&gt;CLEAR ALV_FIELDCAT_LINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;dif4 &lt;/P&gt;&lt;P&gt;CLEAR TEXT.&lt;/P&gt;&lt;P&gt;READ TABLE S_DATE4 INDEX 1.&lt;/P&gt;&lt;P&gt;CONCATENATE 'DAYS ' S_DATE4-LOW '-' S_DATE4-HIGH INTO TEXT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-TABNAME = 'T_OUTPUT'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-SELTEXT_L = TEXT.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-FIELDNAME = 'DIF4'.&lt;/P&gt;&lt;P&gt;APPEND ALV_FIELDCAT_LINE TO ALV_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;dif5 &lt;/P&gt;&lt;P&gt;CLEAR TEXT.&lt;/P&gt;&lt;P&gt;READ TABLE S_DATE5 INDEX 1.&lt;/P&gt;&lt;P&gt;CONCATENATE 'DAYS ' S_DATE5-LOW '-' S_DATE5-HIGH INTO TEXT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-TABNAME = 'T_OUTPUT'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-SELTEXT_L = TEXT.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-FIELDNAME = 'DIF5'.&lt;/P&gt;&lt;P&gt;APPEND ALV_FIELDCAT_LINE TO ALV_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Days &lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-TABNAME = 'T_OUTPUT'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-SELTEXT_L = 'Days'.&lt;/P&gt;&lt;P&gt;ALV_FIELDCAT_LINE-FIELDNAME = 'DAYS'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;alv_fieldcat_line-no_out = 'X'. &lt;/P&gt;&lt;P&gt;APPEND ALV_FIELDCAT_LINE TO ALV_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. " build_field_catalogs&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form ALV_USER_COMM&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Process User Status &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;FORM ALV_USER_COMM USING R_UCOMM LIKE SY-UCOMM&lt;/P&gt;&lt;P&gt;RS_SELFIELD TYPE SLIS_SELFIELD.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Determine the main component beign viewed&lt;/P&gt;&lt;P&gt;READ TABLE T_OUTPUT INDEX RS_SELFIELD-TABINDEX.&lt;/P&gt;&lt;P&gt;CASE R_UCOMM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WHEN '&amp;amp;IC1'. " single / double click&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CASE RS_SELFIELD-FIELDNAME.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Display FI document &lt;/P&gt;&lt;P&gt;WHEN 'BELNR'.&lt;/P&gt;&lt;P&gt;SET PARAMETER ID 'BLN' FIELD T_OUTPUT-BELNR.&lt;/P&gt;&lt;P&gt;SET PARAMETER ID 'BUK' FIELD T_OUTPUT-BUKRS.&lt;/P&gt;&lt;P&gt;SET PARAMETER ID 'GJR' FIELD T_OUTPUT-GJAHR.&lt;/P&gt;&lt;P&gt;CALL TRANSACTION 'FB03' AND SKIP FIRST SCREEN.&lt;/P&gt;&lt;P&gt;ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WHEN 'FMB58'. &lt;/P&gt;&lt;P&gt;SET PARAMETER ID 'MAT' FIELD prtab-matnr. &lt;/P&gt;&lt;P&gt;CALL TRANSACTION 'MB58' AND SKIP FIRST SCREEN. &lt;/P&gt;&lt;P&gt;WHEN 'CHK'. &lt;/P&gt;&lt;P&gt;MOVE 'X' TO prtab-chk. &lt;/P&gt;&lt;P&gt;MODIFY prtab INDEX rs_selfield-tabindex. &lt;/P&gt;&lt;P&gt;ENDCASE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM. "alv_user_comm&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form ALV_STATUS_SET&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Set the status for the ALV screen &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------------" /&gt;&lt;P&gt;FORM ALV_STATUS_SET USING RT_EXTAB TYPE SLIS_T_EXTAB.&lt;/P&gt;&lt;P&gt;SET PF-STATUS 'STANDARD' EXCLUDING RT_EXTAB.&lt;/P&gt;&lt;P&gt;ENDFORM. "alv_status_set&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Below are the important tables:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BVOR&lt;/P&gt;&lt;P&gt;(Intercompany posting procedures)&lt;/P&gt;&lt;P&gt;BSAD&lt;/P&gt;&lt;P&gt;(Accounting: Secondary index for&lt;/P&gt;&lt;P&gt;customers (cleared items)&lt;/P&gt;&lt;P&gt;BSID&lt;/P&gt;&lt;P&gt;(Accounting: Secondary index for&lt;/P&gt;&lt;P&gt;customers)&lt;/P&gt;&lt;P&gt;PAYR&lt;/P&gt;&lt;P&gt;(Payment transfer medium file)&lt;/P&gt;&lt;P&gt;BKPF&lt;/P&gt;&lt;P&gt;(Accounting document header)&lt;/P&gt;&lt;P&gt;BSEG&lt;/P&gt;&lt;P&gt;(Accounting document segment)&lt;/P&gt;&lt;P&gt;BSIP&lt;/P&gt;&lt;P&gt;(Index for vendor validation of double&lt;/P&gt;&lt;P&gt;documents)&lt;/P&gt;&lt;P&gt;BSIK&lt;/P&gt;&lt;P&gt;(Accounting: Secondary index for&lt;/P&gt;&lt;P&gt;vendors)BSAK&lt;/P&gt;&lt;P&gt;(Accounting: Secondary index for&lt;/P&gt;&lt;P&gt;vendors (cleared items))&lt;/P&gt;&lt;P&gt;BSAS&lt;/P&gt;&lt;P&gt;(Accounting: Secondary index for G/L&lt;/P&gt;&lt;P&gt;accounts (cleared items))&lt;/P&gt;&lt;P&gt;BSIS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;REGARDS,&lt;/P&gt;&lt;P&gt;GAURAV J.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 03 Feb 2008 11:55:29 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/fico-report/m-p/3313122#M793538</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-02-03T11:55:29Z</dc:date>
    </item>
    <item>
      <title>Re: fico report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/fico-report/m-p/3313123#M793539</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;H para.&lt;/P&gt;&lt;P&gt;this is body of report.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Report  RFGLBALANCE message-id FDBL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...tables.............................................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;tables: SKC1A,&lt;/P&gt;&lt;P&gt;        SKC1C,&lt;/P&gt;&lt;P&gt;        RF42B,&lt;/P&gt;&lt;P&gt;        SSCRFIELDS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...selections.........................................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select-options: SO_SAKNR for RF42B-SAKNR memory id SAK&lt;/P&gt;&lt;P&gt;                             matchcode object SAKO&lt;/P&gt;&lt;P&gt;                             visible length 10,&lt;/P&gt;&lt;P&gt;                SO_BUKRS for SKC1C-BUKRS memory id BUK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;parameters:     GP_GJAHR like SKC1C-GJAHR memory id GJR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;select-options: SO_GSBER for RF42B-GSBER memory id GSB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;parameters:     GP_CURTP like RFPDO2-ALLGCRTP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;selection-screen function key 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...selection screen for processing of worklists.......................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;selection-screen begin of screen 2000.&lt;/P&gt;&lt;P&gt;selection-screen begin of block ACCOUNT with frame title TEXT-010.&lt;/P&gt;&lt;P&gt;parameters: GP_WLSAK like RF42B-IDNTS.&lt;/P&gt;&lt;P&gt;select-options: SO_WLSAK for SKC1A-SAKNR memory id SAK.&lt;/P&gt;&lt;P&gt;selection-screen end of block ACCOUNT.&lt;/P&gt;&lt;P&gt;selection-screen begin of block COMPANY with frame title TEXT-011.&lt;/P&gt;&lt;P&gt;parameters: GP_WLBUK like RF42B-IDNTB.&lt;/P&gt;&lt;P&gt;select-options: SO_WLBUK for SKC1A-BUKRS memory id BUK.&lt;/P&gt;&lt;P&gt;selection-screen end of block COMPANY.&lt;/P&gt;&lt;P&gt;parameters: GP_GJHR2 type GJAHR memory id GJR.&lt;/P&gt;&lt;P&gt;select-options: SO_GSBR2 for SKC1C-GSBER.&lt;/P&gt;&lt;P&gt;parameters:     GP_CRTP2 like RFPDO2-ALLGCRTP.&lt;/P&gt;&lt;P&gt;selection-screen function key 2.&lt;/P&gt;&lt;P&gt;selection-screen end of screen 2000.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...internal data......................................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;constants: GC_LDB type TRDIR-LDBNAME value 'SDF',&lt;/P&gt;&lt;P&gt;           GC_KOART type KOART       value 'S'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: LS_PARAMS like RSPARAMS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: begin of LS_SAKNR,&lt;/P&gt;&lt;P&gt;        SIGN(1)   type C,&lt;/P&gt;&lt;P&gt;        OPTION(2) type C,&lt;/P&gt;&lt;P&gt;        LOW       type SAKNR,&lt;/P&gt;&lt;P&gt;        HIGH      type SAKNR,&lt;/P&gt;&lt;P&gt;      end of LS_SAKNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...internal data common for all account types.........................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;include RFBALANCEDATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...initialization.....................................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;initialization.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...initialize data table..............................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  refresh LT_BALANCE_DATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...remove user command for batch and print jobs.......................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform CHANGE_STATUS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...set text for additional function keys..............................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SSCRFIELDS-FUNCTXT_01 = TEXT-005.&lt;/P&gt;&lt;P&gt;  SSCRFIELDS-FUNCTXT_02 = TEXT-006.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...check selections...................................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;at selection-screen.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...process user command...............................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  case SSCRFIELDS-UCOMM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    when 'ONLI'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...get local range for g/l account....................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      if not GP_WLSAK is initial.&lt;/P&gt;&lt;P&gt;        perform GET_RANGE_FROM_WORKLIST tables GT_RANGE&lt;/P&gt;&lt;P&gt;                                        using  GP_WLSAK&lt;/P&gt;&lt;P&gt;                                               'SAKNR'.&lt;/P&gt;&lt;P&gt;        refresh SO_WLSAK.&lt;/P&gt;&lt;P&gt;        loop at GT_RANGE.&lt;/P&gt;&lt;P&gt;          move-corresponding GT_RANGE to SO_WLSAK.&lt;/P&gt;&lt;P&gt;          append SO_WLSAK.&lt;/P&gt;&lt;P&gt;        endloop.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;      refresh LR_SAKNR.&lt;/P&gt;&lt;P&gt;      append lines of SO_WLSAK to LR_SAKNR.&lt;/P&gt;&lt;P&gt;      loop at SO_SAKNR.&lt;/P&gt;&lt;P&gt;        LS_SAKNR-SIGN   = SO_SAKNR-SIGN.&lt;/P&gt;&lt;P&gt;        LS_SAKNR-OPTION = SO_SAKNR-OPTION.&lt;/P&gt;&lt;P&gt;        if SO_SAKNR-LOW cn '0123456789'.&lt;/P&gt;&lt;P&gt;          LS_SAKNR-LOW = SO_SAKNR-LOW.&lt;/P&gt;&lt;P&gt;        else.&lt;/P&gt;&lt;P&gt;          LS_SAKNR-LOW    = SO_SAKNR-LOW+6.&lt;/P&gt;&lt;P&gt;        endif.&lt;/P&gt;&lt;P&gt;        if SO_SAKNR-HIGH cn '0123456789'.&lt;/P&gt;&lt;P&gt;          LS_SAKNR-HIGH = SO_SAKNR-HIGH.&lt;/P&gt;&lt;P&gt;        else.&lt;/P&gt;&lt;P&gt;          LS_SAKNR-HIGH   = SO_SAKNR-HIGH+6.&lt;/P&gt;&lt;P&gt;        endif.&lt;/P&gt;&lt;P&gt;        append LS_SAKNR to LR_SAKNR.&lt;/P&gt;&lt;P&gt;      endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...check, if at least one account has been specified..................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      if LR_SAKNR[] is initial.&lt;/P&gt;&lt;P&gt;        clear SSCRFIELDS-UCOMM.&lt;/P&gt;&lt;P&gt;        refresh LR_SAKNR.&lt;/P&gt;&lt;P&gt;        message E002.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...get local range for company code...................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      if not GP_WLBUK is initial.&lt;/P&gt;&lt;P&gt;        perform GET_RANGE_FROM_WORKLIST tables GT_RANGE&lt;/P&gt;&lt;P&gt;                                        using  GP_WLBUK&lt;/P&gt;&lt;P&gt;                                               'BUKRS'.&lt;/P&gt;&lt;P&gt;        refresh SO_WLBUK.&lt;/P&gt;&lt;P&gt;        loop at GT_RANGE.&lt;/P&gt;&lt;P&gt;          move-corresponding GT_RANGE to SO_WLBUK.&lt;/P&gt;&lt;P&gt;          append SO_WLBUK.&lt;/P&gt;&lt;P&gt;        endloop.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;      refresh LR_BUKRS.&lt;/P&gt;&lt;P&gt;      append lines of SO_WLBUK to LR_BUKRS.&lt;/P&gt;&lt;P&gt;      append lines of SO_BUKRS to LR_BUKRS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      if LR_BUKRS[] is initial.&lt;/P&gt;&lt;P&gt;        refresh LR_SAKNR.&lt;/P&gt;&lt;P&gt;        refresh LR_BUKRS.&lt;/P&gt;&lt;P&gt;        clear SSCRFIELDS-UCOMM.&lt;/P&gt;&lt;P&gt;        message E007.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...get local range for fiscal year....................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      LS_GJAHR-SIGN   = 'I'.&lt;/P&gt;&lt;P&gt;      LS_GJAHR-OPTION = 'EQ'.&lt;/P&gt;&lt;P&gt;      if GP_GJAHR is initial.&lt;/P&gt;&lt;P&gt;        LS_GJAHR-LOW = GP_GJHR2.&lt;/P&gt;&lt;P&gt;      else.&lt;/P&gt;&lt;P&gt;        LS_GJAHR-LOW    = GP_GJAHR.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;      clear LS_GJAHR-HIGH.&lt;/P&gt;&lt;P&gt;      if not LS_GJAHR-LOW is initial.&lt;/P&gt;&lt;P&gt;        append LS_GJAHR to LR_GJAHR.&lt;/P&gt;&lt;P&gt;      else.&lt;/P&gt;&lt;P&gt;        clear SSCRFIELDS-UCOMM.&lt;/P&gt;&lt;P&gt;        refresh LR_SAKNR.&lt;/P&gt;&lt;P&gt;        refresh LR_BUKRS.&lt;/P&gt;&lt;P&gt;        message E008.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...local ranges for business areas...................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      append lines of SO_GSBER to LR_GSBER.&lt;/P&gt;&lt;P&gt;      append lines of SO_GSBR2 to LR_GSBER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...check existence of given g/l accounts.............................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      loop at LR_SAKNR transporting no fields&lt;/P&gt;&lt;P&gt;        where OPTION ne 'EQ' or&lt;/P&gt;&lt;P&gt;                SIGN ne 'I'.&lt;/P&gt;&lt;P&gt;        exit.&lt;/P&gt;&lt;P&gt;      endloop.&lt;/P&gt;&lt;P&gt;      if SY-SUBRC = 0.&lt;/P&gt;&lt;P&gt;        select SAKNR from SKB1 into table LT_SAKNR&lt;/P&gt;&lt;P&gt;               where SAKNR in LR_SAKNR&lt;/P&gt;&lt;P&gt;                 and BUKRS in LR_BUKRS.&lt;/P&gt;&lt;P&gt;      else. " worklist&lt;/P&gt;&lt;P&gt;        select SAKNR from SKB1 into table LT_SAKNR&lt;/P&gt;&lt;P&gt;               for all entries in LR_SAKNR&lt;/P&gt;&lt;P&gt;               where SAKNR eq LR_SAKNR-LOW&lt;/P&gt;&lt;P&gt;               and BUKRS in LR_BUKRS.&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      if SY-SUBRC ne 0.&lt;/P&gt;&lt;P&gt;        clear SSCRFIELDS-UCOMM.&lt;/P&gt;&lt;P&gt;        refresh LR_BUKRS.&lt;/P&gt;&lt;P&gt;        refresh LR_SAKNR.&lt;/P&gt;&lt;P&gt;        refresh LR_GSBER.&lt;/P&gt;&lt;P&gt;        refresh LR_GJAHR.&lt;/P&gt;&lt;P&gt;        message E030(MSITEM).&lt;/P&gt;&lt;P&gt;      endif.&lt;/P&gt;&lt;P&gt;      clear LT_SAKNR.&lt;/P&gt;&lt;P&gt;      refresh LT_SAKNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...check authorizations.............................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      perform CHECK_AUTHORITY_GROUPS&lt;/P&gt;&lt;P&gt;                    using LR_BUKRS&lt;/P&gt;&lt;P&gt;                          LR_SAKNR&lt;/P&gt;&lt;P&gt;                          LR_KUNNR&lt;/P&gt;&lt;P&gt;                          LR_LIFNR&lt;/P&gt;&lt;P&gt;                          GC_KOART.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...switch on worklists..............................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    when 'FC01'.&lt;/P&gt;&lt;P&gt;      leave to transaction 'FS10NA'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...switch off worklists.............................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    when 'FC02'.&lt;/P&gt;&lt;P&gt;      leave to transaction 'FS10N'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  endcase.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...start-of-selection.................................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;start-of-selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...get valid currency type............................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if GP_CRTP2 is initial.&lt;/P&gt;&lt;P&gt;    LD_CURTP = GP_CURTP.&lt;/P&gt;&lt;P&gt;  else.&lt;/P&gt;&lt;P&gt;    LD_CURTP = GP_CRTP2.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;  if LD_CURTP is initial or LD_CURTP eq '00'.&lt;/P&gt;&lt;P&gt;    LD_CURTP = '10'.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...check, if all company codes given use the same fiscal year.........&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform CHECK_FISCAL_YEARS using LR_BUKRS&lt;/P&gt;&lt;P&gt;                                   LD_RC.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if LD_RC ne 0.&lt;/P&gt;&lt;P&gt;    message I021.&lt;/P&gt;&lt;P&gt;    return.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...check, if display currency is the same for all company codes.....&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...selected.........................................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform CHECK_CURTP tables LR_BUKRS&lt;/P&gt;&lt;P&gt;                      using  LD_CURTP&lt;/P&gt;&lt;P&gt;                             LD_RC.&lt;/P&gt;&lt;P&gt;  if LD_RC ne 0.&lt;/P&gt;&lt;P&gt;    message I022.&lt;/P&gt;&lt;P&gt;    return.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...build table with selection criteria..............................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform BUILD_COSEL tables LT_COSEL&lt;/P&gt;&lt;P&gt;                      using  LR_BUKRS&lt;/P&gt;&lt;P&gt;                             LR_KUNNR&lt;/P&gt;&lt;P&gt;                             LR_LIFNR&lt;/P&gt;&lt;P&gt;                             LR_SAKNR&lt;/P&gt;&lt;P&gt;                             LR_GJAHR&lt;/P&gt;&lt;P&gt;                             LR_GSBER&lt;/P&gt;&lt;P&gt;                             SPACE&lt;/P&gt;&lt;P&gt;                             SPACE&lt;/P&gt;&lt;P&gt;                             SPACE&lt;/P&gt;&lt;P&gt;                             GP_WLSAK&lt;/P&gt;&lt;P&gt;                             GP_WLBUK&lt;/P&gt;&lt;P&gt;                             LD_CURTP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...build table with selections for LDB................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform BUILD_RSPARAMS tables LT_COSEL&lt;/P&gt;&lt;P&gt;                                LT_PARAMS&lt;/P&gt;&lt;P&gt;                         using  GC_LDB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LS_PARAMS-SELNAME = 'SD_CURTP'.&lt;/P&gt;&lt;P&gt;  LS_PARAMS-SIGN    = 'I'.&lt;/P&gt;&lt;P&gt;  LS_PARAMS-OPTION  = 'EQ'.&lt;/P&gt;&lt;P&gt;  LS_PARAMS-LOW     = LD_CURTP.&lt;/P&gt;&lt;P&gt;  clear LS_PARAMS-HIGH.&lt;/P&gt;&lt;P&gt;  append LS_PARAMS to LT_PARAMS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...build table with callbacks.........................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  perform BUILD_CALLBACK tables LT_CALLBACKS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...get transaction data...............................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  call function 'LDB_PROCESS'&lt;/P&gt;&lt;P&gt;    exporting&lt;/P&gt;&lt;P&gt;      LDBNAME                     = GC_LDB&lt;/P&gt;&lt;P&gt;    tables&lt;/P&gt;&lt;P&gt;      CALLBACK                    = LT_CALLBACKS&lt;/P&gt;&lt;P&gt;      SELECTIONS                  = LT_PARAMS&lt;/P&gt;&lt;P&gt;    exceptions&lt;/P&gt;&lt;P&gt;      LDB_SELECTIONS_NOT_ACCEPTED = 4&lt;/P&gt;&lt;P&gt;      others                      = 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if SY-SUBRC eq 4.&lt;/P&gt;&lt;P&gt;    message id SY-MSGID type SY-MSGTY number SY-MSGNO&lt;/P&gt;&lt;P&gt;            with SY-MSGV1 SY-MSGV2.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;end-of-selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...check, if data has been fount at all.............................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  if LT_BALANCE_DATA is initial.&lt;/P&gt;&lt;P&gt;    message I020 with GP_GJAHR.&lt;/P&gt;&lt;P&gt;    return.&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;...display data.....................................................&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  call function 'FDBL_BALANCES_DISPLAY'&lt;/P&gt;&lt;P&gt;    exporting&lt;/P&gt;&lt;P&gt;      PT_COSEL        = LT_COSEL&lt;/P&gt;&lt;P&gt;    changing&lt;/P&gt;&lt;P&gt;      PT_BALANCE_DATA = LT_BALANCE_DATA.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  include RFBALANCE.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 14 Mar 2008 04:32:30 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/fico-report/m-p/3313123#M793539</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-03-14T04:32:30Z</dc:date>
    </item>
  </channel>
</rss>

