Skip to content
NextLytics
Megamenü_2023_Über-uns

Shaping Business Intelligence

Whether clever add-on products for SAP BI, development of meaningful dashboards or implementation of AI-based applications - we shape the future of Business Intelligence together with you. 

Megamenü_2023_Über-uns_1

About us

As a partner with deep process know-how, knowledge of the latest SAP technologies as well as high social competence and many years of project experience, we shape the future of Business Intelligence in your company too.

Megamenü_2023_Methodik

Our Methodology

The mixture of classic waterfall model and agile methodology guarantees our projects a high level of efficiency and satisfaction on both sides. Learn more about our project approach.

Products
Megamenü_2023_NextTables

NextTables

Edit data in SAP BW out of the box: NextTables makes editing tables easier, faster and more intuitive, whether you use SAP BW on HANA, SAP S/4HANA or SAP BW 4/HANA.

Megamenü_2023_Connector

NextLytics Connectors

The increasing automation of processes requires the connectivity of IT systems. NextLytics Connectors allow you to connect your SAP ecosystem with various open-source technologies.

IT-Services
Megamenü_2023_Data-Science

Data Science & Engineering

Ready for the future? As a strong partner, we will support you in the design, implementation and optimization of your AI application.

Megamenü_2023_Planning

SAP Planning

We design new planning applications using SAP BPC Embedded, IP or SAC Planning which create added value for your company.

Megamenü_2023_Dashboarding

Dashboarding

We help you with our expertise to create meaningful dashboards based on Tableau, Power BI, SAP Analytics Cloud or SAP Lumira. 

Megamenü_2023_Data-Warehouse-1

SAP Data Warehouse

Are you planning a migration to SAP HANA? We show you the challenges and which advantages a migration provides.

Business Analytics
Megamenü_2023_Procurement

Procurement Analytics

Transparent and valid figures are important, especially in companies with a decentralized structure. SAP Procurement Analytics allows you to evaluate SAP ERP data in SAP BI.

Megamenü_2023_Reporting

SAP HR Reporting & Analytics

With our standard model for reporting from SAP HCM with SAP BW, you accelerate business activities and make data from various systems available centrally and validly.

Megamenü_2023_Dataquality

Data Quality Management

In times of Big Data and IoT, maintaining high data quality is of the utmost importance. With our Data Quality Management (DQM) solution, you always keep the overview.

Career
Megamenü_2023_Karriere-2b

Working at NextLytics

If you would like to work with pleasure and don't want to miss out on your professional and personal development, we are the right choice for you!

Megamenü_2023_Karriere-1

Senior

Time for a change? Take your next professional step and work with us to shape innovation and growth in an exciting business environment!

Megamenü_2023_Karriere-5

Junior

Enough of grey theory - time to get to know the colourful reality! Start your working life with us and enjoy your work with interesting projects.

Megamenü_2023_Karriere-4-1

Students

You don't just want to study theory, but also want to experience it in practice? Check out theory and practice with us and experience where the differences are made.

Megamenü_2023_Karriere-3

Jobs

You can find all open vacancies here. Look around and submit your application - we look forward to it! If there is no matching position, please send us your unsolicited application.

Blog
NextLytics Newsletter Teaser
Sign up now for our monthly newsletter!
Sign up for newsletter
 

How the block formation of FOX formulas in SAP planning works

FOX formulas are a good solution in SAP planning if you are looking for a high-performance way to process data with SAP Business Planning and Consolidation or BW IP. It is important to understand the functionality of FOX formulas with regard to block formation. This is helpful for debugging as well as essential for increasing the performance of your planning solution. In this article I explain in detail how the blocks are created in FOX formulas.

Block formation in BPC and SAP Integrated Planning

A FOX formula is always executed several times in a row. First, the data selected by the filter is divided into blocks. The planning function is then executed for each block.

Characteristics that were not selected as characteristics to be changed form a block. Therefore these characteristics are also called block characteristics.

Fields to be changed

Blocks are formed internally by the system as they facilitate the conversion of FOX formulas into ABAP code. A loop is created for each block characteristic.

Block characteristics in BPC and BW IP

All data records in a block have the same characteristic values for the block characteristic. Let's look at an example to illustrate this. The displayed data sets represent the initial data:

Version

Company Code

Quantity

1

4711

300

1

0815

200

2

4711

300

2

0815

200

 

Assuming that you select the version as the characteristic to be changed, the Company Code characteristic serves as a block characteristic. Two blocks are formed, one block per characteristic value. The FOX formula is thus executed twice.

The following blocks are created by the system. The characteristic value of the company code is identical for each block. Note, however, that the sort order of the blocks can be random.

Block 1:

Company Code

Version

Quantity

4711

1

300

4711

2

300

 

Block 2:

Company Code

Version

Quantity

0815

1

200

0815

2

200

 

However, if the Company Code characteristic is selected as the field to be changed, the version functions as a block characteristic. In this case, the following blocks are created.

Block 1:

Version

Company Code

Quantity

1

4711

300

1

0815

200

 

Block 2:

Version

Company Code

Quantity

2

4711

300

2

0815

200

 

If you do not select any characteristics to be changed, all characteristics serve as block characteristics. In this case, one call is made per data record. Four blocks are formed.

Block 1:

Version

Company Code

Quantity

1

4711

300



Block 2:

Version

Company Code

Quantity

1

0815

200



Block 3:

Version

Company Code

Quantity

2

4711

300



Block 4:

Version

Company Code

Quantity

2

0815

200

 

If, on the other hand, you select all characteristics as characteristics to be changed, only one block will be created, since no block characteristics exist. Only one call is made for all data records:

Version

Company Code

Quantity

1

4711

300

1

0815

200

2

4711

300

2

0815

200

 

In summary, the following overview results:

Field to be changed Block characteristic Number of calls / data records

Version

Buchungskreis

2 Aufrufe, Datensätze 1 und 3 sowie 2 und 4

Buchungskreis

Version

2 Aufrufe, Datensätze 1 und 2 sowie 3 und 4

leer

alle

4 Aufrufe, ein Datensatz pro Aufruf

alle

leer

1 Aufruf, für alle Datensätze

 


Planning Tools compared - SAP BW IP vs. BPC vs. SAC

Neuer Call-to-Action



Performance

Once you know how the block formation works, the effect on performance also becomes clear. For example, you should restrict the values of the block characteristics in the filter as much as possible so that not too many blocks are created.

Using a HANA database brings strong performance advantages. By default, the FOX formulas are executed in the HANA database. However, you should consider some restrictions. The following commands are not supported in the HANA and therefore the FOX formula is executed on the application server, so you cannot benefit from code push down:

  • CALL FUNCTION (1)
  • ABAP BREAK-POINT command is ignored
  • FOX key words are not supported for other usage like variable names. E.g. DATA I TYPE I is not allowed but DATA J TYPE I is allowed.
  • attribute lookup (ATRV/ATRVT) or validity check (MDEXIST) on standard time characteristics like 0CALYEAR or characteristic referencing those
  • attribute lookup (ATRV/ATRVT) or validity check (MDEXIST) on characteristics which don't have a master data table, which is a BW object. But HANA View based info objects are supported ATRV in FOX on HANA view solved with note 2644984 and Revision 2.00.030.01
  • Using a hierarchy node variable in VARC or similar statements
  • Using compounding in variables before revision 122.05. It work from revision 122.05 onwards when applying note 2386434.
  • Using InfoObjects outside the aggregation level (e.g. in DATA statements)
  • If the underlying aggregation level contains a float key figure you need at least note 2644984 and for HANA 1.0 revision 1.00.122.17 or for HANA 2.0 2.00.030.01. See also notes 2449817 and 460652 and the general advice to avoid float in BW. 
  • New FOX features introduced with BW 7.4 SP8 like reading from external aggregation levels which is supported for PAK with revision 102.4 incl. note 2234156 and 2241643.  Internal tables are also supported in PAK with HANA revision 97.02 and note 2145611
  • The new FOX features ‘modularization’ or ‘forms’ introduced with BW 7.5 SP0 are currently not yet supported in PAK and lead to the processing in ABAP application server.  
  • The new FOX feature ‘directly reading from a non-input enabled DSO‘ (introduced in BW 7.5 SP0) is  supported in PAK with SAP BW 7.52. In case the DSO contains non-key fields the the execution however is still on the ABAP stack.
  • The new feature of transient attributes (navigation attribute of a navigation attribute) coming with BW 7.4 SP4 will not be supported to run in HANA for time dependent attributes in FOX (e.g. ATRV). Then the FOX is processed on the ABAP stack.
  • Key fields in internal tables of type KEYFIGURE_NAME.
  • Access to external InfoProviders with variables of type KEYFIGURE_NAME.

FOX formulas - Our Conclusion

As you have noticed, a rather inconspicuous topic like block formation is essential to ensure good performance in data processing using FOX formulas.

Depending on your scenario you have to decide how many blocks you want to be created. It is very important to set the filters of the block characteristics as precisely as possible in order to reduce the number of data records to be processed, but also the number of blocks to be created to a minimum.

Furthermore, this knowledge helps you to better understand the debugging of FOX formulas.

Do you need support with your planning solutions? Please do not hesitate to contact us.

Learn all about SAP BPC

, ,

avatar

Sebastian

Sebastian Uhlig has been consulting companies in various industries on SAP BI solutions at national and international level since 2001 and covers the range from requirements analysis to the implementation of complex solutions. He has experience in leading project teams and is the architect of the product NextTables. He enjoys mountain biking and watching American football games.

Got a question about this blog?
Ask Sebastian

Blog - NextLytics AG 

Welcome to our blog. In this section we regularly report on news and background information on topics such as SAP Business Intelligence (BI), SAP Dashboarding with Lumira Designer or SAP Analytics Cloud, Machine Learning with SAP BW, Data Science and Planning with SAP Business Planning and Consolidation (BPC), SAP Integrated Planning (IP) and SAC Planning and much more.

Subscribe to our newsletter

Related Posts

Recent Posts