---
id: object/page/10029-ca
type: object
title: Page 10029 "Sales Order Invoice Subform" (CA)
summary: Page 10029 "Sales Order Invoice Subform" (CA) in the CA country layer (Microsoft.Sales.Document). 12 public procedures. Introduced in BC29, still in BC30.
tier: official
language: en
tags:
  - page
  - ca layer
versions:
  introduced: "29"
  last_changed: null
  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: 68b4df3aa021dd475c9faf6b8d4feddaa643472626cd0c34f14708b52f4d62fc
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/NA/BaseApp/Local/Sales/Document/SalesOrderInvoiceSubform.Page.al
    title: src/Layers/NA/BaseApp/Local/Sales/Document/SalesOrderInvoiceSubform.Page.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
links:
  learn: []
  objects: []
  features: []
  topics: []
  localizations:
    - localization/ca
  videos: []
  posts: []
  guidelines: []
object_type: page
object_id: 10029
name: Sales Order Invoice Subform
caption: Lines
namespace: Microsoft.Sales.Document
app: Base Application
extends: null
first_version: "29"
last_version: "30"
present_in:
  - "29"
  - "30"
changed_in: []
source_major: "29"
obsolete: null
countries: []
ms_search_form_ids: []
country: CA
counts:
  fields: 0
  procedures: 15
  events: 0
  subscribers: 0
  controls: 39
  actions: 5
relations:
  out: 0
  referenced_by: 0
  pages: 0
  extended_by: 0
  event_subscribers: 0
---

# Page 10029 "Sales Order Invoice Subform" (CA)

> Page 10029 "Sales Order Invoice Subform" (CA) in the CA country layer (Microsoft.Sales.Document). 12 public procedures. Introduced in BC29, still in BC30.

CA country layer · Microsoft.Sales.Document · captioned "Lines" · BC29-30 · [source at ea08af5e](https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/NA/BaseApp/Local/Sales/Document/SalesOrderInvoiceSubform.Page.al) · facts from BC29

An object of the [CA localization](../../localizations/ca.md), not part of W1.

## Properties

| Property | Value |
|---|---|
| Caption | Lines |
| SourceTable | Sales Line |
| PageType | ListPart |

## 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 |
|---|---|---|---|
| Control1 | Type | `Rec.Type` | Specifies the type of the record on the document line. |
|  | No. | `Rec."No."` | Specifies the number of the record. |
|  | Variant Code | `Rec."Variant Code"` | Specifies the variant number of the items sold. |
|  | Substitution Available | `Rec."Substitution Available"` | Specifies that a substitute is available for the item on the sales line. |
|  | Purchasing Code | `Rec."Purchasing Code"` | Specifies the purchasing code for the item. |
|  | Nonstock | `Rec.Nonstock` | Specifies that the item on the sales line is a catalog item (an item not normally kept in inventory). |
|  | Description | `Rec.Description` | Specifies a description of the invoice line. |
|  | Control26 | `Rec."Drop Shipment"` | Specifies whether to ship the items on the line directly to your customer. |
|  | Control106 | `Rec."Special Order"` | Specifies that the item on the sales line is a special-order item. |
|  | Package Tracking No. | `Rec."Package Tracking No."` | Specifies the shipping agent's package number. |
|  | Quantity | `Rec.Quantity` | Specifies the quantity of items on document line. |
|  | Unit of Measure Code | `Rec."Unit of Measure Code"` | Specifies the item's unit of measure. |
|  | Unit of Measure | `Rec."Unit of Measure"` | Specifies the item's unit of measure. |
|  | Unit Price | `Rec."Unit Price"` | Specifies the price for one unit of the item. |
|  | Tax Liable | `Rec."Tax Liable"` | Specifies that the bill-to customer is liable for sales tax. |
|  | Tax Area Code | `Rec."Tax Area Code"` | Specifies the tax area that is used to calculate and post sales tax. |
|  | Tax Group Code | `Rec."Tax Group Code"` | Specifies the tax group that is used to calculate and post sales tax. |
|  | Line Amount | `Rec."Line Amount"` | Specifies the amount of the sales line, calculated as the quantity times the unit price minus any percentage value in the Line Discount % field. If the Prices Including VAT check box on the customer card is selected, the amount includes VAT. |
|  | Amount Including VAT | `Rec."Amount Including VAT"` | Specifies the sum of the amounts in the Amount Including VAT fields on the associated sales lines. |
|  | Line Discount % | `Rec."Line Discount %"` | Specifies the discount percentage that is granted to the amount on the line. |
|  | Line Discount Amount | `Rec."Line Discount Amount"` | Specifies the amount of the discount that will be given on the invoice line. |
|  | Allow Invoice Disc. | `Rec."Allow Invoice Disc."` | Specifies if the invoice line can be included in a possible invoice discount calculation. The value is copied from the Allow Invoice Disc. field on the sales line. |
|  | Inv. Discount Amount | `Rec."Inv. Discount Amount"` | Specifies the invoice discount amount that is calculated on the line if you click Actions, point to Functions, and then click Calculate Invoice Discount. |
|  | Quantity Shipped | `Rec."Quantity Shipped"` | Specifies how many of the units in the Quantity field have been posted as shipped. |
|  | Qty. to Invoice | `Rec."Qty. to Invoice"` | Specifies how many of the units in the Quantity field to post as invoiced. |
|  | Quantity Invoiced | `Rec."Quantity Invoiced"` | Specifies how many of the units in the Quantity field have been posted as invoiced. |
|  | Allow Item Charge Assignment | `Rec."Allow Item Charge Assignment"` | Specifies that you can assign item charges to this line. |
|  | Qty. to Assign | `Rec."Qty. to Assign"` | Specifies how many of the units in the Quantity field to assign. |
|  | Qty. Assigned | `Rec."Qty. Assigned"` | Specifies how many of the units in the Quantity field have been assigned. |
|  | Shipment Date | `Rec."Shipment Date"` | Specifies the date that the items on the line are in inventory and available to be picked. The shipment date is the date you expect to ship the items on the line. |
|  | FA Posting Date | `Rec."FA Posting Date"` | Specifies the posting date for the fixed asset. |
|  | Shortcut Dimension 1 Code | `Rec."Shortcut Dimension 1 Code"` | Specifies the dimension value code that the sales line is associated with. |
|  | Shortcut Dimension 2 Code | `Rec."Shortcut Dimension 2 Code"` | Specifies the dimension value code that the sales line is associated with. |
|  | ShortcutDimCode[3] | `ShortcutDimCode[3]` | — |
|  | ShortcutDimCode[4] | `ShortcutDimCode[4]` | — |
|  | ShortcutDimCode[5] | `ShortcutDimCode[5]` | — |
|  | ShortcutDimCode[6] | `ShortcutDimCode[6]` | — |
|  | ShortcutDimCode[7] | `ShortcutDimCode[7]` | — |
|  | ShortcutDimCode[8] | `ShortcutDimCode[8]` | — |

## Actions

| Group | Action | ToolTip | Runs |
|---|---|---|---|
| Drop Shipment | Purchase Order | Purchase goods or services from a vendor. |  |
| Special Order | Purchase Order | Purchase goods or services from a vendor. |  |
| Line | Dimensions | View or edit dimensions, such as area, project, or department, that you can assign to sales and purchase documents to distribute costs and analyze transaction history. |  |
|  | Item Charge Assignment | Record additional direct costs, for example for freight. This action is available only for Charge (Item) line types. |  |
|  | Item Tracking Lines | View or edit serial, lot and package numbers for the selected item. This action is available only for lines that contain an item. |  |

## Procedures

- `ApproveCalcInvDisc()`
- `CalcInvDisc()`
- `ExplodeBOM()`
- `OpenPurchOrderForm()`
- `InsertExtendedText(Unconditionally: Boolean)`
- `ShowLineReservation()`
- `ItemAvailability(AvailabilityType: Option Date,Variant,Location,Bin)`
- `ShowReservationEntries()`
- `ShowNonstockItems()`
- `ShowTracking()`
- `ItemChargeAssgnt()`
- `UpdateForm(SetSaveRecord: Boolean)`

Plus 3 local procedures.

## Triggers

OnAfterGetRecord, OnNewRecord

## Across versions

- Present in: BC29-30
- Changed (declaration) in: none

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: "Sales Order Invoice Subform")`, then `bcatlas_get_procedure_body` or `bcatlas_get_neighbors` on the returned id.

A CA country object, not part of W1: the default corpus does not have it; `bcatlas_list_countries` shows which countries the atlas has.
