Program RFEBKA00 - Bank statement

Hello guys,
I'm looking to integrate a bank statement with a message control (blocking message) when the initial balance doesn't equal to the final balance of the previous statement at company code level.
I know about transaction OBA5 & OBMSG but my need is to define this blocking message (Type E) and more precisely for message FB772 at company code level.
Any experience ?
Regards,

Hi,
By OBMSG you can add status 'E-error' and define message in OBA5
you can do that developing Z-Report from standard FF.5 and add new functionalities.
Regards

Similar Messages

  • EBS Program RFEBKA00 Bank KEy in House Bank is diff.from ABA in BAI file

    REceiveing an error that the bank key and account number not found in table T012, T012k.
    The HB was created using one ABA as the Bank Key, the ABA necessary for proper u201Cchecku201D creation.
    In the HB config, we set the Bank Receiving DME with the ABA needed for the ACH file, which is different from the Check ABA.
    I searched everywhere, and found only one viable solution: create a pre-processor to change the ABA in the file to be the one that will match the entries on table T012 and T012k.
    I tried putting data in the Alternative Account number with the ABA and the Account number, but it didnu2019t resolve the issue.
    Any suggestions?

    Hi Kath,
    Having one Bank account using 2 different ABA should not be a problem technically, if you are creating 2 different house banks for the 2 ABAs.
    My question is if the ABA number entered in the field "Bank Receiving the Data Medium" is actually responsible for Paying the
    ACHs, then this field is not the right place to enter ABA. You must create a new house bank with the ABA number and may be the same account number for ACH, and leave this field "Bank Receiving the Data Medium" empty. And please complete the rest of the Payment run config for this New house Bank i.e. Bank Determination.
    If you still have issues, please check if the account number provided by the Bank in the Bank Statement doesn't have a leading zero or prefix before the actual bank account. If there are leading zeros, then please change the account number accordingly in the House Bank and EBS config. Or if there is a prefix, which is sometimes used for foreign payments coming out of the same Bank account. Then you can enter the same bank account number along with prefix in the Alternative Account number field
    Thanks
    Ron

  • BANK STATEMENT RECONCILIATION INTERFACE

    Hi,
    I have a requirement to work on 'BANK STATEMENT RECONCILIATION' interface. These are used to reconcile the AP and AR activity through Cash Management module in Oracle Applications.
    I am very new to this, could you anyone guide me how to proceed.
    1.I am getting bank statements in BIA2 and SWIFT940 format. Could anyone tell me what is the difference between these two types.
    2. what is record id, record code in these type of data files, how to link these with interface tables.
    3. Is there any standard program to load data from these data files to interface tables? or, Do i need to write a package to load data into interface tables.
    4. If i need to write a package, could any one tell me validations for headers and lines, and tables to be used in those validations.
    Experts, kindly guide me to get it done.
    Thanks in advnace.

    Yes there is a standard oracle concurrent program available,
    Search the concurrent program name: Bank statement Reconciliation in the cash management
    The Bai2 and Shift90 are the formats of transmission of the bank data. Mostly Bai2 is used world wide for the transmission.
    What version of application are you using?
    Thanks,
    Sreekanth

  • Clearing postings by bank statement program FF_5

    Hello
    the bank statement program clears open items on customers (invoices customers paid) and on bank sub accounts (gl accounts with open item management). (for vendor invoices where we gave payment orders by running the payment run) Does the system look up the items to be cleared purely based on amount or does it also use fields such as
    VERTN     VERTT     VBEWA
    ZUONR     GSBER     VBUND
    Regards
    Arjan
    for customer payment the posting is correct?
    bank account
    against customer
    for vendor payment the posting is correct?
    bank sub account
    against bank account
    Edited by: Arjan Hogenes on Dec 1, 2009 12:01 PM
    In the information of the program RFEBKA00 I find:
    Interpretation of the note to payee fields
    For incoming payments, the notes to payee lines of the account statement can be searched either for document numbers or reference document numbers by specifying the selection field (BELNR or XBELNR). Thus, the relevant information for clearing customer payments is obtained.
    If you do not specify a selection field, the note to payee fields are not interpreted.
    For outgoing payments, one always searches for the document number."
    For incoming payments is the document number the SAP bkpf-belnr?
    For outgoing payments is the document number the SAP bkpf-belnr or the vendor's invoice number?

    Hi,
    Please go through this link for better understanding of the various interpretation algorithms which can be used.
    http://help.sap.com/saphelp_erp60_sp/helpdata/en/43/0bd87b43de11d1896f0000e8322d00/frameset.htm
    Regards,
    Teja

  • Format file problem uploading electronic bank statement files FF_5 RFEBKA00

    hello
    I am facing a problem when uploading electronic bank statement files with the file format. The situation is as follows:
    1- Electronic bank statement files are sent by FTP from the bank to a certain directory in AL11
    2- we have developed a "z" program that just picks electronic bank statement files from AL11 directory and process them using standard FF_5 (RFEBKA00) program.
    3- When processing some files had an error, when debugging we have verified that errors are caused by some "special" characters non Unicode as "®" (=Hex'AE') with UTF-8, a '#' is displayed.
    SAP answers a question as follows:
    AL11 is designed to display os-files (log-files, trace-files etc.)
    from within the SAP-system for supporting purposes in order not to
    logon to the os itself.
    It was not designed to display any file-content in the system created
    with any code-page.
    AL11 opens the file in textmode with encoding option default, which
    means UTF-8 in a unicode system and NON-UNICODE in the other case.
    You cannot change this setting.
    If you have the need to specify these options, depending on your files,
    you can make a copy of report RSWATCH0 and customize the OPEN-statement
    to yor needs.
    On a Unicode system, the files need to be in Unicode format (UTF-8).
    Eg:When you interpret a non-Unicode "®" (=Hex'AE') with UTF-8, a '#' is
    displayed.
    Case 1:
    Who is creating those files? Are these files
    1) created by you
    2) are they written by a SAP application?
    ==>There are the notes 752835 and 747615 for cases like these.
    In case 2) it may be that the application responsible for the file
    download (not AL11!) should be the problem, considering note 752835.
    There is also the possibility for you to convert the file to the correct format using our tool RSCP_CONVERT_FILE (note 747615).
    System administrator has told me to copy standard RFEBKA00 program and modify the OPEN-statement but I am not agree because I think that the problem is when generating the files in bank's system and/or sending the files to SAP by FTP.
    Does any body face a problem like this before? Any ideas?
    Thanks a lot

    Hello,
    The files that are available in AL11 are in Unicode.
    Can you convert them to text by using the following method and then try:
    You must have mapped this directory and having access.
    Right click on file
    Open with: Microsoft Office Word
    Then the pop-up comes: File conversion - bacs
    Select Other encoding radio button
    Then select "Unicode" from list
    and say OK
    Now the file is being opened in readable format:
    File SAVE as PLAIN TEXT
    Save the file in the same folder that you are referring to in AL11
    Now if you try with this .txt file, it should work in FF_5
    Thanks,
    Ravi

  • Bank Statement Interface update program for R12

    Hi
    Working on a custom pgm which runs like below
    1.seeded bank statement loader pgm
    2. custom pgm updates the CE_STATEMENT_HEADERS_INT and
    CE_STATEMENT_LINES_INTERFACE tables
    3.seeded Bank Statement Import Program
    Anyone wrote a custom pgm(like in step 2) please let me know how to join
    ap checks all and CE_BANK_ACCOUNTS tables.
    In 11i there is ap bank accounts table and it has attribute2 column..Does 'atribute2' serve the same in R12 CE BANK ACCOUNTS TABLE also?
    Also would like to know how to join between
    --ar_batches_all and ce_bank_accuonts_all tables
    --ap_inv_selection_criteria_all isc and ap_checks_all c and CE_BANK_ACCOUNTS
    please advise
    kp
    Edited by: user12220718 on Feb 25, 2011 9:26 AM

    Hi Tan,
    Based on the external transaction type, you will link to the posting rules. Yes there are so many subfields, available if you see 61 fields, it tells you about the payment you have received/made, it gives the line item details of a particular transaction.
    My sincere request is dont look at the bank statement and do the configuration. Do the configuration first and then SAP provides one program RFEBKATX. Using this program you can create a bank statement file and customer line items. Once after bank statement file is created you can import it using FF_5 and if your configuration is not properly made, it will let you know where you are missing. But this program will generate bank statement file in multi cash. How ever if your configuration is correct and if you are able to import bank statement, then there will not be any difficulty in importing MT 940.
    Hope you understood.
    Regards
    Srikanth

  • How to use the program "Generate test data for BAI bank statement" ?

    Hi all,
    I use the program RFEBKAT5 to create an Electronic Bank Statement file in BAI format ,but it doesn't generate the file .
    I don't know how to generate the file.
    Please help me !
    Thanks all !

    You need to suitably adjust your GL accounts for "Posting Offset Account" (Whisch is defaulted as ++++++++19" and Checkout/Funds Out/Funds IN GL accounts to your configuration.
    Once you do this try generating the file again.

  • Program to create Bank Statement

    Hi
    There is a program to create Bank statement, so that it can be used for Electronic Bank statement processiong FEBA...
    I am not able to recollect that program.
    Can any help me in this regard.
    Points assured
    Kalyan

    Hi,
    I think FINSTA is the message type of IDOC interface
    Go to WE20 and maintain the partner profile for FINSTA message type.
    To generate the postings that result from the bank statement, schedule report RFEBKA30
    http://help.sap.com/saphelp_sm32/helpdata/en/e4/52ec78bfff11d295f400a0c9426c73/content.htm
    Regards,
    Sridevi
    <i><b>Pls. assign points, if it is useful</b></i>

  • Bank Statement Upload (RFEBKA00) issue

    Hi All,
    I am trying to upload bank statements via FF_5 using multicash format. When I try uploading I get the following error for each bank account statement "statement 20088251 is not in the bank data storage". There are about 8 different accounts in the one bank statement file upload.
    The last message is "total of line items in line item file not the same as in statement file" however I am doing this in our DEV client but in production the upload works fine, the only difference is that I am adding a new bank account for the bank statement upload.
    Need some help ASAP.
    Thanks

    The forum [FPM - General|Enterprise Performance Management (SAP EPM); in which you originally posted your question deals mainly with the financial performance applications otherwise known as Enterprise Performance Management (EPM) carrying the BusinessObjects brand.   Your question pertains to SAP [ERP Financials|SAP ERP Financials; which is covered by another forum.  Therefore your message has been moved.  Please adjust any bookmarks you might have and post to the appropriate area in the future, that way you are assured you will have the right audience reading your posts.
    Thanks and best regards,
    [Jeffrey Holdeman|http://wiki.sdn.sap.com/wiki/display/profile/Jeffrey+Holdeman]
    SAP Labs, LLC
    BusinessObjects Division
    Americas Applications Regional Implementation Group (RIG)

  • Bank statement

    when i run my program for electronic bank statement i am getting an error when posting. the error requires me to populate the business area field and i have no idea on were i can populate the business area field. please help.
    below is the source code of bank statement program
      Report zum Einlesen und Verarbeiten des Elektronischen             *
      Kontoauszugs                                                       *
      Erzeugung von Testdateien mit RFEBKAt0 und RFEBKAt1                *
    051198ak reorganized export of print / archive parameters to         *
             insure correct setup for all modes (online/batch/print&exec)*
             changed variable names in EXPORT statement to insure correct*
             functioning of IMPORT statement                             *
    mo271101 included changes for Web GUI compatibility (section 508)    *
    mo260105 included MT942 handling (setting dunning blocks             *
    REPORT RFEBKA00 MESSAGE-ID FB
                    LINE-SIZE 132
                    NO STANDARD PAGE HEADING.
    Include Common Data                                          *
    INCLUDE ZFEBKA03.
    *INCLUDE RFEBKA03.
    INCLUDE ZFEBFR03.
    *INCLUDE RFEBFR03.                      " Data France
    TABLES: RFSDO,
            SSCRFIELDS.
    data: lt_statements type standard table of fieb_kukey,
          l_statement type fieb_kukey.
    *Daten fu00FCr die Mahnsperre                                  "mo260105
    TYPES: BEGIN OF S_KUKEY_MANSP,
            SIGN(1),
            OPTION(2),
            LOW TYPE KUKEY_EB,
            HIGH TYPE KUKEY_EB,
            MANSP TYPE MANSP,
            ANZTG TYPE ANZTG,
            BUKRS TYPE BUKRS,
          END OF S_KUKEY_MANSP.
    DATA: LT_KUKEY TYPE STANDARD TABLE OF S_KUKEY_MANSP,
          L_KUKEY LIKE LINE OF LT_KUKEY,
          L_GJAHR TYPE GJAHR,
          L_MANSP TYPE MANSP,
          L_KUNNR TYPE KUNNR,
          L_LIFNR TYPE LIFNR.
    FIELD-SYMBOLS: <MANSP> LIKE LINE OF GT_MANSP.
    *Ende der Daten fu00FCr die Mahnsperre                         "mo260105
    C5053392 Code Begins
    Parameters                                                   *
    *------- Dateiangaben -
    SELECTION-SCREEN  BEGIN OF BLOCK 1 WITH FRAME TITLE TEXT-165.
    PARAMETERS: EINLESEN  LIKE RFPDO1-FEBEINLES,
                FORMAT       LIKE RFPDO1-FEBFORMAT DEFAULT 'M',
                FILE LIKE RFPDO1-FEBAUSZF default
                   'c:\TESTEBS2.txt',
                STMTNO(5),
                AUSZFILE     LIKE RFPDO1-FEBAUSZF default
                   'c:\bank\auszug.txt',
                UMSFILE      LIKE RFPDO1-FEBUMSF default
                   'c:\bank\umsatz.txt',
               UMSFILE      LIKE RFPDO1-FEBUMSF,
                PCUPLOAD     LIKE RFPDO1-FEBPCUPLD DEFAULT 'X'.
    data : file1 type string.
    *PARAMETERS: INTRADAY     TYPE C DEFAULT SPACE NO-DISPLAY.
    *PARAMETERS: INTRADAY     TYPE C AS CHECKBOX DEFAULT SPACE.
    SELECTION-SCREEN  END OF BLOCK 1.
    *------- Buchungsparameter -
    SELECTION-SCREEN  BEGIN OF BLOCK 2 WITH FRAME TITLE TEXT-160.
    SELECTION-SCREEN  BEGIN OF LINE.
    PARAMETERS: PA_XCALL LIKE FEBPDO-XCALL    RADIOBUTTON GROUP 1.
    SELECTION-SCREEN
      COMMENT 03(29) TEXT-161 FOR FIELD PA_XCALL.
    PARAMETERS: PA_XBKBU LIKE FEBPDO-XBKBU.
    SELECTION-SCREEN
      COMMENT 35(16) TEXT-171 FOR FIELD PA_XBKBU.
    PARAMETERS: PA_MODE  LIKE RFPDO-ALLGAZMD NO-DISPLAY.
    SELECTION-SCREEN: END OF LINE.
    SELECTION-SCREEN  BEGIN OF LINE.
    PARAMETERS: PA_XBDC  LIKE FEBPDO-XBINPT   RADIOBUTTON GROUP 1.
    SELECTION-SCREEN
      COMMENT 03(29) TEXT-163 FOR FIELD PA_XBDC.
    SELECTION-SCREEN
      COMMENT 35(15) TEXT-164 FOR FIELD MREGEL.
    PARAMETERS: MREGEL   LIKE RFPDO1-FEBMREGEL DEFAULT '1'.
    SELECTION-SCREEN: END OF LINE.
    SELECTION-SCREEN: BEGIN OF LINE.
    PARAMETERS: PA_TEST LIKE RFPDO1-FEBTESTL RADIOBUTTON GROUP 1.
    SELECTION-SCREEN
      COMMENT 03(29) TEXT-168 FOR FIELD PA_TEST.
    SELECTION-SCREEN: END OF LINE.
    PARAMETERS: VALUT_ON     LIKE RFPDO2-FEBVALUT DEFAULT 'X'.
    SELECTION-SCREEN  END OF BLOCK 2.
    *------- Finanzdisposition -
    SELECTION-SCREEN  BEGIN OF BLOCK 5 WITH FRAME TITLE TEXT-172.
    SELECTION-SCREEN: BEGIN OF LINE.
    PARAMETERS: PA_XDISP LIKE FEBPDO-XDISP.
    SELECTION-SCREEN
      COMMENT 03(29) TEXT-170 FOR FIELD PA_XDISP.
    PARAMETERS: PA_VERD  LIKE RFFFPDO1-FFDISXVERD.
    SELECTION-SCREEN
      COMMENT 34(15) TEXT-174 FOR FIELD PA_VERD.
    SELECTION-SCREEN
      COMMENT 55(15) TEXT-173 FOR FIELD PA_DSART.
    PARAMETERS: PA_DSART LIKE FDES-DSART.
    SELECTION-SCREEN: END OF LINE.
    PARAMETERS: INTRADAY     LIKE RFPDO1_EN-AKINTRADAY AS CHECKBOX.
    SELECTION-SCREEN  END OF BLOCK 5.
    *------- Interpretationsparameter -
    SELECTION-SCREEN  BEGIN OF BLOCK 3 WITH FRAME TITLE TEXT-166.
    DATA: NUM10(10) TYPE N.
    DATA: CHR16(16) TYPE C.
    SELECT-OPTIONS: S_FILTER FOR  FEBPDO-FEBFILTER1.
    SELECT-OPTIONS: T_FILTER FOR  FEBPDO-FEBFILTER2.
    SELECTION-SCREEN: BEGIN OF LINE.
    SELECTION-SCREEN
       COMMENT 01(31) TEXT-176 FOR FIELD PA_BDART.
    PARAMETERS: PA_BDART     LIKE FEBPDO-BDART.
    SELECTION-SCREEN
       COMMENT 36(21) TEXT-177 FOR FIELD PA_BDANZ.
    PARAMETERS: PA_BDANZ     LIKE FEBPDO-BDANZ.
    data : bankfile1 type string,
           umsfile1 type string,
           ausfile1 type string.
    SELECTION-SCREEN: END OF LINE.
    SELECTION-SCREEN  END OF BLOCK 3.
    *------- Ausgabeparameter -
    SELECTION-SCREEN  BEGIN OF BLOCK 4 WITH FRAME TITLE TEXT-167.
    PARAMETERS: BATCH        LIKE RFPDO2-FEBBATCH,
                P_KOAUSZ     LIKE RFPDO1-FEBPAUSZ,   " Kontoauszug drucken
                P_BUPRO      LIKE RFPDO2-FEBBUPRO,
                P_STATIK     LIKE RFPDO2-FEBSTAT,
                PA_LSEPA     LIKE FEBPDO-LSEPA.
    SELECTION-SCREEN  END OF BLOCK 4.
    *eject
    AT SELECTION-SCREEN                                          *
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR FILE.
      CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
        EXPORTING
          MASK      = ',Multicash,*.txt'
          STATIC    = 'X'
        CHANGING
          FILE_NAME = FILE.
    DATA: L_FILES TYPE FILETABLE,                             "mo271101
           H_FILES TYPE FILE_TABLE,                            "mo271101
           L_RC LIKE SY-SUBRC.                                 "mo271101
    CALL METHOD CL_GUI_FRONTEND_SERVICES=>FILE_OPEN_DIALOG    "mo271101
       CHANGING                                                "mo271101
         FILE_TABLE              = L_FILES                     "mo271101
         RC                      = L_RC                        "mo271101
       EXCEPTIONS                                              "mo271101
         FILE_OPEN_DIALOG_FAILED = 1                           "mo271101
         CNTL_ERROR              = 2                           "mo271101
         ERROR_NO_GUI            = 3                           "mo271101
         NOT_SUPPORTED_BY_GUI    = 4                           "mo271101
         OTHERS                  = 5.                          "mo271101
    IF SY-SUBRC <> 0 OR L_RC < 0.                             "mo271101
       MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO       "mo271101
                  WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.    "mo271101
    ENDIF.                                                    "mo271101
    READ TABLE L_FILES INDEX 1 INTO H_FILES.                  "mo271101
    UMSFILE = H_FILES-FILENAME.                               "mo271101
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR UMSFILE.
      CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
        EXPORTING
          MASK      = ',Multicash,*.txt'
          STATIC    = 'X'
        CHANGING
          FILE_NAME = UMSFILE.
    **AT SELECTION-SCREEN ON VALUE-REQUEST FOR AUSZFILE.          "mo271101
    DATA: L_FILES TYPE FILETABLE,                             "mo271101
           H_FILES TYPE FILE_TABLE,                            "mo271101
           L_RC LIKE SY-SUBRC.                                 "mo271101
    CALL METHOD CL_GUI_FRONTEND_SERVICES=>FILE_OPEN_DIALOG    "mo271101
       CHANGING                                                "mo271101
         FILE_TABLE              = L_FILES                     "mo271101
         RC                      = L_RC                        "mo271101
       EXCEPTIONS                                              "mo271101
         FILE_OPEN_DIALOG_FAILED = 1                           "mo271101
         CNTL_ERROR              = 2                           "mo271101
         ERROR_NO_GUI            = 3                           "mo271101
         NOT_SUPPORTED_BY_GUI    = 4                           "mo271101
         OTHERS                  = 5.                          "mo271101
    IF SY-SUBRC <> 0 OR L_RC < 0.                             "mo271101
       MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO       "mo271101
                  WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.    "mo271101
    ELSE.                                                     "mo271101
       READ TABLE L_FILES INDEX 1 INTO H_FILES.                "mo271101
       AUSZFILE = H_FILES-FILENAME.                            "mo271101
    ENDIF.                                                    "mo271101
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR AUSZFILE.
      CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
        EXPORTING
          MASK      = ',Multicash,*.txt'
          STATIC    = 'X'
        CHANGING
          FILE_NAME = AUSZFILE.
    *------- Dateiangaben -
    AT SELECTION-SCREEN ON BLOCK 1.
      IF SSCRFIELDS-UCOMM = 'ONLI' OR
         SSCRFIELDS-UCOMM = 'PRIN' OR
         SSCRFIELDS-UCOMM = 'SJOB'.
        IF EINLESEN IS INITIAL.
          MESSAGE I660(FV).
          SUBMIT RFEBKA30 VIA SELECTION-SCREEN.
        ENDIF.
        MOVE AUSZFILE TO AUSZUG-FILE.
        MOVE UMSFILE  TO UMSATZ-FILE.
        IF NOT UMSFILE IS INITIAL AND FORMAT NE 'M'.
          SET CURSOR FIELD 'UMSFILE'.
          MESSAGE E621(FV).
        ENDIF.
        IF UMSFILE IS INITIAL AND FORMAT EQ 'M'.
          SET CURSOR FIELD 'UMSFILE'.
          MESSAGE E659(FV).
        ENDIF.
      ENDIF.
    *------- Buchungsparameter -
    AT SELECTION-SCREEN ON BLOCK 2.
      IF NOT PA_XBDC IS INITIAL.
      Batch Input erzeugen
        IF MREGEL IS INITIAL.
          SET CURSOR FIELD 'MREGEL'.
          MESSAGE E619(FV).
        ENDIF.
        IF NOT PA_XBKBU IS INITIAL.
          SET CURSOR FIELD 'PA_XBKBU'.
          MESSAGE E611(FV).
        ENDIF.
      ENDIF.
    *------- Algorithmen  -
    AT SELECTION-SCREEN ON BLOCK 3.
      CLEAR T_FILTER.
      LOOP AT T_FILTER.
        SHIFT T_FILTER-LOW  RIGHT DELETING TRAILING ' '.
        SHIFT T_FILTER-HIGH RIGHT DELETING TRAILING ' '.
        MODIFY T_FILTER.
      ENDLOOP.
      CASE PA_BDART.
        WHEN 1.
          IF NOT PA_BDANZ IS INITIAL.
            SET CURSOR FIELD 'PA_BDANZ'.
            MESSAGE E618(FV).
          ENDIF.
        WHEN 2.
          IF PA_BDANZ IS INITIAL.
            SET CURSOR FIELD 'PA_BDANZ'.
            MESSAGE E615(FV).
          ENDIF.
      ENDCASE.
      EXPORT PA_BDART PA_BDANZ TO MEMORY ID 'RFEBKA00_SEL'. "note 410904
    *---- Ausgabesteuerung
    AT SELECTION-SCREEN ON BLOCK 4.
      IF SY-BATCH = 'X'.
        IF BATCH NE 'X'.
          BATCH = 'X'.
        ENDIF.
      ENDIF.
    *---- Program started with EXEC+PRINT online
      IF BATCH NE 'X'.
        IF P_BUPRO = 'X' OR P_STATIK = 'X'.
          IF SSCRFIELDS-UCOMM = 'PRIN'.
            EXECPRI = 'X'.
          ENDIF.
        ENDIF.
      ENDIF.
    *------- Finanzdisposition -
    AT SELECTION-SCREEN ON BLOCK 5.
      IF NOT PA_XDISP IS INITIAL.
      Call Transaktion
        IF NOT PA_XCALL IS INITIAL.
          SET CURSOR FIELD 'PA_XDISP'.
          MESSAGE E610(FV).
        ENDIF.
        IF PA_DSART IS INITIAL.
          SET CURSOR FIELD 'PA_DSART'.
          MESSAGE E612(FV).
        ENDIF.
      ENDIF.
      IF NOT INTRADAY IS INITIAL.
        IF NOT format CA 'AS'.                                  "mo260105
          SET CURSOR FIELD 'INTRADAY'.
          CLEAR ADVICE_X.
          MESSAGE E003(FTCM).
        ELSE.
          ADVICE_X = '4'.
        ENDIF.
      ENDIF.
    *eject
    START-OF-SELECTION                                           *
    START-OF-SELECTION.
    read print parameters (user defaults) for list-output         *
    required for list-output to spool (i.e. batch or exec&print)  *
      IF ( BATCH = 'X' ) OR ( EXECPRI = 'X' ).
        PERFORM GET_PRINT_PARAMETERS USING PRI_PARAM ARC_PARAM.
      ENDIF.
      PERFORM INITIALIZATION.
      VGEXT_OK = TRUE.
    Einlesen im richtigen Format                                 *
      IF EINLESEN = 'X'.
        CASE FORMAT.
          WHEN 'M'.
          Format: MultiCash (AUSZUG.TXT und UMSAT.TXT)
            perform gmbimport.
            PERFORM MULTICASH(RFEKA200).
          WHEN 'S'.
          Format: SWIFT MT940 (mit Strukturiertem Feld 86)
            PERFORM SWIFT_MT940(RFEKA400).
          WHEN 'I'.
          Format: SWIFT MT940 (unstrukturiertes Feld 86)
            PERFORM SWIFT_MT940(RFEKA400).
          WHEN 'D'.
          Format: DTAUS im Diskettenformat
            PERFORM DTAUS_DISK(RFEKA100).
          WHEN 'E'.
          Format: ETEBAC-Format Frankreich
            PERFORM FORMAT_FRANKREICH(RFEBFR20).
          WHEN 'F'.
          Format: TITO-Format Finnland.
            PERFORM FORMAT_TITO(RFEBFI20).
          WHEN 'C'.
          Format: CSB43-Format Spanien
            PERFORM FORMAT_CSB43(RFEBES20).
          WHEN 'R'.
          Format: CSB43-Format Spanien: Referenzfelder zusammen
            PERFORM FORMAT_CSB43_R(RFEBES20).
          WHEN 'B'.
          Format: Brazil, Banco Itau
            PERFORM FORMAT_ITAU(J_1BBR20).
          WHEN '1'.
          Format: Brazil, Banco Bradesco
            PERFORM FORMAT_BRADESCO(J_1BBR30).
          WHEN 'A'.
          Format: Americas/Austrailia BAI
            PERFORM BAI_STMT_HANDLING(RFEKA700).
          WHEN OTHERS.
        ENDCASE.
    begin process returns:
        loop at s_kukey.
          l_statement-kukey = s_kukey-low.
          append l_statement to lt_statements.
        endloop.
        call function 'FIEB_RETURNS'
          TABLES
            t_statements     = lt_statements
            t_return_charges = g_return_charges.
    end returns
      ENDIF.
    Kontoauszug drucken                                          *
    o printout works for statements only that were newly read in *
      IF P_KOAUSZ = 'X' AND EINLESEN = 'X'.
      die zu druckenden Kontoauszuege sind in Range S_KUKEY (Global Data)
        DESCRIBE TABLE S_KUKEY LINES TFILL_S_KUKEY.
        IF TFILL_S_KUKEY > 0 AND VGEXT_OK = TRUE.
          IF BATCH = 'X'.                            " set up print to spool
            NEW-PAGE PRINT ON PARAMETERS PRI_PARAM
                     ARCHIVE PARAMETERS ARC_PARAM  NO DIALOG.
          ENDIF.
          PERFORM DRUCK_KONTOAUSZUG.
          IF BATCH = 'X'.
            NEW-PAGE PRINT OFF.
            MESSAGE S640(FV) WITH SY-SPONO.
          ENDIF.
        ENDIF.
      ENDIF.
    Finanzdispo Avise erzeugen                                   *
      IF PA_XDISP = 'X'.
        PERFORM FINANZDISPO_AVISE_ERZEUGEN.
      ENDIF.
    Export Print Parameters to Memory                            *
      o at least ONE of the variables EXECPRI / BATCH is ALWAYS   *
        initial here (or both)                                    *
      o import takes place in RFEBBU00 if EXECPRI = 'X'           *
      o import takes place in RFEBBU01 if BATCH (<->JOBNAME) = 'X'*
      o WATCH OUT HERE: variablenames for EXPORT / IMPORT must be *
        identical otherwise IMPORT will not return the        *
        contents of the variables while SY-SUBRC EQ 0 (!!)        *
      IF ( EXECPRI = 'X' ) OR ( BATCH = 'X' ).
        PERFORM EXPORT_PRI_PARAMS.
      ENDIF.
    Verbuchung aufrufen                                          *
      IF  PA_XDISP  = 'X'
      AND PA_TEST   = 'X'.
      falls FINANZDISPOAVISE und NICHT BUCHEN Verbuchung nicht aufrufen
      ELSE.
        IF ANWND = '0004'.   "Intraday
    create dunning blocks if customized in T028B*************"mo260105
        REFRESH R_KUKEY.
          LOOP AT S_KUKEY.
            READ TABLE GT_MANSP ASSIGNING <MANSP>
              WITH KEY KUKEY = S_KUKEY-LOW.
    *gt_mansp is filled by the format specific programs (RFEKA400)
            IF SY-SUBRC = 0.
              IF NOT <MANSP>-MANSP IS INITIAL
                AND NOT <MANSP>-BUKRS IS INITIAL.
                MOVE-CORRESPONDING S_KUKEY TO L_KUKEY.
                MOVE <MANSP>-MANSP TO L_KUKEY-MANSP.
                MOVE <MANSP>-BUKRS TO L_KUKEY-BUKRS.
                MOVE <MANSP>-ANZTG TO L_KUKEY-ANZTG.
                APPEND L_KUKEY TO LT_KUKEY.
              ENDIF.
            ENDIF.
          ENDLOOP.
          IF LINES( LT_KUKEY ) > 0.
            PERFORM SET_GLOBAL_RKUKEY(RFEBBU10) USING LT_KUKEY.
            PERFORM SET_GLOBAL_FILTER(RFEBBU10) USING S_FILTER[] T_FILTER[].
            PERFORM EINZELPOSTEN_AUSWERTEN(RFEBBU10) USING 'X'.
            LOOP AT LT_KUKEY INTO L_KUKEY.
              SELECT * FROM FEBCL
                WHERE KUKEY = L_KUKEY-LOW
                  AND ( KOART = 'K' OR KOART = 'D' )
                  AND AGKON <> SPACE
                  AND SELFD = 'BELNR'
                  AND SELVON <> SPACE.
                IF FEBCL-SELVON+10(4) <> SPACE.
                  L_GJAHR = FEBCL-SELVON+10(4).
                ELSE.
                  L_GJAHR = FEBKO-AZDAT(4).
                ENDIF.
                IF FEBCL-KOART = 'D'.
                  L_KUNNR = FEBCL-AGKON.
                  L_LIFNR = SPACE.
                ELSE.
                  L_KUNNR = SPACE.
                  L_LIFNR = FEBCL-AGKON.
                ENDIF.
                CALL FUNCTION 'FIEB_SET_DUNNING_BLOCK'
                  EXPORTING
                    I_KUKEY          = FEBCL-KUKEY
                    I_ESNUM          = FEBCL-ESNUM
                    I_BUKRS          = L_KUKEY-BUKRS
                    I_BELNR          = FEBCL-SELVON(10)
                    I_GJAHR          = L_GJAHR
                    I_KUNNR          = L_KUNNR
                    I_LIFNR          = L_LIFNR
                    I_MANSP          = L_KUKEY-MANSP
                    I_ANZTG          = L_KUKEY-ANZTG
                  IMPORTING
                    E_MANSP          = L_MANSP
                  EXCEPTIONS
                    ALREADY_EXISTING = 1
                    NOT_POSSIBLE     = 2
                    OTHERS           = 3.
                IF SY-SUBRC <> 0 OR L_MANSP <> L_KUKEY-MANSP.
    *should be entered in the protocol
                ELSE.
    *should also be entered in the protocol
                ENDIF.
              ENDSELECT.
              UPDATE FEBEP SET VB1OK = 'X' VB2OK = 'X'
                               BELNR = '' NBBLN = ''
                WHERE KUKEY = L_KUKEY-LOW.
              UPDATE FEBKO SET VB1OK = 'X' VB2OK = 'X'
                               ASTAT = '8'
                WHERE KUKEY = L_KUKEY-LOW.
            ENDLOOP.
          ENDIF.
    end of dunning block enhancement*************************"mo260105
          PERFORM CREATE_MEMO_RECORDS.
        ELSE.
      Verbuchung aufrufen, falls externe Vorgu00E4nge in T028G
          IF VGEXT_OK = TRUE.
            PERFORM VERBUCHUNG_AUFRUFEN.
            DESCRIBE TABLE NOTT028G LINES TFILL_S_KUKEY.        "Unallocated
            IF TFILL_S_KUKEY > 0.            "is OK
            perform set_print_parameters using batch pri_param.
            perform write_wrong_t028g.                        "no data yet
            perform druck_kontoauszug.                        "put in nott
            perform close_print_parameters using batch.       "yet
            perform delete_statement.
              PERFORM WRITE_WRONG_T028G.                        "hw397778
            ENDIF.
          ELSE.
            DESCRIBE TABLE S_KUKEY LINES TFILL_S_KUKEY.
            IF TFILL_S_KUKEY > 0.
              IF BATCH = 'X'.                        " set up print to spool
                NEW-PAGE PRINT ON PARAMETERS PRI_PARAM
                         ARCHIVE PARAMETERS ARC_PARAM  NO DIALOG.
              ENDIF.
              PERFORM WRITE_WRONG_T028G.
              PERFORM DRUCK_KONTOAUSZUG.
              IF BATCH = 'X'.
                NEW-PAGE PRINT OFF.
                MESSAGE S640(FV) WITH SY-SPONO.
              ENDIF.
              PERFORM DELETE_STATEMENT.
            ENDIF.
          ENDIF.
        ENDIF.
      ENDIF.
    *eject
    Seitenanfangsverarbeitung                                   *
    TOP-OF-PAGE.
    --Batch-Heading-Routine aufrufen--
      PERFORM BATCH-HEADING(RSBTCHH0).
      WRITE: /01 SY-VLINE, 02 SY-ULINE(130), 132 SY-VLINE.
      IF PRINTFLAG = 'A'.
        PERFORM DRUCK_BANKUEBERSCHRIFT.
      ENDIF.
    *eject
    Form-Routinen                                               *
    FORM VERBUCHUNG_AUFRUFEN.                                    *
    FORM VERBUCHUNG_AUFRUFEN.
    Wenn Range leer und Einlesen angeXt, dann gab es keine zu verbuchenden
    Kontoauszu00FCge. Z.B. wenn alle Ktoauszu00FCge schon eingelesen wurden.
      DESCRIBE TABLE S_KUKEY LINES TFILL_S_KUKEY.
      IF TFILL_S_KUKEY = 0 AND EINLESEN = 'X'.
        EXIT.
      ENDIF.
    Felder fu00FCr Reportaufruf fu00FCllen.
      IF BATCH = 'X'.
        JOBNAME(8)     = SY-REPID.
        JOBNAME+8(1)   = '-'.
        JOBNAME+9(14)  = TEXT-002.
        EXPORTID(8)    = SY-REPID.
        EXPORTID+8(8)  = SY-DATUM.
        EXPORTID+16(6) = SY-UZEIT.
        LOOP AT S_KUKEY.
          EXPORTID+23(8) = S_KUKEY-LOW.
          EXIT.
        ENDLOOP.
      ENDIF.
    IF SPOOL = 'X'.                       " QHA  GB
       CLEAR PRI_PARAM.                   " QHA  GB
       PRI_PARAM = %_PRINT.               " QHA  GB
       EXPORT PRI_PARAM TO MEMORY.        " QHA  GB
       IF SY-SUBRC NE 0.                  " QHA  GB
          SPOOL = ' '.                    " QHA  GB
       ENDIF.                             " QHA  GB
    ENDIF.                                " QHA  GB
    Verbuchungsreport aufrufen falls Buchungen erzeugt werden sollen.
      IF BUBER NE SPACE.
        SUBMIT RFEBBU01 AND RETURN
                        WITH ANWND    =  ANWND
                        WITH S_KUKEY  IN S_KUKEY
                        WITH JOBNAME  =  JOBNAME
                        WITH EXPORTID =  EXPORTID
                        WITH BUBER    =  BUBER
                      WITH USEREXIT =  USEREXIT                     "30D
                       WITH SELFD    =  SELFD
                       WITH SELFDLEN =  SELFDLEN
                        WITH S_FILTER IN S_FILTER
                        WITH T_FILTER IN T_FILTER
                        WITH PA_BDART =  PA_BDART
                        WITH PA_BDANZ =  PA_BDANZ
                        WITH FUNCTION =  FUNCTION
                        WITH MODE     =  MODE
                        WITH MREGEL   =  MREGEL
                        WITH PA_EFART =  EFART
                        WITH P_BUPRO  =  P_BUPRO
                      WITH SPOOL    =  SPOOL
                        WITH P_STATIK =  P_STATIK
                        WITH VALUT_ON =  VALUT_ON
                        WITH TESTL    =  PA_TEST
                        WITH EXECPRI  = EXECPRI.
      Jobcount importieren
        IMPORT JOBCOUNT FROM MEMORY ID EXPORTID.
      WRITE: / 'Jobcount = ', JOBCOUNT.
      ENDIF.
    ENDFORM.                    "VERBUCHUNG_AUFRUFEN
    *eject
    *&      Form  FINANZDISPO_AVISE_ERZEUGEN
          text                                                           *
    FORM FINANZDISPO_AVISE_ERZEUGEN.
      LOOP AT S_KUKEY.
        SELECT * FROM FEBKO WHERE KUKEY = S_KUKEY-LOW.
        ENDSELECT.
        IF SY-SUBRC = 0.
          SUBMIT RFEBFD00 AND RETURN
                          WITH P_BUKRS  =  FEBKO-BUKRS
                          WITH P_HBKID  =  FEBKO-HBKID
                          WITH P_HKTID  =  FEBKO-HKTID
                          WITH P_ANWND  =  FEBKO-ANWND          "40a
                          WITH R_AZNUM  =  FEBKO-AZNUM
                          WITH R_AZDAT  =  FEBKO-AZDAT
                          WITH BI-NAME  =  SY-REPID
                          WITH BI-PROC  =  ADVICE_X             "46b
                          WITH BI-DSART =  PA_DSART
                          WITH P_VERD   =  PA_VERD.
        ENDIF.
      ENDLOOP.
    ENDFORM.                               " FINANZDISPO_AVISE_ERZEUGEN
    *eject
    *&      Form  INITIALIZATION
          Felder initialisieren                                          *
    FORM INITIALIZATION.
      DATA: l_job LIKE tbtcjob-jobcount,                        "mo260105
            ls_param LIKE btcselect,                            "mo260105
            lt_joblist TYPE STANDARD TABLE OF tbtcjob.          "mo260105
      UPLOAD    = PCUPLOAD.
      EB_FORMAT = FORMAT.
      IF NOT PA_XCALL IS INITIAL.
        FUNCTION = 'C'.
      ENDIF.
      IF NOT PA_XBDC  IS INITIAL.
        FUNCTION = 'B'.
      ENDIF.
      MODE     = PA_MODE.
      IF  PA_XCALL = 'X'
      AND PA_XBKBU = 'X'.
        BUBER    = '1'.
      ELSE.
        BUBER    = 'A'.
      ENDIF.
      IF INTRADAY = 'X'.
        ANWND    = '0004'.                   "Intraday Stmt
    *begin of MT942 intraday enhancement                       "mo260105
        SELECT SINGLE * FROM t028b WHERE mansp <> space.
        IF sy-subrc = 0.
          ls_param-jobname = 'RFEBKA20'.
          ls_param-username = '*'.
          CALL FUNCTION 'BP_JOB_SELECT'
            EXPORTING
              jobselect_dialog  = 'N'
              jobsel_param_in   = ls_param
              enddate           = sy-datum
            TABLES
              jobselect_joblist = lt_joblist
            EXCEPTIONS
              OTHERS            = 6.
          IF sy-subrc <> 0 OR LINES( lt_joblist ) = 0.
            CALL FUNCTION 'JOB_OPEN'
              EXPORTING
                jobname  = 'RFEBKA20'
              IMPORTING
                jobcount = l_job
              EXCEPTIONS
                OTHERS   = 4.
            IF sy-subrc <> 0.
              MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                 WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
            ENDIF.
            SUBMIT rfebka20 VIA JOB 'RFEBKA20' NUMBER l_job AND RETURN.
            IF sy-subrc = 0.
              CALL FUNCTION 'JOB_CLOSE'
                EXPORTING
                  jobcount  = l_job
                  jobname   = 'RFEBKA20'
                  strtimmed = 'X'
                EXCEPTIONS
                  OTHERS    = 9.
              IF sy-subrc <> 0.
                MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                  WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
              ENDIF.
            ENDIF.
          ENDIF.
        ENDIF.
    *end of MT942 intraday enhancement                         "mo260105
      ELSE.
        ANWND    = '0001'.                   "Anwendung Zwischenspeicher
      ENDIF.
      EFART    = 'E'.                      "Electronischer Kontoauszug
    IF SY-PDEST NE SPACE.                             " QHA
       SPOOL  = 'X'.                                  " QHA
    ENDIF.                                            " QHA
    *-- Avoid initial BUKRS - field: Defaults to page-header for company
    *-- 0000. Fill instead with non-existing value - leads to printout of
    *-- header-text for client.
      BHDGD-BUKRS = '----'.                                     "ak101199
    ENDFORM.                               " INITIALIZATION
    *eject
    *&      Form  WRITE_WRONG_T028G
          Ausgabe der fehlenden Eintru00E4ge in T028G                        *
    FORM WRITE_WRONG_T028G.
      DATA: FIRST(1) TYPE C.                                    "HP
      DATA: x_noposting(1) TYPE c.
      PRINTFLAG = SPACE.
      clear x_noposting.
      LOOP AT NOTT028G WHERE VGDEF = SPACE.
        x_noposting = 'X'.
        exit.
      ENDLOOP.
      NEW-PAGE.
        Druck der ext. Vorgu00E4nge, die nicht in T028G enhalten sind.
      WRITE: /01 SY-VLINE,  TEXT-010,  132 SY-VLINE.
      WRITE: /01 SY-VLINE,  TEXT-011,  132 SY-VLINE.
      WRITE: /01 SY-VLINE,  TEXT-012,  132 SY-VLINE.
      WRITE: /01 SY-VLINE,  TEXT-013,  132 SY-VLINE.
      WRITE: /01 SY-VLINE,  TEXT-014,  132 SY-VLINE.
      WRITE: /01 SY-VLINE,  TEXT-015,  132 SY-VLINE.
      IF X_NOPOSTING EQ 'X'.
        WRITE: /01 sy-vline,  text-017,  132 sy-vline.
      ENDIF.
    WRITE: /01 SY-VLINE,  TEXT-018,  132 SY-VLINE.           "MP
    WRITE: /01 SY-VLINE,  TEXT-019,  132 SY-VLINE.           "MP
    WRITE: /01 SY-VLINE,  TEXT-020,  132 SY-VLINE.           "MP
      FIRST = 'X'.                                              "HP
      LOOP AT NOTT028G WHERE VOZPM = '*'.                       "HP
        IF FIRST = 'X'.                                         "HP
          WRITE: /01 SY-VLINE,  TEXT-010,  132 SY-VLINE.        "HP
          WRITE: /01 SY-VLINE,  TEXT-040,  132 SY-VLINE.        "HP
          WRITE: /01 SY-VLINE,  TEXT-041,  132 SY-VLINE.        "HP
          WRITE: /01 SY-VLINE,  TEXT-042,  132 SY-VLINE.        "HP
          WRITE: /01 SY-VLINE,  TEXT-031,  132 SY-VLINE.        "HP
          "HP
          WRITE: /01 SY-VLINE, 02 SY-ULINE(130), 132 SY-VLINE.  "HP
          CLEAR FIRST.                                          "HP
        ENDIF.                                                  "HP
        WRITE: /01     SY-VLINE,                                "HP
                03(08) NOTT028G-VGTYP,                          "HP
                12(27) NOTT028G-VGEXT,                          "HP
                40(03) '+/-',                                   "HP
                44(20) TEXT-032,                                "HP
                65(15) NOTT028G-BANKL,                          "HP
                81(18) NOTT028G-KTONR,                          "HP
               100(05) NOTT028G-AZNUM,                          "HP
               106(08) NOTT028G-KUKEY,                          "HP
               115(05) NOTT028G-ESNUM,                          "HP
               132     SY-VLINE.                                "HP
        DELETE NOTT028G.                                        "HP
      ENDLOOP.                                                  "HP
      SORT NOTT028G.                                            "HP
      LOOP AT NOTT028G.                                         "HP
        AT FIRST.                                               "HP
          WRITE: /01 SY-VLINE,  TEXT-010,  132 SY-VLINE.
          WRITE: /01 SY-VLINE,  TEXT-030,  132 SY-VLINE.
          WRITE: /01 SY-VLINE,  TEXT-031,  132 SY-VLINE.
          WRITE: /01 SY-VLINE, 02 SY-ULINE(130), 132 SY-VLINE.
        ENDAT.                                                  "HP
    LOOP AT nott028g.                                         "HP
        WRITE: /01     SY-VLINE,
                03(08) NOTT028G-VGTYP,
                12(27) NOTT028G-VGEXT,
                40(01) NOTT028G-VOZPM,
                44(20) TEXT-032,
                65(15) NOTT028G-BANKL,
                81(18) NOTT028G-KTONR,
               100(05) NOTT028G-AZNUM,
               106(08) NOTT028G-KUKEY,
               115(05) nott028g-esnum.
        if nott028g-vgdef = 'X'.
          write  121(07) G_VGEXT.
        endif.
        write  132     sy-vline.
      ENDLOOP.
      WRITE: /01 SY-VLINE, 02 SY-ULINE(130), 132 SY-VLINE.
      if x_noposting = 'X'.
        MESSAGE s773.
      endif.
    ENDFORM.                               " WRITE_WRONG_T028G
    *eject
    Include der Form-Routinen  fu00FCr Ausdruck des Kontoauszuges    *
    INCLUDE ZFEKAP00.
          Form  DELETE_STATEMENT
    FORM DELETE_STATEMENT.
      SELECT * FROM FEBKO  WHERE KUKEY IN S_KUKEY AND ANWND = '0001'.
        DELETE FROM FEBRE WHERE KUKEY = FEBKO-KUKEY.
        DELETE FROM FEBEP WHERE KUKEY = FEBKO-KUKEY.
        MOVE-CORRESPONDING FEBKO TO FEBVW.
        DELETE FEBVW.
        DELETE FEBKO.
      ENDSELECT.
    ENDFORM.                               " DELETE_STATEMENT
    Form  GET_PRINT_PARAMETERS                                           *
    FORM GET_PRINT_PARAMETERS USING P_PRI_PARAM LIKE PRI_PARAMS
                                    P_ARC_PARAM LIKE ARC_PARAMS.
      DATA: LIST_NAME LIKE PRI_PARAMS-PLIST.
      LIST_NAME     = SY-REPID.
      CALL FUNCTION 'GET_PRINT_PARAMETERS'
           EXPORTING
                NO_DIALOG              = 'X'
                LIST_NAME              = LIST_NAME
                MODE                   = 'CURRENT'
              LAYOUT                 = 'X_65_132'
           IMPORTING
                OUT_ARCHIVE_PARAMETERS = P_ARC_PARAM
                OUT_PARAMETERS         = P_PRI_PARAM.
    P_PRI_PARAM-LINSZ = '132'.  "workaround
    ENDFORM.                    "GET_PRINT_PARAMETERS
    Form  EXPORT_PRI_PARAMS                                             *
    Export print and archive parameters for later import in reports     *
    RFEBBU00 or RFEBBU01 (depending on parameters EXECPRI and JOBNAME)*
    Variablenames for IMPORT / EXPORT must be the same, so we better    *
    don't use local variables here.                                     *
    FORM EXPORT_PRI_PARAMS.
      CLEAR PRI_KEY.
      PRI_KEY-REPID = 'RFEBBU00'.
      LOOP AT S_KUKEY.
        PRI_KEY-KUKEY = S_KUKEY-LOW.
        EXIT.
      ENDLOOP.
      EXPORT PRI_PARAM ARC_PARAM TO MEMORY ID PRI_KEY.
    ENDFORM.                                            " EXPORT_PRI_PARAMS
    ----  T H E   E N D -
    *&      Form  CREATE_MEMO_RECORDS
          text
    -->  p1        text
    <--  p2        text
    FORM CREATE_MEMO_RECORDS.
      DATA: XFEBKO LIKE FEBKO OCCURS 2 WITH HEADER LINE.
      DATA: XFEBPI LIKE FEBPI OCCURS 2 WITH HEADER LINE.
      DATA: HEADER_LINE(130) TYPE C.
      DATA: POMSG LIKE BALMT.
      DATA: BEGIN OF ITAB_FDES OCCURS 10.
              INCLUDE STRUCTURE FDES.
      DATA: END OF ITAB_FDES.
      PRINTFLAG = SPACE.
      LOOP AT S_KUKEY.
        AT FIRST.
          IF P_BUPRO = 'X'.
            NEW-PAGE.
            WRITE: /01 SY-VLINE,
                       TEXT-170,
                   132 SY-VLINE.
            WRITE: /01 SY-VLINE, 02 SY-ULINE(130), 132 SY-VLINE.
            HEADER_LINE = TEXT-031.
            SHIFT HEADER_LINE BY 62 PLACES.
            WRITE: /01 SY-VLINE,
                       HEADER_LINE(35),
                   132 SY-VLINE.
            WRITE: /01 SY-VLINE, 02 SY-ULINE(130), 132 SY-VLINE.
          ENDIF.
        ENDAT.
        SELECT * FROM FEBKO WHERE KUKEY = S_KUKEY-LOW.
        ENDSELECT.
        IF SY-SUBRC = 0.
          REFRESH XFEBKO.
          CLEAR   XFEBKO.
          XFEBKO = FEBKO.
          APPEND XFEBKO.
          REFRESH XFEBPI.
          CLEAR   XFEBPI.
          SELECT SINGLE * FROM FEBPI INTO XFEBPI
                 WHERE KUKEY = XFEBKO-KUKEY
                   AND ESNUM = 0.
          IF SY-SUBRC = 0.
            APPEND XFEBPI.
            CALL FUNCTION 'POST_MEMO_ENTRIES_POLLING_DIR'
              TABLES
                T_FEBKO                 = XFEBKO
              T_FEBEP                 =
                T_FEBPI                 = XFEBPI
              EXCEPTIONS
                STATEMENT_NOT_PROCESSED = 1
                DISTINCT_FDES_NOT_FOUND = 1
                OTHER_CUSTOMIZATION     = 1
                NOTHING_TO_POST         = 2
                OTHERS                  = 1.
            IF SY-SUBRC = 0.
              CLEAR POMSG.
    *-- update bdb --
              LOOP AT XFEBKO.
                UPDATE FEBKO
                   SET ASTAT = XFEBKO-ASTAT
                       VB1OK = XFEBKO-VB1OK
                       VB2OK = XFEBKO-VB2OK
                       XFDIS = XFEBKO-XFDIS
                 WHERE ANWND = XFEBKO-ANWND
                   AND ABSND = XFEBKO-ABSND
                   AND AZIDT = XFEBKO-AZIDT
                   AND EMKEY = XFEBKO-EMKEY.
              ENDLOOP.
              LOOP AT XFEBPI.
                UPDATE FEBPI
                   SET IDENR = XFEBPI-IDENR
                       DATM1 = XFEBPI-DATM1
                       TIME1 = XFEBPI-TIME1
                 WHERE KUKEY = XFEBPI-KUKEY
               

    More than 90% of this time it's due to a misunderstanding (in-apps, subscription renewals, etc.), or accidental due to family members (other accunts)...
    At least you can check what's purchased on your own account:
    Tunes Store & Mac App Store: Seeing your purchase history and order numbers
              http://support.apple.com/kb/HT2727
    If the purchases do not show up there, then it's coming from another iTS account. You may wish to contact iTS...
    iTunes Store Support
    http://www.apple.com/emea/support/itunes/contact.html
    They could disable the other account if it turns out not to be accidental, etc.

  • Bank Statement Clearing - Multicash

    Hi FI Gurus,
    This is in regard with Automatic Clearing of Incoming payments from
    customers while uploading Electronic Bank Statement (Format Multicash)
    for Germany.
    We have setup the system to clear the Customer open items while
    uploading the bank statement on the basis of document number. Bank
    Statement comes with the Customer invoice document number and the same
    gets cleared automatically after uploading the statement.
    Customer Invoice Document number comes at field 18 in the bank
    statement. An eg is herebelow where 100000034 is the Document number:-
    "20320500";"4989127861";1727;17.03.08;84223600;"Gutschrift";"Gutschrift";0;"051";"2703";9850,00;0;33;14.03.08;"";"";"KD.NR.";"RE.100000034 VOM
    28.02.08 E";"URO 9850,00 ./. 160,41
    SK";"";"";"";"";"";"";"";"";"";"";"MAX
    JENNE";"";"21050000";"0053004559";"051";27031981
    Now, the issue is to achieve the automatic clearing for the Cutover
    open items. Since the cutover open items will be uploaded with the new
    SAP Invoice Document numbers and Bank Statements will be coming with
    old customer inovice document numbers, there will not be any automatic
    clearing of these items.
    Kindly suggest a wayout to clear these cutover open items while
    uploading the bank statement. Would it be possible to clear the items
    on the basis of Reference no. where old document number will be given
    while posting the document in SAP and hence the Reference no in SAP and
    document no in bank statement file at field 18 can be matched.
    I hope I am clear in the question.
    Thanks!
    Vikash

    The Posting date is not defined in the BAI file.  The program should pick up the statement date in the BAI file and populate the posting date with the same value.  In reading through the documentation for the program RFEBKA00 which is run via FF.5, I discovered that the include program RFEKA700 deals with BAI format.  The file that is downloaded from the bank, contains multiple accounts and their respective activity for that respective day.  When we import the file, all the other accounts are handled correctly.  That is to say that the posting date that gets populated in the clearing document is set to the statement date from the file.  The issue that we are facing has to deal with the last account being sent in the file.  On this account, the activity is missing the posting date so the system sets the posting date to the current date.  When I review the line items from the file in FEBA, the last activity item in the file has the correct posting date, the rest of the activity items do not have the correct posting date.  I can review this information by looking at table FEBEP.  On the last records for the Bank Statement Date's file, associated with the last account in the file, field BUDAT does not have anything populated in the field.
    I am at a total loss as to why this would work for all the other accounts and only the last activity item on the last account when I process the file.
    Suggestions?
    Wayne

  • Automatic Import of Electronic Bank Statements (EBS)

    Hi SAP Gurus,
    We want to solve the following issue:
    Daily we receive multiple Electronic Bank Statements by means of banking Communication Software (BCS).
    Those EBS files are stored on our SAP Application Server, filetype = SWIFT MT940 format,
    and the file name contains a date and time stamp.
    File name example: MT940.90910077527_20101124_210421_167660
    Currently the import of these EBS-files is done manually via transaction FF_5 (program: RFEBKA00).
    We want to automate this import process.
    Every time a new EBS-files arrives (in a specific directory) on the application sever
    a signal (including the filename) should be send to SAP, so SAP knows there is a new EBS-file available for import.
    SAP now runs program RFEBKA00, with the provide filename, in the background.  
    Any ideas how to do this?
    Some tech. info:
    Windows Server 2003 R2 SP2 64-bit
    Oracle 10.2.0.4
    SAP R/3 Enterprise 47x200  
    Thanks,
    Roger Vanaubel

    Hi
    I think there are several ways to do it. In our case, we have a program which concatenates all received files into a single file and which launches RFEBKA00. It runs at fixed time, outside the working hours of accounting clerks. It is possible to trigger the program at file receipt, but there are problems if somebody is working in FEBA at the same time RFEBKA00 is working on the same bank account: then RFEBKA00 stops without doing all postings.
    If you trigger RFEBKA00 at file receipt, you may have several jobs running in parallel, and if 2 bank statements received in separate files are for the same account, you will have the same problem.

  • Electronic Bank Statement clearing with FI-CA postings

    Hello Everyone,
    FI-CA transfer to General Ledger posting is done on summary basis. For ex- If there were 2 postings for $100 each, then when the transfer is done from FI-CA to G/L, it posts $200, but bank is going to send information for 100 with record 16 (BAI) and one more record for $ 100, Thus sending 2 records.
    How do i reconcille these 2 items automatically in bank postings against one postings made from FI-CA, through FF_5 upload. 
    Is there any algorithm for clearing FI-CA, or can we send send individual postings to G/L from FI-CA, so bank statment is reconcilled properly.
    I would really appreciate your help.

    The Posting date is not defined in the BAI file.  The program should pick up the statement date in the BAI file and populate the posting date with the same value.  In reading through the documentation for the program RFEBKA00 which is run via FF.5, I discovered that the include program RFEKA700 deals with BAI format.  The file that is downloaded from the bank, contains multiple accounts and their respective activity for that respective day.  When we import the file, all the other accounts are handled correctly.  That is to say that the posting date that gets populated in the clearing document is set to the statement date from the file.  The issue that we are facing has to deal with the last account being sent in the file.  On this account, the activity is missing the posting date so the system sets the posting date to the current date.  When I review the line items from the file in FEBA, the last activity item in the file has the correct posting date, the rest of the activity items do not have the correct posting date.  I can review this information by looking at table FEBEP.  On the last records for the Bank Statement Date's file, associated with the last account in the file, field BUDAT does not have anything populated in the field.
    I am at a total loss as to why this would work for all the other accounts and only the last activity item on the last account when I process the file.
    Suggestions?
    Wayne

  • Down payment request clearing in manual bank statement

    Hello,
    can somebody advice how to configure manual bank statement posting rule in order to clear down payment request (sp.GL indicator F).
    The case I would like to solve is the following:
    1. I have created a down payment request via F-37.
    2. On the bank statement I have payment received from customer for the above payment request
    3. I need to configure a posting rule in manual bank statement in order to post the received down payment.
        Debit : bank account
        Credit : customer account with sp.GL indicator A and clear down payment request.
    Thank you for any advice!
    Gabriela

    I am in 4.7. It seems that the interpretation algorithm doesn't search the items in statistical postings (down payment request). I have choosen interpretation algorithm 021 Reference document number search. The down payment request as XBLNR 134134. In program RFEBKA00, I have XBLNR number interval 112000 - 199999 and the program doesn't find the down payment. FEBCL is empty. When I fill FEBCL in the user exit, the clearing process works fine without any manual action.
    When looking in the program RFEBBU10, I can see:
    FORM X-TREFFER_PROBELESEN.
      CLEAR TREFFER.
      LOOP AT TREFFER.
        SELECT * FROM BKPF WHERE BUKRS = FEBKO-BUKRS
                             AND BSTAT = ' '
                             AND XBLNR = TREFFER-NUMMER.
    Since the down payment request has BSTAT 'S', that explains why the standard interpretation algorithm doesn't find the document (TREFFER-NUMMER has the right value 134134).

  • TR-EBS  SwiftMT940 mapping to an IDOC message FINSTA01 - Bank Statements

    For Treasury, we are going to move to the PI platform. We are currently using EDI.
    We start the process by requesting Citibank(GXS operations team) to put a sample file into the outbound mailbox to let our company pick up.  The output of the file will be XML.
    We will them map and create an IDOC with the FINSTA message.
    However, we are only beginning the IDOC mapping process.
    Does anyone have a sample crosswalk which will allow us to see how the SwiftMT940 from Citibank can be mapped to an SAP Idoc?
    If so, may we see how you mapped the segments?
    Also, how do you test the loading of the IDOC created? with the RFEBKA00 program?
    Please advise.

    Hello,
    I am really not sure how you map to IDOC.
    But, the following information may be useful to you.
    Hello, You can configure the electronic bank statement at the following path: IMG => Financial Accounting => Bank Accounting => Business Transactions => Payment Transactions => Electronic Bank Statement => Make Global Settings for Electronic Bank Statement. All the settings will be done at this path only. 1. Create Account Symbols 2. Assign Accounts to Account Symbols 3. Create keys for posting rules 4. Define posting rules 5. Create transaction type Assign external transaction types to posting rules 6. Assign bank accounts to transaction types. There are different programs to upload electronic bank statement. FF.5 or FF_5. I think your case Multicash format you are using. You need have three files in FF.5 and two files in FF_5 You can prepare a Z program in order to truncate the electronic bank statement into two or three part files and save them on the application server. 1. Take all the external codes list from bank. 2. Take any available documentation from the Bank describing the relevance of the external codes. 3. Make sure that your Chart of Accounts (Bank Accounts) last digits logic is appropriate to meet the requirements. 4. Based on this decide the Account Symbols that are required to be created. 5. Make sure that the masking rules are configured properly. 6. Decide the posting rules that needs to be created. 7. Link up your external symbols provided by the bank with Posting rules and give proper algorithms for posting and clearing logic. 6. Concentrate on the posting areas to be posted while uploading the bank statement. Further explanation would help you to understand the functionality when uploaded the electronic bank statement. Main purpose of uploading the bank statement into SAP is to make your Bank Main Account and physical bank statement balance in sync. You do not have any traditional Bank Reconciliation Statement (BRS) report in SAP. SAP is normally you maintain bank main account and bank sub account. Whenever you make a payment through F-53 or F-58 or F110, the entry would be: Vendor Account Dr To Bank Sub Account The ending digits of the sub-account would be important in configuring the masking rule. Based on this masking rule when you upload the bank statement the entry the system would pass is: Bank Sub Account Dr To Bank Main Account It depends on the configuration, either the sub account will be cleared by the system automatically or you need to run F.13 to clear the sub accounts. At the time of receipts, you have different accounting entries unlike payments. It needs to post to two posting areas. 1. GL Accounting 2. Sub-Ledger Accounting The entries would system itself pass is: Bank Main Account Dr To Bank Sub Account Bank Sub Account Dr To Cutomer account. Clearing logic mentioned for your posting rules and the alogrithm used for your external bank symbols will also play pivotal role in clearing the accounts. Ideally you will use FF67 / FF.5 / FF_5 for uploading manual or electronic bank statement FEBA / FEBA_BANK_STATEMENT is used for furthe rprocessing. GO THROUGH SAP NOTE 48854 Please go through SAP Note. 48854. You will get an idea regarding the functionality of the algorithms. Though this note is in relevant to GB specific, you will find this very useful. description follows below regarding the normal procedure for maintaining table T028G. Due to the different bank codes and posting rules, pre-Customizing is not possible at this point. The following processing types are available - unless stated otherwise, you should use the interpretation algorithm: '000 - No interpretation' in each case. 1. '00': There is no processing. The entry line is ignored. 2. '01': A validation is made whether an entry exists for the transferred check number in the check table (PAYR). The check number and payment document number are transferred for further processing. Interpretation algorithm: outgoing check processing '011'-'013'; the update in the check file is via the interpretation algorithm. 3. '02': Transfer of the ending balance to the electronic bank statement 4. '03': Transfer of the opening balance to the electronic bank statement 5. '04': Clearing via the allocation number which is delivered with the bank statement. No interpretation algorithm. 6. '05': Clearing of BACS payments or BACS bank collection. The reference text field is first read to ascertain whether it involves payments initiated by users or bank collection via BACS. Providing it does involve a cash transaction initiated by the user, the payment document numbers concerned are determined via the reference number and transferred as a reference to further processing. Interpretation algorithm: '000 - No interpretation' or '019 - Reference number DME'. Note To differentiate between the two procedures in table T028G, you have to maintain two separate entries. Example: the bank uses bank code '62' for cash receipts and for BACS bank collection. Ext. Transaction +/- sign Posting rule Int. Algorithm Processing type 62 + GB62 001 5 62 SAPBACS + GB63 000 5 7. '06': Bank costs or interest revenues Recommended interpretation algorithm: '000 - No interpretation' 8. '07': Total amount of cash disbursements 9. '08': Total amount of cash receipts 10. '09': Items not paid Recommended interpretation algorithm: '000 - No interpretation' Regards, Ravi

Maybe you are looking for

  • More than 255 characters in browser URL - Help needed

    Hai friends, We are facing a problem. We are calling a report from a form. We are using FORMS 10G AND REPORTS 10G. While calling reports from forms Reports are showing error, because we are not able to pass more that 255 characters in brwoser URL. We

  • Suspending JMS event generator

    Hi, How do I suspend a jms event dynamically? I know that this can be done with WLI Admin Console but is there another way to do this without user intervention? Help appreciated.

  • Issue in Medical Reimbursement

    Hai group I have an issue in Medical Reimbursement Entered medical eligibility for the employees in IT589, proportionately , eg. If any employee joined on or before 1/4/08, full amount 15000, if joined after 1/4/08 proportionately entered. But system

  • Crystal Reports and ntext

    I am running Crystal Reports Enterprise v 11.0.0.1282 against a Business Objects Universe. When I try to include fields of type "Memo" (ntext in the database) I get an error, because the SQL generated by Crystal is "SELECT DISTINCT". I cannot find a

  • DC authentication always require for domain PC

    Hi Team, i wanted to know how to apply the computer in the domain to be unlocked only after they are connected to domain so even if the PC is locked which is in domain and if the network cable is removed from the pc then it should not be able to logi