PowerConnect for SAP Solutions

SALES_ORDERS - Created and updated sales orders

Data description

The Sales Orders extractor collects SAP sales order documents — header data from table VBAK together with the corresponding line items from table VBAP — and sends them to Splunk as a single event per sales order with the items nested inside the header record.

The extractor captures both:

  • Newly created sales orders — selected from VBAK by creation date/time (ERDAT/ERZET) within the collection time window.

  • Changed sales orders — detected via change documents (table CDHDR, object class VERKBELEG, change indicator U) within the collection time window.

Each event carries a CHANGE_IND field so that inserts (I) and updates (U) can be distinguished in Splunk.

Item lines are enriched with the material description (MAKTX from table MAKT, in the system logon language) and the billing date (FKDAT from table VBKD).

Data is collected under the subgroup SO.

Note: The extractor runs only on systems where table VBAK exists (ECC / S/4HANA). On systems without VBAK (e.g. SAP BW, SolMan) it exits without collecting data.

Potential use cases

  • Monitor sales order creation volume and value across sales organizations in near real time.

  • Track changes made to existing sales orders (who changed what and when) and alert on unusual change activity.

  • Analyze order pipeline by document type, sales organization, distribution channel, division, or customer.

  • Detect stuck or blocked orders using delivery block (LIFSK), billing block (FAKSK), and overall status fields (GBSTK, LFSTK, ABSTK).

  • Combine header and item data to report on material-level demand, net values, quantities, and rejected items (ABGRU).

Setup

The following parameters are available:

Parameter

Default

Description

VKORG

(empty = all)

Comma-separated list of sales organizations to collect, e.g. 1000,2000. When empty, sales orders of all sales organizations are collected.

TIME_FIELD

UDATE

Controls which date/time pair is written to the TIMESTAMP field for update events: UDATE — change document date/time (CDHDR-UDATE/UTIME); ERDAT — original order creation date/time (VBAK-ERDAT/ERZET). Insert events are always timestamped with the creation date/time.

PACKAGE_SIZE

1000

Number of sales order headers processed per package (database PACKAGE SIZE). Controls memory consumption on high-volume systems.

MAX_ITEMS

0 (unlimited)

Maximum number of VBAP items nested into a single sales order event. 0 means all items are included. Use this to cap event size for orders with very large numbers of line items.

Extracted fields and data structure

Each emitted record is a deep (nested) structure: sales order header fields at the top level and an ITEMS table containing the line items of that order.

Event-level (technical) fields

Field

Source

Description

TIMESTAMP

calculated

Event timestamp in UTC. For inserts: order creation date/time (ERDAT/ERZET). For updates: change document date/time (UDATE/UTIME) or creation date/time, depending on the TIME_FIELD parameter.

CHANGE_IND

calculated

I — the event represents a newly created sales order; U — the event represents a change to an existing sales order.

UDATE

CDHDR

Change document date. Filled for update events only.

UTIME

CDHDR

Change document time. Filled for update events only.

ITEMS

nested table

Line items of the sales order (see item structure below).

Header fields (table VBAK)

Field

Description

VBELN

Sales document number

ERDAT

Date on which the record was created

ERZET

Time at which the record was created

ERNAM

Name of the user who created the object

AEDAT

Date of last change

AUDAT

Document date (order date)

VBTYP

SD document category

TRVOG

Transaction group

AUART

Sales document type

AUGRU

Order reason

NETWR

Net value of the sales order in document currency

WAERK

SD document currency

VKORG

Sales organization

VTWEG

Distribution channel

SPART

Division

VKGRP

Sales group

VKBUR

Sales office

KUNNR

Sold-to party (customer number)

KOSTL

Cost center

LIFSK

Delivery block (document header)

FAKSK

Billing block (document header)

GBSTK

Overall processing status of the document

ABSTK

Overall rejection status

LFSTK

Delivery status

KVGR1KVGR5

Customer groups 1–5

BSTNK

Customer purchase order number

BSTDK

Customer purchase order date

VDATU

Requested delivery date

KURSK

Exchange rate for price determination

ZTERM

Terms of payment key

INCO1

Incoterms part 1

INCO2

Incoterms part 2

ZZ*

All customer-specific append fields (fields whose names start with ZZ) are included automatically

Item fields (nested ITEMS table, table VBAP)

Field

Description

VBELN

Sales document number

POSNR

Sales document item number

MATNR

Material number

MATWA

Material entered

MATKL

Material group

ARKTX

Short text for sales order item

PSTYV

Sales document item category

WERKS

Plant (delivering plant)

LGORT

Storage location

NETWR

Net value of the item in document currency

WAERK

SD document currency

KWMENG

Cumulative order quantity in sales units

MEINS

Base unit of measure

VRKME

Sales unit

UMVKZ

Numerator (factor) for conversion of sales quantity into SKU

UMVKN

Denominator (divisor) for conversion of sales quantity into SKU

BRGEW

Gross weight of the item

NTGEW

Net weight of the item

GEWEI

Weight unit

VBELV

Originating document

POSNV

Originating item

VGBEL

Document number of the reference document

VGPOS

Item number of the reference item

VOREF

Complete reference indicator

ROUTE

Route

ERDAT

Date on which the item was created

ERNAM

Name of the user who created the item

ERZET

Time at which the item was created

NETPR

Net price

KPEIN

Condition pricing unit

AEDAT

Date of last change

PRCTR

Profit center

MVGR1MVGR5

Material groups 1–5

ABGRU

Reason for rejection of sales documents

CMPRE

Item credit price

CMPNT

Item is relevant for credit check indicator

CMKUA

Credit data exchange rate

ZMENG

Target quantity in sales units

ZIEME

Target quantity unit of measure

ZZ*

All customer-specific append fields (fields whose names start with ZZ) are included automatically

Item enrichment fields

Field

Source

Description

MAKTX

MAKT

Material description in the system logon language

FKDAT

VBKD

Billing date of the item (from sales document business data)

Example event

{

"TIMESTAMP": "20260805063212",

"CHANGE_IND": "I",

"VBELN": "0000012345",

"ERDAT": "20260805",

"ERZET": "063212",

"ERNAM": "JSMITH",

"AUDAT": "20260805",

"VBTYP": "C",

"AUART": "TA",

"NETWR": "1500.00",

"WAERK": "EUR",

"VKORG": "1000",

"VTWEG": "10",

"SPART": "00",

"KUNNR": "0000100001",

"GBSTK": "A",

"LFSTK": "A",

"BSTNK": "PO-778812",

"VDATU": "20260812",

"ZTERM": "0001",

"INCO1": "EXW",

"UDATE": "",

"UTIME": "",

"ITEMS": [

{

"VBELN": "0000012345",

"POSNR": "000010",

"MATNR": "MAT-100",

"MAKTX": "Ball bearing 20mm",

"MATKL": "001",

"PSTYV": "TAN",

"WERKS": "1000",

"NETWR": "1000.00",

"WAERK": "EUR",

"KWMENG": "100.000",

"VRKME": "PC",

"NETPR": "10.00",

"FKDAT": "20260812"

},

{

"VBELN": "0000012345",

"POSNR": "000020",

"MATNR": "MAT-200",

"MAKTX": "Shaft seal 35mm",

"MATKL": "001",

"PSTYV": "TAN",

"WERKS": "1000",

"NETWR": "500.00",

"WAERK": "EUR",

"KWMENG": "50.000",

"VRKME": "PC",

"NETPR": "10.00",

"FKDAT": "20260812"

}

]

}