SAP Knowledge Base Article - Public

2662268 - Payment Information: How to use Business Rules to automatically generate Bank ID

Symptom

How to configure Bank ID to be automatically generated for the "Bank" object?

Image/data in this KBA is from SAP internal systems, sample data, or demo systems. Any resemblance to real data is purely coincidental.

Environment

  • SAP SuccessFactors Employee Central
  • Payment Information

Resolution

Before you start

Please ensure that you have set the Visibility configuration of the "Bank ID" /(externalCode" field in the Bank object to "Editable" as per 2653398 - Payment Information: Unable to Create a New Bank after 1805 Release - Receive Error - The value in field “Bank ID” must contain only digits (0-9) and uppercase letters (A-Z)

 

Using Business Rules to set Bank ID:

This is a custom solution and has some limitations when used. If you require to set the Bank ID value automatically, then you can use the below solution but make sure to read through all the steps and caveats as there are some scenario's which will require some additional manual steps when performed.

For this custom configuration, please review the below information:

 

1) Create a Bank ID Sequence Object:

  1. Navigate to Admin Center > Manage Data
  2. In the "Create New" menu on the right, select "Sequence"
    • Give the new Sequence object a Name and Code
    • Set the "Start" of the sequence
    • Set the "Step" count (every time a number is used, how many steps will the next number increment)
  3. Save the new BankID Sequence object.

SequenceObject.jpg

2) Create the onInit rule

  1. Navigate to Admin Center > Manage Business Rules
  2. Create New Rule > Basic > Base Object = "Bank"
  3. Set the IF and THEN conditions exactly as specified in the rule screenshot below.
  4. Save the rule

onInit.jpg

3) Create the onSave rule

  1. Navigate to Admin Center > Manage Business Rules
  2. Create New Rule > Basic > Base Object = "Bank"
  3. Set the IF and THEN conditions exactly as specified in the rule screenshot below.
  4. Save the rule

onSave.jpg

4) Assign the rules to the Bank object

  1. Navigate to Admin Center > Configure Object Definitions
  2. Select "Object Definition" and then search fot he "Bank" object
  3. Click Take Action > Make Correction
  4. Assign the rules to the correct sections under "Rules"
  5. Click "Save"

ruleTriggers.jpg

Caveats

UI

  • Banks created via the UI - The rules will execute so that when creating a new Bank the ID will initially display as "AUTOMATIC" but after saving the ID will be set to the available number from the Sequence object

Imports

  • Single Banks created via Import - In this scenario, you must maintain the text "AUTOMATIC" in the externalCode column for the Bank you are creating via Import. This is because the onInit rules will not trigger on Import. Please be aware that this only works when you are importing 1 Bank at a time.
  • Multiple Banks created via Import - In this scenario, the system will not allow you to maintain "AUTOMATIC" for all Banks, as it will return a validation error of "Found different data value with same key.". This is currently expected and the Business Rule solution is not supported for mass creation of Banks via Import.

MassImportFailed.jpg

Instead to you will need to follow the work-around below to work-around this limitation:

Mass Import of Banks workaround:

For this to work without issue, we will need to adjust the Sequence object used for Bank ID, so that the Banks we created via Import will not cause the future creation of Banks to fail.

  1. Navigate to Admin Center > Manage Data
  2. Select "Sequence" and then search for your Bank ID Sequence Object
  3. Identify the "Current" sequence number.
  4. Check how many Banks you are importing and from the "Current" number, identify how many sequences will be used when you import the Banks - for example my Current = 500006 and I will import 100 banks.
  5. In the Bank ID Sequence Object select Take Action > Make Correction and change the "Start" value to 500107 (Current value + 100).
  6. Click Save.

Now when you import your Banks you can manually define the externalCode of those Banks to be between 500006 and 500106.

If this step is not carried out, then next time the rule is triggered from the UI, it will not be able to create the Bank as the externalCode already exists.

See Also

2653398 - Payment Information: Unable to Create a New Bank after 1805 Release - Receive Error - The value in field “Bank ID” must contain only digits (0-9) and uppercase letters (A-Z)

Keywords

Unable to Create New Bank, The value in field “Bank ID” must contain only digits (0-9) and uppercase letters (A-Z). It can include an underscore, but not as a first character, Bank ID, externalCode, Bank Error, Create New, Manage Data, , KBA , LOD-SF-EC-PAY , Payment Information (Bank Information) , How To

Product

SAP SuccessFactors Employee Central all versions ; SAP SuccessFactors HCM Core all versions