Page 95 "Sales Quote Subform"
Base Application · Microsoft.Sales.Document
Across versions
- BC23present
- BC241 events changed
- BC25unchanged
- BC261 events added
- BC27-30unchanged
Neighbourhood 19 connected objects and pages
Base Application · Microsoft.Sales.Document · captioned “Lines” · BC23-30 · source at ea08af5e · facts from BC29
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 | Type | Specifies the type of entity that will be posted for this sales line, such as Item, Resource, or G/L Account. |
| Type | TypeAsText |
Specifies the type of transaction that will be posted with the document line. If you select Comment, then you can enter any text in the Description field, such as a message to a customer. | |
| No. | No. | Specifies the number of a general ledger account, item, resource, additional cost, or fixed asset, depending on the contents of the Type field. | |
| Item Reference No. | Item Reference No. | Specifies the referenced item number. from the table field | |
| Variant Code | Variant Code | Specifies the variant of the item on the line. from the table field | |
| Substitution Available | Substitution Available | Specifies that a substitute is available for the item on the sales line. from the table field | |
| Nonstock | Nonstock | Specifies that this item is a catalog item. from the table field | |
| Gen. Bus. Posting Group | Gen. Bus. Posting Group | Specifies the vendor’s or customer’s trade type to link transactions made for this business partner with the appropriate general ledger account according to the general posting setup. from the table field | |
| Gen. Prod. Posting Group | Gen. Prod. Posting Group | Specifies the item’s product type to link transactions made for this item with the appropriate general ledger account according to the general posting setup. from the table field | |
| VAT Bus. Posting Group | VAT Bus. Posting Group | Specifies the vendor’s VAT specification to link transactions made for this vendor with the appropriate general ledger account according to the VAT posting setup. from the table field | |
| VAT Prod. Posting Group | VAT Prod. Posting Group | Specifies the VAT product posting group. Links business transactions made for the item, resource, or G/L account with the general ledger, to account for VAT amounts resulting from trade with that record. from the table field | |
| Description | Description | Specifies a description of the item you’re offering to the customer. The suggested text comes from the item, but you can change it to suit this document without changing the original description. If you’re adding a comment (you’ve chosen Comment in the Type field), this is where you enter it. For co… | |
| Description 2 | Description 2 | Specifies information in addition to the description. from the table field | |
| Location Code | Location Code | Specifies the inventory location from which the items sold should be picked and where the inventory decrease is registered. from the table field | |
| Quantity | Quantity | Specifies how many units are being sold. from the table field | |
| Qty. to Assemble to Order | Qty. to Assemble to Order | Specifies how many units of the sales line quantity that you want to supply by assembly. 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 | |
| Unit of Measure | Unit of Measure | Specifies the unit of measure for the item or resource on the sales line. from the table field | |
| Unit Cost (LCY) | Unit Cost (LCY) | Specifies the unit cost of the item on the line. | |
| Sales Price Exists | Rec.PriceExists() |
Specifies that there is a specific price for this customer. | |
| Unit Price | Unit Price | Specifies the price for one unit on the sales line. from the table field | |
| Tax Liable | Tax Liable | Specifies if the customer or vendor is liable for sales tax. from the table field | |
| Tax Area Code | Tax Area Code | Specifies the tax area that is used to calculate and post sales tax. from the table field | |
| Tax Group Code | Tax Group Code | Specifies the tax group that is used to calculate and post sales tax. from the table field | |
| Line Discount % | Line Discount % | Specifies the discount percentage that is granted for the item on the line. from the table field | |
| Line Amount | Line Amount | Specifies the net amount, excluding any invoice discount amount, that must be paid for products on the line. from the table field | |
| Sales Line Disc. Exists | Rec.LineDiscExists() |
Specifies that there is a specific discount for this customer. | |
| Line Discount Amount | Line Discount Amount | Specifies the discount amount that is granted for the item on the line. from the table field | |
| Allow Invoice Disc. | Allow Invoice Disc. | Specifies if the invoice line is included when the invoice discount is calculated. from the table field | |
| Inv. Discount Amount | Inv. Discount Amount | Specifies the invoice discount amount for the line. from the table field | |
| Allocation Account No. | Selected Alloc. Account No. | Specifies the allocation account number that will be used to distribute the amounts during the posting process. from the table field | |
| Allow Item Charge Assignment | Allow Item Charge Assignment | Specifies that you can assign item charges to this line. from the table field | |
| Qty. to Assign | Qty. to Assign | Specifies how many units of the item charge will be assigned to the line. from the table field | |
| Qty. Assigned | Qty. Assigned | Specifies how much of the item charge has been assigned. | |
| Shipping Agent Code | Shipping Agent Code | Specifies the code for the shipping agent who is transporting the items. from the table field | |
| Shipping Agent Service Code | Shipping Agent Service Code | Specifies the code for the service, such as a one-day delivery, that is offered by the shipping agent. from the table field | |
| Work Type Code | Work Type Code | Specifies which work type the resource applies to when the sale is related to a project. from the table field | |
| Blanket Order No. | Blanket Order No. | Specifies the number of the blanket order that the record originates from. from the table field | |
| Blanket Order Line No. | Blanket Order Line No. | Specifies the number of the blanket order line that the record originates from. from the table field | |
| Appl.-to Item Entry | Appl.-to Item Entry | Specifies the number of the item ledger entry that the document or journal line is applied -to. from the table field | |
| Shortcut Dimension 1 Code | Shortcut Dimension 1 Code | Specifies the code for Shortcut Dimension 1, which is one of two global dimension codes that you set up in the General Ledger Setup window. from the table field | |
| Shortcut Dimension 2 Code | Shortcut Dimension 2 Code | Specifies the code for Shortcut Dimension 2, which is one of two global dimension codes that you set up in the General Ledger Setup window. from the table field | |
| ShortcutDimCode3 | ShortcutDimCode[3] |
— | |
| ShortcutDimCode4 | ShortcutDimCode[4] |
— | |
| ShortcutDimCode5 | ShortcutDimCode[5] |
— | |
| ShortcutDimCode6 | ShortcutDimCode[6] |
— | |
| ShortcutDimCode7 | ShortcutDimCode[7] |
— | |
| ShortcutDimCode8 | ShortcutDimCode[8] |
— | |
| Unit Gross Weight | Gross Weight | Specifies the gross weight of one unit of the item. In the sales statistics window, the gross weight on the line is included in the total gross weight of all the lines for the particular sales document. from the table field | |
| Unit Net Weight | Net Weight | Specifies the net weight of one unit of the item. In the sales statistics window, the net weight on the line is included in the total net weight of all the lines for the particular sales document. from the table field | |
| Unit Volume | Unit Volume | Specifies the volume of one unit of the item. In the sales statistics window, the volume of one unit of the item on the line is included in the total volume of all the lines for the particular sales document. from the table field | |
| Units per Parcel | Units per Parcel | Specifies the number of units per parcel of the item. In the sales statistics window, the number of units per parcel on the line helps to determine the total number of units for all the lines for the particular sales document. from the table field | |
| Control49 | Subtotal Excl. VAT | TotalSalesLine."Line Amount" |
Specifies the sum of the value in the Line Amount Excl. VAT field on all lines in the document. |
| Invoice Discount Amount | InvoiceDiscountAmount |
Specifies a discount amount that is deducted from the value of the Total Incl. VAT field, based on sales lines where the Allow Invoice Disc. field is selected. You can enter or change the amount manually. | |
| Invoice Discount % | InvoiceDiscountPct |
Specifies a discount percentage that is applied to the invoice, based on sales lines where the Allow Invoice Disc. field is selected. The percentage and criteria are defined in the Customer Invoice Discounts page, but you can enter or change the percentage manually. | |
| Control35 | Total Amount Excl. VAT | TotalSalesLine.Amount |
Specifies the sum of the value in the Line Amount Excl. VAT field on all lines in the document minus any discount amount in the Invoice Discount Amount field. |
| Total VAT | VATAmount |
Specifies the sum of VAT amounts on all lines in the document. | |
| Total Amount Incl. VAT | TotalSalesLine."Amount Including VAT" |
Specifies the sum of the value in the Line Amount Incl. VAT field on all lines in the document minus any discount amount in the Invoice Discount Amount field. |
Actions
| Group | Action | ToolTip | Runs |
|---|---|---|---|
| Processing | Select items | Add two or more items from the full list of your inventory items. | |
| Insert Ext. Texts | Insert the extended item description that is set up for the item that is being processed on the 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 Availability by | Event | View how the actual and the projected available balance of an item will develop over time according to supply and demand events. | |
| Period | Show the projected quantity of the item over time according to time periods, such as day, week, or month. | ||
| Variant | View or edit the item’s variants. Instead of setting up each color of an item as a separate item, you can set up the various colors as variants of the item. | ||
| Location | View the actual and projected quantity of the item per location. | ||
| Lot | View the current and projected quantity of the item in each lot. | Page 520 “Item Availability by Lot No.” | |
| BOM Level | View availability figures for items on bills of materials that show how many units of a parent item you can make based on the availability of child items. | ||
| Line | Select Item Substitution | Select another item that has been set up to be sold instead of the original item if it is unavailable. | |
| Comments | View or add comments for the record. | ||
| 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. | ||
| Select Catalog Items | View the list of catalog items that exist in the system. | ||
| Attachments | Add a file as an attachment. You can attach images as well as documents. | ||
| Assemble to Order | Assemble-to-Order Lines | View any linked assembly order lines if the documents represents an assemble-to-order sale. | |
| Roll Up Price | Update the unit price of the assembly item according to any changes that you have made to the assembly components. | ||
| Roll Up Cost | Update the unit cost of the assembly item according to any changes that you have made to the assembly components. | ||
| Functions | Get Price | Insert the lowest possible price in the Unit Price field according to any special price that you have set up. | |
| Get Line Discount | Insert the best possible discount in the Line Discount field according to any special discounts that you have set up. | ||
| Get Price | Insert the lowest possible price in the Unit Price field according to any special price that you have set up. | ||
| Get Line Discount | Insert the best possible discount in the Line Discount field according to any special discounts that you have set up. | ||
| Explode BOM | Add a line for each component on the bill of materials for the selected item. For example, this is useful for selling the parent item as a kit. CAUTION: The line for the parent item will be deleted and only its description will display. To undo this action, delete the component lines and add a line … | ||
| Redistribute Account Allocations | Use this action to redistribute the account allocations for this line. | ||
| Generate lines from Allocation Account Line | Use this action to replace the Allocation Account line with the actual lines that would be generated from the line itself. | ||
| Page | Edit in Excel | Send the data in the sub page to an Excel file for analysis or editing |
Events published
OnAfterNoOnAfterValidate(var SalesLine: Record "Sales Line"; xSalesLine: Record "Sales Line")Δ BC24 (integration)OnAfterQuantityOnAfterValidate(var SalesLine: Record "Sales Line"; xSalesLine: Record "Sales Line")(integration)OnAfterUpdateEditableOnRow(SalesLine: Record "Sales Line"; var IsCommentLine: Boolean; var IsBlankNumber: Boolean)(integration)OnAfterValidateDescription(var SalesLine: Record "Sales Line"; xSalesLine: Record "Sales Line")(integration)OnAfterValidateShortcutDimCode(var SalesLine: Record "Sales Line"; var ShortcutDimCode: array[8] of Code[20]; DimIndex: Integer)(integration)OnBeforeInsertExtendedText(var SalesLine: Record "Sales Line")(integration)OnBeforeNoOnAfterValidate(var SalesLine: Record "Sales Line"; xSalesLine: Record "Sales Line")(integration)OnBeforeUpdateTypeText(var SalesLine: Record "Sales Line")(integration)OnItemReferenceNoOnLookup(var SalesLine: Record "Sales Line")(integration)OnDeleteRecordOnBeforeSalesLineReserveDeleteLine(var SalesLine: Record "Sales Line")(integration)OnQuantityOnAfterValidateOnBeforeDeltaUpdateTotals(var SalesLine: Record "Sales Line"; var xSalesLine: Record "Sales Line")(integration)OnNewRecordOnAfterInitType(var SalesLine: Record "Sales Line"; xSalesLine: Record "Sales Line"; BelowxRec: Boolean)(integration)OnBeforeCalculateTotals(var TotalSalesLine: Record "Sales Line"; SuppressTotals: Boolean)(integration)OnBeforeSetDefaultType(var SalesLine: Record "Sales Line"; var xSalesLine: Record "Sales Line"; var IsHandled: Boolean)(integration)OnBeforeSetOpenPage()(integration)OnAfterSetDimensionsVisibility()(integration)OnAfterShowNonstockItems(var SalesLine: Record "Sales Line")(integration)OnBeforeDeltaUpdateTotals(var SalesLine: Record "Sales Line"; xSalesLine: Record "Sales Line"; var IsHandled: Boolean)(integration)OnUnitofMeasureCodeOnAfterValidateOnBeforeDeltaUpdateTotals(var SalesLine: Record "Sales Line"; xSalesLine: Record "Sales Line")+ BC26 (integration)
Trigger event subscribers
- OnAfterValidateEvent(Invoice Disc. Pct.): Codeunit 8074 “Document Change Management” PreventChangeSalesQuoteInvoiceDiscPct
- OnAfterValidateEvent(Invoice Discount Amount): Codeunit 8074 “Document Change Management” PreventChangeSalesQuoteInvoiceDiscAmount
- OnOpenPageEvent: Codeunit 4306 “SOA Session Filter” SetFiltersOnOpenSalesQuoteSubform
Procedures
ApproveCalcInvDisc(): Approves and calculates the invoice discount for the current line.CalcInvDisc(): Calculates the invoice discount for the current line.ExplodeBOM(): Explodes the bill of materials for the current item line.InsertExtendedText(Unconditionally: Boolean): Inserts extended text for the current line if available.UpdateForm(SetSaveRecord: Boolean): Updates the current page with optional record save.NoOnAfterValidate(): Handles post-validation logic after the No. field is validated.LocationCodeOnAfterValidate()(protected)QuantityOnAfterValidate()(protected)UnitofMeasureCodeOnAfterValidate()(protected)UpdateEditableOnRow(): Updates the editable state of fields on the current row.ClearTotalSalesHeader(): Clears the total sales header variable.CalculateTotals(): Calculates the document totals for all sales lines.DeltaUpdateTotals(): Performs an incremental update of document totals based on line changes.ForceTotalsCalculation(): Forces a recalculation of document totals on the next update.RedistributeTotalsOnAfterValidate(): Redistributes invoice discount amounts across lines after validation.UpdateTypeText(): Updates the type text display based on the current line type.SetItemChargeFieldsStyle(): Sets the style for item charge fields based on assignment status.
Plus 12 local procedures.
Triggers
OnAfterGetCurrRecord, OnAfterGetRecord, OnDeleteRecord, OnFindRecord, OnInit, OnModifyRecord, OnNewRecord, OnOpenPage
Relations
- source table Table 37 “Sales Line”
Extended by
- Page extension 4409 “Sales Quote Sub. Ext”
- Page extension 6349 “Sust. Sales Quote Subform”
- Page extension 7279 “Sales Quote Sub Form Ext”
- Page extension 8075 “Sales Quote Subform”
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 57 “Document Totals” (14 calls:
ApproveCalcInvDisc → SalesDocTotalsNotUpToDate,CalcInvDisc → SalesDocTotalsNotUpToDate,CalculateTotals → CalculateSalesSubPageTotals, …) - Codeunit 378 “Transfer Extended Text” (3 calls:
InsertExtendedText → InsertSalesExtText,InsertExtendedText → MakeUpdate,InsertExtendedText → SalesCheckIfAnyExtText) - Codeunit 56 “Sales - Calc Discount By Type” (2 calls:
UpdatePage → ApplyDefaultInvoiceDiscount,ValidateInvoiceDiscountAmount → ApplyInvDiscBasedOnAmt) - Codeunit 9179 “Application Area Mgmt. Facade” (2 calls:
OnInit → IsAdvancedEnabled,OnInit → IsFoundationEnabled) - Codeunit 99000832 “Sales Line-Reserve” (2 calls:
OnDeleteRecord → DeleteLine,OnDeleteRecord → DeleteLineConfirm) - Codeunit 2675 “Allocation Account Mgt.” (1 call:
OnOpenPage → UseAllocationAccountNoField) - Codeunit 408 “DimensionManagement” (1 call:
SetDimensionsVisibility → UseShortcutDims) - Codeunit 60 “Sales-Calc. Discount” (1 call:
CalcInvDisc → CalculateInvoiceDiscountOnLine) - Codeunit 61 “Sales-Disc. (Yes/No)” (1 call:
ApproveCalcInvDisc → (object)) - Codeunit 63 “Sales-Explode BOM” (1 call:
ExplodeBOM → (object)) - Codeunit 6723 “Server Setting” (1 call:
SetOpenPage → GetIsSaasExcelAddinEnabled) - Codeunit 7001 “Price Calculation Mgt.” (1 call:
SetOpenPage → IsExtendedPriceCalculationEnabled)
Countries that replace it
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: "page", object_name: "Sales Quote Subform"), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.