Вы находитесь на странице: 1из 84

Integration framework for SAP Business One 04 Operations

Integration framework
for SAP Business One

Guide 04

Operations

Author: Heinz Pauly Version: 1.0 Date: June 21, 2010

-1-

Integration framework for SAP Business One 04 Operations

Content
1. Scenario Administration ...............................................................................4 1.1 Setup & Activation ..................................................................................4 1.1.1 Setup Screen ...................................................................................5 1.1.2 Scheduler Settings...........................................................................6 1.1.3 Scenario Steps ................................................................................8 1.1.4 Sender and Receiver .......................................................................9 1.1.5 Activation and Deactivation............................................................13 1.2 Control..................................................................................................18 1.2.1 Scenario List ..................................................................................19 1.2.2 Scenario Step List..........................................................................22 1.2.3 Object List......................................................................................23 1.2.4 Sender Object List .........................................................................23 1.3 Configure the B1 Event Filter ...............................................................25 1.4 Import and Export.................................................................................27 1.4.1 Import a Scenario Package............................................................27 1.4.2 Export a Scenario Package ...........................................................28 2. Monitoring ..................................................................................................29 2.1 Message Log........................................................................................29 2.1.1 Message Log List...........................................................................31 2.1.2 Flow Analysis.................................................................................33 2.1.3 Flow Debugging.............................................................................35 2.1.4 Error Inbox .....................................................................................39 2.1.5 Last Exception ...............................................................................40 2.2 Process Control....................................................................................41 2.3 Queue Monitor......................................................................................43 2.4 Safe Mode ............................................................................................45 3. System Administration ...............................................................................46 3.1 System Information ..............................................................................46 3.2 Import of Content..................................................................................47 3.3 Configuration of Message Log..............................................................47 3.4 User and Session Administration .........................................................51 3.4.1 User Administration .......................................................................52 3.4.2 Session Control .............................................................................54 3.4.3 Authentication Events ....................................................................56 4. System Landscape Directory .....................................................................58 4.1 SAP Business One...............................................................................59 4.2 SAP ERP..............................................................................................62 4.3 File System...........................................................................................65 4.4 HTTP System .......................................................................................68 4.5 Web Service .........................................................................................70 4.6 Database System .................................................................................72 4.7 FTP System..........................................................................................72 4.8 Mail System..........................................................................................73 5. Performance ..............................................................................................74 5.1 Memory ................................................................................................74 5.2 Network Connection .............................................................................74

-2-

Integration framework for SAP Business One 04 Operations

5.3 Event Sender configuration ..................................................................74 5.4 Integration framework configuration .....................................................75 6. Security......................................................................................................76 6.1 Integration framework and BizStore Connection ..................................76 6.2 Administration User ..............................................................................78 6.3 Incoming HTTP calls ............................................................................79 6.4 Connection to SAP Business One........................................................81 6.5 Event Sender Connection to Integration framework .............................82 6.6 Event Sender Connection to SAP Business One .................................82 6.7 Connect to other Clients .......................................................................83 Copyrights, Trademarks, and Disclaimers .....................................................84

-3-

Integration framework for SAP Business One 04 Operations

1. Scenario Administration
The Integration framework allows you to maintain and control your Scenario Packages browser based from any location via the administration user interface. You can get an overview of all available Scenario Packages, on demand you can zoom in to all details, you can setup, activate and deactivate the Scenario Packages and you have the option to import or export them.

1.1 Setup & Activation


The status of a Scenario Package indicates if it is in design mode or currently active running. The following picture visualizes the background.

In case the Scenario Package is in Design mode, you can do any changes, assumed you have the rights to do so. The Scenario Steps are running in the test environment only and are not responding to any incoming call. During setup, the Scenario Package will be configured. All used Scenario Steps are specified, the sender and receiver systems are selected and the necessary parameters are defined. Modifications in the design of particular Scenario Steps are still allowed. In case you did some changes, influencing the setup, you have to modify the setup accordingly. The Scenario Steps are running in the test environment only and are not responding to any incoming call. In Active mode, the Scenario Package is configured and activated. Modifications are no longer allowed. The Scenario Steps are running in the test environment and are also responding to the incoming call. If you import a new Scenario Package, the package will be in Design mode.

-4-

Integration framework for SAP Business One 04 Operations

The SAP Integration framework setup supports three different installation modes to optimize the deployment. It depends on the concrete Scenario Package which of the installation modes will be used. An upload installation will just upload the Scenario Package which will be afterwards in Design mode. A preconfigured installation will setup the package automatically. With finishing the installation, the Scenario Package will be set up.. The automatic installation will setup and activate the Scenario Package. The preconfigured and automatic installation will typically also create the required entries in the System Landscape Directory (SLD) automatically.

1.1.1 Setup Screen


Please open the administration user interface of the Integration framework and open the screen to setup a Scenario Package. Scenarios Scenario Package Setup

Scenario Package Identifier This read-only field displays the identifier for the Scenario Package. Please click the corresponding button to open a drop-down list with all available Scenario Packages. Version This read-only field displays the version of the selected Scenario Package.

-5-

Integration framework for SAP Business One 04 Operations

Status This read-only field displays the current status of the selected Scenario Package. The status is one of the values design, setup, active. Scenario Steps This read-only field displays how many Scenario Steps of the selected Scenario Package are currently selected and the total number of Scenario Steps, assigned to the selected Scenario Package. The example above shows a Scenario Package which consists out of five Scenario Steps in total and currently no one is selected for setup. Sender System Types This read-only field displays all types of sender systems, involved in at least one of the Scenario Steps, belonging to the Scenario Package. Receiver System Types This read-only field displays all types of receiver systems, involved in at least one of the Scenario Steps, belonging to the Scenario Package.

1.1.2 Scheduler Settings


[Timer] The timer definition is relevant only for selected Scenario Steps which have a timer based triggering. These steps typically have a default setting. By clicking this button, you open a configuration screen to enter the scheduler information for all selected Scenario Steps with timer trigger.

-6-

Integration framework for SAP Business One 04 Operations

Here you can see the current valid timer settings for all selected Scenario Steps, assigned to the current Scenario Package. If you want to change some settings, please click the [Setup] button.

The scheduler definition is following the CRON syntax, typically known from job scheduler in unix-like computer operating systems. A CRON entry has six fields for specifying day, date and time. The Scenario Step will be triggered always when all entries are true. The entries are interpreted in the system time zone setting under which the Integration framework itself is running. Scheduler (minute) Here you specify the value for the minute part of the time. The value can have a * or a list of elements separated by commas. An element is either a number in the range 0 to 59 or two numbers in the range separated by a hyphen (meaning an inclusive range). Scheduler (hour) Here you specify the value for the hour part of the time. The value can have a * or a list of elements separated by commas. An element is either a number in the range 0 to 23 or two numbers in the range separated by a hyphen (meaning an inclusive range). Scheduler (day) Here you specify the value for the day part of the date. The value can have a * or a list of elements separated by commas. An element is either a number in the range 1 to 31 or two numbers in the range separated by a hyphen (meaning an inclusive range). -7-

Integration framework for SAP Business One 04 Operations

Scheduler (month) Here you specify the value for the month part of the date. The value can have a * or a list of elements separated by commas. An element is either a number in the range 1 to 12 or two numbers in the range separated by a hyphen (meaning an inclusive range). Scheduler (day of wek) Here you specify the value for the day of the week. The value can have a * or a list of elements separated by commas. An element is either a number in the range 0 to 6 (Sunday = 0) or two numbers in the range separated by a hyphen (meaning an inclusive range). Scheduler (year) Here you specify the value for the year part of the date. The value can have a * or a list of elements separated by commas. An element is either a number, specifying a year (e.g. 2010) or two numbers in the range separated by a hyphen (meaning an inclusive range).

1.1.3 Scenario Steps


[Steps] Here you select all Scenario Steps, assigned to the current Scenario Package, which you want to setup. With clicking the button a generated window opens listing all assigned Scenario Steps with a checkbox, displaying the current setting.

Here you can use the all checkbox to check/uncheck all Scenario Steps. After selection, please use the [Save] button to store your selection.

-8-

Integration framework for SAP Business One 04 Operations

1.1.4 Sender and Receiver


The Integration framework for SAP Business One is working based on the Publish-Subscribe mechanism. Sender systems are publishing entities, like business object changes, calls, trigger, etc and Receiver systems are subscribed to these entities.

As an example you can see a concrete SAP Business One company, which is a Sender system, publishing all changes of e.g the object Business Partner. The Integration framework will distribute this entity to all registered Scenario Steps. Per Scenario Step a sender filter (IN Filter) will be checked before processing. After processing the message will be sent to all subscribed Receiver systems (e.g. another SAP Business One), but also here the message will be filtered out in case the receiver filter (OUT Filter) condition is not fulfilled. Even if typically scenarios are quite simple, sending a message from one system via one registered Scenario Step to one receiver system even without any sender or receiver filter, the full support of the Publish-Subscribe mechanism allows you all kind of even complex setups. In case you do not need any filter, you can just setup the sender and receiver systems without touching the filter definitions.

-9-

Integration framework for SAP Business One 04 Operations

[Sender] If you click the [Sender] button in the setup screen, the following drop-down list will pop up. Please select the operation you want to run.

Maintain Sender List The following generated screen will open, listing all relevant Sender systems, defined in your System Landscape Directory (SLD). You will find in the list all systems of the type that is specified as sender system for at least one of the Scenario Steps, assigned to the current Scenario Package.

Here you can use the all checkbox to check/uncheck all Sender systems. After selection, please use the [Save] button to store your selection. The Sender systems are ordered by system type, logical address (SysId) and name.

Maintain Sender Filter Definitions The following generated screen will open, listing all Scenario Steps, each with all applicable and selected Sender systems. You need this screen in case you want to exclude particular Sender systems for some Scenario Steps or in case you want to define a condition, under which the incoming message will be accepted. Exclusion: If you want to exclude a particular Sender system for a particular Scenario Step, just type into the field the string no.

- 10 -

Integration framework for SAP Business One 04 Operations

Condition: If you want to define a condition for a particular Sender system for a particular Scenario Step, please enter the xpath expression into the field. You can use the variable $msg for the incoming sender message (e.g. $msg/root/@flag=A). Please notify in case you want to use own namespaces, these have to be defined in the definition of the particular Scenario Step.

[Receiver] If you click the [Receiver] button in the setup screen, the following drop-down list will pop up. Please select the operation you want to run.

Maintain Receiver List The following generated screen will open, listing all relevant Receiver systems, defined in your System Landscape Directory (SLD). You will find in the list all systems of the type that is specified as receiver system for at least one of the Scenario Steps, assigned to the current Scenario Package. Here you can use the all checkbox to check/uncheck all Receiver systems. After selection, please use the [Save] button to store your selection. The Receiver systems are ordered by system type, logical address (SysId) and name. - 11 -

Integration framework for SAP Business One 04 Operations

Maintain Receiver Filter Definitions The following generated screen will open, listing all Scenario Steps, each with all applicable and selected Receiver systems. You need this screen in case you want to exclude particular Receiver systems for some Scenario Steps or in case you want to define a condition, under which the outgoing message will be sent. Exclusion: If you want to exclude a particular Receiver system for a particular Scenario Step, just type into the field the string no. Condition: If you want to define a condition for a particular Receiver system for a particular Scenario Step, please enter the xpath expression into the field. You can use the variable $msg for the incoming sender message (e.g. $msg/root/@flag=A). Please notify in case you want to use own namespaces, these have to be defined in the definition of the particular Scenario Step.

- 12 -

Integration framework for SAP Business One 04 Operations

1.1.5 Activation and Deactivation


Before we describe how to activate/deactivate a Scenario Package, first we need to discuss how Scenario Steps are mapped to runtime processes.

The processing inside the Integration framework is done via Scenario Process Steps. These steps are generic per system. For each system, specified in the System Landscape Directory (SLD) and used in at least one active Scenario Step, there are generic Scenario Process Steps available to cover the processing inside the Integration framework. Different to other integration solutions where you have to generate inbound and outbound proxies for each integration scenario (which is a Scenario Step in the Integration framework), the Integration framework is working with generic process steps which are shared by multiple, different Scenario Steps. As an example the Integration framework runtime supports one B1 Inbound process step. This is covering in a generic way the inbound processing for an SAP Business One system. All Scenario Steps, independent from which vendor, which have an SAP Business One system defined as the sender system, are using this process step. When you set up a Scenario Package, you have to specify concrete sender and receiver systems. The activation will then create an instance of the process step B1 Inbound for each SAP Business One system that is defined as a sender system. In case an instance for a particular SAP Business One is active already caused by another Scenario Step, this instance will be shared. As all process steps are generic, also the inbound processes for the different system types are generic. This is the reason why you have to specify the identifier in the Scenario Step Inbound definition. Please refer to reference guide 02, chapter 3.1.1 for further details. All types of Scenario Process Steps are defined in the reference guide 02, appendix C Table of Process Steps.

- 13 -

Integration framework for SAP Business One 04 Operations

Example

The example above is describing two different Scenario Steps, possibly belonging to two different Scenario Packages. Scenario Step S1 is sending sales orders from SAP Business One to a file system whereas the Scenario Step S2 is sending business partner data from SAP Business One into a database system. As both Scenario Steps are set up for the same SAP Business One system in the System Landscape Directory (SysId 0010000100 in SLD) and both are triggered by an event from SAP Business One, they are sharing the Process Steps for B1 Inbound, Processing and Distribution. The Process Steps for the outbound phase are different as one Scenario Step is sending data to a file system, the other one into a database. The following processes will be created: Process Steps, shared by Scenario Step S1 and S2 0010000100.INB_B1_EVNT_ASYN_EVT (B1 Inbound) 0010000100.PRC_B1 (B1 Processing) 0010000100.PRQ_B1 (B1 Distributor) Process Steps for Scenario Step S1 0010000102.OUT_FILE (File Outbound) 0010000105.OUT_FILE (File Outbound) Process Step for Scenario Step S2 0010000108.OUT_DB (Database Outbound)

- 14 -

Integration framework for SAP Business One 04 Operations

[Activate/De-Activate] The button label will change automatically based on the current mode. When you click the [Activation] button, first the Integration framework will check the consistency of the setup and will show up the result in a new window. The activation is possible only if there is no error in the setup. In case the setup is not consistent, please click the [Report] button to check further details.

The report Setup Details lists all Scenario Steps and displays the number of sender systems and receiver systems and its status. In case of an error in setup, the [Info] button opens an alert with the error message. It gives you a hint, e.g. that there is no sender system specified for the Scenario Step.

- 15 -

Integration framework for SAP Business One 04 Operations

Once the setup is consistent, the [Activate] button is active. If you close the window, the Scenario Package is still in Design mode and nothing is changed. After clicking the [Activate] button the Integration framework is preparing for activation. At the end an alert will pop up.

After clicking OK, the activation screen is updated, displaying the following window

The [Info] button gives you a quick information about the current status. The [Deactivate] button will deactivate the Scenario Package. With the [Report]

- 16 -

Integration framework for SAP Business One 04 Operations

button, you can run all existing reports of the activation process. These reports are also always available from the Scenario Package Control screen. Setup Details Setup Report Activation Report

The Setup Details list is the same list, available from the first activation screen before activation. The Setup Report lists all Scenario Steps and gives you optional via the [info] button the possibility to check which technical processes are set up for this particular step.

The Activation Report is sorted by Scenario Steps and lists all processes (IPO steps), which are set up.

- 17 -

Integration framework for SAP Business One 04 Operations

The overall Status is displaying if the complete Scenario Package is set up consistent to other Scenario Packages. There are the following constellations which will lead to an error during activation (Activation Conflict): File Inbound: There are Scenario Packages already active for the same Sender Channel (file inbound) with a different ruledoc definition for file inbound. HTTP/Web Service Inbound: There are Scenario Packages already active for the same Sender Channel (http inbound, ws inbound) with a different authorization model.

If this happens, please deactivate all Scenario Packages and solve the conflicts first before you activate all Scenario Packages again. You can harmonize the involved Scenario Steps by defining the same rule doc for all steps resp. defining the same Authorization concept for all involved Scenario Packages The easiest way is to use different file inbound, resp. http/web service inbound SLD entries for the different Scenario Packages resp. Scenario Steps.

1.2 Control
The control screen allows you the full control of all available Scenario Packages. You can run reports for different views, you can dive in to all details and you can call the design and setup screens. Scenarios Scenario Package Control Report There are four reports available. Please use the corresponding button to select the required report from the list. The Scenario List is the default when you enter the control screen. Scenario List Scenario Step List Object List Sender Object List

Status You can filter the reports by status. Default is no filter (- all -). If you want to filter, please click the corresponding button to select the required status (all-, design or active).

- 18 -

Integration framework for SAP Business One 04 Operations

[Report] Clicking this button opens a new browser window with the selected scenario report.

1.2.1 Scenario List


The Scenario List gives you a complete list of all available Scenario Packages. Each package is listed and its current status (design or active). In addition you have per Scenario Package a button group giving you the following options: Info Steps Overview Reports Activate Setup

- 19 -

Integration framework for SAP Business One 04 Operations

[Info] This function gives you a very quick option to check the basic information of a Scenario Package, which is a short description, the vendor information, the current version, the date of the last modification and the Scenario Steps, specified in the Scenario Package Design screen.

[Docu] This optional function will load a Scenario Package documentation, provided by the vendor of the .Scenario Package. Prerequisite is a documentation with the name vPac.pdf in the base directory of the Scenario Package (/com.sap.b1i.vplatform.scenarios.design/vPac.name).

- 20 -

Integration framework for SAP Business One 04 Operations

[Overview] The Overview function opens a new browser window and displays all Scenario Steps, belonging to the Scenario Package. The overview list displays the Scenario Steps in a graphical manner. Each line represents one Scenario Step. Icons are symbolizing the sender/receiver system type. Asynchronous Scenario Step will display the 3 processing phases Inbound, Processing and Outbound whereas synchronous Scenario Steps will have Inbound and Processing only.

Inbound The Inbound box is displaying the most important inbound information. If you click on it, a window opens with the screen for Scenario Step Inbound Design. Closing the window will update the base window to visualize modifications. The information, displayed on the box is: Inbound Channel Communication Mode (asynchronous or synchronous) Trigger Event Identifier

For further information regarding the screen for Scenario Step Inbound Design, please refer to Integration framework reference 02, chapter 3.1.

Processing The Processing box is displaying the number of processing steps. If you click on it, a window opens with the graphical process designer. For further information regarding the graphical process designer, please refer to Integration framework reference 02, chapter 3.3.

Outbound The Outbound box is displaying the most important outbound information. If you click on it, a window opens with the screen for Scenario Step Outbound

- 21 -

Integration framework for SAP Business One 04 Operations

Design. Closing the window will update the base window to visualize modifications. The information, displayed on the box is: Outbound Channel Adapter Data handover details Successor Scenario Step if relevant

For further information regarding the screen for Scenario Step Outbound Design, please refer to Integration framework reference 02, chapter 3.2.

1.2.2 Scenario Step List


The Scenario Step list is helpful to check all available Scenario Steps and on Scenario Step level which of these steps are in which status.

The Scenario Steps are listed in alphabetical order. In the second column you see the hosting Scenario Package. The Status column displays the status of the particular step. design active design (active) Scenario Package is in design status Scenario Package is in active status Scenario Package is in active mode, but this Scenario Step was not selected and is in design mode.

- 22 -

Integration framework for SAP Business One 04 Operations

1.2.3 Object List


Please use the Object List to list all objects resp. events where Scenario Steps are assigned to.

The list is in alphabetical order, showing the subscribed Scenario Step, the hosting Scenario Package and the status of the Scenario Step. The list helps you in case a particular incoming call will end in a filtered message due to missing subscribed Scenario Steps. In this case you can check if a Scenario Step exists at all for the relevant object resp. event (e.g. an incoming event for a Business Partner modification from SAP B1). The Status flag is indicating if the particular Scenario Step is activated as only an activated Scenario Step will process the message. The list shows also if perhaps multiple Scenario Steps are subscribed to the same object resp. event. The Integration framework allows this technically, but its always a question of business logic if it makes sense or not, especially if the Scenario Packages are delivered by different SAP partner.

1.2.4 Sender Object List


Please use the Sender Object List to list all objects resp. events from all potential sender systems where Scenario Steps are assigned to.

- 23 -

Integration framework for SAP Business One 04 Operations

The list is in alphabetical order (Sender and Object), showing for each Sender-Object/Event combination the subscribed Scenario Step, the hosting Scenario Package and the status of the Scenario Step. The list helps you in case a particular incoming call from a particular sender system will end in a filtered message due to missing subscribed Scenario Steps. In this case you can check if a Scenario Step exists at all for the relevant object resp. event (e.g. an incoming event for a Business Partner modification from SAP B1). The Status flag is indicating if the particular Scenario Step is activated as only an activated Scenario Step will process the message. In case youll find sender-object combinations with activated Scenario Steps, but the concrete sender, you are checking, is missing, please deactivate the Scenario Package, add the missing sender system to the sender list and activate the Scenario Package again.

- 24 -

Integration framework for SAP Business One 04 Operations

1.3 Configure the B1 Event Filter


To avoid endless loops, by default the Integration framework is filtering all events which are causes by the B1i user. There could be some very special Scenario Steps which need to process these events. Therefore you have the possibility to bypass this filter selective for a particular combination of B1 systems, objects and tasks. In such a case the vendor, shipping the Scenario Package will give you this information. You can call the configuration screen via the administration console of the Integration framework.

Maintenance

Config B1 Event Filter

B1i User Filter always switched on This checkbox is checked by default which activates the filtering of incoming events from SAP Business One, caused by the B1i user. The B1i user is the user that is specified for the login to the particular company database of SAP Business One in the System Landscape Directory. Please refer to chapter 4.1 of this reference guide (Parameter userName). If you uncheck this box, you can specify the filter exclusion fields by using the selection button . All drop down lists are multi-select lists which allows you to select multiple entries by clicking ctrl and right mouse click. The definition of

- 25 -

Integration framework for SAP Business One 04 Operations

all three exclusion fields will be checked and an event is processed in case all three conditions are true. Excluded B1 Systems Here you can choose all B1 systems, defined in the System Landscape or one or multiple particular systems. Excluded B1 Objects Here you can choose all B1 objects of SAP Business One or one or multiple particular objects. Listed in the drop down list are all standard objects of SAP Business One. In case you want to add own objects or user defined tables, you can just add them, comma separated, in the list. Excluded B1 Tasks This allows you to specify exclusion based on the task where the event refers to. You can select all tasks if the exclusion is valid for all events or you can select one or many particular tasks. I stands for Insert, U stands for Update and D stands for Delete.

[Save] With the Save button, you can save your settings.

- 26 -

Integration framework for SAP Business One 04 Operations

1.4 Import and Export


The Integration framework allows you a convenient way to import and export complete Scenario Packages. The supported format is zip. A Scenario Package is covered in one zip file which includes the package definition itself, optional the authorization concept and for all Scenario Steps the inbound and outbound definition and the complete processing logic.

1.4.1 Import a Scenario Package


Please call the Import screen from the Integration framework admin console. Scenarios Scenario Package Import

Name of Scenario Package zip file Please use the [Browse] button to select the zip package from your file system. [Submit!] Click this button to start the import of the Scenario Package from the file system into your B1i Bizstore. The location (dataset and group) is calculated automatically by information in the zip package. Please notify that existing documents will be overwritten without confirmation. - 27 -

Integration framework for SAP Business One 04 Operations

1.4.2 Export a Scenario Package


Please call the Import screen from the Integration framework administration console. Scenarios Scenario Package Export

Scenario Package identifier Please use the button to select the required Scenario Package which you want to export. Add test message You can check this check box if you want to export also existing test messages. If this is unchecked, the test messages will not be inserted into the zip package. Typically test messages are tailored for a particular test situation, therefore the default is unchecked.

[Export] Click this button to start the export of the Scenario Package from the B1i Bizstore to the file system. All related documents will be collected and packaged to one zip file. Then the standard windows dialog will open to store the file to a location of your choice in your file system.

- 28 -

Integration framework for SAP Business One 04 Operations

2. Monitoring
As a main instrument for analyzing the running Scenario Steps, the Integration framework allows you to monitor messages and processes. Here you have numerous possibilities to analyze even the smallest details.

2.1 Message Log


The Integration framework allows you different log level which you can set via the Message Log configuration screen (please refer to chapter 3.3). These level are defining which parts of the processed message will be logged. Switch MessageLog off Switch Message Log on Infoset Full message Full message incl. binary data

In addition to the log level, you can switch on or off the production of detailed debug information. The debugging you switch on via the Process Control screen for all or a particular process. Please refer to chapter 2.2. For a productive environments, its recommended to switch off the Message log or to switch it on with the lowest level (Infoset). In case you introduced new Scenario Steps, it could make sense to switch on the full Message Log (Full message) in the beginning phase. For productive environment its strongly recommended to switch of the producing of debug information as this can slow down the performance. In case you are in design phase, you should switch on the debugging except you want to run some performance tests. The debugging is also very helpful for trouble shooting in case of a failure during processing. It allows you access to the deepest details of the processing. In case you switched on the Message Log, its strongly recommended to schedule the automatic daily deletion (please refer to chapter 3.3) whereas the debugging information will get deleted automatically without any configuration through the inbuilt garbage collection.

- 29 -

Integration framework for SAP Business One 04 Operations

Please call the Message Log from the Integration framework administration console. Monitoring Message Log

The upper frame of the screen allows you to define a filter of the messages you want to list, to trigger the display of messages, to open the Error Inbox and to check the last exceptions during processing. Herewith you have all tools on one place for an efficient overview till to a very deep dive (depending on the existing debug information).

In case you have a huge load of messages, you should use the fields to filter the messages, you want to list. From Here you can define the start date for the range. The format is always YYYYMM-DD and in the second field HH:MM:SS. When you start the monitor, it is set automatically to today 00:00:00. To Here you can define the start date for the range. The format is always YYYYMM-DD and in the second field HH:MM:SS. When you start the monitor, it is set automatically to today 23:59:59. Sender System Here you can select a particular sender system from your System Landscape Directory. Receiver System Here you can select a particular receiver system from your System Landscape Directory. Sender Trigger/Object Here you can select a concrete identifier for an entity which triggered the message processing. It can be an identifier for an object, for a trigger, etc. In the drop down list you will get listed all defined trigger/objects, specified by Scenario Steps, available in your Integration framework not considering if these are active or in design phase.

- 30 -

Integration framework for SAP Business One 04 Operations

Receiver Object Here you can select a concrete identifier for a receiver object. In the drop down list you will get listed all defined trigger/objects, specified by Scenario Steps, available in your Integration framework not considering if these are active or in design phase. Status Here you can filter on the message status. The message processing starts always with the status Processing and ends in one of the three status results Success, Failure or Filtered.

2.1.1 Message Log List


[Display/Refresh] Clicking this button will display the selected list of messages.

There are 4 sections to host the messages dependent on their status. This status can change as the message starts always with the status Processing and ends in one of the three status results Success, Failure or Filtered. Sender System The name of the system which sent the message. Displayed is the name, defined in the System Landscape Directory. Sender Trigger/Object The identifier of the Sender Trigger/ObjectType Receiver System The name of the system which received the message. In case a message is sent to multiple receiver systems, you will have multiple entries in the table, for each of the receiver systems. In case a message processing is creating multiple receiver objects, you will have multiple entries in the table, for each of the receiver objects.

- 31 -

Integration framework for SAP Business One 04 Operations

Start Date Time Timestamp in the format YYYY-MM-DD HH:MM:SS of the point of time when the message entered the Integration framework the first time. Please consider that the start time will not be changed in case you are re-sending a failed message from the Error Inbox (chapter 2.1.2). End Date Time Timestamp in the format YYYY-MM-DD HH:MM:SS of the end of the message processing. Please consider that the end time will changed in case you are re-sending a failed message from the Error Inbox (chapter 2.1.2). S Current status of the message. Result Message Here you will have different information, depending on the message status. To enlarge the field, just double-click on the field. In case the status=Success, the result message shows the reply of the insert method of the receiver system. E.g. for SAP Business One in case of an insert, you will see the generated primary key, in case of an update an empty result. In case the status=Failure, the result message contains the original return error message from the receiver system. In case status=Processing the field is empty. In case the status=Filtered, you will find the reason for the filtering, set by the normal processing or in case the filtering is done by the logic of an an own Scenario Step logic (please refer to reference guide 05), the individual message will be displayed.

Clicking this icon will open a new window, displaying the current status of the processed message, typically the final status. This allows you a first analysis of the processing, the original call and the response. Please consider that you will have this information only if the Message Log is switched on and the level is set to Full message. Please refer to chapter 3.3.

Click this icon to delete the message log entry.

Clicking this icon will open the Flow Analysis screen (please refer to chapter 2.1.2) with all necessary options for a deep dive. Please consider that you have meaningful information only if you switched on the producing of detailed log information before the message processing started. Please refer to chapter 2.2. how to set up processing with debug log level.

- 32 -

Integration framework for SAP Business One 04 Operations

2.1.2 Flow Analysis


The flow analysis screen is listing all process steps, performed for a particular message.

The order is from bottom to top. In our example the starting process is INB_B1_EVNT_ASYN_EVT. This process triggered the two follow-up processes PRC_B1 which are handing over the message to the file system (via the process OUT_FILE) and to void (via process VOID). Please refer to reference guide 02, appendix A (Table of Inbound Channels). There are 7 buttons for each process to address specific analysis operations. The most important for trouble shooting is the [Debug] button.

[IPO-Log] The IPO-Log will open a window to display detailed processing information. Prerequisite is the production of detailed log information. In case of an error/exception in the Integration framework you will find the error information and call stack at the end of this list. [MsgFlow Inq.] In case of complex processing flows where a message is subscribed by multiple different Scenario Steps which are sending data to multiple receiver system with optional multiple receiver messages, the processing inside the Integration framework will end up in a tree. With the message flow inquiry option you can follow this processing tree on low level, skipping to the first step and from successor to successor. For each step you will get the full flow analysis screen.

- 33 -

Integration framework for SAP Business One 04 Operations

[MsgProcTmng.] This button opens an analysis window, listing the particular process and the processing time. It also shows the follow up steps including the execution details. [ExecDetails] This button lists all single steps of the processing in one document. It allows you to search for concrete steps, check the inbound parameters and the inbound message for all single steps. This analysis is typically used by experts. More easy and intuitive you can access this information via the [Debug] button in a graphical way. [Debug] Here you open the flow debugging window. It allows you to check the processing flow incl. zoom-in to sub flows, it displays the duration time and the size of the inbound message for each singular step. In addition it allows you to open a particular step inbound message. For details please refer to chapter 2.1.3. [Profiler] The profiler allows you to check potential performance issues. There are three sections in the analysis list. First it lists all single processing steps with processing details, sorted by the duration time. Second it lists all internal db interactions, sorted by duration time and third, for all processing steps, it lists the size of the inbound message sorted by size. [Delete] The [Delete] button will delete the log entry. In case the transaction is still running (status INCOMMIT, INROLLBACK), it will cancel the transaction.

Graphical View This link opens a window to display the processing logic in a graphical manner.

- 34 -

Integration framework for SAP Business One 04 Operations

You can see the starting point of the whole message flow on the upper left side. Here the inbound processing step is triggered. You see the channel identifier, the channel name and the identifier (e.g. trigger id or object id). Synchronous Processing All synchronous processing flows will have only this one of processing step as they are sending back the response to the caller. Your own developed Scenario Step is processed inside this one processing step. Asynchronous Processing All other asynchronous processing steps will, hand over the message to follow-up steps via the B1i internal queues. The Queue Monitor (chapter 2.3.) allows you to check messages in the internal queue. In the graphic you can see the concrete name of the handover queue and the stream (sub queue). The follow-up processing depends on the concrete Scenario Packages, set up in your environment. For each Scenario Step that is subscribed to the incoming message, there will be a processing step (PRC_*). In case there are more than one step, the box will be grey and you can use the [Select] button to select the Scenario Step, you want to debug. Your own developed Scenario Step is processed inside this processing step. In case there is one receiver system, the distribution step is not passed through which is indicated by a white box. In case there are multiple receiver systems, you can use the [Select] button to select the receiver system processing, you want to debug. The last processing step is the outbound for the particular receiver systems. In case there is one receiver object, the box is coloured, otherwise it will be grey and you can use the [Select] button to select the receiver object processing, you want to debug.

When you click on a coloured processing box, a window will open with the flow debugger. Please refer to the next chapter 2.1.3.

2.1.3 Flow Debugging


Prerequisite to use the flow debugger is the processing with production of debug information. Please refer to chapter 2.2. how to switch on/off the debug mode. The flow debugger is a graphical tool which displays the full processing flow of the Integration framework, the Bizflow. A Bizflow covers one transactional step inside the complete message flow.

- 35 -

Integration framework for SAP Business One 04 Operations

On top you see the transaction status.

The following status values are possible: STARTED (transaction is started) INCOMMIT (transaction is finished on B1i side and waits for commitment) INROLLBACK (transaction fails and is in roll back phase) COMPLETED (transaction finished succesfully) CANCELED (transaction finished with exception)

By clicking the status you open a small window with processing overview data, listing the total duration time, the size of the incoming message, the max size of the message during processing, the size increase i n percentage and the timestamp of processing.

- 36 -

Integration framework for SAP Business One 04 Operations

This first screen is displaying the main flow. Each of the flow functions (atoms) is displayed as a pictogram. There are two types of flow functions (Include and vBIU Call) which are calling sub-flows. These sub-flows you can open in a new window by clicking the pictogram.

The following different flow functions (atoms) are available:

Similar to the XSL choose construct, the Branch atom allows a conditional processing. Unlike the XSL choose, the Branch atom is processing all Path streams, where the condition is true.

, , The Path is defining the processing stream depending on a particular condition. The Otherwise stream gets performed in case no one of the Path conditions is true. Always defines a processing stream that always gets processed.

The For-Each atom is running possibly multiple times for each sub-tree that is specified in the inbound document. The Join atom combines all processing outbound documents to one document.

, The Include atom includes a sub processing flow. The vBIU-Call is a special Include atom, which is calling directly or indirectly the Bizflow of the particular Scenario Step. By clicking this pictogram, you can open a new window, displaying the sub-flow. This option is only enabled in case the particular atom is part of the current processing flow and works only in case the definition of the included flow is explicitly defined. In case the included call is specified relatively to the inbound document, the inclusion is not possible.

The Xform atom is calling an XSL stylesheet to perform a message transformation.

- 37 -

Integration framework for SAP Business One 04 Operations

The Call atom allows you to set up any call to an internal or external source, e.g. writing a file into the file-system, retrieving data from SAP B1, handing over data to SAP ERP or retrieving data from a database. SingleCall and MultipleCall are special Call atoms to call systems, specified in the system landscape directory. These atoms guarantee a well-formed B1iMessage in placing the call result in the B1iSN message body.

, The Persist atom is storing or reading XML documents to/from the BizStore or retrieving directory information from the BizStore. The grey arrows are displaying if the operation is read or write.

In addition to these atomic processing steps the Integration framework provides high-level processing atoms. These atoms are very helpful to perform particular tasks, e.g. a call to SAP ERP or against the database. These additional atoms and the complete Bizflow language is described in the reference guide 02, chapter 3.3.3.

Each pictogram of a flow function gives you particular information of the processing. is indicating that this particular flow function was processed. By clicking the arrow you can load the inbound XML document for this flow function. In case there is an exception during the processing you can see the location of the last step in the flow because the last step will be the step with the last red arrow. is opening a window with information about the particular flow function. The type of information is different depending on the type of flow function. E.g. for the Xform atom, you can check the called XSL stylesheet, for the Path you can check the condition. xxxx ms [n] nnnn is providing analytic processing information. xxxx displays the duration time in milliseconds. [n] displays the number of calls of the particular atom and nnnn displays the size (in byte) of the inbound document of this particular atom.

- 38 -

Integration framework for SAP Business One 04 Operations

2.1.4 Error Inbox


An exception inside a synchronous call will lead to a canceled processing with HTTP error or SOAP fault. Inside an asynchronous processing error in internal processing steps will cause the process to cancel the current running transaction and forcing a roll back. This leaves the particular message in the internal queue. The processing stops for 1 minute and gets activated automatically after this waiting period for another trial. Whenever error This is different for allo outbound processing steps. All outbound steps are interacting directly with the receiver system. In this process phase its a normal situation that errors can happen. Errors can be caused by problems with system connectivity/availability but even more often by logical data rejection, so e.g. in case data mappings are wrong, missing references in the receiver system or failed plausibility checks by the systems business logic. The standard Error Handling in all these cases is that the Integration framework will remove the message from the processing queue (Q.Out_*) and it will provide the message in the Error Inbox from where you can resend the message at a later point of time manually. If you click the button [Error inbox], a new window opens.

You will see an entry for each system in your System Landscape Directory. In the right column, you see how many failed messages are available in the particular error inbox. If there is no failed message available for a system, you see the icon. In case there are failed messages available, you will see the red icon and the system identifier/name is a link. Please click on it to open the particular error inbox for this system.

- 39 -

Integration framework for SAP Business One 04 Operations

The error inbox opens in a new window and displays all failed messages in a list. Per line there is one message, displaying the message identifier, the receiver object the timestamp when the error occurred and the detailed result/error message. With double-click you can expand the result/error field. If you click on the message identifier a window will open, displaying the failed message. You can check/uncheck one or multiple messages and perform one of the two actions. [Delete] Clicking this button will delete all checked messages in the particular error inbox. [Retry] Clicking this button will re-send all checked messages.

2.1.5 Last Exception


With the button [Last Exception] you get a list of all processing steps that ended with an exception during their last processing. Its a quick option to check an exception.

From here you do the following operations:

- 40 -

Integration framework for SAP Business One 04 Operations

[Ping] Open the connection check to test the connections available for the particular processing step. [(Re)Activate], [De-Activate] With these buttons you can re-activate, activate or de-activate the current processing step, depending on the current status. Please refer also to chapter 2.2 for activation/deactivation of processing steps. TID This filed is displaying the transactional identifier of the failed message. Clicking this link will open the flow analysis screen (please refer to chapter 2.1.2).

2.2 Process Control


The processing control lists all available process steps and allows you to maintain settings. Its also another entry point for message debugging. Monitoring Process Control

- 41 -

Integration framework for SAP Business One 04 Operations

There are four sections in the processing control list, categorizing different types of process steps. Scenario Processes Inbound Scenario Processes Processing Scenario Processes Outbound Framework Processes

Whereas the first three sections are listing processes, related to the individual message processing, the last section is listing internal processes of the Integration framework. The framework processes are possibilities for trouble shooting which allow the necessary insides of internal processing. For standard operations only the scenario processes are relevant. Each section of the scenario processes starts with section function buttons which allow you to perform a particular action for all scenario process steps in this section. The following section operations are available: [Activate], [Deactivate] Clicking this button will activate/deactivate all processing steps which belong to the particular section. Please consider that activation/deactivation of a Processing Step is not the same as activation/deactivation of a Scenario Package. If you activate a Scenario Package, the Process Steps will be activated for all selected Scenario Steps. Here you activate/deactivate one particular step possibly for many Scenario Steps as these Process Steps are generic for all Scenario Steps of a particular type. Regarding the relationship between Scenario Package, Scenario Step and Process Step, please refer to chapter 1.1.5. [Debug on], [Debug off] Here you can switch on or off the production of detailed debug information during processing. During activation of a Scenario Package, the framework checks the configuration to decide if the debug switch is on or off. Please refer to reference guide 01, chapter 7. For production environment it should be switched off, except for a concrete trouble shooting. In a development environment it should be switched on.

For each process step there is one line in the list. The list is sorted by the logical address (SysId) of the system, defined in the System Landscape Directory. Each line is displaying the system identifier, the name of the processing step (IPO) and if the step is active or deactive, if the step is producing debug information and if the last transaction failed. For each process step you have the following actions:

- 42 -

Integration framework for SAP Business One 04 Operations

[DBG], [TID] Please click this button to open the Flow Analysis screen for all processing steps of the particular processing time. The newest transactions are listed first. You will get listed all executions, available in the history of the Integration framework. Please notify that the detailed information will be available for a particular time only as there is a regular, automatic garbage collection. For details how to work with the Flow Analysis screen, please refer to chapter 2.1.2. Whereas the [DBG] list takes a while to open due to the fact that all debug information will be collected, the [TID] is a faster option without the possibility to run the graphical flow debugger. Activate This checkbox indicates the current status and allows you by just checking/un-checking to change the mode for this particular process step. Debug This checkbox indicates the current status and allows you by just checking/un-checking to change the mode for this particular process step. Exception This checkbox indicates if there was an exception in the last run of this processing step. The checkbox is always disabled. The exception indicator is overwritten with the next run of this processing step.

2.3 Queue Monitor


The processing of asynchronous scenarios is divided into multiple Processing Steps. These steps are handing over the processed message via the inbuilt queuing mechanism of the Integration framework.

- 43 -

Integration framework for SAP Business One 04 Operations

The internal queues of the Integration framework are identified by the queue name and stream name where a stream is a sub queue. The queue monitor allows you to check the current status in the internal queue. You also can open or delete the messages in a particular queue/stream. Please call Monitoring Queue Monitor

Due to the fast processing, you typically will not see a message waiting in the internal queue. The above example shows a processing of an incoming B1 event, the first processing step is completed. As two different Scenario Steps are subscribed to this incoming message, the inbound step created two messages (one for each Scenario Step) into the internal queue to trigger the follow up processing. You can see this intermediate step e.g when you deactivate the PRC step (chapter 2.2). First the queue monitor will list in the first column all existing queues which contain at least one message. By clicking on one particular queue, all available streams will get displayed in the second column. Beside the stream name, you see the number of messages in this stream. By clicking on a particular stream, all available messages will get displayed in the third column The buttons [Show] will display the message, [MsgFlowInq.] allows you to check which process has created this particular queue entry. With [Delete] you can delete one particular message from the stream. [Clear] allows you to delete a complete stream.

- 44 -

Integration framework for SAP Business One 04 Operations

2.4 Safe Mode


Similar to an operating system, the Integration framework is supporting a safe mode. You can re-start the Integration framework in this mode in case a normal re-start will not solve your problems. This is e.g. the case when you locked yourself out due to wrong actions in the user administration or if there is error-prone processing that will always start and block the Integration framework even after re-start or if .the Integration framework is not able to start any more due to application deployment problems. For safe mode there is only limited functionality available. Please consider that a smooth processing of integration scenarios is guaranteed only in normal mode. Therefore SAP strongly recommends to de-activate running Scenario Packages for this mode (please refer to chapter 1.1.5) and switch off safe mode as soon as the problem is solved and re-activate your Scenario Packages again. You cannot switch to safe mode from the administration console because the mode setting is a low level start-up configuration of the Integration framework. The configuration has to be done the configuration document of the Integration framework. This document is located in the base directory of the Integration framework which is typically: ..\SAP\SAP Business One Integration\B1iServer\tomcat\webapps\ B1iXcellerator\xcellerator.cfg You switch on the safe mode by the following setting in this document. Please consider the security aspect and be very careful with access rights to this document (please refer also to chapter 6.1.). xcl.safemode=true If not existent or set to 'false', B1iP starts in regular mode. If set to 'true', it starts in a safe mode, what means that no B1i-Applications / Adapters (IPOSteps) are available / running, but plain BizFlows / BizStore-access only. After the change in the configuration document you need to re-start the Integration service. Please use the Windows Service Panel to re-start the service SAP Business One Integration Service.

- 45 -

Integration framework for SAP Business One 04 Operations

3. System Administration
3.1 System Information
The system information screen gives you information of your Integration framework version. Here you can find out which functionality is supported by the version you are running. Maintenance System Info

Version Number Here you can check the version number of the current running Integration framework. This is helpful information for SAP support in case of a problem in your environment. Version Timestamp Here you can check the timestamp of the version of the current running Integration framework. [Inbound] Clicking this button opens a separate window, listing all inbound channels, supported by your version of the Integration framework. The inbound

- 46 -

Integration framework for SAP Business One 04 Operations

channels, marked as not available will be introduced successively with following patches/upgrades. [Processing] Clicking this button opens a separate window, listing all processing functionality, supported by your version of the Integration framework. There are two separate section for the administration user interface and for the runtime. Functionality, marked as not available will be introduced successively with following patches/upgrades. [Flow Atoms] Clicking this button opens a separate window, listing all flow atoms, supported by your version of the Integration framework. The flow atoms are one of the main differentiators to other integration solutions. These powerful functions are especially made for integrating business applications and are providing frequently used functionality in a very easy way, e.g. calling and SAP Business One system or retrieving data from a database. Functionality, marked as not available will be introduced successively with following patches/upgrades. Base on customer requirements SAP will add more of these atoms on demand. [Outbound] Clicking this button opens a separate window, listing all outbound channels, supported by your version of the Integration framework. The outbound channels, marked as not available will be introduced successively with following patches/upgrades.

3.2 Import of Content


This functionality allows you in a comfortable way to import multiple documents to different locations in your BizStore with one button click. As the whole Integration framework model is developed in the B1iP XML language, also upgrades and for the Integration framework will be introduced by this functionality. This functionality is the standard way also for SAP support to introduce a fix. For details, please refer to reference guide 01, chapter 4.5

3.3 Configuration of Message Log


Here you can switch on and off the production of message logs. In case you switch it on you can specify the level. Via this screen you also have the possibility to manually delete message logs and you can define the scheduler for automatic deletion.

- 47 -

Integration framework for SAP Business One 04 Operations

Maintenance

Config MsgLog

Message Log With this checkbox you switch on or off the production of message logs during the processing. Daily Deletion With this checkbox you switch on or off the daily deletion (garbage collection) of the message log information. Please notify that daily deletion will get activated only if you have a correct configuration defined for daily deletion. Please click the [Config Daily Deletion] button to define the configuration. In case you switched on the Message Log, its strongly recommended to schedule the automatic daily deletion Log Level Here you specify the level of information to be generated by the message log. The following level are available Infoset Full message Full message incl. binary data

- 48 -

Integration framework for SAP Business One 04 Operations

For a productive environment, its recommended to switch off the Message log or to switch it on with the lowest level (Infoset). In case you introduced new Scenario Steps, it could make sense to switch on the full Message Log (Full message) in the beginning phase. In case you are in design phase, you should switch on the message log with Full message level. [Delete Manually] You can click this button if you want to clean the message log manually without waiting for the daily scheduler.

Range Here you specify the range of message logs you want to delete. The default when you enter the screen is today. If the field is empty, all existing message logs are selected. You can also use a substring of the date, e.g. 1005 to select all message logs for may 2010 and it is possible to define end and start date by using the between both dates, e.g. 100501-100518. Number of existing Log Files This field displays the number of message logs available for the selected range. Last Deletion This field displays the timestamp of the last manual deletion. [Delete] Clicking this button will generate delete jobs to trigger the deletion of message logs in the background, corresponding to the selected range

- 49 -

Integration framework for SAP Business One 04 Operations

[Config Daily Deletion] Please click this button to configure the daily deletion.

Deletion Time (hour) Here you specify the deletion time. Please click the corresponding button to open a drop-down list with the allowed values. The deletion will be performed at the full hour. Backup Buffer (days) Here you specify how many days you want to exclude from the deletion. Its the period (in days), for which the deletion will not be performed. Last Deletion This field displays the timestamp of the last automatic daily deletion. [Save] This button will store the configuration. In case the automatic deletion is switched on, the scheduler will be re-activated with the new setting.

- 50 -

Integration framework for SAP Business One 04 Operations

3.4 User and Session Administration


The Integration framework supports a user and session concept. This is relevant for all incoming HTTP calls which are: User Administration of the Integration framework Incoming HTTP calls for Scenario Steps Inbound Channel for Event Sender from SAP Business One

You can access the maintenance screen via the administration console. Maintenance User Administration

[Admin User] Here you can add, modify, delete and de/activate user accounts for administrative tasks. [Runtime User] Here you can add, modify, delete de/activate user accounts for the integration processing runtime and the B1 event inbound channel.

- 51 -

Integration framework for SAP Business One 04 Operations

[Session Control] Here you can get a list of all currently running sessions and the possibility to kick out a particular session. [Authentication Events] List to check the history of log-ins for all HTTP sessions.

3.4.1 User Administration


The user administration is separate for the administration user and for the runtime user. Please click the particular button to open the user admin screen. Runtime users are the EventSender from SAP Business One and optional incoming HTTP calls for particular Scenario Steps only in case the associated Scenario Package is using Basic Authentication or a User Authentication with special settings. Please check the following table.

When you click the button, the user admin screen opens and lists all currently specified users:

- 52 -

Integration framework for SAP Business One 04 Operations

[Add User] Please click this button to add a new user. The following window will open:

User Here you type in the unique name of the user. Password, Password (repeated) Here you type in the password for the user. The password is rejected in case it has less than 6 characters. Language Here you specify the language for the user. Currently the Integration framework is English only, but prepared already for multi language. This setting will be used in a following version of the Integration framework. active Here you check if the user is active or not. This allows you to maintain even in advance the users for the system. [Submit!] Please click this button to save the new user into the user list .

[Toggle Activation] Please click this button to switch the status of the user between active and deactive.

- 53 -

Integration framework for SAP Business One 04 Operations

[Change Password] Clicking this button opens a window that allows you to enter a new password for an existing user. Here you type in the password for the user. The password is rejected in case it has less than 6 characters.

3.4.2 Session Control


The Session Control allows you to get a list of all currently running sessions with the option to kick them out.

- 54 -

Integration framework for SAP Business One 04 Operations

The list is sorted by HTTP name-space, IPO-Step and User. User The user id under which the session is running client IP-address The IP address of the client IPO-Step Name of the Processing Step in case the session is initiated by an inbound call of a Scenario Step. For more details about the processing logic inside the Integration framework, please refer to chapter 2.2 session-handle Identifier of the session started Timestamp when the session started. duration so far Duration time of the session until now in seconds. session timeout The timeout setting for this session in seconds. The session will automatically expire when it is idle for this period of time. accesses Number of calls inside this session authentication mode Mode of the authentication for this session. Mode can be one of the following values: none basic userdef HTTP name-space The namespace of the http session. The namespace indicates the type of the incoming call. dummy Administration session. This is typically a session triggered from the administration console or a session triggered by a WebDAV client (windows explorer or xml editor). basic Incoming HTTP call. This is the incoming call from the Event Sender or any incoming call for a particular Scenario Step, to be triggered by HTTP.

- 55 -

Integration framework for SAP Business One 04 Operations

soap Incoming SOAP call. This is any incoming call for a particular Scenario Step, triggered by web service.

[Kick-Out] If you click this button, you can kick out the session. The session handle will expire and no further calls be accepted.

3.4.3 Authentication Events


Here you can generate a list of all happened log-ins for all kind of HTTP sessions. The history is a ring buffer and allows you to list the last 500 entries. If you click the button [Auth. Events] you have to select which authentication events you want to check. You have the following options: Auth. Events for Admin User Auth. Events for Runtime User

A selection screen will open which allows you to specify details of your request. If you want to see the complete list, just click the [Submit!] button.

User Here you can select one particular user out of the list. For Admin Users you will find the maintained Admin Users in this list. For Runtime Users, the dropdown list will display the users of the Runtime Users List. Please notify that it depends on the authentication concept of the particular Scenario Step if the incoming HTTP calls are using this list, an own list or even an own validation process. For details please refer to chapter 6.3. In case you want to filter to a particular user not covered by the drop-down list, just type in the user name.

- 56 -

Integration framework for SAP Business One 04 Operations

Client IP Here you can type in a concrete ip address to check if there are sessions triggered by a concrete machine. From timestamp, Until timestamp Here you can filter on a concrete time period in specifying the start and the end time for the selection. Kind of Events The authorization events will always end with a particular type. The following types are possible: LOGON (successful logon) LOGOFF (successful logoff) FAILURE (failed logon) TIMEOUT (logon which timed out) KICKOUT (logon which is kicked out by administration) DEACTIVATED (logon, deactivated after 5 failed logons)

- 57 -

Integration framework for SAP Business One 04 Operations

4. System Landscape Directory


All systems, relevant for integration scenarios, have to be defined in the System Landscape Directory (SLD). With the SLD you administer all kind of system connections in your environment from one tree control. Selecting a particular system in the tree on the left will display the technical connectivity parameters on the screen and gives you the possibility to test the connection. Each system in the SLD has a particular type (SysType). Each SysType is defined in the repository of the Integration framework with its parameters and connectivity options. Depending on the selected SysType the parameters will be different. In addition to the here described user interface, you have the option to create an SLD entry programmatically via the API SLDCreateSysId. For details please refer to reference guide 06, chapter 2. Please notify that you have to re-activate Scenario Packages in case you modified connectivity parameters for involved systems in the SLD.

New (SLD Create System) To add a new system to the SLD, click the Create System entry. On the right please choose the SysType and define a unique name. Afterwards click the [Create] button. After creation you are in edit mode.

Modify (SLD) To modify system parameters, just click on the particular entry in the tree and click the corresponding [Edit] button to open the edit mode. When you finished your input, please click the [Save] button to store the new configuration. Delete (SLD) To delete a system from the SLD, just click on the particular entry in the tree and click the corresponding [Delete] button. Test Connection (SLD) To test the connection to a system, just click on the particular entry in the tree and click the corresponding [Test connection] button of the active connector you want to test. A window opens with the original result of call interface. - 58 -

Integration framework for SAP Business One 04 Operations

4.1 SAP Business One


There are the following SysTypes in the Integration framework, relevant for the connectivity to SAP Business One. B1.2004 B1.2005 B1.2007 B1.8.8 Connection to an SAP Business One 2004 system Connection to an SAP Business One 2005 system Connection to an SAP Business One 2007system Connection to an SAP Business One 8.8 system

There are two connectivity options to interact with SAP Business One. The DI API and the direct database connection JDBC.

B1Server Here you type in the IP address of the SAP Business One server. Logical names can be used. The string you type in here needs to be the same string, that is used in the EventSender setup for this SAP B1 system (e.g. if you used the logical name in EventSender you need to type in here also the logical name. The comparison is case sensitive. If you are using the parameter associatedSrvIP in HTTP (chapter 4.4) or Web Service (chapter 4.5) to associate an incoming call to a particular B1 system, you also have to make sure that both parameters are the same.

- 59 -

Integration framework for SAP Business One 04 Operations

licenseServer This field holds the information about the license service of SAP Business One. Its the IP address, followed by a colon and the port number where the license service is accessible, typically 30000. Please make sure that the service can be reached and a license is available. If you leave this field blank, the SAP Business One default license server setting is used. company The name/identifier of the company database of SAP Business One. dbType Specification of the database system, used for SAP Business One. Please select the entry out of the drop-down list. dbUser Login for the access to the company database via the database dbPassword Password for the database login for the user, defined in field dbUser. userName, password Login for the access to the company database via SAP Business One. You need to create a user exclusively for integration purposes. In B1 2007, this user is available with the installation of SAP B1. This user may not perform normal operations in the SAP Business One client. The SAP Business One integration platform filters the messages based on this specific user to avoid endless loops of messages. How to configure the B1 inbound filter, please refer to chapter 1.3. language Please select the language to be used for the B1 login from the drop-down list. If you leave this field blank, the SAP Business One default language setting is used. trust Please select if you have a trusted connection to SAP Business One. The value is true or false. The value determines whether to use Microsoft Windows trusted database logon instead of using dbUser and dbPassword. We recommend selecting false and maintaining the dbUser and dbPassword fields. jcoPath JCO is a functionality of the DA-API and used to interact between the Integration framework and DI-API. The DI-Proxy needs to have the information where the JCO functionality is located in the local file system of the B1 Server. In case of a standard installation, you typically find the JCO functionality in the file system directory C:\Program Files\SAP\SAP Business One Server\DI API\JCO\LIB. The default is the specification of the jcoPath on B1 side in the proxy configuration. In this case this parameter is empty.

- 60 -

Integration framework for SAP Business One 04 Operations

diProxyhost The Integration framework provides the technical DI Adapter, consisting out of two parts, the DI Adapter Control part and the DI Adapter Proxy part. The DI Adapter is running locally on B1 Server side where as the Control part is running on the Integration Server side. Here you have to specify the IP address of the server where the DI Proxy is running. diProxyport Here you define the port where the DI Proxy is listening. By default this port is set to 2099. In case this port is occupied on the B1 Server, you can use any port you want. In this case please define the port number also in the configuration file for the DI Proxy. proxyHost In case you have to specify a proxy server of you network to be used to connect to the B1 Server, please enter the IP address here. Leave it blank if no proxy is used. proxyPort In case you have to specify a proxy server to be used to connect to the B1 Server, please enter the corresponding port number here. Leave it blank if no proxy is used.

driver The specification of the JDBC driver is provided by the database vendor. Example for SQL Server 2005 and SQL Server 2008 is the string com.microsoft.sqlserver.jdbc.SQLServerDriver. Example for SAP DB is the string com.sap.dbtech.jdbc.DriverSapDB. url The specification of the JDBC URL. Example for SQL Server 2005 on localhost, dbName=DatabaseName (jdbc:sqlserver://ipaddress:1433;integratedSecurity=false;databaseName=DB NAME;selectMethod=cursor) Example for SAPDB on localhost (jdbc:sqlserver://ipaddress:1433;databaseName=DatabaseName;SelectMetho d=Cur)

- 61 -

Integration framework for SAP Business One 04 Operations

Please use the same database name which you defined in section DIAPI in the field company. Please use the same IP address which you defined in section DIAPI in the field B1Server. username Login to the database. Please make sure that the login has enough rights to do the necessary operations. Please type in the same username which you defined in section DIAPI in the field dbUser. password Corresponding password for the Login. Please type in the same password which you defined in section DIAPI in the field dbPassword.

4.2 SAP ERP


There are the following SysTypes in the Integration framework, relevant for the connectivity to SAP ERP. R3.46C R3.47.100 R3.47.200 ECC6.0 Connection to an SAP ERP system 4.6 C Connection to an SAP ERP system 4.7 100 Connection to an SAP ERP system 4.7 200 Connection to an SAP ERP system ECC 6.0

For all SAP ERP systems there is one active RFCA connection to call function via RFC and one passive RFCP connection to receive incoming IDOCs. The Integration framework is an RFC server and in passive mode. To send data from an SAP ERP system you have to configure the ALE on SAP ERP side. In ALE you have to define the Integration framework server as a logical system. Via the RFCA adapter you can call any remote enabled function in SAP ERP, typically developed in ABAP. Please consider that you have to open it to allow remote call.

For the newer SAP ERP systems ECC, there are additional sections for the web service connections. For the configuration please refer to the chapter 4.5.

- 62 -

Integration framework for SAP Business One 04 Operations

applicationServer R/3 application server client Identifier of the client (MANDAN field), you want to use in your R/3 System. user The user in the R/3 system for the Integration framework to login for data exchange. password The corresponding password for the user. Please consider that older R/3 systems typically support uppercase passwords only. Very often this is handled transparent as the R/3 user interfaces and the RFC connectors are doing an automatic transformation to uppercase. Please consider this in case you fail with the test connection. language Logon language systemNumber Internal number of the ERP system maxConnection Maximum allowed connections gatewayHost Gateway Host

- 63 -

Integration framework for SAP Business One 04 Operations

gatewayServiceNumber Number of the gateway service. By default the number is compiled following the pattern sapgw<systemNumber>. senderPartner The Sender partner is the identifier under which the Integration framework is defined in your ERP system. This identifier is called Logical System. Prerequisite is that you have created a Logical System for the Integration framework. You can do this in your ERP system with the transaction /nSALE (Application link Enabling -> Sending and Receiver Systems -> Logical systems -> Define Logical systems). senderPort Sender port. Typically this is also the Logical System. recieverPartner The Receiver partner is the identifier under which the client (MANDAN) of the ERP system is defined in your ERP system. This identifier is called Logical System. Prerequisite is that you have created and assigned a Logical System for the client of the ERP system. You can create a Logical System in your ERP system with the transaction /nSALE (Application link Enabling -> Sending and Receiver Systems -> Logical systems -> Define Logical systems). You can assign the Logical System to the client of your ERP system in your ERP system with the transaction /nSALE (Application link Enabling -> Sending and Receiver Systems -> Logical systems -> Assign Client to Logical System). recieverPort Receiver port

- 64 -

Integration framework for SAP Business One 04 Operations

applicationServer, client, user, password, language, systemNumber, maxConnection, gatewayHost, Gateway Host, gatewayServiceNumber Please refer to the description above programID The Program Identifier is the Program ID, specified in the RFC destination definition in the ERP system. Prerequisite is that you have created an RFC destination definition for the Integration framework. You can create such a definition in your ERP system with the transaction /nSM59. Please choose TCP/IP protocol. unicode Please indicate if your R/3 client supports/does not support Unicode.

4.3 File System


There is the following SysType in the Integration framework, relevant for the connectivity to File System. F.AnySystem Connection to any system via any schema

The Integration framework is interacting with the file system via a separate inbound and outbound directory. These directories must exist and the user under which the Integration framework is running needs full access rights.

filePattern To specify the inbound file pattern you define the directory (with full path, UNC names are supported) and the file specification. Please ensure that you define always directories that are existing and accessible with the needed rights in the file system. You can use the * symbol, which is following the standard DOS conventions to address multiple files. Encoding Character encoding is needed to apply the technical representation of the characters according to the country or system specific needs. The following entries are available: ISO 8859-1, ISO 8859-2, ISO 8859-3, ISO 8859-4, ISO 8859-5, ISO 8859-6, ISO 8859-7, ISO 8859-8, ISO 8859-9, ISO 8859-11, ISO - 65 -

Integration framework for SAP Business One 04 Operations

8859-13, ISO 8859-14, ISO 8859-15, ISO 8859-16, US-ASCII, EBCDIC, ShiftJIS, EUC-JP, ISO-2022, GB2312, EUC-KR, Big5, Unicode UTF-7, Unicode UTF-8, Unicode UTF-16, ISO-10646-UCS2, ISO-10646-UCS4. Please choose the required one from the list. ISO-8859-1 is the default. Delimiter This value is mandatory for DSV (delimiter separated value) files only. Here you specify the delimiter that separates the particular fields. Typically a , or a ; sign. WrapChar Here you specify the field wrappers. The field wrapper is optional and only used to avoid that a field delimiter character inside a value will be misinterpreted as a field delimiter. Payload Type Here you can specify the inbound format(s) to be supported in the file inbound of the selected system. Please use the drop down list to select the appropriate format: automatic detection: All formats are supported simultaneously. Please make sure that you have specified the filePattern .*. The payload type will be automatically detected by the file extension. (xml->XML, csv->DSV, txt->OFFSET). xml file: always interpreted as an xml documents, independent on the file extension. dsv file: always interpreted as a dsv file, independent on the file extension. txt file: always interpreted as a fix length file, independent on the file extension. A fix-length file has offset definition per field (all lines have the same structure). Mandatory you have to specify the field transformation in the XML document in the base directory of the Scenario Step and have to specify the name of this control document in the inbound specification (please refer to reference guide 02, chapter 3.1.3). regex file: always interpreted as a text file to be interpreted by regular expressions, independent on the file extension. Mandatory you have to specify the field transformation in the XML document in the base directory of the Scenario Step and have to specify the name of this control document in the inbound specification (please refer to reference guide 02, chapter 3.1.3).

- 66 -

Integration framework for SAP Business One 04 Operations

filePattern To specify the outbound file pattern you define the directory (with full path, UNC names are supported) and the file specification. Please ensure that you define always directories that are existing and accessible with the needed rights in the file system. You can use the following special characters, resp. variables: ? For the outbound file pattern, you can use the ? to introduce a numbering in this directory. This symbol leads B1iSN to build file generations by counting up a number. The example data????.xml will create an outbound file with the name data0000.xml in case the directory is empty. In case a file, following this naming convention, is existing in the outbound directory, the next generated file name will be data<last number>+1.xml. A placeholder for a value which you can define inside the processing of the Scenario Step. In case you want to set this value, please add the attribute b1im_filename directly in the outbound payload.
<xsl:template name="transform"> <xsl:attribute name="b1im_filename">myName</xsl:attribute> ... </xsl:template>

[vbiu]

[TS]

This variable will be replaced by the current timestamp to give you another possibility to defined unique file names.

[yyyy] This variable will be replaced by the current year (4 digits [yy] [mm] [dd] This variable will be replaced by the current year (2 digits) This variable will be replaced by the current month (2 digits) This variable will be replaced by the current day (2 digits)

[hour] This variable will be replaced by the current hour (2 digits) [min] [sec] This variable will be replaced by the current minute (2 digits) This variable will be replaced by the current second (2 digits)

You can also combine the usage of such variables. For example file[TS]??.[hour][min].txt

- 67 -

Integration framework for SAP Business One 04 Operations

4.4 HTTP System


There is the following SysType in the Integration framework, relevant for the connectivity to systems via HTTP. H.AnySystem Connection to any system via http protocol

H.AnySystem supports supports the POX standard in supporting HTTP calls with any kind of incoming and outgoing XML message.

destProtocol Protocol used for communication, typically http or https. destHost Specification of the host system that gets called. Please type in either the IPaddress or the symbolic name for the receiver system. destPort Port/Service to be called on the destination host. An empty value defaults to the protocol-specific default. destPath Destination resource that consists of the remaining destination path and the document name; it may not contain query-parameters / fragment identifiers.

- 68 -

Integration framework for SAP Business One 04 Operations

query Query strings, separated by semicolon proxyHost In case you are using a proxy server to connect to the Integration framework server, please enter the IP address here. Leave blank if no proxy used. proxyPort In case you have to specify a proxy server to be used to connect to the Integration framework server, please enter the corresponding port number here. Leave blank if no proxy used. method HTTP method to use; POST and GET are supported. If you want to set up a standard scenario to handover data via HTTP, please choose POST as the method. authentication Selected authentication method: basic if you want to activate the authentication or empty in case there is no login necessary for the system. user User name for authentication purposes password Password name for authentication purposes user2query If the user is entered as a query parameter, this property holds the parameter name. password2query If the password is entered as a query parameter, this property holds the parameter name.

associatedSrvIP This parameter is used in case an incoming HTTP call is associated to a particular SAP Business One system. In this case you can specify the relevant association details in this parameter which depends on the Scenario Package you want to set up with this SLD entry. For the Scenario Package sap.B1Mobile, the parameter is b1Server/company, for the Scenario Package sap.Xcelsius, the parameter is the b1server. Please consider that the strings have to be the same as in the SLD entry for SAP B1 for this parameter.

- 69 -

Integration framework for SAP Business One 04 Operations

4.5 Web Service


There is the following SysType in the Integration framework, relevant for the connectivity to systems via web services. W.AnySystem Connection to any system via any schema

In the Connectivity List youll find the following four sections: WSAN (active connectivity) WSAS (active connectivity) WSAO (passive connectivity) WSAR (passive connectivity) To use the web service type One-Way (asynchronous communication) please specify the parameter for the WSAN section. To use the web service type Request-Response (synchronous communication) please specify the parameter for the WSAS section. WSAS and WSAN sections have the same parameters. Please use the web service type WSAR for incoming synchronous web service calls. The passive web service type WSAO for incoming asynchronous calls does not need any parameter.

destProtocol Protocol used for communication, typically http or https. destHost Specification of the host system that is called. Please type in either the IPaddress or the symbolic name for the receiver system.

- 70 -

Integration framework for SAP Business One 04 Operations

destPort Port/Service to be called on the destination host. An empty value defaults to the protocol-specific default. destPath Destination resource that consists of the remaining destination path and the document name; it may not contain query-parameters / fragment identifiers. query Query strings, separated by semicolon proxyHost In case you have to specify a proxy server to be used to connect to the Integration framework server, please enter the IP address here. Leave blank if no proxy used. proxyPort In case you have to specify a proxy server to be used to connect to the Integration framework server, please enter the corresponding port number here. Leave blank if no proxy used. authentication Selected authentication method: basic if you want to activate the authentication or empty in case there is no login necessary for the system. sslTruststorePath Specify the trustStore path when using https protocol. We recommend you specify either a UNC Path (Universal Naming Convention) on Microsoft Windows or an NFS Path (Network File System) on Unix. sslTruststorePassword Password for accessing trustStore.

associatedSrvIP This parameter is used in case an incoming HTTP call is associated to a particular SAP Business One system. In this case you can specify the relevant association details in this parameter which depends on the Scenario Package you want to set up with this SLD entry. For the Scenario Package sap.B1Mobile, the parameter is b1Server/company, for the Scenario Package sap.Xcelsius, the parameter is the b1server. Please consider that the strings have to be the same as in the SLD entry for SAP B1 for this parameter.

- 71 -

Integration framework for SAP Business One 04 Operations

4.6 Database System


There is the following SysType in the Integration framework, relevant for the connectivity to database systems. J.AnySystem Connection to any database via JDBC

The Integration framework enables you to interact with any kind of database systems that is exposed via JDBC.

driver The specification of the JDBC driver is provided by the database vendor. Example for SQL Server 2005 and SQL Server 2008 is the string com.microsoft.sqlserver.jdbc.SQLServerDriver. Example for SAP DB is the string com.sap.dbtech.jdbc.DriverSapDB. url The specification of the JDBC URL. Example for SQL Server 2005 on localhost, dbName=DatabaseName (jdbc:sqlserver://ipaddress:1433;integratedSecurity=false;databaseName=DB NAME;selectMethod=cursor) Example for SAPDB on localhost (jdbc:sqlserver://ipaddress:1433;databaseName=DatabaseName;SelectMetho d=Cur) username Login to the database. Please make sure that the login has enough rights to do the necessary operations. Please type in the same username which you defined in section DIAPI in the field dbUser. password Corresponding password for the Login. Please type in the same password which you defined in section DIAPI in the field dbPassword.

4.7 FTP System


Currently FTP is not supported by the Integration framework. This functionality will come soon in a next patch/release.

- 72 -

Integration framework for SAP Business One 04 Operations

4.8 Mail System


Currently eMail is not supported by the Integration framework. This functionality will come soon in a next patch/release.

- 73 -

Integration framework for SAP Business One 04 Operations

5. Performance
There are some general aspects that are influencing the performance of the Integration framework.

5.1 Memory
The Integration framework for SAP Business One is a pure XML-centric environment. The most important aspect for smooth xml processing is the available system memory. The Integration framework is available for 32 bit and for 64 bit operating systems.

32bit Please consider that in a 32 bit windows operation system, the maximum memory that the operating system can assign to the Integration framework is 1 GB. Its important to assign 1 GB memory to the Integration framework. In a typical small setup where the Integration framework is running on an SAP B1 server, you need to have at least 4 GB where you assign 2 GB to the database system, 1 GB to the Integration framework and 1 GB will be left for the operating system. 64 bit In a 64 bit environment you can assign as much memory you need to the Integration framework. This should be considered in case you reached the limits of the 32 bit environment.

5.2 Network Connection


The Integration framework for SAP Business One operates as a hub, connecting to all clients and databases through a network. Robust connectivity to the database, the DI-API of SAP Business One, and SAP R/3 via RFC is especially important. A successful implementation depends on a stable line, high bandwidth, and low latency.

5.3 Event Sender configuration


In SAP Business One, there is a notification mechanism to raise events for changes in the business data. For older versions of SAP Business One, the notification mechanism can be configured per company database. From on SAP Business One 8.8, it is possible to configure the event creation per company database and per business object.

- 74 -

Integration framework for SAP Business One 04 Operations

Its strongly recommended to go for an optimal configuration in switching on the eventing for connected company databases only and for subscribed business objects only. In case you are dealing with an older version of SAP Business One, you will create events for all business objects for a particular company database. In this case, please use the filter inside the EventSender to send only the subscribed business objects only to avoid unnecessary load on the Integration framework.

5.4 Integration framework configuration


For productive usage it is strongly recommended to configure the logging in an optimal way: Switch off the recording of test messages during processing (please refer to guide 01, chapter 7.1) Switch off the activation of Scenario packages with detailed log/debug information (please refer to guide 01, chapter 7.1) Do not switch on the production of detailed log/debug information in the process control screen (please refer to chapter 2.2) Switch off the Message Log or switch it on with level Infoset (please refer to chapter 3.3)

- 75 -

Integration framework for SAP Business One 04 Operations

6. Security
The Integration framework for SAP Business One serves as a message hub between several clients. Each connection between a particular client and the Integration framework needs to be secure. The following security checkpoints can help you strengthen the security aspects of your Integration framework installation. Please also refer to the Administrator's Guide for the Integration Component which describes in general the concepts how to work with the Integration framework, covering also in general aspects of secure usage like HTTPS, Firewall, certificates etc.

6.1 Integration framework and BizStore Connection


The Integration framework is installed in the file system in the B1i base directory. This directory is located typically in the following place:
..\SAP\SAP Business One Integration\B1iServer\tomcat\webapps\B1iXcellerator

To avoid manipulation of the basic functionality (e.g. replacing the database driver class with a spy driver class), its strongly recommended to ensure that no one else than the system administrator has write access to this base directory of the Integration framework.

- 76 -

Integration framework for SAP Business One 04 Operations

The Integration framework runs as an NT background process or a UNIX daemon under a defined user. Please make sure that the granted right for the user are limited to the needs. We strongly recommend that you do not run Tomcat with users that have administrative rights, for example, root on Linux, or Administrator on the Microsoft Windows system. Only the technical base functionality is stored in the base directory. Similar to SAP R/3 technology, all meta data and all programming logic is stored in an own storage, the BizStore. BizStore is implemented in a Relational Database Management System (RDBMS). Here the Integration framework administers all access information for all connected systems, all integration scenarios and all settings. You can define a user and password, and ensure that only this user may access the Integration framework tables, especially if the RDBMS is shared with others. The credentials to access this single point of entry for all critical information are stored in the B1i configuration file. This configuration file is stored in the base directory. The name is xcellerator.cfg To avoid manipulation here, its strongly recommended to ensure that no one else than the system administrator has read and write access to this configuration file. Therefore you need to protect the configuration file with the OS file authorization mechanism. Procedure 1. Stop SAP Business One Integration Service: 2. Change the Authorization setting of the base directory In Microsoft Windows Explorer, locate the base directory Right-click the folder and choose Properties In the Security tab, remove all unnecessary groups or user names, except Administrators and SYSTEM. In the Security tab, choose Advanced Deselect the checkbox Inherit from parent the permission entries that apply to child objects. Include these with entries explicitly defined here. In the Security window, choose Copy Select all unnecessary groups or user names, except Administrators and SYSTEM, and choose Remove. Choose OK 3. Re-start the SAP Business One Integration Service

- 77 -

Integration framework for SAP Business One 04 Operations

In the xcellerator.cfg, you define the login to the database where the BizStore is located. If you are using integrated authentication for MSSQL, ensure that the defined user is a trusted user for MSSQL. If you want to change the password in the xcellerator.cfg, you have to type in the encrypted password. You can use a tool, available by the Control Center to get the encrypted string for any password you type in. Control Center Configuration Encrypt Password

Its strongly recommended to use the database functionality to limit the access rights to the needs. In case you want to limit the access rights to the B1i tables only, the following tables are of relevance for the Integration framework: BZSTDOC BZSTIDXH BZSTIDXP DBQITEMS DBQSTREAMS XCLTRINQ XCLTRLOG XCLTRPOS

For security reasons, we strongly recommend that you create the tables with the user you have defined, rather than the one that owns the database schema for the SAP Business One application.

6.2 Administration User


The complete administration of the Integration framework is done via a browser based interface. To make the access to B1i functionality secure, the Integration framework supports a user/session concept. This allows you to split different administration tasks (e.g. SLD, Scenario Development, standard admin) to different people. If a logon of a particular admin fails on more than five consecutive attempts, the relevant admin account is deactivated automatically (and must subsequently be unlocked by another administrator). If the last (or only) admin account had been locked, or if the sole administrator has forgotten his password, it is necessary to start the Integration framework in the safe mode. Please refer to chapter 2.4.

- 78 -

Integration framework for SAP Business One 04 Operations

For details how to create, update, delete or de/activate a user account and how to control sessions and incoming authentication events, please refer to chapter 3.4. Session handling Automatically the Integration framework is setting up a session for an incoming call. The timeout for this session is following the parameter in the xcelerator.cfg. xcl.http.sessionTimeout=100 This parameter indicates the timeout for HTTP-prone sessions in minutes. If not specified, the value defaults to 10. The value must be greater than 0, otherwise, it internally will be set to 1. Please consider that each open window is a separate session. So e.g. if you opened 10 windows successively it can happen that you will have expired sessions quite often which will disturb your work. In case of a session timeout, automatically the browser pops up the login screen. Remote Access By installation default, administrative web access is limited to the local machine only. After installation it is possible to manually allow access by remote machines, by changing the particular setting in the configuration file xcellerator.cfg. xcl.http.localOnly=false

6.3 Incoming HTTP calls


This inbound channel is relevant for particular Scenario Packages that contain at least one Scenario Step that has an incoming HTTP or Web Service call. The Integration framework supports for each Scenario Package an own authentication concept. It depends on the particular settings for the Scenario Package and the corresponding authentication settings which kind of authentication will take place for an incoming call.

- 79 -

Integration framework for SAP Business One 04 Operations

There are four options for authentication No authentication Authentication against the Runtime User List Authentication against a special User List Authentication via an own processing step We strongly recommend not to use No authentication. The authentication against the Runtime User List will authenticate against the user, maintained in the User Administration (chapter 3.4 Runtime User). The authentication against a special User List will run against a special xml document to be provided in the BizStore. Please refer to reference guide 02, chapter 4. The authentication via an own processing step will run an individual process, provided by the owner of the particular Scenario Package. This process needs to be provided in the BizStore. Please refer to reference guide 02, chapter 4.

Session handling The Integration framework supports session handling for incoming HTTP calls. In case this is switched on, the Integration framework is setting up a session for an incoming call. Authentication will take place in case an incoming call hands over an empty or invalid session id. After successful authentication, a valid session id will be handed back to the caller to be used for follow-up calls. If a session handling is activated depends on the authentication setting in the Scenario Package and the configuration of the parameter Session Timout in the authorization concept definition. Please also refer to reference guide 02, chapter 4.

- 80 -

Integration framework for SAP Business One 04 Operations

Automatically the Integration framework is setting up a session for an incoming call. The timeout for this session is following the parameter in the xcelerator.cfg. Secure incoming calls The Integration framework supports both protocols HTTP and HTTPS. If the Scenario Package is linked to a user defined authentication, you can specify in the authentication definition to enforce an HTTPS protocol. This causes the Integration framework to allow HTTPS inbound calls only. Enforce Secure Login Please refer also to the Security Administrator's Guide for the Integration Component which gives you a good overview for security strategies. If you open your environment to the outside, SAP strongly recommends to contact experts to set up the environment in an optimal secure way.

6.4 Connection to SAP Business One


In the System Landscape Directory (SLD), you specify the connectivity parameters to connect to SAP Business One. Please refer to chapter 4.1. For all calls, accessing SAP Business One via the DI API, you will run through the authentication mechanisms of DI API. For all calls, accessing SAP Business One database directly, the database authentication mechanism is used. In addition to connectivity, SAP Business One provides its own mechanisms for authorization. You should use these functions to limit the rights of a given user. If you want to use the database trust connection from MS SQL Server, you need to change the parameter integratedSecurity=true in the url parameter for the JDBC section (chapter 4.1). - 81 -

Integration framework for SAP Business One 04 Operations

After granting one MS Windows user, you have to set SAP Business One Service to run with the specified Microsoft Windows user. Choose Control Panel Administrative Tools Services, and doubleclick SAP Business One Service In the Log On tab, choose This account. You can authorize the trust connection to the user you specified in step 1 On the General tab, restart SAP Business One Service by first choosing Stop, and then Start

6.5 Event Sender Connection to Integration framework


The Event Sender is a small tool running on side with SAP Business One and sending change events from SAP Business One to the Integration framework via HTTP. The Event Sender inbound is covered by basic authentication and validates the user against the against the Runtime User List, maintained in the User Administration (chapter 3.4 Runtime User). If you want to change the password for the Event Sender, you have to type in the encrypted password. You can use a tool, available by the Control Center to get the encrypted string for any password you type in. Control Center Configuration Encrypt Password

6.6 Event Sender Connection to SAP Business One


The Event Sender is a small tool running on side with SAP Business One and sending change events from SAP Business One to the Integration framework via HTTP. The tool is checking on a regular basis on events in the table SEVT in the database SBO-COMMON. Therefore it connects to the database via JDBC. For all calls the database authentication mechanism is used. The password you specify in the Event Sender setup during the installation. If you want to change the password for the Event Sender, you have to type in the encrypted password. You can use a tool, available by the Control Center to get the encrypted string for any password you type in. Control Center Configuration Encrypt Password

- 82 -

Integration framework for SAP Business One 04 Operations

6.7 Connect to other Clients


In the System Landscape Directory (SLD), you specify the connectivity parameters to all clients, connected to the Integration framework. For details for a particular system, please refer to chapter 4. Authentication You can access SAP R/3 via remote function call (RFC). RFC provides its own security mechanisms to secure the line between SAP R/3 and the Integration framework. You can use these features to define the Logon Type, encryption, and so on. The flat file should be in a secure place in the file system. Define the access authorization carefully and use all mechanism, provided by the file system to secure the access to the in-and outgoing files. Authorization In addition to connectivity, each application system provides its own mechanisms for authorization. For SAP R/3, you can use these functions to limit the rights of a given user.

- 83 -

Integration framework for SAP Business One 04 Operations

Copyrights, Trademarks, and Disclaimers


Copyright 2010 SAP AG. All rights reserved. The current version of the copyrights, trademarks, and disclaimers at http://service.sap.com/smb/sbocustomer/documentation is valid for this document.

- 84 -