tableAL Developmentofficial - Microsoftderived - from the source, no model text

Table 7001 "Price List Line"

Base Application · Microsoft.Pricing.PriceList

Across versions

  1. BC23present
  2. BC241 events added
  3. BC25declaration changed
  4. BC26-27unchanged
  5. BC2830 fields changed, 1 procedures changed
  6. BC29-30unchanged

Neighbourhood 31 connected objects and pages

Table 15 "G/L Account" (relates to)G/L AccountTable 152 "Resource Group" (relates to)Resource GroupTable 156 "Resource" (relates to)ResourceTable 167 "Job" (relates to)JobTable 18 "Customer" (relates to)Table 200 "Work Type" (relates to)Work TypeTable 204 "Unit of Measure" (relates to)Table 205 "Resource Unit of Measure" (relates to)Resource Unit of MeasureTable 27 "Item" (relates to)ItemTable 323 "VAT Business Posting Group" (relates to)VAT Business Posting GroupTable 324 "VAT Product Posting Group" (relates to)VAT Product Posting GroupTable 340 "Customer Discount Group" (relates to)Table 4 "Currency" (relates to)CurrencyTable 5050 "Contact" (relates to)Table 5071 "Campaign" (relates to)CampaignTable 5401 "Item Variant" (relates to)Table 5404 "Item Unit of Measure" (relates to)Item Unit of MeasureTable 7000 "Price List Header" (relates to)Page 7001 "Price List Lines" (pages and codeunits on it)Page 7005 "Price List Line Review" (pages and codeunits on it)Page 7010 "Get Price Line" (pages and codeunits on it)Page 7011 "Purchase Price List Lines" (pages and codeunits on it)Page 7024 "Prices Overview" (pages and codeunits on it)Table extension 6484 "Serv. PriceList Line Ext." (extended by)Codeunit 8055 "Sub. Contracts Item Management" (event subscribers, 3 links)Sub. Contracts Item ManagementCodeunit 7017 "Price List Management" (event subscribers)Codeunit 4114 "Price List Line Sync" (calls, 2 links)Price List Line SyncCodeunit 4030 "Client Type Management" (calls)Codeunit 7017 "Price List Management" (calls)Record special sales prices and discounts (Learn pages)Set up prices and discounts (Learn pages)

Open in the neighbourhood explorer

One hop out, from the extracted relations and call graph. Up to 40 shown; the sections below list them all.

Base Application · Microsoft.Pricing.PriceList · BC23-30 · source at ea08af5e · facts from BC29

Learn documents this table through its pages: Page 7001 “Price List Lines” (1 Learn page), Page 7011 “Purchase Price List Lines” (1), Page 7024 “Prices Overview” (1).

Properties

Property Value
DataClassification CustomerContent

Fields

Explanation: the field’s ToolTip in the code; without one, the ToolTip of a page control bound to the field (marked via the page); without that, its Caption (marked caption) when that differs from the name.

No. Name Type Explanation Notes
1 Price List Code Δ BC28 Code[20] Specifies the unique identifier of the price list. TableRelation Table 7000 “Price List Header” (Price List Header)
2 Line No. Integer — AutoIncrement
3 Source Type Δ BC28 Enum “Price Source Type” Specifies the type of the entity that offers the price or the line discount on the product. enum Enum 7003 “Price Source Type”
4 Source No. Δ BC28 Code[20] Specifies the entity to which the prices are assigned. The options depend on the selection in the Assign-to Type field. If you choose an entity, the price list will be used only for that entity.
5 Parent Source No. Δ BC28 Code[20] Specifies the project to which the prices are assigned. If you choose an entity, the price list will be used only for that entity.
6 Source ID Guid Assign-to ID caption
7 Asset Type Δ BC28 Enum “Price Asset Type” Specifies the type of the product. enum Enum 7004 “Price Asset Type”
8 Asset No. Δ BC28 Code[20] Specifies the identifier of the product. If no product is selected, the price and discount values will apply to all products of the selected product type for which those values are not specified. For example, if you choose Item as the product type but do not specify a specific item, the price will a…
9 Variant Code Δ BC28 Code[10] Specifies the item variant.
10 Currency Code Δ BC28 Code[10] Specifies the currency that is used for the prices on the price list. The currency can be the same for all prices on the price list, or you can specify a currency for individual lines. TableRelation Table 4 “Currency”
11 Work Type Code Δ BC28 Code[10] Specifies the work type code for the resource. TableRelation Table 200 “Work Type” (Work Type)
12 Starting Date Δ BC28 Date Specifies the date from which the price is valid.
13 Ending Date Δ BC28 Date Specifies the last date that the price is valid.
14 Minimum Quantity Δ BC28 Decimal Specifies the minimum quantity of the product.
15 Unit of Measure Code Δ BC28 Code[10] Specifies the unit of measure for the product.
16 Amount Type Δ BC28 Enum “Price Amount Type” Specifies whether the price list line defines prices, discounts, or both. enum Enum 7001 “Price Amount Type”
17 Unit Price Δ BC28 Decimal Specifies the unit price of the product.
18 Cost Factor Δ BC28 Decimal Specifies the unit cost factor for project-related prices, if you have agreed with your customer that he should pay certain item usage by cost value plus a certain percent value to cover your overhead expenses.
19 Unit Cost Δ BC28 Decimal Specifies the unit cost of the resource.
20 Line Discount % Δ BC28 Decimal Specifies the line discount percentage for the product.
21 Allow Line Disc. Δ BC28 Boolean Specifies if a line discount will be calculated when the price is offered.
22 Allow Invoice Disc. Δ BC28 Boolean Specifies if an invoice discount will be calculated when the price is offered.
23 Price Includes VAT Δ BC28 Boolean Specifies if prices include VAT.
24 VAT Bus. Posting Gr. (Price) Code[20] Specifies the default VAT business posting group code. via Page 7001 “Price List Lines” TableRelation Table 323 “VAT Business Posting Group” (VAT Business Posting Group)
25 VAT Prod. Posting Group Code[20] — TableRelation Table 324 “VAT Product Posting Group” (VAT Product Posting Group)
26 Asset ID Guid —
27 Line Amount Decimal — not editable
28 Price Type Δ BC28 Enum “Price Type” Specifies the price type: sale or purchase price. enum Enum 7009 “Price Type”
29 Description Δ BC28 Text[100] Specifies the description of the product.
30 Status Δ BC28 Enum “Price Status” Specifies whether the price list line is in Draft status and can be edited, Inactive and cannot be edited or used, or Active and used for price calculations. enum Enum 7005 “Price Status”
31 Direct Unit Cost Δ BC28 Decimal Specifies the direct unit cost of the product.
32 Source Group Enum “Price Source Group” — enum Enum 7002 “Price Source Group”
33 Product No. Δ BC28 Code[20] Specifies the identifier of the product. If no product is selected, the price and discount values will apply to all products of the selected product type for which those values are not specified. For example, if you choose Item as the product type but do not specify a specific item, the price will a… TableRelation Table 15 “G/L Account”, Table 152 “Resource Group”, Table 156 “Resource” (if (“Asset Type” = const(Item)) Item where(“No.” = field(“Product No.”)) else if (“Asset Type” = const(“G/L Account”)) “G/L Account” else if (“Asset Type” = const(Resource)) Resource else if (“Asset Type” = const(“Resource Group”)) “Resource Group” else if (“Asset Type” = const(“Item Discount Group”…)
34 Assign-to No. Δ BC28 Code[20] Specifies the entity to which the prices are assigned. The options depend on the selection in the Assign-to Type field. If you choose an entity, the price list will be used only for that entity. TableRelation Table 18 “Customer”, Table 340 “Customer Discount Group”, Table 5050 “Contact” (if (“Source Type” = const(Campaign)) Campaign else if (“Source Type” = const(Contact)) Contact else if (“Source Type” = const(Customer)) Customer else if (“Source Type” = const(“Customer Disc. Group”)) “Customer Discount Group” else if (“Source Type” = const(“Customer Price Group”)) “Customer Price …)
35 Assign-to Parent No. Δ BC28 Code[20] Specifies the project to which the prices are assigned. If you choose an entity, the price list will be used only for that entity. TableRelation Table 167 “Job” (if (“Source Type” = const(“Job Task”)) Job)
36 Variant Code Lookup Δ BC28 Code[10] Specifies the item variant. TableRelation Table 5401 “Item Variant” (if (“Asset Type” = const(Item)) “Item Variant”.Code where(“Item No.” = field(“Asset No.”)))
37 Unit of Measure Code Lookup Δ BC28 Code[10] Specifies the unit of measure for the product. TableRelation Table 204 “Unit of Measure”, Table 205 “Resource Unit of Measure”, Table 5404 “Item Unit of Measure” (if (“Asset Type” = const(Item)) “Item Unit of Measure”.Code where(“Item No.” = field(“Asset No.”)) else if (“Asset Type” = const(Resource)) “Resource Unit of Measure”.Code where(“Resource No.” = field(“Asset No.”)) else if (“Asset Type” = const(“Resource Group”)) “Unit of Measure”)

Keys

  • PK: Price List Code, Line No. (clustered)
  • Key1: Asset Type, Asset No., Source Type, Source No., Starting Date, Currency Code, Variant Code, Unit of Measure Code, Minimum Quantity
  • Key2: Source Type, Source No., Asset Type, Asset No., Starting Date, Currency Code, Variant Code, Unit of Measure Code, Minimum Quantity
  • Key3: Status, Price Type, Amount Type, Currency Code, Unit of Measure Code, Source Type, Source No., Asset Type, Asset No., Variant Code, Starting Date, Ending Date, Minimum Quantity
  • Key4: Status, Price Type, Amount Type, Currency Code, Unit of Measure Code, Source Type, Parent Source No., Source No., Asset Type, Asset No., Work Type Code, Starting Date, Ending Date, Minimum Quantity
  • Key5: Product No., Asset No.

Events published

  • OnAfterCopyFromForPriceAsset(PriceAsset: Record "Price Asset"; var PriceListLine: Record "Price List Line") (integration)
  • OnAfterCopyFromPriceListHeader(PriceListHeader: Record "Price List Header"; ForceDefaults: Boolean) (integration)
  • OnAfterCopyFromPriceSource(PriceSource: Record "Price Source"; var PriceListLine: Record "Price List Line") (integration)
  • OnAfterCopyPriceFrom(var PriceListLine: Record "Price List Line"; PriceAsset: Record "Price Asset") (integration)
  • OnAfterCopySourceFrom(var PriceListLine: Record "Price List Line"; PriceListHeader: Record "Price List Header") (integration)
  • OnAfterCopyToPriceAsset(var PriceAsset: Record "Price Asset") (integration)
  • OnAfterCopyToPriceSource(var PriceSource: Record "Price Source") (integration)
  • OnAfterInitHeaderDefaults(PriceListHeader: Record "Price List Header") (integration)
  • OnAfterIsAllowedEditingActivePrice(PriceListLine: Record "Price List Line"; var Result: Boolean) (integration)
  • OnAfterIsUOMSupported(PriceListLine: Record "Price List Line"; var Result: Boolean) (integration)
  • OnAfterVerify(var PriceListLine: Record "Price List Line") (integration)
  • OnBeforeVerify(var PriceListLine: Record "Price List Line"; var IsHandled: Boolean) (integration)
  • OnCopyFilteredLinesToTemporaryBufferOnBeforeInsert(var TempPriceListLine: Record "Price List Line" temporary) (integration)
  • OnBeforeCopyFromAssetType(var PriceListLine: Record "Price List Line"; var IsHandled: Boolean) (integration)
  • OnBeforeSetNextLineNo(var PriceListLine: Record "Price List Line"; var IsHandled: Boolean) (integration)
  • OnCopyFromAssetTypeElseCase(var PriceListLine: Record "Price List Line"; var IsHandled: Boolean) (integration)
  • OnCopyFromAssetTypeOnAfterCopyFromAssetTypeItem(Item: Record Item; var PriceListLine: Record "Price List Line") (integration)
  • OnCopyFromAssetTypeOnAfterCopyFromAssetTypeGLAccount(GLAccount: Record "G/L Account"; var PriceListLine: Record "Price List Line") (integration)
  • OnCopyFromAssetTypeOnAfterCopyFromAssetTypeResource(Resource: Record Resource; var PriceListLine: Record "Price List Line") (integration)
  • OnAfterCopyFilteredLinesToTemporaryBuffer(var TempPriceListLine: Record "Price List Line" temporary) (integration)
  • OnBeforeCopyFilteredLinesToTemporaryBuffer(var PriceListLine: Record "Price List Line"; var TempPriceListLine: Record "Price List Line" temporary; var Copied: Boolean; var IsHandled: Boolean) + BC24 (integration)

Trigger event subscribers

Procedures

  • SetNextLineNo()
  • IsAssetItem(): Boolean
  • IsAssetResource(): Boolean
  • IsEditable(): Boolean
  • IsHeaderActive(): Boolean
  • IsLineToVerify(): Boolean
  • IsUOMSupported(): Boolean
  • IsAmountMandatory(AmountType: enum "Price Amount Type"): Boolean
  • IsAmountSupported(): Boolean
  • IsRealLine(): Boolean
  • IsSourceNoAllowed(): Boolean
  • CheckAmountType(FldCaption: Text; AmountType: Enum "Price Amount Type") Δ BC28
  • CopySourceFrom(PriceListHeader: Record "Price List Header")
  • CopyFrom(PriceListHeader: Record "Price List Header")
  • CopyFrom(PriceListHeader: Record "Price List Header"; ForceDefaults: Boolean)
  • CopyFrom(PriceAsset: Record "Price Asset")
  • CopyPriceFrom(PriceAsset: Record "Price Asset")
  • SetNewRecord(NewRecord: Boolean)
  • CopyTo(var PriceAsset: Record "Price Asset")
  • CopyTo(var PriceSource: Record "Price Source")
  • CopyFilteredLinesToTemporaryBuffer(var TempPriceListLine: Record "Price List Line" temporary): Boolean
  • SetHeader(var NewPriceListHeader: Record "Price List Header")
  • SetAssetNo(AssetNo: Code[20])
  • SyncDropDownLookupFields()
  • TestStatusDraft()
  • Verify()
  • VerifySource()
  • UseCustomizedLookup(): Boolean
  • RenameNo(LineType: Enum "Price Asset Type"; OldNo: Code[20]; NewNo: Code[20])

Plus 14 local procedures.

Triggers

OnDelete, OnInsert

Relations

Pages and codeunits on this table

Extended by

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.

Countries that replace it

AU, NZ

Source: AL metadata extracted from the code (names, ids, signatures, properties); no code bodies (D10).

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: "table", object_name: "Price List Line"), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.

Evidence 1 sources