F4071
controlOne row per price adjustment definition: the named rule (discount, rebate, promotion, override) with the control switches that decide how it applies — group keys, level-break type, adjustment level, mandatory and G/L behavior.
Setup table, not rates: the actual rate/break rows live in F4072, joined on the adjustment name (AST). F4074 ledger rows also carry AST, so this table decodes every adjustment that hit an order line.
Fields
40 fields · 1 key
| Key | Field | Alias | Description | Type | Length | Flags |
|---|---|---|---|---|---|---|
| Primary key | ATAST | AST | Adjustment name — the identifier every F4072 rate row and F4074 ledger row points back to. | String | 8 | |
| ATPRGR | PRGR | Item price group this adjustment is keyed by, when it prices by item group instead of individual item. | String | 8 | ||
| ATCPGP | CPGP | Customer price group this adjustment is keyed by, when it prices by customer group instead of individual customer. | String | 8 | ||
| ATSDGR | SDGR | Order detail group used when the adjustment keys on sales order line attributes rather than item/customer. | String | 8 | ||
| ATPRFR | PRFR | Preference type tied to the adjustment when advanced preferences drive its application. | String | 2 | ||
| ATLBT | LBT | Level-break type: whether F4072 quantity breaks are read as quantity, weight, or amount. | Character | 1 | ||
| ATGLC | GLC | G/L offset code that steers the adjustment amount to an account via AAI. | String | 4 | ||
| ATSBIF | SBIF | Subledger flag controlling whether/how subledger detail is written with the G/L entry. | Character | 1 | ||
| ATACNT | ACNT | Adjustment control code: how the adjustment posts — printed on invoice, accrued, rebate, rounding, etc. Key classifier when analyzing F4074 margin impact. | Character | 1 | ||
| ATLNTY | LNTY | Line type used when the adjustment generates its own order line (e.g., free goods or accrual lines). | String | 2 | ||
| ATMDED | MDED | Y/N: whether users may add or change this adjustment manually on the order. | Character | 1 | ||
| ATABAS | ABAS | Y/N: adjustment overrides the base price outright instead of adjusting it. | Character | 1 | ||
| ATOLVL | OLVL | Adjustment level: applied per order line, per basket, or per whole order. | Character | 1 | ||
| ATTXB | TXB | Whether the adjustment amount is taxable. | Character | 1 | ||
| ATPA01 | PA01 | Rebate beneficiary flag — who receives the rebate accrued by this adjustment. | Character | 1 | ||
| ATPA02 | PA02 | Mandatory flag: the adjustment must apply — the order line errors if no matching F4072 rate is found. | Character | 1 | ||
| ATPA03 | PA03 | Flag excluding this adjustment's amount from payment-terms discount calculations. | Character | 1 | ||
| ATPA04 | PA04 | Target application: which module (sales, procurement, etc.) the adjustment applies to. | Character | 1 | ||
| ATENBM | ENBM | Flag enabling basket-level (basket master) processing for this adjustment. | Character | 1 | ||
| ATSRFLAG | SRFLAG | Sliding-rate flag: level breaks apply progressively per tier instead of one rate for the whole quantity. | Character | 1 | ||
| ATUSADJ | USADJ | Marks the adjustment as an up-sell suggestion rather than an automatic price change. | Character | 1 | ||
| ATATIER | ATIER | Buying-structure tier at which volume accumulates for this adjustment. | Numeric | 2 | ||
| ATBTIER | BTIER | Buying-structure tier that receives the rebate benefit. | Numeric | 2 | ||
| ATBNAD | BNAD | Address book number of the rebate beneficiary. | Numeric | 8 | ||
| ATAPRP1 | APRP1 | Pricing reporting code 1 — free classifier for grouping adjustments in analysis. | String | 3 | ||
| ATAPRP2 | APRP2 | Pricing reporting code 2 — free classifier for grouping adjustments in analysis. | String | 3 | ||
| ATAPRP3 | APRP3 | Pricing reporting code 3 — free classifier for grouping adjustments in analysis. | String | 3 | ||
| ATADJGRP | ADJGRP | Mutually exclusive adjustment group: only one adjustment in the group may apply to a line. | String | 10 | ||
| ATMEADJ | MEADJ | Flag marking the adjustment as mutually exclusive within its group. | Character | 1 | ||
| ATDIDP | DIDP | Promotion deal ID linking the adjustment to a trade promotion deal. | String | 12 | ||
| ATPMTN | PMTN | Promotion ID linking the adjustment to a promotion definition. | String | 12 | ||
| ATPA06 | PA06 | Rebate claim type control for rebate-style adjustments. | Character | 1 | ||
| ATPA07 | PA07 | Apply-absolute-value flag: adjustment math ignores the sign of the basis amount. | Character | 1 | ||
| ATPA08 | PA08 | Flat-rate flag: the F4072 factor is a fixed amount per order rather than per unit. | Character | 1 | ||
| ATEFCN | EFCN | Flag excluding this adjustment from the running current-net-price calculation. | Character | 1 | ||
| ATAPTYPE | APTYPE | Advanced preference type associated with the adjustment. | String | 2 | ||
| ATMOADJ | MOADJ | Flag allowing manual override of the adjustment on the order. | Character | 1 | ||
| ATPLGRP | PLGRP | Price list group used when the adjustment participates in generated price lists. | String | 3 | ||
| ATMNMXAJ | MNMXAJ | Min/max adjustment type: marks the rule as a minimum or maximum price guard. | Character | 1 | ||
| ATMNMXRL | MNMXRL | Min/max rule: how the price guard is enforced when the calculated price crosses the bound. | Character | 1 |
Field provenance: hand-curated.
Boilerplate SQL
Starting point for reading F4071on Databricks — Julian dates, implied decimals, and padded strings are already converted. Set your Unity Catalog location and filter values below; they’re substituted into the SQL and the copy button.
-- ============================================================
-- Table : F4071 One row per price adjustment definition: the named rule (discount, rebate, promotion, override) with the control switches that decide how it applies — group keys, level-break type, adjustment level, mandatory and G/L behavior.
-- Purpose: Column-selected read of F4071 — auto-generated from field metadata
-- Grain : One row per ATAST
-- Notes : Auto-generated skeleton. Julian dates (CYYDDD) are converted to DATE and implied-decimal amounts are scaled (verify decimals in F9210); padded business-unit/UDC keys are TRIMmed. Audit columns (…USER/…PID/…UPMJ) are omitted — see the quirks guide. Set catalog/schema to your Unity Catalog location; fill remaining placeholders (<...>) for your tenant.
-- ============================================================
SELECT
f.ATAST AS "Adjustment name — the identifier every F4072 rate row and F4074 ledger row points back to.",
f.ATPRGR AS "Item price group this adjustment is keyed by, when it prices by item group instead of individual item.",
f.ATCPGP AS "Customer price group this adjustment is keyed by, when it prices by customer group instead of individual customer.",
f.ATSDGR AS "Order detail group used when the adjustment keys on sales order line attributes rather than item/customer.",
f.ATPRFR AS "Preference type tied to the adjustment when advanced preferences drive its application.",
f.ATLBT AS "Level-break type: whether F4072 quantity breaks are read as quantity, weight, or amount.",
f.ATGLC AS "G/L offset code that steers the adjustment amount to an account via AAI.",
f.ATSBIF AS "Subledger flag controlling whether/how subledger detail is written with the G/L entry.",
f.ATACNT AS "Adjustment control code: how the adjustment posts — printed on invoice, accrued, rebate, rounding, etc. Key classifier when analyzing F4074 margin impact.",
f.ATLNTY AS "Line type used when the adjustment generates its own order line (e.g., free goods or accrual lines).",
f.ATMDED AS "Y/N: whether users may add or change this adjustment manually on the order.",
f.ATABAS AS "Y/N: adjustment overrides the base price outright instead of adjusting it.",
f.ATOLVL AS "Adjustment level: applied per order line, per basket, or per whole order.",
f.ATTXB AS "Whether the adjustment amount is taxable.",
f.ATPA01 AS "Rebate beneficiary flag — who receives the rebate accrued by this adjustment.",
f.ATPA02 AS "Mandatory flag: the adjustment must apply — the order line errors if no matching F4072 rate is found.",
f.ATPA03 AS "Flag excluding this adjustment's amount from payment-terms discount calculations.",
f.ATPA04 AS "Target application: which module (sales, procurement, etc.) the adjustment applies to.",
f.ATENBM AS "Flag enabling basket-level (basket master) processing for this adjustment.",
f.ATSRFLAG AS "Sliding-rate flag: level breaks apply progressively per tier instead of one rate for the whole quantity.",
f.ATUSADJ AS "Marks the adjustment as an up-sell suggestion rather than an automatic price change.",
f.ATATIER AS "Buying-structure tier at which volume accumulates for this adjustment.",
f.ATBTIER AS "Buying-structure tier that receives the rebate benefit.",
f.ATBNAD AS "Address book number of the rebate beneficiary.",
f.ATAPRP1 AS "Pricing reporting code 1 — free classifier for grouping adjustments in analysis.",
f.ATAPRP2 AS "Pricing reporting code 2 — free classifier for grouping adjustments in analysis.",
f.ATAPRP3 AS "Pricing reporting code 3 — free classifier for grouping adjustments in analysis.",
f.ATADJGRP AS "Mutually exclusive adjustment group: only one adjustment in the group may apply to a line.",
f.ATMEADJ AS "Flag marking the adjustment as mutually exclusive within its group.",
f.ATDIDP AS "Promotion deal ID linking the adjustment to a trade promotion deal.",
f.ATPMTN AS "Promotion ID linking the adjustment to a promotion definition.",
f.ATPA06 AS "Rebate claim type control for rebate-style adjustments.",
f.ATPA07 AS "Apply-absolute-value flag: adjustment math ignores the sign of the basis amount.",
f.ATPA08 AS "Flat-rate flag: the F4072 factor is a fixed amount per order rather than per unit.",
f.ATEFCN AS "Flag excluding this adjustment from the running current-net-price calculation.",
f.ATAPTYPE AS "Advanced preference type associated with the adjustment.",
f.ATMOADJ AS "Flag allowing manual override of the adjustment on the order.",
f.ATPLGRP AS "Price list group used when the adjustment participates in generated price lists.",
f.ATMNMXAJ AS "Min/max adjustment type: marks the rule as a minimum or maximum price guard.",
f.ATMNMXRL AS "Min/max rule: how the price guard is enforced when the calculated price crosses the bound."
FROM <catalog>.<schema_data>.f4071 f
ORDER BY f.ATAST;2 parameters not filled: <catalog>, <schema_data>
Relationships
1-hop neighbors — click a table to navigate there. UDC decode edges point coded fields at their F0005 lookup.