Table of contents:

Requirements

  • Have Clarity and SAP Business One® client application installed on the same computer.

Note: Clarity will use the DI API (32 byte) provided by SAP Business One® v.2007 through v.9x that is included with the installation of the application. However, an experienced SAP Business One® Partner may, at their own discretion, install the DLL’s necessary to use the DI API without installation of the SAP Business One® Client. It should be noted that although the interface has been tested for this method of use, Paymate Software does not support this style of implementation and any issues brought forward with the interface will require the full installation of the SAP Business One® Client.

Note: Clarity will use the Service Layer provided by SAP® for the integration with SAP Business One® v.10 that is included with the installation of the application. 

Version Compatibility

There are several interfaces options within Clarity. All interfaces features detailed in this document are appropriate with Clarity.

  • SAP Business One v.2007
  • SAP Business One v.2008
  • SAP Business One v.9.x
  • SAP Business One v.10

Interface Functionality

The interface between SAP Business One® and Clarity includes the following:

  • Retrieval of all general ledger account codes and descriptions from SAP Business One® into Clarity
  • Import of employees from SAP Business One® to add to Clarity’s employee database
  • Employees from SAP Business One® imported to update employee records in Clarity
  • Employees from Clarity exported to update employee records in SAP Business One®
  • Export of general ledger accounting transactions into SAP Business One® as an unposted Journal Voucher

Using the SAP Business One® Interface

In order to interface to SAP Business One®, there are a few steps that you need to adhere to in order for the interface to function appropriately. After you have confirmed that the requirements are completed (above) then you need to navigate to Setup > Preferences and go to the Interfaces tab.

In the General Ledger Settings section, you must set the "Default Export Interface" according to whichever version of SAP you are using.

You may notice a checkbox for “Use code finder”. This is an optional field and its functionality will be covered later in this article. For now, keep this selection unchecked.

Now that the interface is set to use SAP Business One®, when you attempt to do exports or imports between Clarity and SAP Business One®, you will be prompted with the following connection parameters. Once you have entered them once on any of the appropriate forms (which you will see later), Clarity will save the connection information.

  • "Server Name" refers to the name of the SAP® B1 server; this will either be a computer name or IP Address. If you do not know what this is, navigate to Administration > Choose Company in your SAP® client. 
  • "Company Name" refers to the name of the database in SAP® that you are attempting to connect to. If you do not know what this is, navigate to Administration > Choose Company in your SAP® client. 
  • "Login ID" and "Password" are your username and password used to log into SAP Business One® client
  • "DB User Name" is a SQL user that accesses the database for remote connections 
  • "DB Password" is the SQL user's password for accessing the database for remote connections 
  • "Server Type" should be set to SQL 2014+ (express supported) or HANA according to the SAP® database you are using
  • If you check "Use trusted connection", this means that the connection from SAP® to Clarity does not require SQL authentication, because the system will use Windows authentication. Otherwise, you must enter the "DB User Name" and "DB Password". Windows authentication is valid if the SAP® database was installed with 'Mixed Mode Authentication' only.

Retrieving General Ledger Account Codes

 

As you can see in the image above, SAP Business One® can have numerous general ledger account codes, and depending on your needs, these codes may be long and complex. Therefore, Clarity provides you the ability to retrieve the general ledger account codes from SAP Business One® and store them in Clarity’s database. This feature will allow the verification of entered GL account codes in Clarity so you do not accidentally enter a GL code that does not exist in SAP Business One® and see complications during your creation of Journal Entries.

To enable this feature:

  1. In Clarity, navigate to Setup > Preferences. 
  2. Click the Interfaces tab. 
  3. In the General Ledger Settings section, check "Use Code Finder". Turning this option on will allow access to the necessary menus to obtain the list of general ledger accounts codes from SAP Business One®. Now you are ready to obtain the general ledger account codes and descriptions from SAP®.

To obtain your general ledger account codes and descriptions from SAP®:

  1. In Clarity, navigate to Setup > General Ledger > Refresh Code Finder.
  2. Enter the connection information (described in the Using the SAP Business One® Interface section above).
  3. Click "Next" which will then provide you with a single option to “Refresh”.
  4. After the refresh is complete, you will get a message that says “Import complete!”. If you do not receive this message, but instead receive an error message, refer to the error message listings at the end of this article.

Once you have imported your GL accounts, you will be able to easily map them to the ones created in Clarity.

Exporting your General Ledger to SAP Business One®

Prerequisites

  • Have processed your payroll in Clarity 
  • Have set up the integration to SAP Business One®, as per the instructions above

Note: The instructions below will cover the export details relative to the interface only; however, dimensional integration is also possible.

Solution

  1. In Clarity, navigate to Payroll > Export > G/L Export Special. 
  2. In the G/L Parameters tab, complete the information for the parameters seen in the image below.
    1. "Currency Code" refers to the currency in which you want your transactions to be exported in. Typically a dollar sign ($) will be used. Other codes, such as "US", "USA", "CAN", and "CDN" can also be used. To see your list of valid currency codes, log into SAP® B1 and navigate to Administration > Setup > Financials > Currencies. 
    2. "Employee Identification" defines how you want the employee information to be displayed in your Journal Entry in SAP® B1. You can select "Employee Number", "Employee Number + Surname + First Name", "Employee Number + First Name + Surname", and "Blank". See the end of this article for examples on how this selection can affect your transactions. 
    3. "Memo" will appear in the Remarks section of the Journal Voucher 
    4. "Project Code Segment" should only be used if you want to include project information for each transaction during your export. In this case, the GL code finder cannot be used because the GL codes you enter will be inclusive of an additional segment, representing the Project Code. For example, using the salary GL account (323-23-211), if we want to export this to Project CONS, then we have to set the GL account number in Clarity as 323-23-211-CONS. The suffix CONS is not technically part of the GL account code, and will be stripped away during the export. It will instead be used as the project code. 


3. Click "Export". The transactions will be sent to SAP Business One®. With the successful export, the records will appear as an unposted Journal Voucher in SAP Business One®. These Vouchers can be accessed in SAP Business One® by navigating to Financials > Journal Vouchers. In the event of unsuccessful export, you will be displayed an error message. Refer to the error messages at the end of this article for more information.

To help prevent duplicate entrees in SAP, Clarity will track which information has already been exported.


 You are also able to email a report to an SAP® user on which information you are about to export.

SAP Business One® Employee Exchange

The integration with SAP® and Clarity allows you to import/export employee information between the two systems.

  1. In SAP®, navigate to Utilities > SAP Business One Employee Exchange. 

The interface provides three (3) options:

  • Import into Clarity new employees existing in SAP Business One
  • Import into Clarity updates for employees existing in both systems
  • Export from Clarity updates for employees existing in both systems

Import New Employees Into Clarity

Note: When using this interface option, employee creation should always be done in SAP Business One®. This is because the employee number that is assigned in SAP Business One® is an auto-incremented, non-customizable field, which is used as the linking field between Clarity and SAP®


When you select the option to import the employees into Clarity from SAP Business One, you will be prompted with the connection information for the server. This is discussed above in the section Using the SAP Business One Interface. The next screen, seen to the right, will show us a list of all the employees that were found in SAP Business One that currently do not exist in Clarity. The program will also display a short list of the fields that are going to be transferred such as the Employees Number, Surname, First name, Payroll Group, Address, and City for the employee.

Additional fields that will be transferred that you are not shown at this time are:

  • State or Province*
  • Country*
  • Social Security Number (US) or Social Insurance Number (CAN)*
  • Date of Birth*
  • Hire Date*
  • Gender
  • Marital Status
  • Department
  • Job Title
  • Home Telephone Number
  • Cell phone number
  • Office Phone number
  • Employment Status (Active, Terminated)
  • Email Address
  • Postal or Zip Code

The fields above that are listed with a * in front of them are mandatory fields and the employee record will NOT import if the fields has not been defined properly in SAP Business One®.

Transaction Examples

Using the "Summary" Interface 

This option will summarize each employee based on the selection done. Using the following details, look at the below examples:

Employee # 132.32                         Salary $500        GL Account 323-23-211
Employee # 132.32                         Bonus $1100     GL Account 323-23-211
Employee # 132.32                         Taxes $223.23   GL Account 992-23-219
Employee # 389.29                         Salary $1300      GL Account 323-23-211

Using the "Summary" Interface with Employee Identification Set to "Employee Number"

Summary with employee identification set to “Number” will have all records to a single GL account code report for each employee as seen below:

Employee # 132.32         GL Account 323-23-211                                Amount                                $1600.00
Employee # 132.32         GL Account 992-23-219                                Amount                                $ 223.23
Employee # 389.29         GL Account 323-23-211                                Amount                                $1300.00

Using the "Summary" Interface with Employee Identification Set to "Blank"

This option will export the records to a single GL Account code for all employees reporting to that same code. If you are concerned about individuals seeing employee information when reviewing the GL account transactions, use this option. 

                                     GL Account 323-23-211                                Amount                                $2900.00
                                     GL Account 992-23-219                                Amount                                $ 223.23

Error Codes

  • 103: Failed to Connect to Company
    • Company DB name is incorrect.
  • 111: Failed to Connect to SBOCommon
    • This error can result if the Server name entered is not a valid SAP Business One server, or
    • The SQL Server version is incorrect, or
    • The Database user name or password are incorrect (when not using trusted connection)
  • 107: Invalid Username or Password
    • The SAP User name or Password entered is incorrect
  • 5011: Tax account has not been defined for the selected tax code
    • One of the GL Accounts you have entered does not exist in SAP Business one
  • 5002: ‘The connected value ‘01’ was not found in the table Project Codes’
    • If you are exporting with Project codes, one of the projects codes does not exist in SAP Business One

5 Comments

  1. 5011 - If you get an error showing one GL account not exist. Check all the GL account is active in SAP and Clarity. If all the accounts are active, check the GL parameters has been mapped correctly to the SAP settings in Clarity.

  2. Problem:

    Database Server Type Not Supported

    How to configure the DI API (32 byte)

    1. Go to C:\Program Files (x86)\SAP\SAP Business One DI API\Conf or C:\Program Files\SAP\SAP Business One DI API\Conf 13. Edit "b1-local-machine.xml", preferably in Notepad
    2. CTRL + H or "Find and Replace" the word localhost with the name of your SAP Server (same as B1_SHR and DI API)


     Clarity - SAP Returns Error 131 Connection to the license service failed license service address is not valid or license service is stopped or does not respond.

  3. Error 1455: OBserverGeneric:GetNewLibraryFromServer:LoadLibrary for observer failed

    System error 1455

    Observer file name: CL\Program Files (x86)\SAP\SAP Business One DI API\OBServerDLL_902220.dll


    Resolution:

  4. Error : -119 Database server type not supported

    DI API 32 byte is required on the machine that connect to SAP

  5. Error - 5002 : You are not allowed to edit posting date by row, account code = "........" (ME#21284).

    Permission issues in SAP

    https://answers.sap.com/questions/7728813/unable-to-post-journal-entry-when-posting-date-is-.html