Loading...
 

bRobots Handbook

Preface

bRobots® enables you to rapidly implement complex business processes in SAP systems using a low-code approach. It is highly extensible and deeply integrated in the SAP ERP eco-system.

1. Intended audience

This handbook is mainly intended for the following user roles:

Developers

The following sections are the most important ones:

Business rules maintainers

The following sections are the most important ones:

Key users that are managing workflows

The following sections are the most important ones:

Additionally, there are sections important for users of the SAP Basis team. These are:

2. Conventions used in this book

To provide a consistent and easy to read text, several conventions are followed throughout the book.

2.1. Keyboard shortcuts

Keyboard shortcuts are not described as they are listed next to the function button or as entry in the menu system anyway.

2.2. Functions in the application toolbar

If a function within the application toolbar of a SAP transaction has a corresponding entry in its menu system then the menu system entry is always used instead. If no corresponding menu system entry is available, then a screenshot of the icon used for the function button is used with no further descriptions. If a function is only available as keyboard shortcut, then the keyboard shortcut is used instead with no further description.

Entering a menu is indicated by the character >.

  1. Example for a menu entry: Edit > Selections > Select All

  2. Example for a function in the application toolbar: image001

  3. Example for a function as keyboard shortcut only: Enter

2.3. Typographic Conventions

  1. Italics

    An italic font is used for emphasized text and the first usage of technical terms.

  2. Monospace in all caps

    A Monospace in all caps font is used for SAP-Transactions, ABAP objects, data dictionary entries and values within applications.

  3. Monospace in bold

    A monospace in bold font is used for fields and values within applications.

  4. Monospace in italics

    A monospace in italics font is used for paths in the menu system of an application.

  5. Monospace

    A monospace font is used for filenames and URLs

  6. Hover-able black text

    Cross references and external links are formatted as Hover-able black text

2.4. Definitions

The following definitions are used within this handbook:

Developer

Refers to anyone who interacts with a bRobots® installation by modifying ABAP code.

Rule maintainer

Refers to anyone who interacts with a bRobots® installation by modifying rules.

User

Refers to anyone using functionality supplied by a bRobots® installation by executing rules and/or processes.

Request

Refers to a workflow consisting of steps triggered and managed by bRobots®.

SAP Workflow

Refers to a workflow triggered and managed by the SAP system itself.

Getting started

3. Synopsis

After performing all sections within this chapter, you will:

  1. Have a basic understanding of the components of bRobots®.

  2. Have installed everything needed to build new processes with bRobots®.

  3. Have a basic understanding on how to create and maintain BRO rules.

  4. Know how to install processes.

  5. Have a basic understanding on how to create a new process.

4. Introduction

4.1. Synopsis

After this section you will know on a high level:

  1. The technical and business capabilities of bRobots®.

  2. The technical components of bRobots®.

  3. How bRobots® integrates into SAP.

4.2. What is bRobots®

bRobots® is a Framework consisting of the following pillars:

  1. The easy creation of input screens - named Fiori App+.

  2. The rule-based calculation/derivation of values of SAP objects and the easy creation/update/deletion of SAP objects - named Decision+.

    1. In foreground after the user filled in the input screens.

    2. In background automatically at specific stations within a workflow.

    3. In background only to allow other transactions to re-use the knowledge of the creation/update/deletion.

  3. The easy creation of workflows - named Workflow+.

    1. In foreground after the user filled in the input screens.

    2. In background only to allow other transactions trigger workflows.

    image007
    Figure 1. A visualization of the bRobots® pillars

The framework consists of hard-wired code which does not need any customization by developers. Additionally, it supplies many customer exits to allow re-using the time proven code of the framework for the specific challenges a developer faces.

The following core functions are available for companies using the bRobots® Framework:

  1. Default processes based on best practices for the following SAP objects:

    1. Material master

    2. Business partner

      1. General

      2. Customer

      3. Vendor

  2. The possibility to easily customize the default processes to suit the specific needs.

  3. The possibility to easily digitize processes that need direct interaction with the SAP system by eliminating the need for forms made in text processing software (like MS Word®).

  4. A tool to start connecting requesters for changes in the system with the corresponding decision makers.

    1. Reduces the overhead for the requesters to follow their request.

    2. Reduces the overhead for the decision makers to understand the request.

    3. Eliminates the overhead of manually copying and pasting request data into the actual SAP transactions.

4.3. bRobots® technology Stack

In this section we discuss the technical structure of each pillar of bRobots®. bRobots® is the result of years of development of the product BRO - Business Rules Organizer. BRO itself is a rule engine built upon the SAP ABAP stack. It is thus highly integrated in SAP S/4 HANA.

BRO is the fundamental technology which drives bRobots®. All configurations, developments and customizing tasks in bRobots® are done with BRO rules or in conjunction with BRO rules. During its history BRO has received the following addons which can either interact with BRO or can be used by BRO rules:

  1. Additional Action Types (For more information on action types please see Chapter 35, Available action types

    1. For sending e-mails - named Action Type E-Mail.

    2. For creating screens in SAP GUI and in Fiori - named Action Type Screen Definition and Webscreen.

    3. For creating SAP workflows - named Action Type Workflow Dispatch.

  2. A collection of function modules that can be used by BRO rules to create/update/delete SAP objects - named BRO MDM+.

  3. Utility applications to track and manage workflows created by the Action Type Workflow Dispatch - main applications are the Process & Service Cockpit and the Process & Service Monitor.

Depending on the pillar, the following components are built on top of BRO:

Fiori App+

Is a framework using the component Action Type Screen Definition. Additionally, it integrates everything necessary to provide a fully functional Webscreen component. Thus, any application made with Fiori App+ will be executable in SAP GUI as well as in a web browser.

image009
Figure 2. Fiori App+
Decision+

Consists of the following parts:

ID954 BRobots Modules Dec
Figure 3. Decision+
  1. A framework to use BRO rules to calculate/derive values for SAP objects.

  2. Extensible pool of function modules that will take care to save the results of the BRO rules.

    1. The component BRO MDM+ ships function modules allowing saving different SAP objects (among other things material master, business partner, customer, vendor)

    2. The component BRO MDM+ defines a framework on how to add SAP objects that are not already covered by the function modules shipped with BRO MDM+.

Workflow+

Is a framework to create and manage dynamic workflows based on BRO rules. It further consists of exits to add functionality within the stations of the dynamic workflow based on the station itself. It is covered by the component Action Type Workflow Dispatch.

ID955 BRobots Modules Wf
Figure 4. Workflow+

Each pillar of bRobots® can be used on its own without any interaction to the other pillars. This is a core feature to allow starting projects where currently the greatest pain point within a company resides. Besides being able to use them on their own they are also implemented to have a very low barrier to start interacting with each other. This interaction is also done by the means of BRO rules.

ID956 BRobots Modules Detail
Figure 5. Pillars of bRobots®

The best-practice template processes that are part of bRobots® (see Section 7.2, “What is a process” for more information) are always using all pillars.

For a full list of all components of bRobots® see Chapter 33, bRobots® components.

4.4. bRobots® Version scheme

All pillars of bRobots® and their respective components are using the same version number. The installed version is documented in the SAP system as installed component.

If you are already running bRobots® on your system, then you can log in to your SAP system using the SAP GUI and perform the steps mentioned in Chapter 30, Getting the version of the local bRobots® installation to see the installed version.

The version number consists of the following parts: <Major>.<Service Pack>.<Patch>.

Explaining the parts:

  1. The combination <Major>.<Service Pack>.0 is referred to as release.

    1. The combination <Major>.0.0_ is referred to as major release.

    2. The combination <Major>.<Service Pack>.0. where <Service Pack> is greater than 0 is referred to as service Pack release.

  2. The combination <Major>.<Service Pack>.<Patch> where <Patch> is greater than 0 is referred to as patch.

The different release types explained in more detail:

Major release

A major release is created once a year in Q3/Q4. It is a collection of all service packs since the last major release. It contains breaking changes.

Service pack release

A service pack releases are created between two major releases. It contains breaking changes.

Patch

A patch is created between two releases or on top of another patch. It does not contain breaking changes.

Each release comes with a Changelog which includes instructions on how to re-engineer a bRobots® installation before or after upgrading to this release. Additionally, re-engineering reports might be included if necessary to automate re-engineering tasks.

Each patch is documented within the Changelog of a release to which the patch belongs to. Re-engineering instructions or reports are not supplied for patches as patches do not introduce breaking changes.

Releases and patches internally consist of:

Bugfixes

Bugfixes are only supplied for functions that are part of bRobots® itself not for solutions using bRobots®.

Features

New features that are either enhancing already existing functions of bRobots® or adding completely new functions.

Solutions using bRobots® are not supplied with new functions automatically. Depending on the feature it might necessary to be enabled by customer running the solution manually.

Re-engineering instructions if necessary are only supplied for changes in ABAP in the namespace /HKS/. Changes in the template decision areas are documented but re-engineering instructions are not supplied as those are never needed for the template decision areas anyway as they must be copied by the customer first.

If the customer copies a template decision area to use it for his own processes, then changes to the template by akquinet HKS business technologies GmbH must be done manually by the customer in his individual copy of the template decision area if necessary.

4.5. Information for bRobots® maintenance contracts

akquinet HKS business technologies GmbH is selling maintenance contracts for bRobots® installations. The base contract includes:

  1. The possibility to report bugs to the bRobots® development team.

  2. The entitlement to receive bugfixes for the installed bRobots® version.

  3. Access to the bRobots® Wiki

The actual contract might diverge from the statements listed in this section and its subsections.

4.5.1. Entitlement to receive bugfixes

If a customer encounters a bug in a solution using bRobots® then the bug can be reported to the development team at akquinet HKS business technologies GmbH. The development team will get in touch with the customer if necessary to get more technical details. If the bug resides within bRobots®, then akquinet HKS business technologies GmbH will:

  1. Create a fix for that bug.

  2. Create necessary written instructions to perform re-engineering tasks to apply the bug fix.

  3. Depending on the bug one of the following options is available:

    1. The necessary changes in the code base of bRobots® on the customer are applied manually by an employee of akquinet HKS business technologies GmbH. This is only possible if the necessary change is very minimal.

    2. akquinet HKS business technologies GmbH supplies a transport request including the fix to the bug. Further features or bug fixes might be included in that transport request.

The customer must allow specific actions in his SAP system to be able to receive the bugfixes. If the customer fails to supply the possibility of performing the stated actions, then the customer must wait until the next Service-Pack which will include the bug fix. The necessary possible actions are:

  1. Allow source code modifications in the namespace /HKS/ by either an employee of akquinet HKS business technologies GmbH or by an employee of the customer.

  2. Allow local transport requests to create modifications in the namespace /HKS/ by either an employee of akquinet HKS business technologies GmbH or by an employee of the customer.

  3. Allow the transport of copies of local transport requests including modifications in the namespace /HKS/ by either an employee of akquinet HKS business technologies GmbH or by an employee of the customer.

This entitlement is only available if the installed bRobots® version is not older than two service-packs releases to the current major release.

Example: If the current bRobots® version is 6.2.2 and the installed bRobots® version is 6.0.0, then the installed bRobots® version is still entitled to receive bugfixes.

4.5.2. Objects covered by the maintenance contract

Not every object supplied by akquinet HKS business technologies GmbH is covered by the maintenance contract. Supplied bugfixes are available for the following objects and are handled differently for each object:

ABAP code in the namespace /HKS/

Any bug will be fixed and supplied.

Rules in the decision areas KEN_HKS, BUP_HKS, MAT_HKS

Any bug will be fixed and supplied.

Decision areas that have been copied from the decision areas KEN_HKS, BUP_HKS and MAT_HKS will not receive any bugfixes by akquinet HKS business technologies GmbH.

5. Installing bRobots®

The installation using transactions SAINT described in this section is only supported for SAP S/4 HANA systems. If your installation target is not an SAP S/4 HANA system, then you must install bRobots® using transaction STMS.

5.1. Synopsis

A bRobots® release/patch consists of a workbench part and a customizing part. The workbench part is delivered as installable software component and as transport of copies. The customizing part is delivered as a BC Set. The BC Set might consist of either client specific or system specific customizing.

The workbench part can be installed either by using transaction STMS as transport of copies or via transaction SAINT as actual official SAP add-on (installable software component). We recommend using transaction STMS for the installation. If you want to upgrade bRobots® within a major release, then you must use transaction STMS.

If bRobots® was installed using transaction STMS and a later switch to the usage of transaction SAINT is desired, then this can be achieved by performing Section 5.4.3, “Installing the add-on using SAINT” on such system.

A later uninstallation process (see Chapter 32, Uninstalling bRobots®) is only possible if you have installed/upgraded bRobots® using transaction SAINT.

After performing all actions in this section, you will:

  1. Have bRobots® installed.

  2. Be able to develop, create and maintain new rules and processes using bRobots®.

To perform the installation the following pre-requisites are required:

  1. Your SAP system meets the minimal system requirements.

  2. You have SAP GUI installed.

  3. Your account on your SAP system has sufficient authorizations to perform actions in the following transactions on client 000:

    1. SAINT

    2. SPAM

  4. Your account on your SAP system has sufficient authorizations to perform actions in the following transactions on the client in which you intend to use bRobots®:

    1. PFTC

    2. PFCG

    3. SWU3

Follow each sub-section within this section to perform the installation. Skipping sub-sections will result in an incomplete installation which will in turn result in errors when trying to use bRobots® functionality.

5.2. Minimal system requirements

The backend components require a SAP ERP system with the following component versions:

Component Release SP-Level
SAP_ABA
>=740
>=0009
SAP_BASIS
>=740
>=0009

Using bRobots® on a SAP ERP system running lower component versions is not officially supported. Doing so is allowed but on the customer’s own risk. It might result in errors during the installation or to undefined behavior when executing components of bRobots®.

The frontend web components of bRobots® are created using SAPUI5 in Version 1.108. All browsers officially supported by that version of SAPUI5 are supported by bRobots® too. The list of supported browsers is available here.

5.3. Third-party software

bRobots® uses a modified version of the open-source project ABAP2XLSX. The modified version is shipped within the ABAP namespace /HKS/ as part of bRobots®.

In shipping the modified version in the ABAP namespace /HKS/, all sources of ABAP2XLSX are modified by bRobots®. No further modification notice is placed within the actual sources.

The shipped modified version of ABAP2XLSX of bRobots® is using the same source code license as bRobots® itself.

ABAP2XLSX is licensed under the Apache License 2.0.

As of the release of this handbook ABAP2XLSX does not contain any NOTICE file. But you may check the current presence of such file at ABAP2XLSX’s project page.

5.4. Installing the add-on

5.4.1. Preparing the system

Before starting the import, the system parameter for the allowed maximum size of a compiled version of a screen must be checked. If this parameter is too small, then an error might occur during the import of bRobots® or during the maintenance of BRO rules. The system parameter responsible for this is ztta/dynpro_area. More information on this system parameter can be found in the SAP note 167229. It can be checked and changed performing the following steps:

  1. Open transaction RZ11

  2. For the field Parameter name use the value ztta/dynpro_area.

  3. Execute Edit > Display.

  4. If the current value is less than 1,000,000 then it is highly recommended to increase it. A value of 1,500,000 is recommended. To change the value, perform the following steps:

    1. Execute Edit > Change.

    2. Place the desired value in the field New Value.

    3. Tick the option Switch on all servers.

    4. Click on icon save

5.4.2. Installing the add-on using STMS

This section will guide you through the necessary procedures to get and install using the transport of copies.

After performing all actions in this section, you will have all ABAP code of bRobots® installed on your SAP system. But you will not be able to actually use bRobots® functionality yet.

Fetching the transport of copies

To fetch the transport of copies for the installation, perform the following steps:

  1. Login at https://wiki.akquinet.at.

    You will need to log in with a Wiki user having sufficient authorizations to access the transport requests. If you cannot access the transport requests then please send an e-mail to office@akquinet.at.

    ID959 Wiki Login
    Figure 6. How to log in to bRobots® Wiki
  2. On the homepage access the latest bRobots® changelog document available under the section Starting points.

    ID960 Wiki Changelog
    Figure 7. Accessing the latest bRobots® changelog on the homepage of bRobots® Wiki
  3. Download the transport of copies for the installation under the section Downloads > First time installation & upgrade.

    image836
    Figure 8. File containing the add-on installation package for bRobots®

Copy all extracted files to the transports directory of your physical SAP system (/usr/sap/trans by default). Each transport requests consists of a pair of files with a different prefix:

  1. The file starting with K must be copied into the directory cofiles.

  2. The file starting with R must be copied into the directory data.

Import transport requests

With the transport request files available to the SAP system, it is now time to add them to the import queue in the Transport Management System and import them. This is done as follows:

  1. Open transaction STMS.

  2. Execute function Overview > Imports.

  3. Perform a double click on the system in which you want to perform the import.

  4. Now add the transport request to the import queue by performing the following steps:

    1. Execute Extras > Other Requests > Add.

    2. As value for Transport request use the filename starting with K without the file extension. Use the file extension as a prefix before K. Example: the file K900622.H4D results in the transport request H4DK900622.

    3. Click on icon okay

  5. With the transport request now present in the import queue, we can actually import the transport request:

    1. Select the transport request in the import queue which is still open from the previous steps.

    2. Execute Request > Import.

    3. Use the client number in which bRobots® should be installed for Target Client.

    4. Depending on your needs you might want to schedule the import for a specific date in the tab Date.

      1. We recommend performing the import asynchronously. This is defined in the tab Execution. An import might take up to 1 hour.

    5. In the tab Options use at least the following flags:

      ID964 Import Flags
      Figure 9. Options for importing a request
    6. Click on icon okay

    7. You now have to wait until the transport request shows up as imported. Please check the return code of the import:

      1. 0 or 4: Import was successful.

      2. 8: Please check if your system is an ECC or an S4 installation. Depending on that, different actions might be necessary.

        1. Your system is an ECC installation: Please check the import logs.

          1. If the only error message in the import log is Table TOBJ_ATTR is not in nametab. then the import can be considered as successful.

          2. If other error messages are alongside the error message Table TOBJ_ATTR is not in nametab. then please get in touch with your contact at akquinet HKS business technologies GmbH or send an e-mail to office@akquinet.at. Either way please include the import logs.

        2. Your system is an an S4 installation: Please get in touch with your contact at akquinet HKS business technologies GmbH or send an e-mail to office@akquinet.at. Either way please include the import logs.

      3. 12: Local settings on your system hinder the import. Please check the import logs.

5.4.3. Installing the add-on using SAINT

This section will guide you through the necessary procedures to get and install the add-on using the installation package.

After performing all actions in this section, you will have all ABAP code of bRobots® installed on your SAP system. But you will not yet be able to use bRobots® functionality.

Fetching the add-on installation package

To fetch the add-on installation package, perform the following steps:

  1. Login https://wiki.akquinet.at.

    You will need to log in with a Wiki user having sufficient authorizations to access the transport requests. If you cannot access the transport requests then please send an e-mail to office@akquinet.at.

  2. On the homepage access the latest bRobots® changelog document available under the section Starting points.

  3. Download the add-on installation package under the section Downloads > First time installation.

    image796
    Figure 10. File containing the add-on installation package for bRobots®
No installation files found

If bRobots® is not yet installed on your system and you have opened the Wiki link to the latest bRobots® release, you may not be able to find a download link for the bRobots® installation files. In this case, the version you see is a service pack (e.g. 6.1) or a patch (e.g. 6.1.1). However, the installation files can be found only under the link to the latest major release (e.g. 6.0). In this case, click on the link to the changelog for the latest major release. You can find this in the navigation area at the top left under the heading bRobots <Major> Changelogs.

Alternatively, you can proceed with the installation using transaction STMS (see Section 5.4.2, “Installing the add-on using STMS”).

image799
Figure 11. Changelogs for bRobots® major release

If you continued with the installation of the major release using transaction SAINT, then please install the service pack and/or patch releases up to the latest release.

The exact steps to perform if you continue with the installation using transaction SAINT:

  1. Perform the remaining sections within Section 5.4.3, “Installing the add-on using SAINT” using the installation files of the latest major release.

  2. Perform all sections within Section 31.2.3, “Upgrading the add-on” using the upgrade files of the service packs and patches.

  3. Continue performing the remaining sections within Chapter 5, Installing bRobots® (Hint: the next section will be Section 5.5, “Setup the SAP system”).

Installing the software component
  1. Place the extracted file fetched by Section 5.4.3.1, “Fetching the add-on installation package” with the extension .PAT in the directory /usr/sap/trans/EPS/in on your SAP system on operating system level.

  2. Logon the client 000 on your SAP system.

  3. Open transaction SAINT.

  4. Use function Installation Package > Load Packages > EPS Files from Application Server.

  5. Click on the button Start.

  6. Select the line with HKS <Major><Service-Pack>0

  7. Click on the button Continue.

  8. Click on the button Continue again.

  9. Click on the button Continue a third time.

  10. In the popup asking to add a Modification Transport to the queue click the button No.

  11. In the final popup you can either start the import immediately or you can schedule it for later.

    1. On non-production systems you can start the import immediately by clicking on the button Import.

    2. On production systems you should use click the button Start options. In there you switch to the tab Import can select the radio button Schedule in background later. Confirming the popup will set the schedule for the import. You must confirm the popup again to actually issue the import.

      Keep in mind that the import will take about 1 hour. Therefore, you should schedule the import for a time where a minimum activity is expected on the system.

    3. Any follow up activities (i.e. actual import stage 2) are planned automatically by the system. You do not need to do anything else besides setting the schedule for the preparation activities.

    4. You must always perform the preparation step online.

  12. The preparation step will yield a warning claiming that the software component is not signed. Ignore this warning by clicking the function button Ignore.

  13. You must now finish the installation by clicking the button Finish in the transaction SAINT.

    1. If you have performed the import online, then you can do this right away.

    2. If you scheduled the import in background, then you must reopen transaction SAINT and wait until the installation is done. The current status is summarized at the bottom of the screen. Additionally, you can see a detailed log of the import by clicking the button Logs.

5.5. Setup the SAP system

All activities in this section must be performed in the client in which bRobots® is intended to be used. I.e. the client that is enabled for regular workbench and customizing transport requests.

Client 000 is typically not configured to handle the system specific BC Set. Therefore, you should logon to client XXX.

For easier reference that client is assumed to be used for the remainder of the document.

5.5.1. Installing the system specific BC Set

  1. Open transaction SCPR20.

  2. As BC Set use /HKS/BRO_<Major>_<Service-Pack>_S.

  3. Use function BC Set > Activate.

  4. In the popup to supply a transport request you can either use an existing transport request or you can create a new one. The selected transport request will be used to store the changes made by the BC Set and should be transported through the system landscape.

  5. In the popup to select how to activate the BC Set you should leave the default values and start the activation.

5.5.2. Installing the client specific BC Set

  1. Logon the client you want bRobots® to setup for on your SAP system.

  2. Open transaction SCPR20.

  3. As BC Set use /HKS/BRO_<Major>_<Service-Pack>.

  4. Use function BC Set > Activate.

  5. In the popup to supply a transport request you can either use an existing transport request or you can create a new one. The selected transport request will be used to store the changes made by the BC Set and should be transported through the system landscape.

  6. In the popup to select how to activate the BC Set you should leave the default values and start the activation.

  7. You can ignore any errors during the activation.

5.5.3. Setup the SAP workflow engine

In a system that is not already using SAP Workflows the SAP Workflow Engine must be enabled first. This is done in the following way:

  1. Open transaction SWU3.

  2. For each of the following entries perform first Auto-Customizing > Execute and then Edit > Execute:

    ID965 SWU3
    Figure 12. Setup the SAP workflow engine

5.5.4. Setup the SAP workflow

The task of the SAP Workflow Workitems of bRobots® must be updated after an installation. This can be done the following way:

  1. Open transaction PFTC. Use the value TS as Task type and the value 00391804 as Task.

  2. Execute function Task > Display.

    ID966 Wf Task
    Figure 13. Maintain a standard task in transaction PFTC
  3. Execute function Additional data > Agent assignment > Maintain

    ID967 Wf Task Maint
    Figure 14. Maintain agent assignments for a standard task in transaction PFTC
  4. Execute function Edit > Attributes….

    ID968 Wf Task Maint Edit
    Figure 15. Setting attributes for maintaining agent assignment in transaction PFTC
  5. Use the radio button value General Task and set the value NO_CLASS for Classification. Afterwards click on the function Transfer.

    ID1107 General task
    Figure 16. Attributes of a standard task in transaction PFTC

5.5.5. Setup the classification system

Classifying attachments

Requests created using bRobots® can have attachments. Attachments are stored in regular document info records. The link between a request and a document info record is created by classifying the document info record with the characteristic HKS_WFLOWNMB in the class /HKS/BRO_WF in the class type 017.

The characteristic and the class must be created directly on the system.

Create the characteristic by performing the following steps:

  1. Open transaction CT04.

  2. For the field Characteristic use the value HKS_WFLOWNMB and use the function Characteristic > Create.

  3. Use the following values:

    1. Tab Basic data

      1. Use BRO: Request number as Description.

      2. Use 1 as Status.

      3. Use CHAR as Data Type.

      4. Use 12 for the Number of Chars.

      5. Use the option Multiple Values.

    2. Tab Descriptions

      1. Use BRO: Antragsnummer for Language DE.

      2. Use BRO: Número da solicitação for Language PT.

  4. Save the characteristic using the function Characteristic > Save.

Create the class by performing the following steps:

  1. Open transaction CL01.

  2. For the field Class type use the value 017 and for the field Class use the value /HKS/BRO_WF.

  3. Use the function Class > Create.

  4. Use the following values:

    1. Tab Basic data:

      1. Use BRO: Link to WF as Description.

      2. Use 1 as Status.

    2. Tab Char.

      1. Insert a new line with the value HKS_WFLOWNMB in the column Char..

  5. Save the class by clicking icon save

Function module /HKS/BRO_MDM_MAINT_OBJCL

The function module /HKS/BRO_MDM_MAINT_OBJCL supplies the functionality to maintain the classification of an object like transaction CL20N. This function module needs some configuration in the system to be fully functional. Please execute the next sub sections to perform the configuration.

Installing /HKS/BRO_MDM_EXIT_SAPLCLFM_001

The function module /HKS/BRO_MDM_EXIT_SAPLCLFM_001 must be called within the function module EXIT_SAPLCLFM_001. The following steps walk through the entire process of enabling the user exit and installing the function module. Please read the instructions first before performing them. You might need to gather some information from colleagues before being able to execute the steps.

  1. Please check with your system architect if the user exit CLFM0001 is already active.

    1. If the user exit is already active in your system, then please open transaction SE38 and open the include ZXCLFU01 in edit mode. Then skip to step 15. If the user exit is not yet active continue with step 2.

  2. Open transaction CMOD.

  3. Enter a project name in the field Project. To do so contact your system architect to either enter an existing project or create a new one. For the sake of simplicity, we are assuming to create a new project with the name ZBROBOTS.

    image675
    Figure 17. Creating the enhancement project ZBROBOTS
  4. Click on Project > Create.

  5. Enter a description in the field Short text and click on Project > Save.

    image676
    Figure 18. General data for the enhancement project ZBROBOTS
  6. A popup will show up. In the popup you will have to enter the package and the transport request in which the enhancement project will be created.

  7. Click on Goto > Enhancement assignments.

  8. Enter the value CLFM0001 into an empty line in the column Enhancement.

    image677
    Figure 19. Assigning enhancement CLFM0001 to enhancement project ZBROBOTS
  9. Click on Goto > Components.

  10. Click on Project > Activate.

    image678
    Figure 20. Activating enhancement CLFM0001
  11. Double click on the string EXIT_SAPLCLFM_001 on the screen.

    image679
    Figure 21. Entering function module EXIT_SAPLCLFM_001 through enhancement CLFM0001
  12. In the ABAP source code perform a double click on the string ZXCLFU01.

    image680
    Figure 22. Entering enhancement include ZXCLFU01 of enhancement CLFM0001
  13. A warning will show up. Confirm it using the key for Enter on your keyboard.

    image681
    Figure 23. Creating enhancement include ZXCLFU01 of enhancement CLFM0001
  14. As before, during the saving of the enhancement project, a popup will appear to enter the package and the transport request. You may enter the same as for the enhancement project.

  15. Enter the following ABAP source code:

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    
    "==============================================================================
    " bRobots:
    " --------
    " Call function module which operates in conjunction with the function module
    " /HKS/BRO_MDM_MAINT_OBJCL.
    CALL FUNCTION '/HKS/BRO_MDM_EXIT_SAPLCLFM_001'
      EXPORTING
        i_table   = i_table
        i_rmclf   = i_rmclf
        i_cuobj   = i_cuobj
        i_appl    = i_appl
      IMPORTING
        e_active  = e_active
      TABLES
        t_allkssk = t_allkssk
        t_allausp = t_allausp.
    
    e_active = abap_true.
    
  16. Activate the ABAP source code by clicking Program > Activate.

Install BAdI implementation /HKS/BRO_MDM_BADI_CACL_MAIN01

The function module /HKS/BRO_MDM_BADI_CACL_MAIN01 must be called from a BAdI implementation of BAdI CACL_MAIN01. To install this implementation, you must perform the following steps:

  1. Open transaction SE18.

  2. Select BAdI Name and use the value CACL_MAIN01 for this field.

  3. Click on Enhancement Spot > Display.

  4. In the enhancement spot perform a right click on the tree item Implementations and use the context menu function Create BAdI implementation.

    image682
    Figure 24. Creating a new enhancement implementation for enhancement spot CACL_MAIN01
  5. In the popup click on the function button image683

  6. Fill the form to create the enhancement implementation.

    1. For the sake of simplicity, we use the value ZBROBOTS_CACL_MAIN01 as the Enhancement Implementation. Please check your local development guidelines to derive the correct name.

    2. As Short Text we use HKS: Enhancement for bRobots®.

  7. Click on the function button image660 to create the enhancement implementation.

  8. Enter the package and the transport request in which the enhancement implementation will be created.

  9. You will get back to the popup of step 5. In that popup perform a double click on the newly created enhancement implementation.

    image684
    Figure 25. Creating a new BAdI implementation for the enhancement implementation of the enhancement spot CACL_MAIN01
  10. Fill in the form to create the BAdI implementation.

    1. For the sake of simplicity, we use the value ZBROBOTS_CACL_MAIN01 as the BAdI Implementation. Please check your local development guidelines to derive the correct name.

    2. As Description we use HKS: Enhancement for bRobots®.

    3. For the sake of simplicity, we use the value ZBROBOTS_CL_CACL_MAIN01 as the Implementing Class. Please check your local development guidelines to derive the correct name.

  11. Click on the function button image660 to create the BAdI implementation.

  12. Enter the package and the transport request in which the BAdI implementation will be created.

  13. In the enhancement implementation perform a double click on the tree item Implementing Class.

    image685
    Figure 26. Entering the implementing class of the BAdI implementation ZBROBOTS_CACL_MAIN01
  14. Click on the button image686 to edit the implementing class

    image687
    Figure 27. Editing the implementing class of BAdI implementation ZBROBOTS_CACL_MAIN01
  15. An information will show up. Confirm it using the key for Enter on your keyboard.

  16. In the class editor perform a double click on the method IF_EX_CACL_MAIN01~SET_MANDATORY_FIELDS.

  17. Edit the ABAP source code to have the following way:

    1
    2
    3
    4
    5
    
      METHOD IF_EX_CACL_MAIN01~SET_MANDATORY_FIELDS.
        CALL FUNCTION '/HKS/BRO_MDM_BADI_CACL_MAIN01'
          CHANGING
            nm = nm.
      ENDMETHOD.
    
  18. Click on Method > Activate.

Installing /HKS/BRO_MDM_EXIT_SAPLCLFM_003

The function module /HKS/BRO_MDM_EXIT_SAPLCLFM_003 must be called within the function module EXIT_SAPLCLFM_003. The following steps use the enhancement project created/re-used in Section 5.5.5.2.1, “Installing /HKS/BRO_MDM_EXIT_SAPLCLFM_001” as pre-requisite. Please read the instructions first before performing them. You might need to gather some information from colleagues before being able to execute the steps.

  1. Open transaction CMDO.

  2. Enter the project name in the field Project. For the sake of simplicity ZBROBOTS.

  3. Click on Project > Change.

  4. Click on Goto > Enhancement assignments.

  5. Enter the value CLFM0003 into an empty line in the column Enhancement.

    image688
    Figure 28. Assigning enhancement CLFM0003 to enhancement project ZBROBOTS
  6. Enter a description in the field Short text and click on Project > Save.

  7. A popup will show up. In the popup you have to enter the transport request in which the enhancement project will be modified.

  8. Click on Goto > Components.

  9. Click on Project > Activate.

  10. Perform a double click on the string EXIT_SAPLCLFM_003.

    image689
    Figure 29. Entering enhancement function module EXIT_SAPLCLFM_003 through enhancement CLFM0003
  11. In the ABAP source code perform a double click on the string ZXCLFU03.

    image690
    Figure 30. Entering enhancement include ZXCLFU03 of enhancement CLFM0003
  12. A warning will show up. Confirm it using the key for Enter on your keyboard.

    image691
    Figure 31. Creating enhancement include ZXCLFU03 of enhancement CLFM0003
  13. As before, during the saving of the enhancement project, a popup will appear to enter the package and the transport request. You may enter the same as for the enhancement project.

  14. Enter the following ABAP source code.

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    
    "==============================================================================
    " bRobots:
    " --------
    " Call function module which operates in conjunction with the function module
    " /HKS/BRO_MDM_MAINT_OBJCL.
    CALL FUNCTION '/HKS/BRO_MDM_EXIT_SAPLCLFM_003'
      EXPORTING
        i_allkssk  = i_allkssk
        i_check_rc = i_check_rc
        i_from_api = i_from_api
        i_appl     = i_appl.
    
  15. Activate the ABAP source by clicking Program > Activate

5.5.6. Setup SAP directories

bRobots® is using SAP directory for background processing in the following transactions:

  1. /HKS/BRO_MDM_TRANSPORT.

  2. /HKS/BRO_MDM_MASS.

Not setting up the directories will lead to system dumps when the transactions above are executed in background.

All transactions listed above are accessing the same SAP directory. The directory that should be used must use the alias Z_BROMDM.

To maintain the SAP directory perform the following steps:

  1. Logon the client you want bRobots® to setup for on your SAP system.

  2. Open transaction AL11.

  3. Click icon configuration (Configure User Directories).

  4. As Name of Directory Parameter use Z_BROMDM.

  5. As Directory Name use a directory on your SAP server in which the files of the transactions stated at the beginning of this section should be stored.

  6. As Valid for Server Name use all.

  7. Use function Edit > Save.

5.5.7. Setup BRO

Next up the initial setup of the BRO global customizing must be performed. This is done by the following steps:

  1. Open transaction /HKS/BRO_GCUST

  2. Fill in the values according to the following screenshot:

    ID969 BRO GCUST
    Figure 32. BRO: Maintenance of global setting

5.5.8. Generate code for master data access

bRobots® uses a specific way to read, create and update master data. For bRobots® to function properly some ABAP classes have to be generated for that purpose. This is done by performing the following steps:

  1. Start transaction /HKS/BRO_MDM_GEN_MOT.

  2. Use Goto > Variants > Get…​.

  3. For each variant available perform the following steps:

    If a variant is available with and without the suffix _S4, then use the one with the suffix _S4 if you are on an SAP S/4HANA system. If you are on an SAP ECC system, then use the one without the suffix _S4.

    1. Double-click the variant.

    2. Use Program > Execute in Background.

    3. In the popup for the background print parameters select a an applicable Output Device and confirm the popup.

    4. In the popup for start time definition click on the button Immediate and then save the execution.

  4. If all variants were processed without errors, the master data access by the generated classes will function properly. You can check the status of the background execution using the function System > Own Jobs.

5.5.9. Setup template decision areas

Retrieving template decision areas

Each bRobots® version ships with decision areas that can be used for customer-specific solutions. The available decision areas are:

KEN_HKS

This decision area contains the basic functionality to create request implementations using bRobots®. It includes a very minimalistic example process type (see Section 7.2, “What is a process” for more information on what a process type is) which is intended to be used as a template for actual customer specific process types. It is included in every bRobots® product and is therefore generally available in the Changelog alongside the add-on installation/upgrade package file.

BUP_HKS

This decision area contains advanced functionalities to create requests specifically in the context of the SAP objects business partners, customer master data and vendor master data. It includes full example process types to create, extend and modify those SAP objects. It is only included in the product bRobots® Business Partner. If you have purchased bRobots® Business Partner, then the file containing the decision area is available in the Changelog alongside the add-on installation/upgrade package file. If you do not see the file in the Changelog, then please request it by sending an e-mail to office@akquinet.at.

MAT_HKS

This decision area contains advanced functionalities to create requests specifically in the context of the SAP object material master data. It is only included in the product bRobots® Logistics. If you have purchased bRobots® Logistics, then the file containing the decision area is available in the Changelog alongside the add-on installation/upgrade package file. If you do not see the file in the Changelog, then please request it by sending an e-mail to office@akquinet.at.

image801
Figure 33. Accessing the latest template decision areas in the Changelog. Here in the upgrade section.

If you have purchased a training from akquinet HKS, then you will receive a copy of the decision area BUP_HKS and MAT_HKS for a period of 60 days. The allowed usage within those 60 days is limited to trainings. Therefore, an import into a production client is not allowed. After the 60 days have passed the decision areas BUP_HKS and MAT_HKS and all copies thereof must be deleted from the system.

Importing template decision areas
Please login to see more.
Importing template Process & Service configuration
Please login to see more.

5.5.10. Re-install the client specific BC Set

Now with the template decision areas in place it is possible to remove the remaining errors that occurred during Section 5.5.2, “Installing the client specific BC Set”.

If you have not installed all template decision areas, then you might still have errors. In such case you may ignore any occurring errors.

5.5.11. Setup Frontend Components

The frontend components of bRobots® must be explicitly enabled after an installation. This is done by performing the following actions:

  1. Open transaction SICF.

  2. Perform Program > Execute.

  3. Now use the tree view on the bottom of the transaction. The service of each of the following paths must be enabled by performing a context menu click and then clicking Activate Service. Choose ID970 Button Yes Sub in the appearing popup to activate all sub services.

    1. default_host > sap > bc > bsp > hks

    2. default_host > sap > hks > bro_screen

    3. default_host > sap > bc > ui5_ui5 > hks

    4. default_host > sap > bc > ui5_ui5 > sap > hks

5.6. Setup basic authorizations

Please login to see more.

6. BRO Basics

6.1. Synopsis

In this section you will learn:

  1. The basic terms of BRO.

  2. The transaction involved to maintain BRO rules.

  3. A basic handling of BRO in the perspective of a

    1. Business rule maintainer

    2. Developer

To perform this section the following pre-requisites are required:

  1. You have SAP GUI installed.

6.2. bRobots® decision area

Please login to see more.

6.2.1. Create a decision area

Please login to see more.

Create a decision area from scratch
Please login to see more.
Create a decision area from a template
Please login to see more.
Default settings for a decision area
Please login to see more.

6.2.2. Maintain and Display a decision area

Please login to see more.

6.3. Create a simple rule

6.3.1. Synopsis

Please login to see more.

6.3.2. Example 1: create a simple rule

Please login to see more.

6.3.3. Deletion of a rule

Please login to see more.

6.3.4. Actions

Please login to see more.

6.4. Categorizing a rule

6.4.1. Synopsis

Please login to see more.

6.4.2. Create a rule category

Please login to see more.

6.4.3. Maintain a rule category

Please login to see more.

6.5. Running a rule

Please login to see more.

6.6. Creation and maintenance of Conditions

Please login to see more.

6.7. Creation and maintenance of Actions

Please login to see more.

6.8. Create complex rules to create a material

6.8.1. Synopsis

Please login to see more.

6.8.2. Example 2: Create complex rules to create materials - direct data definition

Please login to see more.

6.8.3. Rule-Chains connected by action types GOTO and CALL

Please login to see more.

6.8.4. Example 3: Create complex rules to create materials - generic way

Please login to see more.

6.9. Debugging a rule

6.9.1. Synopsis

Please login to see more.

6.9.2. Setting a breakpoint in bRobots® rules

Please login to see more.

6.9.3. With the rule report

Please login to see more.

6.9.4. With the BRO Testtool

Please login to see more.

6.9.5. With the /HKS/BRO_VPROT

Please login to see more.

6.10. (Mass) Deletion of flagged rules

Please login to see more.

6.11. Run a rule within ABAP

Please login to see more.

6.12. Run a rule via OData service

Please login to see more.

7. Installing template processes

7.1. Synopsis

Please login to see more.

7.2. What is a process

Please login to see more.

7.3. What is a template process

Please login to see more.

7.4. Installing a template process

7.4.1. Synopsis

Please login to see more.

7.4.2. Copy decision area

Please login to see more.

7.4.3. Copy runtime constants

Please login to see more.

7.4.4. Copy authority groups

Please login to see more.

7.4.5. Copy general workflow setup

Please login to see more.

7.4.6. Maintenance of the copied workflow setup

Please login to see more.

7.4.7. Copy authorization roles

Please login to see more.

7.4.8. Create process aliases

Please login to see more.

7.4.9. Create process-specific workflow setup

Please login to see more.

7.4.10. Maintain user groups for steps

Please login to see more.

7.4.11. Start working

Please login to see more.

7.5. Creating a new process based on a template process

7.5.1. Synopsis

Please login to see more.

7.5.2. Copy process

Please login to see more.

7.6. Setting up a development pipeline

Please login to see more.

Common development tasks

8. Synopsis

Please login to see more.

9. Setting up a playground

Please login to see more.

10. Rule transport

Please login to see more.

11. Mass activation of rules

Please login to see more.

12. Mass generation of rules

Please login to see more.

13. Adding a new field on an existing screen

Please login to see more.

14. Setting a default value for an existing field

Please login to see more.

15. Updating a value for an existing field

Please login to see more.

16. Adding new restrictions to an existing field

Please login to see more.

17. Adding a new table to an existing screen

Please login to see more.

18. Adding a new button to an existing screen

Please login to see more.

19. Adding a new screen

Please login to see more.

20. Adding a new process step

20.1. Synopsis

In the beginning, the first steps of adding a new process step and the activities required are discussed. In the next two subsections specific use cases are considered. It is described how both a sequential step and a parallel step can be added. Let’s assume that for the new process RCCMD00001 (refer to Section 7.4, “Installing a template process”) the data input and tasks of the step SAL should be divided into two independent steps, SAL01 and SAL02. Therefore, a new step needs to be integrated as a new process step for the newly created process RCCMD00001 (refer to Section 7.4, “Installing a template process”).

21. Adding a new process

Please login to see more.

22. Calling a BRO function module

Please login to see more.

23. Creating a BRO function module

Please login to see more.

24. Calling a BRO MDM+ action function module

Please login to see more.

25. Creating a BRO MDM+ action function module

Please login to see more.

26. Adding a new field in the hierarchy

Please login to see more.

27. Troubleshooting

Please login to see more.

Administration

28. Process & Service Monitor

Please login to see more.

29. Maintain user group assignments

Please login to see more.

30. Getting the version of the local bRobots® installation

Please login to see more.

31. Upgrading bRobots®

Please login to see more.

32. Uninstalling bRobots®

Following the procedure described in this section will result in losing all rules and processes defined in your system.

In case you want to perform an uninstallation you must perform the following actions:

  1. Remove all generated code on the client in which you used bRobots®:

    1. To remove the generated code for BRO rules:

      1. Open transaction /HKS/BRO_DS_DELETE.

      2. Select the radio button Delete decision area.

      3. Untick the option Test run.

      4. Now for each decision area present in the search help shown in the input field Decision area perform the following steps:

        1. Select the decision area.

        2. Perform Program > Execute.

        3. Confirm the popup to delete the decision area.

    2. To remove the generated code for the MOT framework:

      1. Open transaction /HKS/BRO_MDM_DEL_MOT.

      2. Perform Program > Execute.

  2. Perform the actual uninstallation of the addon on client 000 of your SAP system:

    1. Open transaction SAINT.

    2. Click on tab Uninstallable components.

    3. Select the line with HKS.

      If HKS is not listed, then bRobots® was not installed using transaction SAINT. See Section 5.1, “Synopsis” for more information on how to resolve this issue.

    4. Click on the button Start.

    5. Follow the instructions on the screen.

Appendix

33. bRobots® components

In this section the available components within bRobots® are listed. This is for reference purpose when reading Changelogs as changes are listed always in the component in which they have been done.

The components are:

Licensing tools

Everything related to license maintenance.

BRO

Everything related to maintaining rules and running rules. BRO consists of the following parts:

  1. BRO rule editor

  2. BRO runtime

  3. Action type Util

  4. Action type Email

  5. Action type Nil

MDM+ Base

SAP object in-depended modules that can be used in BRO.

MDM+ BP/CMD/VMD

Modules that can be used in BRO specific for the following SAP objects:

  1. Business partner

  2. Customer

  3. Vendor

MDM+ Controlling

Modules that can be used in BRO specific for the SAP objects related to controlling.

MDM+ Material

Modules that can be used in BRO specific for the following SAP objects:

  1. Material

  2. MRP area

  3. Material quality inspection setup

  4. BOM

  5. Routing

  6. Material purchasing info record

  7. Material source list

  8. (Material) pricing condition

MDM+ Workflow

Modules to create and maintain requests.

Screen Definition

Modules to generate user interface via BRO rules for:

  1. SAP GUI for Windows

  2. SAP GUI for Java

  3. SAP GUI for HTML

  4. UI5

Templates

General modules for templates.

Template KEN_HKS

Modules specific for the template decision area KEN_HKS.

34. Available operators for conditions

Please login to see more.

35. Available action types

Please login to see more.

36. Available process prefixes

Please login to see more.

37. Available process objects

Please login to see more.

38. Available template processes

Please login to see more.

39. Decision area setup

Please login to see more.

40. Rules for input tree nodes

Please login to see more.

41. Available authorization roles

41.1. Synopsis

Please login to see more.

41.2. Administration

Please login to see more.

41.3. Developer and Rule maintainer

Please login to see more.

41.4. User

Please login to see more.

41.5. User for RFC-destination

Please login to see more.

42. Available authorization objects

Please login to see more.