---
title: "Table 904 Assemble-to-Order Link"
author: "Jonas Paprotka"
url: https://jonas-paprotka.de/ref/table/904-assemble-to-order-link/
type: table
id: 904
name: "Assemble-to-Order Link"
app: "Base Application"
namespace: Microsoft.Assembly.Document
versions: "17-28"
build: 28.5.54151.54365
source: "https://jonas-paprotka.de/ref/table/904-assemble-to-order-link/source/29/"
checked: 2026-09-20
subject: "Microsoft Dynamics 365 Business Central"
license: "Content © 2026 Jonas Paprotka. Quote freely with attribution and a link."
---

# Table 904 Assemble-to-Order Link

Jonas Paprotka, https://jonas-paprotka.de/ref/table/904-assemble-to-order-link/

| | |
| --- | --- |
| App | Base Application |
| Namespace | Microsoft.Assembly.Document |
| Versions | 17-28 |
| Source file | Assembly/Document/AssembletoOrderLink.Table.al |

## Fields

| Id | Name | Type | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- |
| 1 | Assembly Document Type | Enum Assembly Document Type | 17-28 | - | - |
| 2 | Assembly Document No. | Code[20] | 17-28 | - | - |
| 11 | Type | Enum Assemble-to-Order Link Type | 17-28 | - | - |
| 12 | Document Type | Enum Sales Document Type | 17-28 | - | - |
| 13 | Document No. | Code[20] | 17-28 | - | - |
| 14 | Document Line No. | Integer | 17-28 | - | - |
| 20 | Assembled Quantity | Decimal | 17-28 | - | - |
| 40 | Job No. | Code[20] | 24-28 | - | - |
| 41 | Job Task No. | Code[20] | 24-28 | - | - |

## Keys

| Name | Fields | Versions |
| --- | --- | --- |
| Key1, clustered | Assembly Document Type, Assembly Document No. | 17-28 |
| Key2 | Type, Document Type, Document No., Document Line No. | 17-28 |
| Key3 | Type, Job No., Job Task No., Document Line No. | 24-28 |

## Procedures

| Name | Parameters | Returns | Access | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- | --- |
| UpdateAsmFromSalesLine | (var Record Sales Line) | - | public | 17-28 | - | - |
| UpdateAsmFromSalesLineATOExist | (var Record Sales Line) | - | public | 17-28 | - | - |
| UpdateAsmDimFromSalesLine | (Record Sales Line) | - | public | 17-28 | - | - |
| UpdateQtyToAsmFromSalesLine | (Record Sales Line) | - | public | 17-28 | - | - |
| UpdateQtyToAsmFromWhseShptLine | (Record Warehouse Shipment Line) | - | public | 17-28 | - | - |
| UpdateQtyToAsmFromInvtPickLine | (Record Warehouse Activity Line) | - | public | 17-28 | - | - |
| UpdateAsmBinCodeFromSalesLine | (Record Sales Line) | - | public | 17-28 | - | - |
| UpdateAsmBinCodeFromWhseShptLine | (Record Warehouse Shipment Line) | - | public | 17-28 | - | - |
| UpdateAsmBinCodeFromInvtPickLine | (Record Warehouse Activity Line) | - | public | 17-28 | - | - |
| DeleteAsmFromSalesLine | (Record Sales Line) | - | public | 17-28 | - | - |
| InsertAsmHeader | (var Record Assembly Header, Enum Assembly Document Type, Code[20]) | - | public | 17-28 | - | - |
| MakeAsmOrderLinkedToSalesOrderLine | (Record Sales Line, Record Sales Line) | - | public | 17-28 | - | - |
| ReserveAsmToSale | (var Record Sales Line, Decimal, Decimal) | - | public | 17-28 | - | - |
| RollUpPrice | (Record Sales Header, var Record Sales Line) | - | public | 17-28 | - | - |
| RollUpCost | (var Record Sales Line) | - | public | 17-28 | - | - |
| ShowAsm | (Record Sales Line) | - | public | 17-28 | - | - |
| ShowAsmToOrderLines | (Record Sales Line) | - | public | 17-28 | - | - |
| ShowSales | (Record Assembly Header) | - | public | 17-28 | - | - |
| SalesLineCheckAvailShowWarning | (Record Sales Line, var Record Assembly Header, var Record Assembly Line) | Boolean | public | 17-28 | - | - |
| ATOCopyCheckAvailShowWarning | (Record Assembly Header, Record Sales Line, var Record Assembly Header, var Record Assembly Line, Boolean) | Boolean | public | 17-28 | - | - |
| PstdATOCopyCheckAvailShowWarn | (Record Posted Assembly Header, Record Sales Line, var Record Assembly Header, var Record Assembly Line, Boolean) | Boolean | public | 17-28 | - | - |
| AsmExistsForSalesLine | (Record Sales Line) | Boolean | public | 17-28 | - | - |
| AsmExistsForWhseShptLine | (Record Warehouse Shipment Line) | Boolean | public | 17-28 | - | - |
| GetAsmHeader | () | Boolean | public | 17-28 | - | - |
| GetATOLink | (Record Assembly Header) | Boolean | public | 17-28 | - | - |
| CheckQtyToAsm | (Record Assembly Header) | - | public | 17-28 | - | - |
| InitQtyToAsm | (Record Assembly Header, var Decimal, var Decimal) | - | public | 17-28 | - | - |
| ShowAsmOrders | (Record Sales Header) | - | public | 17-28 | - | - |
| SetHideConfirm | (Boolean) | - | public | 17-28 | - | - |
| UpdateAsmDimFromSalesLine | (Record Sales Line, Boolean) | - | public | 19-28 | - | - |
| TransAvailBOMCompToAsmLines | (var Record Assembly Header, var Record Assembly Line) | Boolean | public | 23-28 | - | - |
| UpdateAsmFromJobPlanningLine | (var Record Job Planning Line) | - | public | 24-28 | - | - |
| UpdateAsmBinCodeFromJobPlanningLine | (Record Job Planning Line) | - | internal | 24-28 | - | - |
| DeleteAsmFromJobPlanningLine | (Record Job Planning Line) | - | public | 24-28 | - | - |
| CheckIfAssembleToOrderLinkExist | (Record Job) | - | public | 24-28 | - | - |
| MakeAsmOrderLinkedToJobPlanningOrderLine | (var Record Job Planning Line) | - | public | 24-28 | - | - |
| ReserveAsmToJob | (var Record Job Planning Line, Decimal, Decimal) | - | public | 24-28 | - | - |
| ShowAsmDocument | () | - | public | 24-28 | - | - |
| ShowAsmToJobPlanningLines | (Record Job Planning Line) | - | public | 24-28 | - | - |
| ShowJobPlanningLines | () | - | public | 24-28 | - | - |
| AsmExistsForJobPlanningLine | (Record Job Planning Line) | Boolean | public | 24-28 | - | - |
| ShowAsmOrders | (Record Job, Code[20]) | - | public | 24-28 | - | - |

## Events

| Kind | Name | Parameters | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- |
| Integration event | OnAfterUpdateAsm | (Record Assembly Header) | 17-19 | - | - |
| Integration event | OnAfterRemoveTrackingFromReservation | (var Record Reservation Entry, var Record Tracking Specification, Record Item Tracking Code) | 17-28 | - | - |
| Integration event | OnBeforeAsmHeaderInsert | (var Record Assembly Header) | 17-28 | - | - |
| Integration event | OnBeforeAsmHeaderModify | (var Record Assembly Header, var Record Sales Line) | 17-28 | - | - |
| Integration event | OnBeforeChangeUOM | (var Record Assembly Header, Code[10], var Boolean) | 17-28 | - | - |
| Integration event | OnBeforeInsertAsmHeader | (var Record Assembly Header, Option, Code[20], var Boolean) | 17-28 | - | - |
| Integration event | OnBeforeNeedsSynchronization | (Record Assembly Header, Record Sales Line, var Boolean, var Boolean) | 17-28 | - | - |
| Integration event | OnBeforeRemoveTrackingFromReservation | (var Record Reservation Entry, Code[10]) | 17-28 | - | - |
| Integration event | OnBeforeSalesLineCheckAvailShowWarning | (Record Sales Line, var Boolean) | 17-28 | - | - |
| Integration event | OnMakeAsmOrderLinkedToSalesOrderLineOnBeforeCheckDocumentType | (var Record Assemble-to-Order Link, var Record Assembly Header, Record Assembly Header, Record Sales Line, Record Sales Line) | 17-28 | - | - |
| Integration event | OnRemoveTrackingFromReservationOnAfterSetTracking | (var Record Tracking Specification) | 17-28 | - | - |
| Integration event | OnRestoreItemTrackingOnAfterCreateReservEntryFrom | (var Record Tracking Specification) | 17-28 | - | - |
| Integration event | OnRollUpPriceOnAfterFindSalesLinePrice | (var Record Sales Header, var Record Sales Line) | 17-28 | - | - |
| Integration event | OnRollUpPriceOnBeforeFindSalesLinePrice | (var Record Sales Header, var Record Sales Line, Record Assembly Line) | 17-28 | - | - |
| Integration event | OnRollUpPriceOnBeforeModifySalesline | (var Record Sales Line) | 17-28 | - | - |
| Integration event | OnSynchronizeAsmFromSalesLineOnBeforeChangeQty | (var Record Assembly Header, var Record Sales Line) | 17-28 | - | - |
| Integration event | OnUpdateAsmOnBeforeSynchronizeAsmFromSalesLine | (var Record Assemble-to-Order Link, var Record Assembly Header, Record Sales Line) | 17-28 | - | - |
| Integration event | OnAfterTransAvailBOMCompToAsmLine | (var Record Assembly Line, Record BOM Component) | 17-28 | - | - |
| Integration event | OnTransAvailSalesLineToAsmHeaderOnBeforeNewAsmHeaderInitRemainingQty | (var Record Assembly Header, Record Sales Line, Record Assembly Header) | 17-28 | - | - |
| Integration event | OnAfterReserveAsmToSale | (var Record Assemble-to-Order Link, var Record Assembly Header, var Record Sales Line, var Record Tracking Specification, Decimal, Decimal) | 17-28 | - | - |
| Integration event | OnBeforeGetATOLink | (var Record Assemble-to-Order Link, var Record Assembly Header, var Boolean, var Boolean) | 18-28 | - | - |
| Integration event | OnSynchronizeAsmFromSalesLineOnAfterGetAsmHeader | (var Record Sales Line, var Record Assembly Header) | 18-23 | - | - |
| Integration event | OnAfterMaxQtyToAsm | (Record Sales Line, Record Assembly Header, var Decimal) | 19-28 | - | - |
| Integration event | OnAfterMaxQtyToAsmBase | (Record Sales Line, Record Assembly Header, var Decimal) | 19-28 | - | - |
| Integration event | OnRestoreItemTrackingOnBeforeTrackingSpecificationLoop | (var Record Tracking Specification) | 19-28 | - | - |
| Integration event | OnUpdateAsmOnBeforeAsmReOpenIfReleased | (var Record Assemble-to-Order Link, var Record Assembly Header) | 19-28 | - | - |
| Integration event | OnAfterUpdateAsm | (var Record Assembly Header, var Record Assemble-to-Order Link, var Record Sales Line, Boolean) | 20-28 | - | - |
| Integration event | OnAfterTransAvailAsmHeaderToAsmLine | (var Record Assembly Line, var Record Assembly Header) | 21-28 | - | - |
| Integration event | OnBeforeChangeDate | (var Record Assembly Header, Date, var Boolean) | 21-28 | - | - |
| Integration event | OnBeforeReserveAsmToSale | (var Record Sales Line, Decimal, Decimal, var Boolean) | 21 | - | - |
| Integration event | OnBeforeShowAsmToOrderLines | (Record Sales Line, var Boolean) | 21-28 | - | - |
| Integration event | OnBeforeTransAvailBOMCompToAsmLine | (var Record Assembly Line, Record BOM Component, var Boolean) | 21-28 | - | - |
| Integration event | OnBeforeUpdateAsm | (var Record Sales Line, Boolean, var Boolean) | 21-28 | - | - |
| Integration event | OnCopyAsmToNewAsmOrderOnToAsmOrderLineInsert | (Record Assembly Line, var Record Assembly Line) | 21-28 | - | - |
| Integration event | OnUpdateAsmOnAfterCalcShouldDeleteAsm | (var Record Sales Line, var Boolean) | 21-28 | - | - |
| Integration event | OnBeforeReserveAsmToSale | (var Record Sales Line, Decimal, Decimal, var Boolean, var Record Assemble-to-Order Link) | 22-28 | - | - |
| Integration event | OnBeforeRollUpPrice | (var Record Sales Line, var Record Assemble-to-Order Link, var Boolean) | 22-28 | - | - |
| Integration event | OnBeforeUpdateQtyToAsmFromWhseShptLine | (Record Warehouse Shipment Line, var Boolean) | 22-25 | - | - |
| Integration event | OnBeforeAsmExistsForWhseShptLine | (var Record Assemble-to-Order Link, Record Warehouse Shipment Line, var Boolean, var Boolean) | 22-28 | - | - |
| Integration event | OnBeforeShowSales | (Record Assembly Header, var Boolean) | 22-28 | - | - |
| Integration event | OnBeforeInitQtyToAsm | (Record Assembly Header, var Decimal, var Decimal, var Boolean) | 22-28 | - | - |
| Integration event | OnBeforeCheckQtyToAsm | (Record Assembly Header, var Boolean) | 22-28 | - | - |
| Integration event | OnRollUpCostOnBeforeModifySalesLine | (var Record Sales Line) | 23-28 | - | - |
| Integration event | OnBeforeGetAsmHeader | (Record Assemble-to-Order Link, var Record Assembly Header, var Boolean, var Boolean) | 23-28 | - | - |
| Integration event | OnBeforeNeedsSynchronizationForProjectPlanningLine | (Record Assembly Header, Record Job Planning Line, var Boolean, var Boolean) | 24-28 | - | - |
| Integration event | OnSynchronizeAsmFromSalesLineOnAfterGetAsmHeader | (var Record Sales Line, var Record Assembly Header, var Boolean) | 24-28 | - | - |
| Integration event | OnBeforeUpdateQtyToAsmFromWhseShptLine | (Record Warehouse Shipment Line, var Boolean, var Boolean) | 26-28 | - | - |
| Integration event | OnUpdateQtyToAsmFromSalesLineOnBeforeUpdateQtyToAsm | (var Record Sales Line, var Boolean) | 26-28 | - | - |

## Source

Symbols: Microsoft.BaseApplication.symbols.437dbf0e-84ff-417a-965d-ed2bb9650972, https://dynamicssmb2.pkgs.visualstudio.com/DynamicsBCPublicFeeds/_packaging/MSSymbols/nuget/v3/index.json, highest build per major on 2026-09-20.
AL source 29: https://github.com/microsoft/BCApps, MIT, releases/29.x at a66254c3b8b5bb1cea290dc8f9d097aec4381153.

Jonas Paprotka, 2026-09-20.
