Product Modeling for SAP Configurators Powered by Eclipse

Session Type: 
Standard Talk [25 minutes]

Every SAP ERP and CRM system provides product-configuration technology. Thousands of companies worldwide use this technology to configure product variants in sales and manufacturing. Product models for the SAP configurators consist of a network of related objects like materials, bills of materials, characteristics, and classes as well as dependency code written in special languages. A set of transactions with form-based SAP user interfaces - nearly one for each object type and CRUD operation - is used for maintaining the product models. Changes are directly reflected in the database.

As product models get more and more complex and tend to be pieces of software with considerable size, this way of product modeling gets increasingly problematic. There is no version control. It is not possible to track the authors and reasons of individual changes. Mass changes tend to be very time consuming. Product model reorganization is even technically very difficult since referential integrity has to be maintained during each reorganization step.

Using Eclipse technology, we build a two-layered external product-modeling environment for the SAP configurators.

  • VClipse allows to maintain a product model with the same concepts as SAP's data model. The objects are maintained in a domain-specific textual language. The dependency code is maintained with the same syntax as in the SAP system. VClipse communicates with a SAP system via remote function calls (RFC) and IDocs. VClipse is available as an EPL-licensed open-source project at
  • ConfigModeler provides customer-specific languages and tools for maintaining product models. Customer-specific concepts are mapped to SAP's data model implemented by VClipse through customer-specific code generation. VClipse acts as an SAP backend for ConfigModeler.

VClipse and ConfigModeler are use cases for introducing domain-specific languages and development environments build with Xtext to a non-programmer user group. They help to introduce methods commonly used in software engineering into the world of product modeling. We will discuss problems and lessons learned. The presented solution is in productive use in a large international company.

Schedule info



Building Industry Solutions
Experience level: 

Copyright © 2012 The Eclipse Foundation. All Rights Reserved.