Page 7004 "Sales Line Discounts"
Base Application · Microsoft.Sales.Pricing
Across versions
- BC23present
- BC24declaration changed
- BC25declaration changed
- BC26-27unchanged
- BC282 events added
- BC29-30unchanged
Neighbourhood 5 connected objects and pages
Base Application · Microsoft.Sales.Pricing · BC23-30 · source at ea08af5e · facts from BC29
Properties
| Property | Value |
|---|---|
| Caption | Sales Line Discounts |
| SourceTable | Sales Line Discount |
| PageType | List |
Fields on this page
Layout controls in source order, grouped by the container they sit in. Shows: the table field a control is bound to (or its expression as written); ToolTip: the control’s own, else the bound field’s (marked).
| Group | Control | Shows | ToolTip |
|---|---|---|---|
| General | Sales Type Filter | SalesTypeFilter |
Specifies a filter for which sales line discounts to display. |
| Sales Code Filter | SalesCodeFilter |
Specifies a filter for which sales line discounts to display. | |
| Starting Date Filter | StartingDateFilter |
Specifies a filter for which sales line discounts to display. | |
| Type Filter | ItemTypeFilter |
Specifies a filter for which sales line discounts to display. | |
| Code Filter | CodeFilter |
Specifies a filter for which sales line discounts to display. | |
| Currency Code Filter | CurrencyCodeFilter |
Specifies a filter for which sales line discounts to display. | |
| Filters | FilterDescription | GetFilterDescription() |
Specifies a filter for which sales line discounts to display. |
| Control1 | Sales Type | Sales Type | Specifies the sales type of the sales line discount. The sales type defines whether the sales price is for an individual customer, customer discount group, all customers, or for a campaign. from the table field |
| Sales Code | Sales Code | Specifies one of the following values, depending on the value in the Sales Type field. from the table field | |
| Type | Type | Specifies the type of item that the sales discount line is valid for. That is, either an item or an item discount group. from the table field | |
| Code | Code | Specifies one of two values, depending on the value in the Type field. from the table field | |
| Variant Code | Variant Code | Specifies the variant of the item on the line. from the table field | |
| Currency Code | Currency Code | Specifies the currency code of the sales line discount price. from the table field | |
| Unit of Measure Code | Unit of Measure Code | Specifies how each unit of the item or resource is measured, such as in pieces or hours. By default, the value in the Base Unit of Measure field on the item or resource card is inserted. from the table field | |
| Minimum Quantity | Minimum Quantity | Specifies the minimum quantity that the customer must purchase in order to gain the agreed discount. from the table field | |
| Line Discount % | Line Discount % | Specifies the discount percentage that is granted for the item on the line. | |
| Starting Date | Starting Date | Specifies the date from which the sales line discount is valid. from the table field | |
| Ending Date | Ending Date | Specifies the date to which the sales line discount is valid. from the table field |
Actions
| Group | Action | ToolTip | Runs |
|---|---|---|---|
| Processing | Filter | Apply the filter. | |
| Clear Filter | Clear filter. |
Events published
OnLookupCodeFilterCaseElse(SalesLineDiscount: Record "Sales Line Discount"; var Text: Text; var Result: Boolean)(integration): Raises an event to handle custom lookup for code filter when the type is not Item or Item Disc. Group.OnGetTypeFilterCaseElse(var SalesLineDiscount: Record "Sales Line Discount"; var TypeFilter: Integer)(integration): Raises an event to handle custom type filter conversion when the type is not Item or Item Disc. Group.OnSetRecFiltersOnBeforeCurrPageUpdate(var SalesLineDiscount: Record "Sales Line Discount"; ItemTypeFilter: Option Item,"Item Discount Group","None")+ BC28 (integration): Raises an event after the record filters have been applied and before the page is updated, allowing subscribers to apply additional filtering based on the current item type filter.OnGetFilterDescriptionCaseElse(var SalesLineDiscount: Record "Sales Line Discount"; ItemTypeFilter: Option Item,"Item Discount Group","None"; var SourceTableName: Text; var Item: Record Item)+ BC28 (integration): Raises an event to resolve the filter description when the item type filter is not Item or Item Discount Group, allowing subscribers to provide a custom source table name and item filtering.
Procedures
SetRecFilters(): Applies filter settings to the sales line discount records based on current filter values.
Plus 14 local procedures.
Triggers
OnAfterGetCurrRecord, OnInit, OnOpenPage
Relations
- source table Table 7004 “Sales Line Discount”
Calls
From the extracted call graph of BC29 (graphify-al on the snapshot checkout): calls whose target is known from a declared type or an Object::"Name" argument. Interface dispatch and calls through events are not counted, so the list is not complete.
- Codeunit 4030 “Client Type Management” (1 call:
OnOpenPage → GetCurrentClientType) - Codeunit 7049 “Feature - Price Calculation” (1 call:
OnInit → FailIfFeatureEnabled)
Called by
- Page 22 “Customer List” (1 call:
ShowLineDiscounts → (object)) - Page 31 “Item List” (1 call:
ShowLineDiscounts → (object))
Recent changes
- 2026-07-15 #9445 [Extensibility Request] issue 30173: add integration events to Sales Line Discounts page (main, BC30, feature)
Ask your agent
Procedure bodies are not stored here (D10). The call sections above are our own, per object, from the BC29 call graph. For a procedure body or the calls of one procedure, ask bc-code-atlas (external, by Stefan Maron, MIT; default corpus w1-28), which the bc-observatory plugin connects: bcatlas_resolve_node(object_type: "page", object_name: "Sales Line Discounts"), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.