What does Atlan crawl from SAP S/4HANA?
What does Atlan crawl from SAP S/4HANA?
Atlan integrates with SAP S/4HANA to crawl and map various asset types, helping you gain insights into structured business data. This page outlines the SAP S/4HANA components that Atlan supports and how their properties are mapped.
Lineage
Atlan supports the following lineage in SAP S/4HANA:
- Asset lineage:
- Tracks relationships from Tables to Views.
- Tracks relationships from Tables, Views and CDS Views to CDS Views.
- Tracks relationships from CDS Views to Fiori apps.
- Column-level lineage:
- Tracks mappings from Table Columns to View Columns.
- Tracks mappings from Table Columns, View Columns and CDS Columns to CDS Columns.
Table relationships
Beyond lineage, Atlan captures the relationships that SAP declares between tables in the ABAP Dictionary. Each SAP table asset lists its related tables under the sapErpRelatedTables attribute, letting you move from a transactional table to the master data and text tables it depends on.
Atlan derives related tables from three ABAP Dictionary relationship types:
| Relationship type | What it captures | Example |
|---|---|---|
| Check table | A column validates its values using a master or value table. | The material number column in a plant data table checks the material master table, so the material master appears as a related table. |
| Foreign key | A foreign key that SAP declares between two tables. | A plant data table declares a foreign key to the plant master table. |
| Text table | The table that holds language-dependent descriptions for a base table. | The material description table is the text table for the material master, so it appears as a related table of the material master. |
Keep the following in mind when you work with table relationships:
- Relationships are bidirectional. Atlan stores each relationship once, and both tables show the other as a related table. You don't need to crawl the tables in a particular order.
- Atlan only links tables it has crawled. If a related table falls outside your component filters or selected asset types, Atlan omits that relationship rather than creating a link to an asset that doesn't exist in your catalog.
- Relationships apply to tables only. Views and CDS views don't carry related tables.
Glossary
When you turn on Enable glossary ingestion in the crawler, Atlan builds a business glossary from the F1 help text that SAP ships for each data element and links the terms to the columns it crawls. Glossary ingestion is off by default. To turn it on, see Glossary ingestion.
Atlan creates the following glossary assets:
| Atlan asset | Name | What it holds |
|---|---|---|
| Glossary | SAP S/4HANA (<connection name>), using the connection name you chose during setup | One glossary per connection, holding every category and term Atlan builds from that system. |
| Category | <component name> (<component path>), for example Material Master (LO-MD-MM) | One category per SAP application component. Categories nest along the component hierarchy, so LO-MD-MM sits under LO-MD, which sits under LO. Atlan creates the intermediate levels even when no term sits on them directly. |
| Term | <data element description> (<data element>), for example Base Unit of Measure (MEINS) | One term per data element. The description is the F1 long text, converted from SAPscript to Markdown, so headings, bullet lists, and cross-references to other SAP documentation carry over. |
Atlan maps each term from SAP S/4HANA to its AtlasGlossaryTerm asset type.
| Source property | Atlan property |
|---|---|
DDTEXT with ROLLNAME | name |
DOKTEXT | description |
Application component NAME with PS_POSID | categories |
Keep the following in mind when you work with the glossary:
- Atlan creates a term only for a data element that a crawled table column uses. SAP documents far more data elements than any one system's tables reference. Atlan keeps only the data elements that at least one column of an active transparent, pooled, or cluster table uses, so the glossary describes fields that exist in your system.
- Each term sits in one category. A data element can appear in tables across several components. Atlan places the term under the component whose tables use it most, and prefers an application component over a cross-application (
CA) component when usage ties. - Component filters scope the glossary. When you include or exclude components, Atlan builds terms only for data elements used by tables in the components you kept, and categorizes each term under one of those components.
- Columns link to terms. Each crawled column that carries a data element (
sapErpColumnDataElement) links to that data element's term. Open a column to read its business definition, or open a term to see every column that uses it. A column links only to a term Atlan created, so a view column whose data element no crawled table uses stays unlinked. - Atlan reads the active English version of each document. SAP stores documentation per language and version. Atlan reads the current active English version and doesn't ingest other languages.
- Repeat runs update the glossary in place. Glossary, category, and term names are stable across runs, so re-running the crawler updates the existing assets rather than creating duplicates. Atlan rewrites each term's
descriptionwith the current F1 text on every run. Descriptions you add yourself in Atlan (userDescription) sit in a separate field and stay as you left them.
Assets
Atlan extracts metadata from SAP S/4HANA across different asset types, including:
- Components: Software modules providing specific functionalities.
- Tables: Structured storage for master data, transactions, and configurations.
- Views: Logical representations of data for efficient access.
- CDS views: Virtual data models in SAP S/4HANA that define and consume structured data efficiently.
- Columns: Data attributes within tables and views.
- ABAP programs: Custom scripts written for automation and processing.
- Function modules: Reusable logic blocks for ABAP programs and remote function calls.
- Transaction Codes: Shortcuts for executing SAP functions.
- Fiori apps: SAP Fiori user-facing applications that consume OData services backed by CDS views.
- Classes: Groups of customer-defined characteristics used to classify master data.
- Characteristics: Typed attribute definitions that belong to a class.
The following sections detail how each asset type is mapped in Atlan.
Components
SAP S/4HANA components are modular software units that deliver specific business functions. These components form the foundation of SAP's enterprise applications, enabling functionalities such as finance, logistics, and human resources. Atlan maps Components from SAP S/4HANA to its SapErpComponent asset type.
| Source property | Atlan property |
|---|---|
TEXT | name |
NAME | sapComponentName |
Tables
Tables in SAP S/4HANA store structured business data, including master records, transactional details, and configuration settings. These tables form the foundation of SAP's data storage and retrieval system. Atlan maps Table from SAP S/4HANA to its SapErpTable asset type.
| Source property | Atlan property |
|---|---|
TABNAME | name |
DDTEXT | description |
TABCLASS | sapErpTableType |
DEVCLASS | sapPackageName |
Column Count | sapFieldCount |
CONTFLAG | sapErpTableDeliveryClass |
AS4USER | sourceUpdatedBy |
AS4DATE | sourceUpdatedAt |
CHECKTABLE | sapErpRelatedTables |
For details on how Atlan derives sapErpRelatedTables, see Table relationships.
Views
Views provide a logical representation of data by combining information from one or more tables. They simplify data access and reporting by allowing users to work with pre-defined, structured datasets. Atlan maps View from SAP S/4HANA to its SapErpView asset type.
| Source property | Atlan property |
|---|---|
VIEWNAME | name |
DDTEXT | description |
VIEWCLASS | sapErpViewType |
DEVCLASS | sapPackageName |
Column Count | sapFieldCount |
AS4USER | sourceUpdatedBy |
AS4DATE | sourceUpdatedAt |
CDS views
CDS (Core Data Services) views in SAP S/4HANA are virtual data models that define and consume structured data efficiently. Atlan maps CDS View from SAP S/4HANA to its SapErpCdsView asset type.
| Source property | Atlan property |
|---|---|
DDLNAME | name |
DDTEXT | description |
DEVCLASS | sapPackageName |
Column Count | sapFieldCount |
PS_POSID | sapComponentName |
AS4DATE | sourceUpdatedAt |
AS4USER | sourceUpdatedBy |
Columns
Columns define individual data attributes within tables and views. Each column has a specific data type, length, and constraints, ensuring accurate data representation and integrity. Atlan maps Column from SAP S/4HANA to its SapErpColumn asset type.
| Source property | Atlan property |
|---|---|
FIELDNAME | name |
TABNAME | sapErpTableName or sapErpViewName |
ROLLNAME | sapErpColumnDataElement |
DATATYPE | sapDataType |
INTTYPE | sapErpColumnLogicalDataType |
LENG | sapErpColumnLength |
DECIMALS | sapErpColumnDecimals |
KEYFLAG | sapErpColumnIsPrimary |
CHECKTABLE | sapErpColumnIsForeign |
NOTNULL | sapErpColumnIsMandatory |
DEVCLASS | sapPackageName |
POSITION | sapFieldOrder |
When you enable glossary ingestion, each column that carries a data element also links to the glossary term for that data element. See Glossary.
ABAP programs
Advanced Business Application Programming (ABAP) programs are scripts used to automate processes, manipulate data, and extend SAP functionalities. These programs are written in SAP's proprietary programming language. Atlan maps ABAP Programs from SAP S/4HANA to its SapErpAbapProgram asset type.
| Source property | Atlan property |
|---|---|
PROGNAME | name |
TEXT | description |
SUBC | sapErpAbapProgramType |
DEVCLASS | sapPackageName |
CNAM | sourceCreatedBy |
CDAT | sourceCreatedAt |
UNAM | sourceUpdatedBy |
UDAT | sourceUpdatedAt |
Function modules
Function modules are reusable code blocks that perform predefined operations in SAP S/4HANA. They can be called within ABAP programs or accessed remotely to execute business logic efficiently. Atlan maps Function Modules from SAP S/4HANA to its SapErpFunctionModule asset type.
| Source property | Atlan property |
|---|---|
FUNCNAME | name |
STEXT | description |
FUNC_GROUP | sapErpFunctionModuleGroup |
| Import Parameters | sapErpFunctionModuleImportParams |
| Import Parameters Count | sapErpFunctionModuleImportParamsCount |
| Export Parameters | sapErpFunctionModuleExportParams |
| Export Parameters Count | sapErpFunctionModuleExportParamsCount |
| Exception List | sapErpFunctionExceptionList |
| Exception List Count | sapErpFunctionExceptionListCount |
DEVCLASS | sapPackageName |
Transaction codes
Transaction codes (T-codes) provide quick access to specific SAP functions or screens. Users enter T-codes in the SAP command field to navigate directly to related operations, improving workflow efficiency. Atlan maps Transaction Code from SAP S/4HANA to its SapErpTransactionCode asset type.
| Source property | Atlan property |
|---|---|
FUNCNAME | name |
STEXT | description |
DEVCLASS | sapPackageName |
Fiori apps
SAP Fiori apps are the user-facing applications that end users launch from the SAP Fiori launchpad. Atlan catalogs each Fiori app and its lineage to the CDS views it depends on, giving you visibility into which business data each app surfaces. Atlan maps Fiori App from SAP S/4HANA to its SapErpFioriApp asset type.
| Source property | Atlan property |
|---|---|
O2APPLT-TEXT | name |
sap.app.id | sapTechnicalName |
sap.app.type | sapErpFioriAppType |
sap.fiori.archeType | sapErpFioriAppArcheType |
sap.fiori.registrationIds | assetSourceId |
| Derived | sapErpFioriAppIsCustom |
O2APPL-APPLNAME | sapErpFioriAppBspApplication |
sap.app.dataSources.mainService.uri | sapErpFioriAppOdataServiceUri |
sap.app.dataSources.mainService.uri | sapErpFioriAppOdataServiceName |
sap.app.dataSources.mainService.uri | sapErpFioriAppOdataVersion |
DEVCLASS | sapPackageName |
PS_POSID | sapComponentName |
AUTHOR | sourceUpdatedBy |
Atlan resolves lineage to CDS views for standard Fiori apps and for custom apps whose OData service is backed by a CDS view. Custom apps whose OData service is backed by hand-written ABAP, rather than a CDS view, aren't supported for lineage: Atlan still catalogs them, but doesn't trace their lineage to underlying CDS views. These apps have sapErpFioriAppIsCustom set to true, which you can use to identify custom apps that may not carry lineage.
Classes
SAP Classification models attributes that your organization defines rather than ones SAP ships as table columns. A class groups related characteristics and declares the kind of object it applies to, such as materials or equipment. Atlan catalogs each class from SAP S/4HANA as an asset that holds its characteristics and links to the tables it classifies.
Atlan stores class assets using the SapErpTable type and identifies them with assetUserDefinedType set to Classes.
| Source property | Atlan property |
|---|---|
CLASS | name |
KSCHL | description |
KLART with class type description | sapErpTableType |
| Characteristic count | sapFieldCount |
VNAME | sourceUpdatedBy |
VDATU | sourceUpdatedAt |
| Classified object tables | sapErpRelatedTables |
A class asset links to the tables it applies to, combining the object table its class type declares with the tables of any objects that have actually been classified. From a master data table you can therefore see both the tables SAP relates it to and the classes applied to it, listed together under related tables. Classes are labeled Classes, so you can tell them apart from table relationships at a glance.
Characteristics
Characteristics are the typed attribute definitions that make up a class, each with a data type, length, and optional check table. Atlan catalogs each characteristic from SAP S/4HANA as an asset within the class it belongs to.
Atlan stores characteristic assets using the SapErpColumn type and identifies them with assetUserDefinedType set to Characteristics.
| Source property | Atlan property |
|---|---|
ATNAM | name |
ATBEZ | description |
ATFOR with data type description | sapDataType |
ANZST | sapErpColumnLength |
ANZDZ | sapErpColumnDecimals |
ATERF | sapErpColumnIsMandatory |
ATPRT | sapErpColumnCheckTableName |
POSNR | sapFieldOrder |
CLASS | sapErpTableName |
Keep the following in mind when you work with classes and characteristics:
- Atlan creates one characteristic asset per class. A characteristic that belongs to three classes appears as three assets, one under each class, in the same way a column belongs to exactly one table.
- Component filters don't apply. SAP stores classes as customizing data rather than repository objects, so they carry no application component or package. Include and exclude component filters have no effect on classes and characteristics, and these assets carry no
sapPackageName. - Atlan only links tables it has crawled. If you select only Classes & Characteristics, Atlan creates no links to tables, because it hasn't crawled any tables to link to.