---
id: object/page/7012
type: object
title: Page 7012 "Purchase Prices"
summary: Page 7012 "Purchase Prices" in Base Application (Microsoft.Purchases.Pricing). 3 public procedures. Present since at least BC23, still in BC30, changed in BC24-25, BC28.
tier: official
language: en
tags:
  - page
  - base application
versions:
  introduced: null
  last_changed: "28"
  deprecated: null
review:
  state: derived
  by: null
  at: null
  flags: []
generated:
  at: "2026-10-11T00:31:51.816Z"
  pipeline: 0.2.0
  prompts: {}
  input_hash: 4e11442c181ee6826bef01b08335515d345fe6ca3d0ec5e403cb6c2f53118919
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Purchases/Pricing/PurchasePrices.Page.al
    title: src/Layers/W1/BaseApp/Purchases/Pricing/PurchasePrices.Page.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/purchasing-how-record-purchase-price-discount-payment-agreements
    title: Record special purchase prices and discounts
    date: null
    commit: null
    t: null
    quote: null
links:
  learn:
    - https://learn.microsoft.com/dynamics365/business-central/purchasing-how-record-purchase-price-discount-payment-agreements
  objects: []
  features: []
  topics:
    - topic/business-central/business-functionality/set-up-business-central/set-up-purchase
  localizations: []
  videos: []
  posts: []
  guidelines: []
object_type: page
object_id: 7012
name: Purchase Prices
namespace: Microsoft.Purchases.Pricing
app: Base Application
extends: null
first_version: "23"
last_version: "30"
present_in:
  - "23"
  - "24"
  - "25"
  - "26"
  - "27"
  - "28"
  - "29"
  - "30"
changed_in:
  - "24"
  - "25"
  - "28"
source_major: "29"
obsolete: null
countries: []
ms_search_form_ids:
  - docs/learn-smb-docs/business-central/purchasing-how-record-purchase-price-discount-payment-agreements.md
counts:
  fields: 0
  procedures: 9
  events: 0
  subscribers: 0
  controls: 12
  actions: 1
relations:
  out: 1
  referenced_by: 0
  pages: 0
  extended_by: 0
  event_subscribers: 0
  calls: 0
  called_by: 0
  implements: 0
---

# Page 7012 "Purchase Prices"

> Page 7012 "Purchase Prices" in Base Application (Microsoft.Purchases.Pricing). 3 public procedures. Present since at least BC23, still in BC30, changed in BC24-25, BC28.

Base Application · Microsoft.Purchases.Pricing · BC23-30 · [source at ea08af5e](https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Purchases/Pricing/PurchasePrices.Page.al) · facts from BC29

## Properties

| Property | Value |
|---|---|
| Caption | Purchase Prices |
| SourceTable | Purchase Price |
| PageType | Worksheet |

## 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 | Vendor No. Filter | `VendNoFilter` | Specifies a filter for which purchase prices display. |
|  | Item No. Filter | `ItemNoFilter` | Specifies a filter for which purchase prices to display. |
|  | Starting Date Filter | `StartingDateFilter` | Specifies a filter for which purchase prices to display. |
| Control1 | Vendor No. | [Vendor No.](../table/7012.md#fields) | Specifies the number of the vendor who offers the line discount on the item. <small>from the table field</small> |
|  | Item No. | [Item No.](../table/7012.md#fields) | Specifies the number of the item that the purchase price applies to. <small>from the table field</small> |
|  | Variant Code | [Variant Code](../table/7012.md#fields) | Specifies the variant of the item on the line. <small>from the table field</small> |
|  | Currency Code | [Currency Code](../table/7012.md#fields) | Specifies the currency code of the purchase price. <small>from the table field</small> |
|  | Unit of Measure Code | [Unit of Measure Code](../table/7012.md#fields) | 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. <small>from the table field</small> |
|  | Minimum Quantity | [Minimum Quantity](../table/7012.md#fields) | Specifies the minimum quantity of the item that you must buy from the vendor in order to get the purchase price. <small>from the table field</small> |
|  | Direct Unit Cost | [Direct Unit Cost](../table/7012.md#fields) | Specifies the cost of one unit of the selected item or resource. <small>from the table field</small> |
|  | Starting Date | [Starting Date](../table/7012.md#fields) | Specifies the date from which the purchase price is valid. <small>from the table field</small> |
|  | Ending Date | [Ending Date](../table/7012.md#fields) | Specifies the date to which the purchase price is valid. <small>from the table field</small> |

## Actions

| Group | Action | ToolTip | Runs |
|---|---|---|---|
| Processing | Copy Prices | Select prices and press OK to copy them to Vendor No. |  |

## Procedures

- `SetRecFilters()`
- `CheckFilters(TableNo: Integer; FilterTxt: Text)`
- `GetSelectionFilter(var PurchasePrice: Record "Purchase Price")`

Plus 6 local procedures.

## Triggers

OnOpenPage

## Relations

- source table [Table 7012 "Purchase Price"](../table/7012.md)

## Across versions

- Present in: BC23-30
- Changed (declaration) in: BC24-25, BC28

## Documented on Microsoft Learn

- [Record special purchase prices and discounts](https://learn.microsoft.com/dynamics365/business-central/purchasing-how-record-purchase-price-discount-payment-agreements)

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). 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: "Purchase Prices")`, then `bcatlas_get_procedure_body` or `bcatlas_get_neighbors` on the returned id.
