Ansicht
Dokumentation

Bank Check Creation and Output ( RELNBANK_463_BCA_US_BCHK )

Bank Check Creation and Output ( RELNBANK_463_BCA_US_BCHK )

RFUMSV00 - Advance Return for Tax on Sales/Purchases   BAL Application Log Documentation  
This documentation is copyright by SAP AG.
SAP E-Book

Short text

Bank Check Creation and Output

Use

It is now possible to have the system create and output Bank Checks also known as Teller Checks.

This new function uses Check Stack Management functionality to maintain pre-numbered check stacks at each branch location, and Payment Order to transfer funds that are needed to pay for checks drawn by the bank. Check Stacks are assigned to the banks own BCA account, where they can be both drawn and output via printer.

Basic SAP Trasaction codes are:

Create Bank Checks with BCA_US_ISS_BC. Because this PO like transaction will default to Bank Check registered Transaction Codes, all you need to do is start the transaction using the customer account on the debit side, and give the Bank's own "Bank Check" clearing account for use on the credit side. Additional information will be requested via a dialog which will pop up after you hit save.

Reprint Bank Checks with BCA_US_RE_BC. Run the report and select a check that you wish to reprint. You have options at the bottom of the screen to reprint with new payee text, or check number.

Reverse Bank Check with BCA_US_RV_BC. This simply reverses the original payment order, (ie this will return the money used to pay for the bank check back to the bank customer's account), and cancels the check number used to register the check. You must have the original payment order number used to create the check before you can reverse it.

Bank Check Reporting with BCA_US_DS_BC This is an application that allow multiple types of reports to be generated.

Process:

1) Each branch will be set up as an account holder and will have its own BCA checking account. The check stack locations will also correspond to a particular account used for clearing.

2) When a check payment arises for an interest payment or an account closure, money is transferred from the customers DDA account to the branch checking account. This transfer takes place via standard reference account functionality in account balancing and account closure sections within account maintenance.

3) In all cases, an internal payment order is issued which uses specific transaction types used only for Bank Check creation.

Interest Payments Via Bank Checks - Rather than have credit interest accumulate in an account, a customer may want their interest sent to them via a bank check. To set this up, you must ensure that master data is set up correctly. The first step is to go to the Account Balancing Tab inside an the master data transaction. From here, you need to check the ,Internal Reference Acct. (indirect), radio button for bank checks to be produced. Normally, this function is used to send interest to another internal account. In the case of banck check, the refference account will be the banks clearing account used to draw bank checks. Also, in the dialog provided, you must enter the banks own clearing account used for clearing bank checks. In addition, you must enter the tansaction types set up in your system for Bank Checks. This would include both the "Bank Check Credit“ and "Debit“ transaction types. The „Payment method“ should match what you desire as per your own implementation.

Closing Accounts using Bank Checks - Like Interst payments, closing an account with risidual payment made via bank check is possible. To set this up properly, you go to the Master Data area, however, for closing, we need to go to the Basic Data tab within Account Master data. From here you need to look at the Administrative Section. Once a closing date has been entered, you will be allowed to pick whether account funds should be transfered out via an internal or external account. Like interestet payments, you need to input an internal reference account which is the banks bank check clearing account. Once saved, the system will recognize a PO used for closing an account, and during the PO process, if the reference account matches registered bank check clearing accounts (set in default stacks customizing) a bank check will automatically be created.Once saved, the system will recognize a PO used for closing an account, and during the PO process, if the reference account matches registered bank check clearing accounts (set in default stacks customizing) a bank check will automatically be created.

Check Status Update - When checks are settled, you need to request that the system update their status. This is done in the Account Maintenance screens (Account Master Data). From within the "Payment Transaction“ tab, go to the section towards the bottom labled "check types“. You need to set the "Check No. Issuing“ field to "on issue“ for the check type you have desginated for bank checks.Once the "Check No. Issuing“ has been set as shown in this section, you should be able to clear a check as paid using a normal payment item, and then see that the check has been cleared when running any of the bank check reporting tools such as transaction code bca_us_ds_bc.

Applicaiton Side Setup:

Bank Check functionality takes advantage of Check Stack Management available in BCA. Therefore, after the proper IMG configuration has been completed, it is important to create an internal stack of bank checks at a particular “location” for the bank check function to issue checks from.

From the application menu, go to transaction F9A25 and create at least one location that you wish to use as a bank check location. This location can represent a physical or virtual location for bank checks. Once a location exists, you need to maintain some default settings. Go to the maintain transaction in the check stack location folder, and at minimum, check on the "Issue Customer" flag.

Once you have created a location for a stack, all you need to do is use is create the stack using the transaction for direct creation, F9A12. Once inside of the create stack transaction, use your new location created above to create checks which have a number range which is desireable. The number range may be fixed to numbers used on pre-numbered check stock. Keep in mind though that the checks created here represent a counter used for each consective bank check which is created.

Important Note: It is highly recommened that you only create one check stack per location. Even though manual Bank Check creation can handle more than one stack, automatic Bank Check creation via Interest and Closings can not. Therefore, only create one stack unless you are very sure you need more than one!

Master Data Setup:

Before automatic bank checks can be created for online transactions such as EOD balancing and account closings, you must go into an accounts master data and make some specific changes which are documented here.

Interest Payment Bank Checks - Rather than have credit interest accumulate in an account, a customer may want their interest sent to them via a bank check. To set this up, you must ensure that master data is set up correctly. The first step is to go to the Account Balancing Tab inside an the master data transaction. you need to check the ,Internal Reference Acct. (indirect), radio button for bank checks to be produced. Normally, this function is used to send interest to another internal account. In the case of banck check, the refference account will be the banks clearing account used to draw bank checks. If there is no account yet input, you will see the create icon instead of a magnifying glass. Using either icon/button, a detail dialog will appear. In this dialog you must enter the banks own clearing account used for clearing bank checks. In addition, you must enter the tansaction types set up in your system for Bank Checks. This would include both the "Bank Check Credit“ and "Debit“ transaction types. The "Payment method“ should match what you desire as per your own implementation. Once the above has been saved, any interest created during a balancing run will be first posted to the customers account, and then posted via a PO to the banks bank check clearing account. During the payment order process, the transaction type of "bank check“ will be recognized and a bank check will be created.

Account Closing with Bank Checks - Like Interst payments, closing an account with risidual payment made via bank check is possible. To set this up properly, you go to the Master Data area of a particular account and go to the Basic Data tab within Account Master data. From here you need to look at the Administrative Section. Once a closing date has been entered, you will be allowed to pick whether account funds should be transfered out via an internal or external account. Like interestet payments, you need to input an internal reference account which is the bank's "bank check clearing account". Simply hit the create icon to get to a dialog used for inputing the reference account. All you need do now is input a bank check clearing account. Thats it! Once saved, the system will recognize a PO used for closing an account, and during the PO process, if the reference account matches registered bank check clearing accounts (set in default stacks customizing), a bank check will automatically be created.

Note: You must have set up the Default Stacks customizing table for the above functionality to work. See the "Default Bank Check Stack“ section in customizing if you want more information on this topic.

Effects on Existing Data

Even though Bank Checks can be created using any available check position type, it is best to create a new position used exclusivly for the creation of bank checks. For example, SAP provides position types 10 through 40. Therefore, you would want to create a new type 50 as the position type used for Bank Checks.

Specific Bank Check Stacks should also be reserved for exclusive use by Bank Checks. Normally, in both the US and Canada, stack management is not used as a check stock inventory tool, but should this be the case, make sure that check stacks used for bank checks are not shared or used for any other purpose.

Effects on Data Transfer

Effects on System Administration

Creating User Exits For Printing

To utilize Bank Check functionality, it is necessary for you to create a user exit which allows the Bank Check function to print. There are many ways to print, direct output to a printer, or to a Jetform file format. Because users have any number of ways to print, we are using an exit to create user side functionality in this area.

Create A Customer Project - Using transaction code CMOD, create a new project to hold the exit. Note that you will have to save the exit in a development class specific to the implementation you are working on.

Enhancements- Once the Project is created, assign the enhancement BCAUS001 which is the Enhancement used for Bank Checks . Is is ok for your project name to have the same as the enhancement for convenience, but the project name can be anything you want. Entering the enhacement into the left side of the dialog is all you need do. Once assigned, save and look at the components of the enhancement. Use the Components button at the top of your screen to access the Components dialog.

Editing Components - Confirm that the two exits are active. Once they are active, you will double click on each exit “function module name” and move into the abap workbench where you will create the exits associated include file. Double click on the include file, ie ZXBCAUSU01. Since it should not exist, you will get the following dialog. From this point the creation of the exit requires ABAP programming. However the key point the keep in mind is that key data must be returned by your exit in order for Bank checks to function properly. The three export parameters are based on SAPFORMS, and you should look at the Bank Check BTE in event 10020 to get an idea on how to use the Export parameters.

Test Smart Form - a test SMARTFORM “SF_BC_TEST_PRINT” has been installed on the system for you to use, you can use the following source code for testing. Note that the smart form is called using the CALL FUNCTION '/1BCDWB/SF00000001' statement. The actual call will differ from system to system because this function name is created by the SMARTFORM after generation and activation.

Below is some test code that (assuming you have properly generated the test sapform) you can use inside your indlude file.

************copy and paste from here*******************************

DATA: l_document_output_info TYPE ssfcrespd,

        l_job_output_info      TYPE ssfcrescl,

        l_job_output_options   TYPE ssfcresop.

WHILE sy-subrc = 0 AND l_job_output_info-outputdone  = space.

*   Print the check

   CALL FUNCTION '/1BCDWB/SF00000001'

    EXPORTING

*     ARCHIVE_INDEX              =

*     ARCHIVE_INDEX_TAB          =

*     ARCHIVE_PARAMETERS         =

*     CONTROL_PARAMETERS         =

*     MAIL_APPL_OBJ              =

*     MAIL_RECIPIENT             =

*     MAIL_SENDER                =

*     OUTPUT_OPTIONS             =

*     USER_SETTINGS              = 'X'

     checkno                    = i_cheq-cashb_ex

     amount_c                   = i_cheq-a_amount

     payee                      = i_cheq-payee

     routingno_c                = i_cheq-routingno

     pay_acct_no_c              = i_cheq-pay_acct_no

  IMPORTING

    document_output_info        = l_document_output_info

    job_output_info             = l_job_output_info

    job_output_options          = l_job_output_options

    EXCEPTIONS

      formatting_error           = 1

      internal_error             = 2

      send_error                 = 3

      user_canceled              = 4

      OTHERS                     = 5

             .

ENDWHILE.

*    Make sure that the user really printed something

IF sy-subrc <> 0 OR

    ( l_job_output_info-outputdone  = space ) OR

    ( l_job_output_options-tdcopies = 0     ).

*   CALL FUNCTION 'BKK_MESSAGE_STORE'

*        EXPORTING

*             i_id     = g_con_bca_us_msgclass

*             i_type   = g_con_cheque_msgty_error

*             i_number = g_con_bca_us_msg_not_prnted

*             i_msgv1  = i_cheq-cashb_ex.

   e_return = 1.

   EXIT.

*   No errors, return the number of copies made.

ELSE.

   e_job_output_options   = l_job_output_options.

   e_document_output_info = l_document_output_info.

   e_job_output_info      = l_job_output_info.

ENDIF. "end if print error

************to here*******************************

Once the above has been properly activated and tested. You need to do the same for the second user exit which exists under your customer Project. The second exit exists to handle the bank check reprint function. If you wish, the exact same code above can be used for the reprint exit as well.

Effects on Customizing

Extensive documention within the Bank Check IMG must be consulted in order to implement Bank Check functionality.

Also, specific BTE functionality must be activated. Please activate entry 'BCA_US' with text 'US Banking Events' in table Application indicator within the BTE settings.

Further Information






CL_GUI_FRONTEND_SERVICES - Frontend Services   ABAP Short Reference  
This documentation is copyright by SAP AG.

Length: 20158 Date: 20240329 Time: 061311     sap01-206 ( 397 ms )