What is SAP B1?

B1 = Business One

SAP Business One is an integrated enterprise resource planning (ERP) solution for small and medium-sized businesses, as well as divisions and subsidiaries of larger companies.

Can we format BEx reports/graphs using HTML and CSS

Manual says we can do format using HTML and Java Script [not css].

Why is there a restriction of 16 Dim tables in an Info Cube and 16 key fields in an ODS

In all of the database systems there is maximum number of fields allowed to create a primary key (composite key) is 16. An in the case of cube, to fetch a single record a combination of all dimension is used, so this is the reason behind having maximum no. of dimension in cube is 16 only.

Which are the dll's used in SAP Business One SDK ?

Interop.SAP bouiCOM.dll and Interop.SAP bobs COM.dll are the two dell's used in SAP Business One SDK. Interop.SAPbouiCOM.dll is used for accessing the user controls that are displayed over the form.Different controls such as label,combo box,matrix etc. can be accessed using Interop.SAPbouiCOM.dll. Interop.SAPbobsCOM.dll is used for accessing objects that are used in SAP.For eg,item object can be accessed as, Dim objItem As SAPbobsCOM.Items

What are SAP and ERP?

SAP is the name of the company that supplies the leading ERP software released as SAP BW, SAP ERP, and various other SAP applications. The company was founded in Germany in 1972 and has released various versions of its ERP software. There are currently over eight million SAP users around the world.

ERP is an acronym for Enterprise Resource Planning. ERP applications are applications that are designed to create a real time view of the core business processes within a company so that the company can monitor and manage its processes efficiently. ERP software tracks the day to day transactions and processes within a company. ERP software tracks various business resources like cash, raw materials, production capacity and sales. Data is shared between the various company departments. ERP packages are therefore often integrated applications that span the various business processes within the business. Databases are the most popular storage method for the shared information. For more information on SAP basics, you can read the SAP Basics and Resources to Help You Learn More article available on the Udemy blog.

Why we have only 16 Dimension tables in a cube. Is there any reason. Is it a limitation?

SAP BI Info Cube Can have maximum 16 Dimension, Why because an Cube shape will have only 16 Dimensions and also Normal data base table will have only 16 key fields. When we create Info Cube system is going to create tables like F-table and  E-table So,we should follow that database concepts Because of that Info Cube will Have only 16 Dimensions.

Why we are going for customization? Give me a scenario?

-For Requirement as per company

-Reporting As Per Module

-Remove Complexity From End User

Where do you store the master data in  BI 7.0?

Unlike the older version of BW which uses star schema, BI 7.0 uses the extended star schema. In this, master data is stored outside the cube.

In the star schema, both master data and transaction data resides inside the cube bringing many problems: master data not reusable, computing of alphanumeric values and analysis  being limited.

In BI 7.0 Master data is stored outside the cube which makes it reusable, and alphanumeric values can be computed and many more analysis are possible.

What are the common Transport errors in SAP BW?


Reason: When we change the structure of any cube which has Business Warehouse Accelerator Indexes created for it. Change in structure could mean a change as simple as adding a navigational attribute.

solution: Delete the Indexes (BWA Indexes)first then transport and then rebuild the indexes

Info Object not available in active version.

Reason: We get this error when we try to transport the Info Object Catalogs without transporting the info objects.

Solution: As a prerequisite first transport the info objects then transport info object catalogs.

Navigational attribute does not exist

Reason: If we mark an object in the cube as navigational attribute and navigational attribute does not exist as navigational in the target system.

Solution: Transport the info object with navigational attribute and then re-import this transport.

What advantage of ic with aggregates?

if we create aggregates on infocube then query performance

will be improved if our query accessing attributes data

frequently.The sequence when we execute the query is:

Query first goes into cache if it finds relevant data in cache will fetch data otherwise

it goes into BI ACCELERATOR(BIA)


Finally it goes into IC if the data is not available in  above 3 stages.

If we maintain aggregates or BIA olap no needs to come upto IC. So time will be reduced. Query performance will be  improved.

What is used in SDK for developing a form ?

Screen painter is used for developing form in SAP Business One SDK. Screen painter is provided as add-on by SAP and it can be used to designing and developing forms.The files created by screen painter has srf extension and these files should be renamed to xml for deploying then in SAP Business One.

Which tool is provided by SAP for keeping the track of events ?

SAP Business One Event Logger is a tool provided by SAP for keeping the track of events.Both SAP Business One and event logger should be executed simultaneously.Event logger will give you detailed list of events that fired while operating SAP.Event logger is very useful tool while developing add-ons in SDK. Coding can be done as per the events that are shown in event logger.For developing robust applications in SAP Business One SDK,event logger is useful tool since entire programming in SAP Business One SDK is event driven.

Is it possible to alter the standard behaviour of SAP Business One using SDK ?

The standard behaviour or the conventional flow of SAP Business One can not be altered using SDK. Some or other error will occur.So it is advisable not to disturb the conventional flow of SAP Business One using SDK.

What is et_FORM_DATA_ADD event in SAP Business One SDK ?

et_FORM_DATA_ADD event fires when the add button is clicked.This event adds new record in SAP.This event can be used for validating the input received by the user.This event fires in two sessions.In the first session,an event fires before the successfull execution of event i.e.ActionSuccess.The code is as,

BusinessObjectInfo.EventType = SAPbouiCOM.BoEventTypes.et_FORM_DATA_ADD ANDBusinessObjectInfo.ActionSuccess = False The second session occurs when the action is executed successfully i.e.

SAPbouiCOM.BoEventTypes.et_FORM_DATA_ADD ANDBusinessObjectInfo.ActionSuccess = True

How is SAP Business One implemented ?

SAP Business One is implemented as a two-layer architecture. The system is based on a Microsoft SQL Server database where data is stored centrally. The business logic is mostly processed on the client software (fat client).

What are the different components of SAP Business One client software ?

Graphical user interface and the business object classes connecting to the database are the different components of SAP Business One client software .

Explain difference between transfer rule&update rules?

In context to BW/BI 3.x

transfer rules - mapping the fields in the data source to the info objects in Info source or target fields. it help you to distinguish which all fields in the data source are required in the info objects in the Info source.

update rules - to update something. here it revolves around a source(infosource)and a target(data target). update rules are used to update the data targets.you have to create update rules if you supply a data target from an Info-Source with flexible update.

What is the function of UI API i.e. User Interface API ?

UI API stands for User Interface Application Program.Dll is provided by SAP i.e. Interop.SAPbouiCOM.dll.The reference of this dll is added in the project to access it in project.UI API is used for accessing the controls that are displayed on the form. Following are the functions of UI API

Provides objects and methods to access screen objects of the User Interface.

Provides access to internal system events of the user interface.

Provides ability to modify or add menus, windows, or fields.

Provides one integrated user interface.

Use COM capable development tools (Microsoft Visual …)

What is the use of company object in SAP Business One ?

The following are the uses of company object in SAP Business One -

-Access Data in an SAP Business One database.

-Connect to and disconnect to customer database.

-Start and end global transactions.

-Work with XML data.

What are the different types of DataSources ?

The following are the different types of DataSources -

-Data Tables

-DB Data Sources

-User DataSources

What are the functions of Data Interface API (DI API) ?

Following are the functions of Data Interface API (DI API) -

DI API provides objects and methods i.e. add,update,Remove ,for performing various data level operations.This can be done without installing SAP Business One client.

DI API provides access to business objects i.e. master data and transnational data.

DI API can be used in COM capable development tools (e.g. Microsoft Visual Studio).Dll SAPbobsCOM.dll is provided by SAP.Just by adding the reference of this dll,you can perform data level operations.

What are the different types of transactions supported by DI API ?

Following are the different types of transactions supported by DI API -

-Single Transaction

-Global Transaction

What is Bubble Event ?

Bubble Event specifies whether the event will be processed by SAP Business One or not.If Bubble Event=True ,then SAP Business One will process the event else the execution will terminate.

For eg,

If pVal.EventType = BoEventTypes.et_CLICK And pVal.Action_Success = True And pVal.FormUID = "F_32" And pVal.ItemUID = "btnSave" Then


End If

In the above code,click event of save button is handeled.When the user clicks on the save button,then first the above code will execute and then it will be handled by SAP Business One.Here I have set BubbleEvent=False.So the click event will terminate and SAP Business One will not handle the event.

What is DBDataSource ?

DBDataSource is used for storing data from database.DBDataSource is linked to database table and it represents tabular data.DBDataSource is used by all system forms.You can get DBDataSource as follows -

Here I have assumed that I have opened the form of Sales Order and I want to get the database details of the sales order.The table name is ORDR.

Dim objDS As SAPbouiCOM.DBDataSource

objDS = SBO_Application.Forms.ActiveForm.DataSources.DBDataSources.Item("ORDR")

How to bind a textbox with datasource ?

Textbox can be binded to datasource as follow -

Dim objForm As SAPbouiCOM.Form

Dim txtDocEntry As SAPbouiCOM.EditText

objForm = SBO_Application.Forms.ActiveForm

objForm.DataSources.UserDataSources.Add("DocEntry", SAPbouiCOM.BoDataType.dt_LONG_NUMBER)

txtDocEntry = objForm.Items.Item("txtDocEntry").Specific

txtDocEntry.DataBind.SetBound(True, "", "DocEntry")

In the above code,I have considered the textbox txtDocEntry.I want this textbox to accept numeric input only.So I have binded it with dt_LONG_NUMBER as shown above.

What are the limitations of DI server ?

Following are the limitations of DI server -

Meta data operations not supported.

Different support for transaction handling than plain DI API

What is the function of OBServerDLL.DLL ?

In OBServerDLL.DLL , the business objects of the SAP Business One client are copied.

What are the different parts of DI API ?

Following are the different parts of DI API -

-COM Interface - The COM Interface provides the interface to the add-on application.

-DI Core - The DI Core, which is the main component of the DI API, performs all the data logic operations.

-Data manager - The Data Manager stores temporary object data, converts object data to internal data formats, retrieves data from the database, and controls the database transactions.

-Schema Generator - The Schema Generator creates XML schemas based on object interface descriptions. The schema generator also creates object validation lists.

Where does DI server executes i.e. client or server ?

DI server executes on the server.

For performing heavy duty operations what is suitable DI API or DI server ?

For performing heavy duty operation DI server is suitable.The DI Server implements a connection pooling mechanism to enhance performance and scalability of the server.As DI Server is a SOAP-based interface it does not limit the client to a COM interface, but allows a wide range of possible client technologies.

What is the value returned when any method of an DI API object executes successfully ?

0 is returned when any method of an DI API object executes successfully.

Which table saves the details of country ?

OCRY table saves the details of country.

Which property of matrix gives the total number of rows in the matrix ?

The property VisualRowCount gives the total number of rows in the matrix.

In SAP Business One SDK, which object is used for executing SQL queries and stored procedures ?

In SAP Business One SDK,recordset object is used for executing SQL queries and stored procedures.

What is the value returned by a method when it executes successfully ?

0 is the value returned by a method when it executes successfully.

What is A/R Invoice ?

The acronymn of A/R Invoice is Account Receivable Invoice. For selling a product, following invoices are added in SAP Business One -

-Sales Quotation

-Sales Order


- A/R Invoice

So A/R Invoice is the last process for the sales department. When A/R Invoice is added, the respective accouting entries are added. The report from the A/R Invoice is send as bill along with the product.

What is A/P Invoice ?

The acronym of A/P Invoice is Account Payable Invoice. For purchasing the goods, following invoices are added in SAP Business One -

-Purchase Quotation

-Purchase Order

-Goods Receipt PO

-A/P Invoice

So A/P Invoice is the last process for the purchase department. When A/P Invoice is added, the accounting effect can be seen.