tableSales & Receivablesofficial - Microsoftderived - from the source, no model text

Table 36 "Sales Header"

Base Application · Microsoft.Sales.Document

Across versions

  1. BC23present
  2. BC2410 events added, 8 events changed
  3. BC2512 procedures added, 10 events added
  4. BC269 events added, 8 procedures changed
  5. BC2749 fields changed, 6 events added
  6. BC2875 fields changed, 9 events added
  7. BC299 procedures removed, 4 events removed
  8. BC30unchanged

Neighbourhood 227 connected objects and pages

Table 37 "Sales Line" (relates to, 10 links)Sales LineTable 225 "Post Code" (relates to, 6 links)Table 308 "No. Series" (relates to, 6 links)Table 9 "Country/Region" (relates to, 5 links)Country/RegionPage 45 "Sales List" (pages and codeunits on it, 2 links)Codeunit 1304 "Sales-Quote to Invoice Yes/No" (pages and codeunits on it)Table extension 1959 "LPP Sales Header" (extended by)Table extension 30101 "Shpfy Sales Header" (extended by)Codeunit 8074 "Document Change Management" (event subscribers, 39 links)Document Change ManagementCodeunit 1550 "Record Restriction Mgt." (event subscribers, 5 links)Codeunit 1637 "Office Document Handler" (event subscribers, 4 links)Office Document HandlerCodeunit 8001 "Sub. Contr. Renewal Subcribers" (event subscribers, 4 links)Codeunit 1173 "Document Attachment Mgmt" (event subscribers, 3 links)Document Attachment MgmtCodeunit 345 "Sales Line CaptionClass Mgmt" (event subscribers, 3 links)Sales Line CaptionClass MgmtCodeunit 5477 "Sales Invoice Aggregator" (event subscribers, 3 links)Codeunit 5496 "Graph Mgt - Sales Order Buffer" (event subscribers, 3 links)Codeunit 5506 "Graph Mgt - Sales Quote Buffer" (event subscribers, 3 links)Codeunit 5508 "Graph Mgt - Sal. Cr. Memo Buf." (event subscribers, 3 links)Codeunit 1520 "Workflow Event Handling" (event subscribers, 2 links)Codeunit 408 "DimensionManagement" (calls, 8 links)DimensionManagementCodeunit 27 "Confirm Management" (calls, 6 links)Confirm ManagementCodeunit 5700 "User Setup Management" (calls, 6 links)Codeunit 1330 "Instruction Mgt." (calls, 5 links)Codeunit 1535 "Approvals Mgmt." (calls, 5 links)Approvals Mgmt.Codeunit 441 "Prepayment Mgt." (calls, 4 links)Prepayment Mgt.Codeunit 99000832 "Sales Line-Reserve" (calls, 4 links)Page 456 "No. Series" (calls, 4 links)No. SeriesCodeunit 1511 "Notification Lifecycle Mgt." (calls, 3 links)Codeunit 5532 "Disable Aggregate Table Update" (calls, 3 links)Codeunit 10 "Type Helper" (calls, 2 links)Codeunit 1281 "Update Currency Exchange Rates" (calls, 2 links)Codeunit 1380 "Batch Processing Mgt." (calls, 2 links)Table 18 "Customer" (referenced by, 12 links)CustomerTable 9053 "Sales Cue" (referenced by, 7 links)Sales CueTable 9060 "SB Owner Cue" (referenced by, 5 links)SB Owner CueTable 1313 "Activities Cue" (referenced by, 3 links)Table 37 "Sales Line" (referenced by, 3 links)Table 9054 "Finance Cue" (referenced by, 3 links)Ad-hoc analysis of finance data (Learn pages)Ad-hoc analysis of inventory data (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.Sales.Document · BC23-30 · source at ea08af5e · facts from BC29

Learn documents this table through its pages: Page 9305 “Sales Order List” (13 Learn pages), Page 42 “Sales Order” (10), Page 9301 “Sales Invoice List” (9), Page 9300 “Sales Quotes” (7), Page 43 “Sales Invoice” (5), Page 44 “Sales Credit Memo” (4), Page 9304 “Sales Return Order List” (4), Page 6630 “Sales Return Order” (3), Page 9303 “Blanket Sales Orders” (3), Page 41 “Sales Quote” (2), Page 507 “Blanket Sales Order” (2), Page 9302 “Sales Credit Memos” (2).

Properties

Property Value
Caption Sales Header
DataClassification CustomerContent
Permissions tabledata “Assemble-to-Order Link” = rmid, tabledata “Assembly Header” = m

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 Document Type Enum “Sales Document Type” — enum Enum 36 “Sales Document Type”
2 Sell-to Customer No. Δ BC27 Code[20] Specifies the number of the customer that you’re selling to. By default, the same customer is suggested as the ship-to customer. If needed, you can specify a different ship-to customer on the document. TableRelation Table 18 “Customer”
3 No. Δ BC27 Code[20] Specifies a unique number that identifies the sales document. The number can be generated automatically from a number series, or you can number each of them manually.
4 Bill-to Customer No. Δ BC27 Code[20] Specifies the number of the customer that you send or sent the invoice or credit memo to. TableRelation Table 18 “Customer”; NotBlank
5 Bill-to Name Δ BC27 Text[100] Specifies the name of the customer that you send or sent the invoice or credit memo to. TableRelation Customer.Name
6 Bill-to Name 2 Δ BC27 Text[50] Specifies an additional part of the name of the customer that you send or sent the invoice or credit memo to.
7 Bill-to Address Δ BC28 Text[100] Specifies the address of the customer that you will send the invoice to.
8 Bill-to Address 2 Δ BC28 Text[50] Specifies additional address information.
9 Bill-to City Δ BC28 Text[30] Specifies the city of the customer on the sales document. TableRelation Table 225 “Post Code” (if (“Bill-to Country/Region Code” = const(‘’)) “Post Code”.City else if (“Bill-to Country/Region Code” = filter(<> ‘’)) “Post Code”.City where(“Country/Region Code” = field(“Bill-to Country/Region Code”)))
10 Bill-to Contact Δ BC27 Text[100] Specifies the name of the contact person at the customer’s billing address.
11 Your Reference Δ BC27 Text[35] Specifies the customer’s reference. The content will be printed on sales documents.
12 Ship-to Code Δ BC27 Code[10] Specifies a code for an alternate shipment address if you want to ship to another address than the one that has been entered automatically. This field is also used in case of drop shipment. TableRelation Table 222 “Ship-to Address” (“Ship-to Address”.Code where(“Customer No.” = field(“Sell-to Customer No.”)))
13 Ship-to Name Δ BC27 Text[100] Specifies the name of the customer at the address that the items are shipped to.
14 Ship-to Name 2 Δ BC28 Text[50] Specifies an additional part of the name that products on the sales document will be shipped to.
15 Ship-to Address Δ BC28 Text[100] Specifies the address that products on the sales document will be shipped to.
16 Ship-to Address 2 Δ BC28 Text[50] Specifies additional address information.
17 Ship-to City Δ BC28 Text[30] Specifies the city of the customer on the sales document. TableRelation Table 225 “Post Code” (if (“Ship-to Country/Region Code” = const(‘’)) “Post Code”.City else if (“Ship-to Country/Region Code” = filter(<> ‘’)) “Post Code”.City where(“Country/Region Code” = field(“Ship-to Country/Region Code”)))
18 Ship-to Contact Δ BC27 Text[100] Specifies the name of the contact person at the address that the items are shipped to.
19 Order Date Δ BC28 Date Specifies the date when the order was created.
20 Posting Date Δ BC27 Date Specifies the date when the posting of the sales document will be recorded.
21 Shipment Date Δ BC27 Date Specifies when items on the document are shipped or were shipped. A shipment date is usually calculated from a requested delivery date plus lead time.
22 Posting Description Δ BC27 Text[100] Specifies additional posting information for the document. After you post the document, the description can add detail to vendor and customer ledger entries.
23 Payment Terms Code Δ BC27 Code[10] Specifies a formula that calculates the payment due date, payment discount date, and payment discount amount. TableRelation Table 3 “Payment Terms” (Payment Terms)
24 Due Date Δ BC27 Date Specifies when the sales invoice must be paid.
25 Payment Discount % Δ BC27 Δ BC28 Decimal Specifies the payment discount percentage that is granted if the customer pays on or before the date entered in the Pmt. Discount Date field. The discount percentage is specified in the Payment Terms Code field.
26 Pmt. Discount Date Δ BC28 Date Specifies the date on which the amount in the entry must be paid for a payment discount to be granted.
27 Shipment Method Code Δ BC27 Code[10] Specifies the delivery conditions of the related shipment, such as free on board (FOB). TableRelation Table 10 “Shipment Method” (Shipment Method)
28 Location Code Δ BC27 Δ BC28 Code[10] Specifies the code for the location from where the items are shipped. When you select the customer and the customer has a location assigned, the value is taken from the Customer card. If the customer has no location, but a Responsibility Center is populated, the location code is taken from the Respo… TableRelation Table 14 “Location” (Location where(“Use As In-Transit” = const(false)))
29 Shortcut Dimension 1 Code Δ BC27 Code[20] 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. TableRelation Table 349 “Dimension Value” (“Dimension Value”.Code where(“Global Dimension No.” = const(1), Blocked = const(false)))
30 Shortcut Dimension 2 Code Δ BC27 Code[20] 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. TableRelation Table 349 “Dimension Value” (“Dimension Value”.Code where(“Global Dimension No.” = const(2), Blocked = const(false)))
31 Customer Posting Group Δ BC28 Code[20] Specifies the customer’s market type to link business transactions to. TableRelation Table 92 “Customer Posting Group” (Customer Posting Group)
32 Currency Code Δ BC27 Code[10] Specifies the currency of amounts on the sales document. TableRelation Table 4 “Currency”
33 Currency Factor Δ BC28 Decimal — not editable
34 Customer Price Group Code[10] — TableRelation Table 6 “Customer Price Group” (Customer Price Group)
35 Prices Including VAT Δ BC28 Boolean Specifies if the Unit Price and Line Amount fields on document lines should be shown with or without VAT.
37 Invoice Disc. Code Code[20] —
40 Customer Disc. Group Code[20] — TableRelation Table 340 “Customer Discount Group” (Customer Discount Group)
41 Language Code Δ BC28 Code[10] Specifies the language to be used on printouts for this document. TableRelation Table 8 “Language”
42 Format Region Δ BC28 Text[80] Specifies the format to be used on printouts for this document. TableRelation “Language Selection”.“Language Tag”
43 Salesperson Code Δ BC27 Code[20] Specifies the name of the salesperson who is assigned to the customer. TableRelation Table 13 “Salesperson/Purchaser” (“Salesperson/Purchaser” where(Blocked = const(false)))
45 Order Class Code[10] —
46 Comment Boolean — FlowField: exist(“Sales Comment Line” where(“Document Type” = field(“Document Type”), “No.” = field(“No.”), “Document Line No.” = const(0))); not editable
47 No. Printed Integer — not editable
51 On Hold Code[3] —
52 Applies-to Doc. Type Δ BC28 Enum “Gen. Journal Document Type” Specifies the type of the posted document that this document or journal line will be applied to when you post, for example to register payment. enum Enum 6 “Gen. Journal Document Type”
53 Applies-to Doc. No. Δ BC28 Code[20] Specifies the number of the posted document that this document or journal line will be applied to when you post, for example to register payment.
55 Bal. Account No. Code[20] — TableRelation Table 15 “G/L Account”, Table 270 “Bank Account” (if (“Bal. Account Type” = const(“G/L Account”)) “G/L Account” else if (“Bal. Account Type” = const(“Bank Account”)) “Bank Account”)
56 Recalculate Invoice Disc. Boolean — FlowField: exist(“Sales Line” where(“Document Type” = field(“Document Type”), “Document No.” = field(“No.”), “Recalculate Invoice Disc.” = const(true))); not editable
57 Ship Boolean — not editable
58 Invoice Boolean —
59 Print Posted Documents Boolean —
60 Amount Δ BC27 Decimal Specifies the sum of amounts on all the lines in the document. This will include invoice discounts. FlowField: sum(“Sales Line”.Amount where(“Document Type” = field(“Document Type”), “Document No.” = field(“No.”))); not editable
61 Amount Including VAT Δ BC27 Decimal Specifies the sum of amounts, including VAT, on all the lines in the document. This will include invoice discounts. FlowField: sum(“Sales Line”.“Amount Including VAT” where(“Document Type” = field(“Document Type”), “Document No.” = field(“No.”))); not editable
62 Shipping No. Code[20] —
63 Posting No. Code[20] —
64 Last Shipping No. Code[20] — TableRelation Table 110 “Sales Shipment Header” (Sales Shipment Header); not editable
65 Last Posting No. Code[20] — TableRelation Table 112 “Sales Invoice Header” (Sales Invoice Header); not editable
66 Prepayment No. Code[20] —
67 Last Prepayment No. Code[20] — TableRelation Table 112 “Sales Invoice Header” (Sales Invoice Header)
68 Prepmt. Cr. Memo No. Code[20] —
69 Last Prepmt. Cr. Memo No. Code[20] — TableRelation Table 114 “Sales Cr.Memo Header” (Sales Cr.Memo Header)
70 VAT Registration No. Δ BC28 Text[20] Specifies the customer’s VAT registration number for customers.
71 Combine Shipments Δ BC28 Boolean Specifies whether the order will be included when you use the Combine Shipments function.
72 Registration Number + BC24 Δ BC28 Text[50] Specifies the customer’s registration number.
73 Reason Code Δ BC28 Code[10] Specifies the reason code, a supplementary source code that enables you to trace the document. TableRelation Table 231 “Reason Code” (Reason Code)
74 Gen. Bus. Posting Group Δ BC28 Code[20] Specifies the general business posting group that the sales document is linked to. The general business posting group is used to link the sales document to the appropriate general ledger account. TableRelation Table 250 “Gen. Business Posting Group” (Gen. Business Posting Group)
75 EU 3-Party Trade Δ BC28 Boolean Specifies if the transaction is related to trade with a third party within the EU.
76 Transaction Type Δ BC28 Code[10] Specifies the type of transaction that the document represents, for the purpose of reporting to INTRASTAT. TableRelation Table 258 “Transaction Type” (Transaction Type)
77 Transport Method Δ BC28 Code[10] Specifies the transport method, for the purpose of reporting to INTRASTAT. TableRelation Table 259 “Transport Method” (Transport Method)
78 VAT Country/Region Code Δ BC28 Code[10] Specifies the country or region code for the VAT. TableRelation Table 9 “Country/Region” (Country/Region)
79 Sell-to Customer Name Δ BC27 Text[100] Specifies the name of the customer that you’re selling to. By default, the same customer is suggested as the ship-to customer. If needed, you can specify a different ship-to customer on the document. TableRelation Customer.Name
80 Sell-to Customer Name 2 Δ BC27 Text[50] Specifies an additional part of the name of the customer who will receive the products and be billed by default.
81 Sell-to Address Δ BC28 Text[100] Specifies the address where the customer is located.
82 Sell-to Address 2 Δ BC28 Text[50] Specifies additional address information.
83 Sell-to City Δ BC28 Text[30] Specifies the city of the customer on the sales document. TableRelation Table 225 “Post Code” (if (“Sell-to Country/Region Code” = const(‘’)) “Post Code”.City else if (“Sell-to Country/Region Code” = filter(<> ‘’)) “Post Code”.City where(“Country/Region Code” = field(“Sell-to Country/Region Code”)))
84 Sell-to Contact Δ BC27 Text[100] Specifies the name of the contact person at the customer’s main address.
85 Bill-to Post Code Δ BC27 Code[20] Specifies the postal code of the customer’s billing address. TableRelation Table 225 “Post Code” (Post Code)
86 Bill-to County Δ BC28 Text[30] Specifies the state, province or county of the address.
87 Bill-to Country/Region Code Δ BC27 Code[10] Specifies the country/region code of the customer’s billing address. TableRelation Table 9 “Country/Region” (Country/Region)
88 Sell-to Post Code Δ BC27 Code[20] Specifies the postal code of the customer’s main address. TableRelation Table 225 “Post Code” (if (“Sell-to Country/Region Code” = const(‘’)) “Post Code” else if (“Sell-to Country/Region Code” = filter(<> ‘’)) “Post Code” where(“Country/Region Code” = field(“Sell-to Country/Region Code”)))
89 Sell-to County Δ BC28 Text[30] Specifies the state, province or county of the address.
90 Sell-to Country/Region Code Δ BC27 Code[10] Specifies the country/region code of the customer’s main address. TableRelation Table 9 “Country/Region” (Country/Region)
91 Ship-to Post Code Δ BC27 Code[20] Specifies the postal code of the address that the items are shipped to. TableRelation Table 225 “Post Code” (if (“Ship-to Country/Region Code” = const(‘’)) “Post Code” else if (“Ship-to Country/Region Code” = filter(<> ‘’)) “Post Code” where(“Country/Region Code” = field(“Ship-to Country/Region Code”)))
92 Ship-to County Δ BC28 Text[30] Specifies the state, province or county of the address.
93 Ship-to Country/Region Code Δ BC27 Code[10] Specifies the country/region code of the address that the items are shipped to. TableRelation Table 9 “Country/Region” (Country/Region)
94 Bal. Account Type Enum “Payment Balance Account Type” — enum Enum 96 “Payment Balance Account Type”
97 Exit Point Δ BC28 Code[10] Specifies the point of exit through which you ship the items out of your country/region, for reporting to Intrastat. TableRelation Table 282 “Entry/Exit Point” (Entry/Exit Point)
98 Correction Δ BC28 Boolean Specifies the entry as a corrective entry. You can use the field if you need to post a corrective entry to a customer account. If you place a check mark in this field when posting a corrective entry, the system will post a negative debit instead of a credit or a negative credit instead of a debit. C…
99 Document Date Δ BC27 Date Specifies the date when the related document was created.
100 External Document No. Δ BC27 Code[35] Specifies a document number that refers to the customer’s or vendor’s numbering system.
101 Area Δ BC28 Code[10] Specifies the country or region of origin for the purpose of Intrastat reporting. TableRelation Table 284 “Area”
102 Transaction Specification Δ BC28 Code[10] Specifies a specification of the document’s transaction, for the purpose of reporting to INTRASTAT. TableRelation Table 285 “Transaction Specification” (Transaction Specification)
104 Payment Method Code Δ BC28 Code[10] Specifies how to make payment, such as with bank transfer, cash, or check. TableRelation Table 289 “Payment Method” (Payment Method)
105 Shipping Agent Code Δ BC27 Code[10] Specifies the code for the shipping agent who is transporting the items. TableRelation Table 291 “Shipping Agent” (Shipping Agent)
106 Package Tracking No. Δ BC24 Δ BC27 Text[50] Specifies the shipping agent’s package number.
107 No. Series Code[20] — TableRelation Table 308 “No. Series” (No. Series); not editable
108 Posting No. Series Code[20] — TableRelation Table 308 “No. Series” (No. Series)
109 Shipping No. Series Code[20] — TableRelation Table 308 “No. Series” (No. Series)
114 Tax Area Code Δ BC28 Code[20] Specifies the tax area that is used to calculate and post sales tax. TableRelation Table 318 “Tax Area” (Tax Area)
115 Tax Liable Δ BC28 Boolean Specifies if the customer or vendor is liable for sales tax.
116 VAT Bus. Posting Group Δ BC28 Code[20] Specifies the VAT specification of the involved customer or vendor to link transactions made for this record with the appropriate general ledger account according to the VAT posting setup. TableRelation Table 323 “VAT Business Posting Group” (VAT Business Posting Group)
117 Reserve Enum “Reserve Method” — enum Enum 100 “Reserve Method”
118 Applies-to ID Δ BC28 Code[50] Specifies the ID of entries that will be applied to when you choose the Apply Entries action.
119 VAT Base Discount % Δ BC28 Decimal —
120 Status Δ BC27 Enum “Sales Document Status” Specifies whether the document is open, waiting to be approved, has been invoiced for prepayment, or has been released to the next stage of processing. enum Enum 3612 “Sales Document Status”; not editable
121 Invoice Discount Calculation Option — OptionCaption: None,%,Amount; not editable
122 Invoice Discount Value Δ BC28 Decimal — not editable
123 Send IC Document Boolean —
124 IC Status Enum “Sales Document IC Status” — enum Enum 124 “Sales Document IC Status”
125 Sell-to IC Partner Code Code[20] — TableRelation Table 413 “IC Partner” (IC Partner); not editable
126 Bill-to IC Partner Code Code[20] — TableRelation Table 413 “IC Partner” (IC Partner); not editable
127 IC Reference Document No. Code[20] — not editable
129 IC Direction Enum “IC Direction Type” — enum Enum 129 “IC Direction Type”
130 Prepayment % Δ BC28 Decimal Specifies the prepayment percentage to use to calculate the prepayment for sales.
131 Prepayment No. Series Code[20] — TableRelation Table 308 “No. Series” (No. Series)
132 Compress Prepayment Δ BC28 Boolean Specifies that prepayments on the sales order are combined if they have the same general ledger account for prepayments or the same dimensions.
133 Prepayment Due Date Δ BC28 Date Specifies when the prepayment invoice for this sales order is due.
134 Prepmt. Cr. Memo No. Series Code[20] — TableRelation Table 308 “No. Series” (No. Series)
135 Prepmt. Posting Description Text[100] —
138 Prepmt. Pmt. Discount Date Δ BC28 Date Specifies the last date the customer can pay the prepayment invoice and still receive a payment discount on the prepayment amount.
139 Prepmt. Payment Terms Code Δ BC28 Code[10] Specifies the code that represents the payment terms for prepayment invoices related to the sales document. TableRelation Table 3 “Payment Terms” (Payment Terms)
140 Prepmt. Payment Discount % Δ BC28 Decimal Specifies the payment discount percent granted on the prepayment if the customer pays on or before the date entered in the Prepmt. Pmt. Discount Date field.
151 Quote No. Δ BC27 Code[20] Specifies the number of the sales quote that the sales order was created from. You can track the number to sales quote documents that you have printed, saved, or emailed. not editable
152 Quote Valid Until Date Δ BC28 Date Specifies how long the quote is valid.
153 Quote Sent to Customer DateTime — not editable
154 Quote Accepted Δ BC28 Boolean Specifies that the quote was accepted by the customer.
155 Quote Accepted Date Δ BC28 Date Specifies when the quote was accepted by the customer. not editable
160 Job Queue Status Δ BC24 Δ BC27 Enum “Document Job Queue Status” Specifies the status of a job queue entry or task that handles the posting of sales orders. enum Enum 485 “Document Job Queue Status”; not editable
161 Job Queue Entry ID Guid — not editable
163 Company Bank Account Code Δ BC28 Code[20] Specifies the bank account to use for bank information when the document is printed. TableRelation Table 270 “Bank Account” (“Bank Account” where(“Currency Code” = field(“Currency Code”)))
165 Incoming Document Entry No. Δ BC28 Integer Specifies the number of the incoming document that this sales document is created for. TableRelation Table 130 “Incoming Document” (Incoming Document)
166 Alt. VAT Registration No. + BC25 Boolean Alternative VAT Registration No. caption not editable
167 Alt. Gen. Bus Posting Group + BC25 Boolean Alternative Gen. Bus. Posting Group caption not editable
168 Alt. VAT Bus Posting Group + BC25 Boolean Alternative VAT Bus. Posting Group caption not editable
170 IsTest Boolean — not editable
171 Sell-to Phone No. Δ BC28 Text[30] Specifies the telephone number of the contact person that the sales document will be sent to.
172 Sell-to E-Mail Δ BC28 Text[80] Specifies the email address of the contact person that the sales document will be sent to.
178 Journal Templ. Name Δ BC28 Code[10] Specifies the name of the journal template in which the sales header is to be posted. TableRelation Table 80 “Gen. Journal Template” (“Gen. Journal Template” where(Type = filter(Sales)))
179 VAT Reporting Date Δ BC28 Date Specifies the date used to include entries on VAT reports in a VAT period. This is either the date that the document was created or posted, depending on your setting on the General Ledger Setup page. not editable
181 Rcvd.-from Count./Region Code Δ BC28 Code[10] Specifies the country or region from which the items are returned for the purpose of Intrastat reporting. TableRelation Table 9 “Country/Region” (Country/Region)
185 Last Email Sent Time − BC24 + BC25 DateTime — FlowField: max(“Email Related Record”.SystemCreatedAt where(“Table Id” = const(Database::“Sales Header”), “System Id” = field(SystemId)))
186 Last Email Sent Message Id + BC25 Guid — FlowField: lookup(“Email Related Record”.“Email Message Id” where(SystemCreatedAt = field(“Last Email Sent Time”)))
200 Work Description BLOB —
210 Ship-to Phone No. + BC25 Δ BC28 Text[30] Specifies the telephone number of the company’s shipping address.
300 Amt. Ship. Not Inv. (LCY) Δ BC27 Δ BC28 Decimal Specifies the sum, in LCY, for items that have been shipped but not yet been invoiced. The amount is calculated as Amount Including VAT x Qty. Shipped Not Invoiced / Quantity. FlowField: sum(“Sales Line”.“Shipped Not Invoiced (LCY)” where(“Document Type” = field(“Document Type”), “Document No.” = field(“No.”))); not editable
301 Amt. Ship. Not Inv. (LCY) Base Δ BC27 Δ BC28 Decimal Specifies the sum, in LCY, for items that have been shipped but not yet been invoiced. The amount is calculated as Amount Including VAT x Qty. Shipped Not Invoiced / Quantity. FlowField: sum(“Sales Line”.“Shipped Not Inv. (LCY) No VAT” where(“Document Type” = field(“Document Type”), “Document No.” = field(“No.”))); not editable
480 Dimension Set ID Integer — TableRelation Table 480 “Dimension Set Entry” (Dimension Set Entry); not editable
600 Payment Service Set ID Integer —
720 Coupled to CRM Δ BC26 Boolean Coupled to Dynamics 365 Sales caption obsolete Removed 26.0; #if not CLEANSCHEMA26; not editable
721 Coupled to Dataverse Δ BC27 Boolean Specifies that the sales order is coupled to an order in Dynamics 365 Sales. FlowField: exist(“CRM Integration Record” where(“Integration ID” = field(SystemId), “Table ID” = const(Database::“Sales Header”))); not editable
1200 Direct Debit Mandate ID Δ BC28 Code[35] Specifies the direct-debit mandate that the customer has signed to allow direct debit collection of payments. TableRelation Table 1230 “SEPA Direct Debit Mandate” (“SEPA Direct Debit Mandate” where(“Customer No.” = field(“Bill-to Customer No.”), Closed = const(false), Blocked = const(false)))
1305 Invoice Discount Amount Δ BC28 Decimal — FlowField: sum(“Sales Line”.“Inv. Discount Amount” where(“Document No.” = field(“No.”), “Document Type” = field(“Document Type”))); not editable
5043 No. of Archived Versions Δ BC28 Integer Specifies the number of archived versions for this document. FlowField: max(“Sales Header Archive”.“Version No.” where(“Document Type” = field(“Document Type”), “No.” = field(“No.”), “Doc. No. Occurrence” = field(“Doc. No. Occurrence”))); not editable
5048 Doc. No. Occurrence Integer —
5050 Campaign No. Δ BC27 Code[20] Specifies the campaign number the document is linked to. TableRelation Table 5071 “Campaign”
5052 Sell-to Contact No. Δ BC28 Code[20] Specifies the number of the contact person that the sales document will be sent to. TableRelation Table 5050 “Contact”
5053 Bill-to Contact No. Δ BC28 Code[20] Specifies the number of the contact the invoice will be sent to. TableRelation Table 5050 “Contact”
5055 Opportunity No. Δ BC28 Code[20] Specifies the number of the opportunity that the sales quote is assigned to. TableRelation if (“Document Type” = filter(<> Order)) Opportunity.“No.” where(“Contact No.” = field(“Sell-to Contact No.”), Closed = const(false)) else if (“Document Type” = const(Order)) Opportunity.“No.” where(“Contact No.” = field(“Sell-to Contact No.”), “Sales Document No.” = field(“No.”), “Sales Document Typ…
5056 Sell-to Customer Templ. Code Δ BC28 Code[20] Specifies the code for the template to create a new customer TableRelation Table 1381 “Customer Templ.” (Customer Templ.)
5057 Bill-to Customer Templ. Code Code[20] Bill-to Customer Template Code caption TableRelation Table 1381 “Customer Templ.” (Customer Templ.)
5700 Responsibility Center Δ BC28 Code[10] Specifies the code of the responsibility center, such as a distribution hub, that is associated with the involved user, company, customer, or vendor. TableRelation Table 5714 “Responsibility Center” (Responsibility Center)
5750 Shipping Advice Δ BC27 Enum “Sales Header Shipping Advice” Specifies if the customer accepts partial shipment of orders. enum Enum 3657 “Sales Header Shipping Advice”
5751 Shipped Not Invoiced Boolean — FlowField: exist(“Sales Line” where(“Document Type” = field(“Document Type”), “Document No.” = field(“No.”), “Qty. Shipped Not Invoiced” = filter(<> 0))); not editable
5752 Completely Shipped Δ BC27 Boolean Specifies whether all the items on the order have been shipped or, in the case of inbound items, completely received. FlowField: min(“Sales Line”.“Completely Shipped” where(“Document Type” = field(“Document Type”), “Document No.” = field(“No.”), Type = filter(<> “ “), “Location Code” = field(“Location Filter”))); not editable
5753 Posting from Whse. Ref. Integer —
5754 Location Filter Code[10] — TableRelation Table 14 “Location”; FlowFilter
5755 Shipped Boolean — FlowField: exist(“Sales Line” where(“Document Type” = field(“Document Type”), “Document No.” = field(“No.”), “Qty. Shipped (Base)” = filter(<> 0))); not editable
5756 Last Shipment Date Δ BC24 Date — FlowField: lookup(“Sales Shipment Header”.“Shipment Date” where(“No.” = field(“Last Shipping No.”)))
5790 Requested Delivery Date Δ BC27 Date Specifies the date that the customer has asked for the order to be delivered.
5791 Promised Delivery Date Δ BC28 Date Specifies the date that you have promised to deliver the order, as a result of the Order Promising function.
5792 Shipping Time Δ BC28 DateFormula Specifies how long it takes from when the items are shipped from the warehouse to when they are delivered.
5793 Outbound Whse. Handling Time Δ BC28 DateFormula Specifies a date formula for the time it takes to get items ready to ship from this location. The time element is used in the calculation of the delivery date as follows: Shipment Date + Outbound Warehouse Handling Time = Planned Shipment Date + Shipping Time = Planned Delivery Date.
5794 Shipping Agent Service Code Δ BC27 Code[10] Specifies the code for the service, such as a one-day delivery, that is offered by the shipping agent. TableRelation Table 5790 “Shipping Agent Services” (“Shipping Agent Services”.Code where(“Shipping Agent Code” = field(“Shipping Agent Code”)))
5795 Late Order Shipping Δ BC28 Boolean Indicates a delay in the shipment of one or more lines, or that the shipment date is either the same as or earlier than the work date. FlowField: exist(“Sales Line” where(“Document Type” = field(“Document Type”), “Sell-to Customer No.” = field(“Sell-to Customer No.”), “Document No.” = field(“No.”), “Shipment Date” = field(“Date Filter”), “Outstanding Quantity” = filter(<> 0))); not editable
5796 Date Filter Date — FlowFilter
5800 Receive Boolean —
5801 Return Receipt No. Code[20] —
5802 Return Receipt No. Series Code[20] — TableRelation Table 308 “No. Series” (No. Series)
5803 Last Return Receipt No. Code[20] — TableRelation Table 6660 “Return Receipt Header” (Return Receipt Header); not editable
7000 Price Calculation Method Enum “Price Calculation Method” — enum Enum 7000 “Price Calculation Method”
7001 Allow Line Disc. Boolean —
7200 Get Shipment Used Boolean — not editable
9000 Assigned User ID Δ BC27 Code[50] Specifies the ID of the user who is responsible for the document. TableRelation Table 91 “User Setup” (User Setup); DataClassification EndUserIdentifiableInformation

Keys

  • Key1: Document Type, No. (clustered)
  • Key2: No., Document Type
  • Key3: Document Type, Sell-to Customer No.
  • Key4: Document Type, Bill-to Customer No.
  • Key5: Document Type, Combine Shipments, Sell-to Customer No., Bill-to Customer No., Currency Code, EU 3-Party Trade, Dimension Set ID, Journal Templ. Name
  • Key6: Sell-to Customer No., External Document No.
  • Key7: Document Type, Sell-to Contact No.
  • Key8: Bill-to Contact No.
  • Key9: Incoming Document Entry No.
  • Key10: Document Date
  • Key11: Shipment Date, Status, Location Code, Responsibility Center
  • Key12: Salesperson Code
  • Key13: SystemModifiedAt

Events published

  • OnCheckSalesPostRestrictions() Δ BC24 (integration): Raised to allow subscribers to add custom restrictions to the sales document posting process.
  • OnCustomerCreditLimitExceeded(NotificationId: Guid) Δ BC24 (integration): Raised when the calculated credit amount exceeds the customer’s credit limit.
  • OnCustomerCreditLimitNotExceeded() Δ BC24 (integration): Raised when the calculated credit amount does not exceed the customer’s credit limit.
  • OnCheckSalesReleaseRestrictions() Δ BC24 (integration): Raised to allow subscribers to add custom restrictions to the sales document release process.
  • OnAfterAssignDefaultVATBusPostingGroup(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; GenBusinessPostingGroup: Record "Gen. Business Posting Group") (integration): Raised after the default VAT business posting group is assigned to the sales header.
  • OnAfterInitDefaultDimensionSources(var SalesHeader: Record "Sales Header"; var DefaultDimSource: List of [Dictionary of [Integer, Code[20]]]; FieldNo: Integer) (integration): Raised after the default dimension sources are initialized for the sales header.
  • OnAfterInitRecord(var SalesHeader: Record "Sales Header") (integration): Raised after the sales header record is initialized.
  • OnAfterInitNoSeries(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header") (integration): Raised after the number series is initialized for the sales header.
  • OnAfterInitializeRoundingPrecision(var SalesHeader: Record "Sales Header"; var Currency: Record Currency) (integration): Raised after the rounding precision is initialized from the currency.
  • OnAfterIsBillToAddressEqualToSellToAddress(SellToSalesHeader: Record "Sales Header"; BillToSalesHeader: Record "Sales Header"; var Result: Boolean) (integration): Raised after checking if the bill-to address equals the sell-to address.
  • OnAfterCheckCreditLimitCondition(var SalesHeader: Record "Sales Header"; var RunCheck: Boolean) (integration): Raised after the credit limit check condition is evaluated.
  • OnAfterCheckCreditMaxBeforeInsert(var SalesHeader: Record "Sales Header") (integration): Raised after the credit maximum is checked before inserting the sales header.
  • OnAfterCheckBillToCust(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; Customer: Record Customer) (integration): Raised after the bill-to customer is validated.
  • OnAfterCheckSellToCust(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; Customer: Record Customer; CurrentFieldNo: Integer) (integration): Raised after the sell-to customer is validated.
  • OnAfterCheckShippingAdvice(var SalesHeader: Record "Sales Header"; var Result: Boolean) (integration): Raised after the shipping advice is checked.
  • OnCheckShippingAdviceOnAfterSetLineFilters(var SalesLine: Record "Sales Line"; var SalesHeader: Record "Sales Header") + BC28 (integration)
  • OnAfterConfirmSalesPrice(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; var RecalculateLines: Boolean) (integration): Raised after the user confirms sales price changes.
  • OnAfterConfirmCurrencyFactorUpdate(var SalesHeader: Record "Sales Header"; var Confirmed: Boolean) (integration): Raised after the user confirms the currency factor update.
  • OnAfterCouldDimensionsBeKept(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; var Result: Boolean) (integration): Raised after checking if dimensions could be kept when changing header fields.
  • OnBeforeRecreateSalesLine(var IsHandled: Boolean; var SalesLine: Record "Sales Line"; var TempSalesLine: Record "Sales Line" temporary; var SalesHeader: Record "Sales Header") + BC28 (integration): Raised before a sales line is recreated from temporary storage, allowing subscribers to replace the standard sales line creation.
  • OnAfterRecreateSalesLine(var SalesLine: Record "Sales Line"; var TempSalesLine: Record "Sales Line" temporary; var SalesHeader: Record "Sales Header") (integration): Raised after a sales line is recreated from temporary storage.
  • OnAfterDeleteAllTempSalesLines(SalesHeader: Record "Sales Header") (integration): Raised after all temporary sales lines are deleted.
  • OnAfterDeleteSalesLines(var SalesLine: Record "Sales Line"; var SalesHeader: Record "Sales Header") (integration): Raised after sales lines are deleted from the sales header.
  • OnAfterInitFromSalesHeader(var SalesHeader: Record "Sales Header"; SourceSalesHeader: Record "Sales Header") (integration): Raised after the sales header is initialized from another sales header.
  • OnAfterInitFromBillToCustTemplate(var SalesHeader: Record "Sales Header"; BillToCustTemplate: Record "Customer Templ.") (integration): Raised after the sales header is initialized from a bill-to customer template.
  • OnAfterInsertTempSalesLine(SalesLine: Record "Sales Line"; var TempSalesLine: Record "Sales Line" temporary) (integration): Raised after a sales line is inserted into temporary storage.
  • OnAfterIsApprovedForPosting(SalesHeader: Record "Sales Header"; var Approved: Boolean) (integration): Raised after checking if the sales header is approved for posting.
  • OnAfterIsApprovedForPostingBatch(SalesHeader: Record "Sales Header"; var Approved: Boolean) (integration): Raised after checking if the sales header is approved for batch posting.
  • OnAfterGetNoSeriesCode(var SalesHeader: Record "Sales Header"; SalesReceivablesSetup: Record "Sales & Receivables Setup"; var NoSeriesCode: Code[20]) (integration): Raised after the number series code is retrieved for the sales header.
  • OnAfterGetPostingNoSeriesCode(SalesHeader: Record "Sales Header"; var PostingNos: Code[20]) (integration): Raised after the posting number series code is retrieved.
  • OnAfterGetPrepaymentPostingNoSeriesCode(SalesHeader: Record "Sales Header"; var PostingNos: Code[20]) (integration): Raised after the prepayment posting number series code is retrieved.
  • OnAfterGetSalesSetup(SalesHeader: Record "Sales Header"; var SalesReceivablesSetup: Record "Sales & Receivables Setup"; CalledByFieldNo: Integer) (integration): Raised after the sales and receivables setup is retrieved.
  • OnAfterGetDocTypeText(var SalesHeader: Record "Sales Header"; var TypeText: Text[50]) (integration): Raised after the document type text is retrieved.
  • OnAfterGetStatusStyleText(SalesHeader: Record "Sales Header"; var StatusStyleText: Text) (integration): Raised after the status style text is retrieved.
  • OnAfterOnInsert(var SalesHeader: Record "Sales Header") (integration): Raised after the sales header record is inserted.
  • OnAfterHasDifferentSellToAddress(var SalesHeader: Record "Sales Header"; Customer: Record Customer; var Result: Boolean) (integration): Raised after checking if the sales header has a different sell-to address than the customer.
  • OnAfterHasDifferentBillToAddress(var SalesHeader: Record "Sales Header"; Customer: Record Customer; var Result: Boolean) (integration): Raised after checking if the sales header has a different bill-to address than the customer.
  • OnAfterHasDifferentShipToAddress(var SalesHeader: Record "Sales Header"; Customer: Record Customer; var Result: Boolean) (integration): Raised after checking if the sales header has a different ship-to address than the customer.
  • OnAfterSalesLinesEditable(SalesHeader: Record "Sales Header"; var IsEditable: Boolean) (integration): Raised after determining if the sales lines are editable.
  • OnAfterTestNoSeries(var SalesHeader: Record "Sales Header"; var SalesReceivablesSetup: Record "Sales & Receivables Setup") (integration): Raised after testing the number series for the sales header.
  • OnAfterUpdateShipToAddress(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; CurrentFieldNo: Integer; Location: Record Location; CompanyInformation: Record "Company Information") + BC27 − BC27 (integration): Raised after the ship-to address is updated on the sales header.
  • OnAfterUpdateCurrencyFactor(var SalesHeader: Record "Sales Header"; HideValidationDialog: Boolean) (integration): Raised after the currency factor is updated on the sales header.
  • OnAfterAppliesToDocNoOnLookup(var SalesHeader: Record "Sales Header"; CustLedgerEntry: Record "Cust. Ledger Entry") (integration): Raised after looking up the applies-to document number.
  • OnUpdateSalesLineByChangedFieldName(SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; ChangedFieldName: Text[100]; ChangedFieldNo: Integer; xSalesHeader: Record "Sales Header") (integration): Raised during sales line update when a field changes by name.
  • OnUpdateSalesLinesByFieldNoOnAfterSalesLineSetFilters(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; ChangedFieldNo: Integer) (integration): Raised after filters are set on sales lines during update by field number.
  • OnUpdateSalesLineAmountsOnAfterSalesHeaderModify(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line") (integration): Raised after the sales header is modified during sales line amounts update.
  • OnUpdateShipToContactOnBeforeValidateShipToContact(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; CurrentFieldNo: Integer; var IsHandled: Boolean) (integration): Raised before validating the ship-to contact during ship-to contact update.
  • OnUpdateOpportunityOnBeforeModify(var Opportunity: Record Opportunity; var SalesHeader: Record "Sales Header") (integration): Raised before modifying the opportunity during opportunity update.
  • OnUpdateOpportunityLinkOnBeforeModify(var Opportunity: Record Opportunity; var SalesHeader: Record "Sales Header"; SalesDocumentType: Option; SalesHeaderNo: Code[20]) (integration): Raised before modifying the opportunity during opportunity link update.
  • OnValidateShortcutDimCodeOnBeforeUpdateAllLineDim(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; FieldNumber: Integer) + BC24 + BC26 − BC26 (integration): Raised before updating all line dimensions during shortcut dimension code validation.
  • OnAfterValidateShortcutDimCode(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; FieldNumber: Integer; var ShortcutDimCode: Code[20]) (integration): Raised after the shortcut dimension code is validated.
  • OnAfterCreateSalesLine(var SalesLine: Record "Sales Line"; var TempSalesLine: Record "Sales Line" temporary) (integration): Raised after a sales line is created from temporary storage.
  • OnAfterIsShipToAddressEqualToSellToAddress(SellToSalesHeader: Record "Sales Header"; ShipToSalesHeader: Record "Sales Header"; var Result: Boolean) (integration): Raised after checking if the ship-to address equals the sell-to address.
  • OnAfterSalesQuoteAccepted(var SalesHeader: Record "Sales Header") (integration): Raised after a sales quote is accepted.
  • OnAfterChangePricesIncludingVAT(var SalesHeader: Record "Sales Header") (integration): Raised after the Prices Including VAT field is changed.
  • OnAfterSelltoCustomerNoOnAfterValidate(var SalesHeader: Record "Sales Header"; var xSalesHeader: Record "Sales Header") (integration): Raised after the sell-to customer number is validated.
  • OnAfterSendSalesHeader(var SalesHeader: Record "Sales Header"; ShowDialog: Boolean) (integration): Raised after the sales header is sent.
  • OnAfterSetApplyToFilters(var CustLedgerEntry: Record "Cust. Ledger Entry"; SalesHeader: Record "Sales Header") (integration): Raised after filters are set for applying customer ledger entries.
  • OnAfterSetFieldsBilltoCustomer(var SalesHeader: Record "Sales Header"; Customer: Record Customer; xSalesHeader: Record "Sales Header"; SkipBillToContact: Boolean; CUrrentFieldNo: Integer) (integration): Raised after bill-to customer fields are set on the sales header.
  • OnBeforeUpdateSetupOnBillToCustomerChangeInSalesHeader(var SalesHeader: Record "Sales Header"; BillToCustomer: Record Customer; var IsHandled: Boolean) + BC28 (integration): Raised before updating the VAT registration setup on a bill-to customer change in the sales header.
  • OnAfterTransferExtendedTextForSalesLineRecreation(var SalesLine: Record "Sales Line"; var TempSalesLine: Record "Sales Line" temporary) (integration): Raised after extended text is transferred for sales line recreation.
  • OnAfterCopyFromNewSellToCustTemplate(var SalesHeader: Record "Sales Header"; SellToCustTemplate: Record "Customer Templ.") (integration): Raised after copying fields from a new sell-to customer template.
  • OnAfterCopySellToAddressToShipToAddress(var SalesHeader: Record "Sales Header") (integration): Raised after the sell-to address is copied to the ship-to address.
  • OnAfterCopySellToAddressToBillToAddress(var SalesHeader: Record "Sales Header") (integration): Raised after the sell-to address is copied to the bill-to address.
  • OnAfterCopySellToCustomerAddressFieldsFromCustomer(var SalesHeader: Record "Sales Header"; SellToCustomer: Record Customer; CurrentFieldNo: Integer; var SkipBillToContact: Boolean; var SkipSellToContact: Boolean) (integration): Raised after sell-to customer address fields are copied from the customer.
  • OnAfterCopyShipToCustomerAddressFieldsFromCustomer(var SalesHeader: Record "Sales Header"; SellToCustomer: Record Customer; xSalesHeader: Record "Sales Header") (integration): Raised after ship-to customer address fields are copied from the customer.
  • OnAfterCopyShipToCustomerAddressFieldsFromShipToAddr(var SalesHeader: Record "Sales Header"; ShipToAddress: Record "Ship-to Address"; xSalesHeader: Record "Sales Header") (integration): Raised after ship-to customer address fields are copied from a ship-to address.
  • OnAfterUpdateSalesLinesByFieldNo(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; ChangedFieldNo: Integer) (integration): Raised after sales lines are updated by field number.
  • OnBeforeAssistEdit(var SalesHeader: Record "Sales Header"; OldSalesHeader: Record "Sales Header"; var IsHandled: Boolean; var Result: Boolean) (integration): Raised before the assist edit function is executed.
  • OnBeforeCheckAvailableCreditLimit(var SalesHeader: Record "Sales Header"; var ReturnValue: Decimal; var IsHandled: Boolean) (integration): Raised before checking the available credit limit.
  • OnBeforeCheckCreditLimit(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before checking the customer credit limit.
  • OnBeforeCheckCreditMaxBeforeInsert(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean; HideCreditCheckDialogue: Boolean; FilterCustNo: Code[20]; FilterContNo: Code[20]) (integration): Raised before checking the credit maximum before inserting the sales header.
  • OnBeforeCheckCreditLimitIfLineNotInsertedYet(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before checking the credit limit when no sales line is inserted yet.
  • OnBeforeCheckCustomerContactRelation(var SalesHeader: Record "Sales Header"; Cont: Record Contact; var IsHandled: Boolean; CustomerNo: Code[20]; ContBusinessRelationNo: Code[20]) (integration): Raised before checking the customer-contact relation.
  • OnBeforeCheckNoAndShowConfirm(SalesHeader: Record "Sales Header"; var SalesShptHeader: Record "Sales Shipment Header"; var SalesInvHeader: Record "Sales Invoice Header"; var SalesCrMemoHeader: Record "Sales Cr.Memo Header"; var ReturnRcptHeader: Record "Return Receipt Header"; var SalesInvHeaderPrePmt: Record "Sales Invoice Header"; var SalesCrMemoHeaderPrePmt: Record "Sales Cr.Memo Header"; SourceCode: Record "Source Code"; var Result: Boolean; var IsHandled: Boolean) (integration): Raised before checking document numbers and showing a confirmation dialog.
  • OnBeforeCheckPrepmtInfo(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; var IsHandled: Boolean) (integration): Raised before checking prepayment information on the sales header.
  • OnBeforeCheckReturnInfo(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean; xSalesHeader: Record "Sales Header"; BillTo: Boolean) (integration): Raised before checking return information on the sales header.
  • OnBeforeCheckShipmentInfo(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; BillTo: Boolean; var IsHandled: Boolean) (integration): Raised before checking shipment information on the sales header.
  • OnBeforeCheckShippingAdvice(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before checking the shipping advice on the sales header.
  • OnBeforeCreateDimensionsFromValidateBillToCustomerNo(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before creating dimensions from bill-to customer number validation.
  • OnBeforeCreateDimensionsFromValidateSalesPersonCode(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before creating dimensions from salesperson code validation.
  • OnBeforeCofirmClearOpportunityNo(Opportunity: Record Opportunity; var Confirmed: Boolean; var IsHandled: Boolean) (integration): Raised before confirming to clear the opportunity number.
  • OnBeforeConfirmKeepExistingDimensions(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; FieldNo: Integer; OldDimSetID: Integer; var Confirmed: Boolean; var IsHandled: Boolean) (integration): Raised before confirming whether to keep existing dimensions.
  • OnBeforeConfirmUpdateAllLineDim(var SalesHeader: Record "Sales Header"; var xSalesHeader: Record "Sales Header"; NewParentDimSetID: Integer; OldParentDimSetID: Integer; var Confirmed: Boolean; var IsHandled: Boolean) (integration): Raised before confirming to update all line dimensions.
  • OnBeforeConfirmBillToContactNoChange(var SalesHeader: Record "Sales Header"; var xSalesHeader: Record "Sales Header"; CurrentFieldNo: Integer; var Confirmed: Boolean; var IsHandled: Boolean) (integration): Raised before confirming the bill-to contact number change.
  • OnBeforeConfirmSellToContactNoChange(var SalesHeader: Record "Sales Header"; var xSalesHeader: Record "Sales Header"; CurrentFieldNo: Integer; var Confirmed: Boolean; var IsHandled: Boolean) (integration): Raised before confirming the sell-to contact number change.
  • OnBeforeConfirmUpdateCurrencyFactor(var SalesHeader: Record "Sales Header"; var HideValidationDialog: Boolean; var xSalesHeader: Record "Sales Header"; var IsHandled: Boolean; var ForceConfirm: Boolean) (integration): Raised before confirming the currency factor update.
  • OnBeforeGetContactAsCompany(Contact: Record Contact; var SearchContact: Record Contact; var IsHandled: Boolean) (integration): Raised before getting the contact as a company.
  • OnBeforeConfirmDeletion(var SalesHeader: Record "Sales Header"; var Result: Boolean; var IsHandled: Boolean) (integration): Raised before confirming deletion of the sales header.
  • OnBeforeCopyShipToCustomerAddressFieldsFromCustomer(var SalesHeader: Record "Sales Header"; Customer: Record Customer; var IsHandled: Boolean) (integration): Raised before copying ship-to customer address fields from the customer.
  • OnBeforeCopySellToCustomerAddressFieldsFromCustomer(var SalesHeader: Record "Sales Header"; Customer: Record Customer; var IsHandled: Boolean) (integration): Raised before copying sell-to customer address fields from the customer.
  • OnBeforeCopySellToAddressToBillToAddress(var SalesHeader: Record "Sales Header") (integration): Raised before copying the sell-to address to the bill-to address.
  • OnBeforeCopyShipToCustomerAddressFieldsFromShipToAddr(var SalesHeader: Record "Sales Header"; var ShipToAddress: Record "Ship-to Address"; var IsHandled: Boolean) (integration): Raised before copying ship-to customer address fields from a ship-to address.
  • OnBeforeCreateCustomerFromSellToCustomerTemplate(var SalesHeader: Record "Sales Header"; var Cont: Record Contact; var IsHandled: Boolean) (integration): Raised before creating a customer from the sell-to customer template.
  • OnBeforeCreateCustomerFromBillToCustomerTemplate(var SalesHeader: Record "Sales Header"; var Cont: Record Contact; var IsHandled: Boolean) (integration): Raised before creating a customer from the bill-to customer template.
  • OnBeforeCreateSalesLine(var TempSalesLine: Record "Sales Line" temporary; var IsHandled: Boolean; var SalesHeader: record "Sales Header"; var SalesLine: record "Sales Line") (integration): Raised before creating a sales line from temporary storage.
  • OnBeforeCreateDim(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean; var DefaultDimSource: List of [Dictionary of [Integer, Code[20]]]) (integration): Raised before creating dimensions for the sales header.
  • OnBeforeCreateInvtPutAwayPick(var SalesHeader: Record "Sales Header") (integration): Raised before creating inventory put-away or pick documents.
  • OnBeforeDeleteSalesLines(var SalesLine: Record "Sales Line"; var IsHandled: Boolean; var SalesHeader: Record "Sales Header") (integration): Raised before deleting sales lines from the sales header.
  • OnBeforeDeleteRecordInApprovalRequest(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before deleting the record in the approval request.
  • OnBeforeEnsureDocumentTypeIsQuote(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; CurrentFieldNo: Integer; var IsHandled: Boolean) (integration): Raised before ensuring the document type is Quote.
  • OnBeforeGetCust(var SalesHeader: Record "Sales Header"; var Customer: Record Customer; CustNo: Code[20]) (integration): Raised before getting the customer record.
  • OnBeforeGetCustomerVATRegistrationNumber(var SalesHeader: Record "Sales Header"; var ReturnValue: Text; var IsHandled: Boolean) (integration): Raised before getting the customer VAT registration number.
  • OnBeforeGetCustomerVATRegistrationNumberLbl(var SalesHeader: Record "Sales Header"; var ReturnValue: Text; var IsHandled: Boolean) (integration): Raised before getting the customer VAT registration number label.
  • OnBeforeGetNoSeriesCode(var SalesHeader: Record "Sales Header"; SalesSetup: Record "Sales & Receivables Setup"; var NoSeriesCode: Code[20]; var IsHandled: Boolean) (integration): Raised before getting the number series code for the sales header.
  • OnBeforeGetPstdDocLinesToReverse(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before getting posted document lines to reverse.
  • OnBeforeGetPostingNoSeriesCode(var SalesHeader: Record "Sales Header"; SalesSetup: Record "Sales & Receivables Setup"; var NoSeriesCode: Code[20]; var IsHandled: Boolean) (integration): Raised before getting the posting number series code.
  • OnBeforeGetShippingTime(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; var CalledByFieldNo: Integer; var IsHandled: Boolean; CurrentFieldNo: Integer) (integration): Raised before getting the shipping time for the sales header.
  • OnBeforeGetShipmentMethodCode(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before getting the shipment method code.
  • OnBeforeInitFromSalesHeader(var SalesHeader: Record "Sales Header"; SourceSalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before initializing the sales header from another sales header.
  • OnBeforeInitInsert(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before initializing the sales header during insert.
  • OnBeforeInitPostingDescription(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before initializing the posting description.
  • OnBeforeInitRecord(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean; xSalesHeader: Record "Sales Header") (integration): Raised before initializing the sales header record.
  • OnBeforeIsCreditDocType(SalesHeader: Record "Sales Header"; var CreditDocType: Boolean) (integration): Raised before checking if the document type is a credit document.
  • OnBeforeIsApprovedForPosting(var SalesHeader: Record "Sales Header"; var Approved: Boolean; var IsHandled: Boolean) (integration): Raised before checking if the sales header is approved for posting.
  • OnBeforeIsApprovedForPostingBatch(var SalesHeader: Record "Sales Header"; var Approved: Boolean; var IsHandled: Boolean) (integration): Raised before checking if the sales header is approved for batch posting.
  • OnBeforeLookupAppliesToDocNo(var SalesHeader: Record "Sales Header"; var CustLedgEntry: Record "Cust. Ledger Entry"; var IsHandled: Boolean) (integration): Raised before looking up the applies-to document number.
  • OnBeforeLookupBillToPostCode(var SalesHeader: Record "Sales Header"; var PostCodeRec: Record "Post Code") (integration): Raised before looking up the bill-to post code.
  • OnBeforeLookupBillToCity(var SalesHeader: Record "Sales Header"; var PostCodeRec: Record "Post Code") (integration): Raised before looking up the bill-to city.
  • OnBeforeLookupContact(CustomerNo: Code[20]; ContactNo: Code[20]; var Contact: Record Contact; var IsHandled: Boolean) (integration): Raised before looking up the contact.
  • OnBeforeLookupSelltoContact(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before looking up the sell-to contact.
  • OnBeforeLookupSellToContactNo(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; var IsHandled: Boolean; var Result: Boolean) (integration): Raised before looking up the sell-to contact number.
  • OnBeforeLookupSellToCity(var SalesHeader: Record "Sales Header"; var PostCodeRec: Record "Post Code") (integration): Raised before looking up the sell-to city.
  • OnBeforeLookupSellToPostCode(var SalesHeader: Record "Sales Header"; var PostCodeRec: Record "Post Code") (integration): Raised before looking up the sell-to post code.
  • OnAfterLookupShipToCity(var SalesHeader: Record "Sales Header"; var PostCodeRec: Record "Post Code"; xSalesHeader: Record "Sales Header") (integration): Raised after looking up the ship-to city.
  • OnBeforeLookupShipToCity(var SalesHeader: Record "Sales Header"; var PostCodeRec: Record "Post Code") (integration): Raised before looking up the ship-to city.
  • OnAfterLookupShipToPostCode(var SalesHeader: Record "Sales Header"; var PostCodeRec: Record "Post Code"; xSalesHeader: Record "Sales Header") (integration): Raised after looking up the ship-to post code.
  • OnAfterLookupBillToPostCode(var SalesHeader: Record "Sales Header"; var PostCodeRec: Record "Post Code"; xSalesHeader: Record "Sales Header") (integration): Raised after looking up the bill-to post code.
  • OnAfterLookupBillToCity(var SalesHeader: Record "Sales Header"; var PostCodeRec: Record "Post Code"; xSalesHeader: Record "Sales Header") (integration): Raised after looking up the bill-to city.
  • OnAfterLookupSellToPostCode(var SalesHeader: Record "Sales Header"; var PostCodeRec: Record "Post Code"; xSalesHeader: Record "Sales Header") (integration): Raised after looking up the sell-to post code.
  • OnAfterLookupSellToCity(var SalesHeader: Record "Sales Header"; var PostCodeRec: Record "Post Code"; xSalesHeader: Record "Sales Header") (integration): Raised after looking up the sell-to city.
  • OnBeforeLookupShipToPostCode(var SalesHeader: Record "Sales Header"; var PostCodeRec: Record "Post Code") (integration): Raised before looking up the ship-to post code.
  • OnBeforeLookupShippingNoSeries(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before looking up the shipping number series.
  • OnBeforeLookupReturnReceiptNoSeries(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before looking up the return receipt number series.
  • OnBeforeQtyToShipIsZero(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; var Result: Boolean; var IsHandled: Boolean) (integration): Raised before checking if the quantity to ship is zero.
  • OnBeforeShowDocDim(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before showing the document dimensions.
  • OnBeforeShowInteractionLogEntries(var InteractionLogEntry: Record "Interaction Log Entry") (integration): Raised before showing interaction log entries.
  • OnBeforeShouldSearchForCustomerByName(CustomerNo: Code[20]; var Result: Boolean; var IsHandled: Boolean; var CallingFieldNo: Integer; var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header") (integration): Raised before determining if the customer should be searched by name.
  • OnBeforeTransferItemChargeAssgntSalesToTemp(var SalesHeader: Record "Sales Header"; var ItemChargeAssgntSales: Record "Item Charge Assignment (Sales)"; var TempItemChargeAssgntSales: Record "Item Charge Assignment (Sales)" temporary; var IsHandled: Boolean) (integration): Raised before transferring item charge assignments to temporary storage.
  • OnBeforeUpdateCurrencyFactor(var SalesHeader: Record "Sales Header"; var Updated: Boolean; var CurrencyExchangeRate: Record "Currency Exchange Rate"; xSalesHeader: Record "Sales Header") (integration): Raised before updating the currency factor.
  • OnBeforeUpdateBillToCont(var SalesHeader: Record "Sales Header"; CustomerNo: Code[20]; var SkipBillToContact: Boolean; var IsHandled: Boolean) (integration): Raised before updating the bill-to contact.
  • OnBeforeUpdateSellToEmail(var SalesHeader: Record "Sales Header"; Contact: Record Contact; var IsHandled: Boolean) (integration): Raised before updating the sell-to email from the contact.
  • OnBeforeValidateBillToCity(var SalesHeader: Record "Sales Header"; var PostCodeRec: Record "Post Code"; CurrentFieldNo: Integer; var IsHandled: Boolean) (integration): Raised before validating the bill-to city.
  • OnBeforeValidateBillToPostCode(var SalesHeader: Record "Sales Header"; var PostCodeRec: Record "Post Code"; CurrentFieldNo: Integer; var IsHandled: Boolean) (integration): Raised before validating the bill-to post code.
  • OnBeforeValidateDocumentDate(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; CurrentFieldNo: Integer; var IsHandled: Boolean) (integration): Raised before validating the document date.
  • OnBeforeValidatePromisedDeliveryDate(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before validating the promised delivery date.
  • OnBeforeValidateLocationCode(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before validating the location code.
  • OnBeforeValidatePaymentTermsCode(var SalesHeader: Record "Sales Header"; var xSalesHeader: Record "Sales Header"; CallingFieldNo: Integer; UpdateDocumentDate: Boolean; var IsHandled: Boolean) (integration): Raised before validating the payment terms code.
  • OnBeforeValidateReturnReceiptNoSeries(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before validating the return receipt number series.
  • OnBeforeValidateSellToCity(var SalesHeader: Record "Sales Header"; var PostCodeRec: Record "Post Code"; CurrentFieldNo: Integer; var IsHandled: Boolean) (integration): Raised before validating the sell-to city.
  • OnBeforeValidateSellToPostCode(var SalesHeader: Record "Sales Header"; var PostCodeRec: Record "Post Code"; CurrentFieldNo: Integer; var IsHandled: Boolean; var DoExit: Boolean) (integration): Raised before validating the sell-to post code.
  • OnBeforeValidateShipToCity(var SalesHeader: Record "Sales Header"; var PostCodeRec: Record "Post Code"; CurrentFieldNo: Integer; var IsHandled: Boolean) (integration): Raised before validating the ship-to city.
  • OnBeforeValidateShipToPostCode(var SalesHeader: Record "Sales Header"; var PostCodeRec: Record "Post Code"; CurrentFieldNo: Integer; var IsHandled: Boolean) (integration): Raised before validating the ship-to post code.
  • OnBeforeValidateVATRegistrationNo(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before validating the VAT registration number.
  • OnBeforeValidateRequestedDeliveryDate(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean; xSalesHeader: Record "Sales Header"; CurrentFieldNo: Integer) (integration): Raised before validating the requested delivery date.
  • OnBeforeMessageIfSalesLinesExist(var SalesHeader: Record "Sales Header"; ChangedFieldCaption: Text; var IsHandled: Boolean) (integration): Raised before showing a message when sales lines exist and a field changes.
  • OnBeforePriceMessageIfSalesLinesExist(SalesHeader: Record "Sales Header"; ChangedFieldCaption: Text; var IsHandled: Boolean) (integration): Raised before showing a price message when sales lines exist.
  • OnBeforeCreateDimSetForPrepmtAccDefaultDim(SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before creating a dimension set for prepayment account default dimensions.
  • OnBeforeRecreateSalesLines(var SalesHeader: Record "Sales Header") (integration): Raised before recreating sales lines.
  • OnBeforeRecreateSalesLinesHandler(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; ChangedFieldName: Text[100]; var IsHandled: Boolean) (integration): Raised before handling the recreate sales lines process.
  • OnBeforeRecreateSalesLinesHandleSupplementTypes(var TempSalesLine: Record "Sales Line" temporary; var IsHandled: Boolean) (integration): Raised before handling supplement types during sales line recreation.
  • OnBeforeSalesLineByChangedFieldNo(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; ChangedFieldNo: Integer; var IsHandled: Boolean; xSalesHeader: Record "Sales Header"; CurrentFieldNo: Integer) (integration): Raised before updating the sales line by changed field number.
  • OnBeforeSalesLineInsert(var SalesLine: Record "Sales Line"; var TempSalesLine: Record "Sales Line" temporary; SalesHeader: Record "Sales Header") (integration): Raised before inserting a sales line during line recreation.
  • OnBeforeSetCustomerLocationCode(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean; SellToCustomer: Record Customer) (integration): Raised before setting the customer location code.
  • OnBeforeSetDefaultPaymentServices(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before setting the default payment services.
  • OnBeforeSetDefaultSalesperson(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean; InsertMode: Boolean) (integration): Raised before setting the default salesperson.
  • OnBeforeStoreSalesCommentLineToTemp(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before storing sales comment lines to temporary storage.
  • OnBeforeTestNoSeries(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before testing the number series.
  • OnBeforeSetSecurityFilterOnRespCenter(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before setting the security filter on the responsibility center.
  • OnBeforeShowPostedDocsToPrintCreatedMsg(var ShowPostedDocsToPrint: Boolean) (integration): Raised before showing the posted documents to print created message.
  • OnBeforeSynchronizeForReservations(var SalesHeader: Record "Sales Header"; var NewSalesLine: Record "Sales Line"; OldSalesLine: Record "Sales Line"; var IsHandled: Boolean) (integration): Raised before synchronizing for reservations.
  • OnBeforeUpdateBillToCustContact(var SalesHeader: Record "Sales Header"; Conact: Record Contact; var IsHandled: Boolean) (integration): Raised before updating the bill-to customer contact.
  • OnBeforeUpdateDirectDebitPmtTermsCode(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean; var PaymentMethod: Record "Payment Method") (integration): Raised before updating direct debit payment terms code.
  • OnBeforeUpdateSellToCust(var SalesHeader: Record "Sales Header"; var Contact: Record Contact; var Customer: Record Customer; ContactNo: Code[20]) (integration): Raised before updating the sell-to customer.
  • OnBeforeUpdateAllLineDim(var SalesHeader: Record "Sales Header"; NewParentDimSetID: Integer; OldParentDimSetID: Integer; var IsHandled: Boolean; xSalesHeader: Record "Sales Header") (integration): Raised before updating all line dimensions.
  • OnBeforeUpdateLocationCode(var SalesHeader: Record "Sales Header"; LocationCode: Code[10]; var IsHandled: Boolean) (integration): Raised before updating the location code.
  • OnBeforeUpdateOutboundWhseHandlingTime(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before updating the outbound warehouse handling time.
  • OnBeforeUpdateSalesLineAmounts(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; CurrentFieldNo: Integer; var IsHandled: Boolean) (integration): Raised before updating sales line amounts.
  • OnBeforeUpdateSalesLinesByFieldNo(var SalesHeader: Record "Sales Header"; ChangedFieldNo: Integer; var AskQuestion: Boolean; var IsHandled: Boolean; xSalesHeader: Record "Sales Header"; CurrentFieldNo: Integer) (integration): Raised before updating sales lines by field number.
  • OnBeforeUpdateSalesLines(var SalesHeader: Record "Sales Header"; ChangedFieldName: Text[100]; var AskQuestion: Boolean) (integration): Raised before updating sales lines.
  • OnBeforeUpdateSellToCustContact(var SalesHeader: Record "Sales Header"; Conact: Record Contact; var IsHandled: Boolean) (integration): Raised before updating the sell-to customer contact.
  • OnBeforeUpdateShipToAddress(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean; CurrFieldNo: Integer) (integration): Raised before updating the ship-to address.
  • OnBeforeUpdateShipToCodeFromCust(var SalesHeader: Record "Sales Header"; var Customer: Record Customer; var IsHandled: Boolean) (integration): Raised before updating the ship-to code from the customer.
  • OnBeforeValidatePostingDate(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; CurrentFieldNo: Integer; var IsHandled: Boolean) (integration): Raised before validating the posting date.
  • OnCheckItemAvailabilityInLinesOnAfterSetFilters(var SalesLine: Record "Sales Line") (integration): Raised after filters are set on sales lines during item availability check.
  • OnCollectParamsInBufferForCreateDimSetOnAfterSetTempSalesLineFilters(var TempSalesLine: Record "Sales Line" temporary; SalesLine: Record "Sales Line") (integration): Raised after filters are set on temporary sales lines during dimension set collection.
  • OnCopySelltoCustomerAddressFieldsFromCustomerOnAfterAssignRespCenter(var SalesHeader: Record "Sales Header"; Customer: Record Customer; CallingFieldNo: Integer) (integration): Raised after assigning the responsibility center during sell-to customer address copy.
  • OnCopySellToCustomerAddressFieldsFromCustomerOnAfterAssignSellToCustomerAddress(var SalesHeader: Record "Sales Header"; Customer: Record Customer) (integration): Raised after assigning the sell-to customer address during customer address copy.
  • OnCreateDimOnBeforeUpdateLines(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; CurrentFieldNo: Integer; OldDimSetID: Integer; DefaultDimSource: List of [Dictionary of [Integer, Code[20]]]) (integration): Raised before updating lines during dimension creation.
  • OnCreateDimOnBeforeModify(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; FieldNo: Integer; OldDimSetID: Integer) (integration): Raised before modifying the sales header during dimension creation.
  • OnCreateDimOnKeepDimensionsOnAfterUpdateGlobalDim(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; FieldNo: Integer; OldDimSetID: Integer) + BC27 (integration): Raised after updating global dimensions when keeping dimensions during dimension creation.
  • OnCreateSalesLineOnAfterAssignType(var SalesLine: Record "Sales Line"; var TempSalesLine: Record "Sales Line" temporary) (integration): Raised after assigning the type during sales line creation.
  • OnCreateSalesLineOnBeforeValidateQuantity(var SalesLine: Record "Sales Line"; var TempSalesLine: Record "Sales Line" temporary; var ShouldValidateQuantity: Boolean) (integration): Raised before validating the quantity during sales line creation.
  • OnCreateSalesLineOnBeforeTransferFieldsFromTempSalesLine(var SalesLine: Record "Sales Line"; var TempSalesLine: Record "Sales Line" temporary; var SalesHeader: Record "Sales Header") (integration): Raised before transferring fields from temporary sales line during sales line creation.
  • OnDeleteSalesLinesOnBeforeDeleteLine(var SalesLine: Record "Sales Line") (integration): Raised before deleting a line during sales lines deletion.
  • OnDeleteOnAfterPostSalesDeleteDeleteHeader(var SalesHeader: Record "Sales Header") (integration): Raised after the sales header is deleted during post-sales delete processing.
  • OnDeleteOnBeforeArchiveSalesDocument(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header") (integration): Raised before archiving the sales document during deletion.
  • OnInitFromContactOnAfterInitNoSeries(var SalesHeader: Record "Sales Header"; var xSalesHeader: Record "Sales Header") (integration): Raised after initializing the number series during initialization from a contact.
  • OnInitFromContactOnBeforeInitRecord(var SalesHeader: Record "Sales Header"; var xSalesHeader: Record "Sales Header") (integration): Raised before initializing the record during initialization from a contact.
  • OnInitFromTemplateOnAfterInitNoSeries(var SalesHeader: Record "Sales Header"; var xSalesHeader: Record "Sales Header") (integration): Raised after initializing the number series during initialization from a template.
  • OnInitFromTemplateOnBeforeInitRecord(var SalesHeader: Record "Sales Header"; var xSalesHeader: Record "Sales Header") (integration): Raised before initializing the record during initialization from a template.
  • OnInitInsertOnBeforeInitRecord(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header") (integration): Raised before initializing the record during insert initialization.
  • OnInitRecordOnBeforeAssignShipmentDate(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before assigning the shipment date during record initialization.
  • OnInitRecordOnBeforeAssignOrderDate(var SalesHeader: Record "Sales Header"; var NewOrderDate: Date) (integration): Raised before assigning the order date during record initialization.
  • OnInsertTempSalesLineInBufferOnBeforeTempSalesLineInsert(var TempSalesLine: Record "Sales Line" temporary; SalesLine: Record "Sales Line") (integration): Raised before inserting a temporary sales line during buffer insertion.
  • OnUpdateBillToCustOnAfterSalesQuote(var SalesHeader: Record "Sales Header"; Contact: Record Contact) (integration): Raised after updating the bill-to customer on a sales quote.
  • OnValidateBilltoCustomerTemplCodeOnBeforeRecreateSalesLines(var SalesHeader: Record "Sales Header"; CallingFieldNo: Integer) (integration): Raised before recreating sales lines when validating the bill-to customer template code.
  • OnValidateResponsibilityCenterOnBeforeRecreateSalesLines(var SalesHeader: Record "Sales Header"; CallingFieldNo: Integer) + BC27 (integration): Raised before recreating sales lines when validating the responsibility center.
  • OnValidateSellToCustomerNoAfterInit(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header") (integration): Raised after initialization when validating the sell-to customer number.
  • OnValidateSellToCustomerNoOnAfterCalcShouldSkipConfirmSellToCustomerDialog(var SalesHeader: Record "Sales Header"; var ShouldSkipConfirmSellToCustomerDialog: Boolean; var ConfirmedShouldBeFalse: Boolean) (integration): Raised after calculating whether to skip the confirm sell-to customer dialog during sell-to customer number validation.
  • OnValidateSelltoContactNoOnAfterCalcShouldUpdateOpportunity(var SalesHeader: Record "Sales Header"; var ShouldUpdateOpportunity: Boolean) (integration): Raised after calculating whether to update the opportunity when validating the sell-to contact number.
  • OnAfterTestQuantityShippedField(SalesLine: Record "Sales Line") (integration): Raised after testing the quantity shipped field on a sales line.
  • OnBeforeTestSalesLineFieldsBeforeRecreate(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean; var SalesLine: Record "Sales Line") (integration): Raised before testing sales line fields before recreating lines.
  • OnBeforeTestQuantityShippedField(SalesLine: Record "Sales Line"; var IsHandled: Boolean) (integration): Raised before testing the quantity shipped field on a sales line.
  • OnAfterPrepareOpeningDocumentStatistics(var SalesHeader: Record "Sales Header") (integration): Raised after preparing to open document statistics.
  • OnBeforeTestStatusOpen(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; CallingFieldNo: Integer) Δ BC24 (integration): Raised before testing if the status is open.
  • OnAfterTestStatusOpen(var SalesHeader: Record "Sales Header") Δ BC24 (integration): Raised after testing if the status is open.
  • OnAfterUpdateBillToCont(var SalesHeader: Record "Sales Header"; Customer: Record Customer; Contact: Record Contact) (integration): Raised after updating the bill-to contact from customer and contact records.
  • OnAfterUpdateBillToCust(var SalesHeader: Record "Sales Header"; Contact: Record Contact) (integration): Raised after updating the bill-to customer from a contact.
  • OnAfterUpdateSellToCont(var SalesHeader: Record "Sales Header"; Customer: Record Customer; Contact: Record Contact; HideValidationDialog: Boolean) (integration): Raised after updating the sell-to contact from customer and contact records.
  • OnAfterUpdateSellToCust(var SalesHeader: Record "Sales Header"; Contact: Record Contact) (integration): Raised after updating the sell-to customer from a contact.
  • OnAfterUpdateSalesLines(var SalesHeader: Record "Sales Header") (integration): Raised after updating sales lines.
  • OnAfterSetCompanyBankAccount(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header") (integration): Raised after setting the company bank account.
  • OnBeforeValidateAppliesToDocNo(var SalesHeader: Record "Sales Header"; var CustLedgEntry: Record "Cust. Ledger Entry"; xSalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before validating the applies-to document number.
  • OnBeforeValidateBillToCustomerName(var SalesHeader: Record "Sales Header"; var Customer: Record Customer) (integration): Raised before validating the bill-to customer name.
  • OnBeforeValidateSellToCustomerName(var SalesHeader: Record "Sales Header"; var Customer: Record Customer; var IsHandled: Boolean) (integration): Raised before validating the sell-to customer name.
  • OnBeforeValidateShortcutDimCode(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; FieldNumber: Integer; var ShortcutDimCode: Code[20]; var IsHandled: Boolean) (integration): Raised before validating a shortcut dimension code.
  • OnLinkSalesDocWithOpportunityOnBeforeSalesHeaderModify(var SalesHeader: Record "Sales Header"; OldOpportunityNo: Code[20]; Opportunity: Record Opportunity) (integration): Raised before modifying the sales header when linking a sales document with an opportunity.
  • OnRecreateSalesLinesOnAfterSetSalesLineFilters(var SalesLine: Record "Sales Line"; var SalesHeader: Record "Sales Header") (integration): Raised after setting sales line filters during sales line recreation.
  • OnRecreateSalesLinesOnBeforeConfirm(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; ChangedFieldName: Text[100]; HideValidationDialog: Boolean; var Confirmed: Boolean; var IsHandled: Boolean) (integration): Raised before confirming the recreation of sales lines.
  • OnRecreateSalesLinesOnBeforeSalesLineDeleteAll(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; CurrentFieldNo: Integer; var IsHandled: Boolean) (integration): Raised before deleting all sales lines during recreation.
  • OnRecreateSalesLinesOnAfterProcessTempSalesLines(var TempSalesLine: Record "Sales Line" temporary; var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; ChangedFieldName: Text[100]) (integration): Raised after processing temporary sales lines during recreation.
  • OnRecreateReservEntryReqLineOnAfterLoop(var SalesHeader: Record "Sales Header"; SalesLine: Record "Sales Line") (integration): Raised after the loop during reservation entry and requisition line recreation.
  • OnRecreateReservEntryReqLineOnAfterCalcShouldValidateLocationCode(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; var ShouldValidateLocationCode: Boolean) (integration): Raised after calculating whether to validate the location code during reservation entry recreation.
  • OnRecreateSalesLinesHandleSupplementTypesOnAfterCalcShouldCreateSalsesLine(var TempSalesLine: Record "Sales Line"; var ShouldCreateSalsesLine: Boolean; var SalesLine: Record "Sales Line") (integration): Raised after calculating whether to create a sales line when handling supplement types during recreation.
  • OnSetBillToCustomerAddressFieldsFromCustomerOnAfterAssignBillToCustomerAddress(var SalesHeader: Record "Sales Header"; Customer: Record Customer) (integration): Raised after assigning the bill-to customer address from the customer record.
  • OnSetShipToCustomerAddressFieldsFromShipToAddrOnAfterCalcShouldCopyLocationCode(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; ShipToAddress: Record "Ship-to Address"; var ShouldCopyLocationCode: Boolean; var ShouldCopySalespersonCode: Boolean) + BC25 − BC25 (integration): Raised after calculating whether to copy location code and salesperson code from ship-to address.
  • OnTestStatusIsNotPendingApproval(SalesHeader: Record "Sales Header"; var NotPending: Boolean) (integration): Raised to test if the status is not pending approval.
  • OnTestStatusIsNotPendingPrepayment(SalesHeader: Record "Sales Header"; var NotPending: Boolean) (integration): Raised to test if the status is not pending prepayment.
  • OnTestStatusIsNotReleased(SalesHeader: Record "Sales Header"; var NotReleased: Boolean) (integration): Raised to test if the status is not released.
  • OnUpdateAllLineDimOnAfterSalesLineModify(var SalesLine: Record "Sales Line") (integration): Raised after modifying a sales line when updating all line dimensions.
  • OnUpdateAllLineDimOnBeforeSalesLineModify(var SalesLine: Record "Sales Line"; xSalesLine: Record "Sales Line") (integration): Raised before modifying a sales line when updating all line dimensions.
  • OnUpdateSalesLinesByFieldNoOnBeforeSalesLineModify(var SalesLine: Record "Sales Line"; ChangedFieldNo: Integer; CurrentFieldNo: Integer) (integration): Raised before modifying a sales line when updating sales lines by field number.
  • OnUpdateSalesLinesByFieldNoOnAfterCalcShouldConfirmReservationDateConflict(var SalesHeader: Record "Sales Header"; ChangedFieldNo: Integer; var ShouldConfirmReservationDateConflict: Boolean) (integration): Raised after calculating whether to confirm a reservation date conflict when updating sales lines by field number.
  • OnUpdateBillToCustOnBeforeContactIsNotRelatedToAnyCostomerErr(var SalesHeader: Record "Sales Header"; Contact: Record Contact; var ContactBusinessRelation: Record "Contact Business Relation"; var IsHandled: Boolean) (integration): Raised before displaying an error that the contact is not related to any customer when updating bill-to customer.
  • OnUpdateBillToCustOnBeforeFindContactBusinessRelation(Contact: Record Contact; var ContBusinessRelation: Record "Contact Business Relation"; var ContactBusinessRelationFound: Boolean; var IsHandled: Boolean) (integration): Raised before finding the contact business relation when updating bill-to customer.
  • OnUpdateSellToCustOnAfterSetFromSearchContact(var SalesHeader: Record "Sales Header"; var SearchContact: Record Contact) (integration): Raised after setting the sales header from a search contact when updating sell-to customer.
  • OnUpdateSellToCustOnAfterSetShipToAddress(var SalesHeader: Record "Sales Header"; var SearchContact: Record Contact) (integration): Raised after setting the ship-to address when updating sell-to customer.
  • OnUpdateSellToCustOnAfterSetSellToContactNo(var SalesHeader: Record "Sales Header"; var Customer: Record Customer; var Cont: Record Contact; var IsHandled: Boolean) (integration): Raised after setting the sell-to contact number when updating sell-to customer.
  • OnUpdateSellToCustOnBeforeContactIsNotRelatedToAnyCostomerErr(var SalesHeader: Record "Sales Header"; Contact: Record Contact; var ContactBusinessRelation: Record "Contact Business Relation"; var IsHandled: Boolean) (integration): Raised before displaying an error that the contact is not related to any customer when updating sell-to customer.
  • OnUpdateSellToCustOnBeforeFindContactBusinessRelation(Cont: Record Contact; var ContBusinessRelation: Record "Contact Business Relation"; var ContactBusinessRelationFound: Boolean; var IsHandled: Boolean) (integration): Raised before finding the contact business relation when updating sell-to customer.
  • OnValidateBillToCustomerNoOnAfterConfirmed(var SalesHeader: Record "Sales Header") (integration): Raised after confirming the bill-to customer number change.
  • OnValidatePaymentTermsCodeOnBeforeCalcDueDate(var SalesHeader: Record "Sales Header"; var xSalesHeader: Record "Sales Header"; CalledByFieldNo: Integer; CallingFieldNo: Integer; var IsHandled: Boolean) (integration): Raised before calculating the due date when validating payment terms code.
  • OnValidatePaymentTermsCodeOnBeforeCalcPmtDiscDate(var SalesHeader: Record "Sales Header"; var xSalesHeader: Record "Sales Header"; CalledByFieldNo: Integer; CallingFieldNo: Integer; var IsHandled: Boolean) (integration): Raised before calculating the payment discount date when validating payment terms code.
  • OnValidatePaymentTermsCodeOnBeforeValidateDueDate(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; CurrentFieldNo: Integer; var IsHandled: Boolean) (integration): Raised before validating the due date when validating payment terms code.
  • OnValidatePaymentTermsCodeOnBeforeValidateDueDateWhenBlank(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; CurrentFieldNo: Integer; var IsHandled: Boolean) (integration): Raised before validating the due date when payment terms code is blank.
  • OnValidatePostingDateOnBeforeAssignDocumentDate(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before assigning the document date when validating posting date.
  • OnValidatePostingDateOnBeforeResetInvoiceDiscountValue(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header") (integration): Raised before resetting the invoice discount value when validating posting date.
  • OnValidatePostingDateOnBeforeCheckNeedUpdateCurrencyFactor(var SalesHeader: Record "Sales Header"; var IsConfirmed: Boolean; var NeedUpdateCurrencyFactor: Boolean; xSalesHeader: Record "Sales Header") (integration): Raised before checking if the currency factor needs to be updated when validating posting date.
  • OnValidatePaymentTermsCodeOnBeforeCalculatePrepaymentDueDate(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; CurrentFieldNo: Integer; var IsHandled: Boolean) (integration): Raised before calculating the prepayment due date when validating payment terms code.
  • OnValidatePricesIncludingVATOnBeforeSalesLineModify(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; Currency: Record Currency; RecalculatePrice: Boolean) (integration): Raised before modifying a sales line when validating prices including VAT.
  • OnValidateShippingAgentCodeOnBeforeUpdateLines(var SalesHeader: Record "Sales Header"; CallingFieldNo: Integer; HideValidationDialog: Boolean) (integration): Raised before updating lines when validating shipping agent code.
  • OnBeforeGetFullDocTypeTxt(var SalesHeader: Record "Sales Header"; var FullDocTypeTxt: Text; var IsHandled: Boolean) (integration): Raised before getting the full document type text.
  • OnCollectParamsInBufferForCreateDimSetOnBeforeInsertTempSalesLineInBuffer(var GenPostingSetup: Record "General Posting Setup"; var DefaultDimension: Record "Default Dimension") (integration): Raised before inserting a temporary sales line in the buffer when collecting parameters for creating a dimension set.
  • OnBeforeCopyDocument(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before copying a document.
  • OnBeforeUpdateBillToCust(var SalesHeader: Record "Sales Header"; ContactNo: Code[20]; var IsHandled: Boolean) (integration): Raised before updating the bill-to customer.
  • OnRecreateSalesLinesOnBeforeTempSalesLineFindSet(var TempSalesLine: Record "Sales Line" temporary; var SalesLine: Record "Sales Line") + BC28 − BC28 (integration): Raised before finding the temporary sales line set during recreation.
  • OnBeforeCheckContactRelatedToCustomerCompany(SalesHeader: Record "Sales Header"; CurrFieldNo: Integer; var IsHandled: Boolean; ContactNo: Code[20]; CustomerNo: Code[20]) (integration): Raised before checking if a contact is related to a customer company.
  • OnBeforeShowModifyAddressNotification(var IsHandled: Boolean; SalesHeader: Record "Sales Header"; CustomerNumber: Code[20]) (integration): Raised before showing the modify address notification.
  • OnShowDocDimOnBeforeUpdateSalesLines(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header") (integration): Raised before updating sales lines when showing document dimensions.
  • OnBeforeConfirmRecalculatePrice(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; CurrFieldNo: Integer; var Result: Boolean; var HideValidationDialog: Boolean; var IsHandled: Boolean) (integration): Raised before confirming price recalculation.
  • OnUpdateAllLineDimOnBeforeGetSalesLineNewDimSetID(var SalesLine: Record "Sales Line"; NewParentDimSetID: Integer; OldParentDimSetID: Integer) (integration): Raised before getting a new dimension set ID for a sales line when updating all line dimensions.
  • OnUpdateAllLineDimOnAfterGetSalesLineNewDimsetID(SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; SalesLine: Record "Sales Line"; var NewDimSetID: Integer; NewParentDimSetID: Integer; OldParentDimSetID: Integer) (integration): Raised after getting a new dimension set ID for a sales line when updating all line dimensions.
  • OnBeforeValidateShippingNoSeries(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before validating the shipping number series.
  • OnBeforeRename(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean; xSalesHeader: Record "Sales Header") (integration): Raised before renaming the sales header.
  • OnBeforeLookupBillToContactNo(var IsHandled: Boolean; var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header") (integration): Raised before looking up the bill-to contact number.
  • OnBeforeUpdateOpportunity(var IsHandled: Boolean; var SalesHeader: Record "Sales Header") (integration): Raised before updating the opportunity.
  • OnBeforeCheckPromisedDeliveryDate(var IsHandled: Boolean; var SalesHeader: Record "Sales Header") (integration): Raised before checking the promised delivery date.
  • OnBeforeUpdateShipToAddressFromSellToAddress(var SalesHeader: Record "Sales Header"; FieldNumber: Integer; var IsHandled: Boolean) (integration): Raised before updating the ship-to address from the sell-to address.
  • OnBeforeUpdateShipToSalespersonCode(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) + BC24 (integration): Raised before updating the ship-to salesperson code.
  • OnBeforeSetSalespersonCode(var SalesHeader: Record "Sales Header"; SalesPersonCodeToCheck: Code[20]; var SalesPersonCodeToAssign: Code[20]; var IsHandled: Boolean) (integration): Raised before setting the salesperson code.
  • OnAfterUpdateShipToAddressFromSellToAddress(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; FieldNumber: Integer) (integration): Raised after updating the ship-to address from the sell-to address.
  • OnBeforeValidateShipToCode(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; Cust: Record Customer; ShipToAddr: Record "Ship-to Address"; var IsHandled: Boolean) (integration): Raised before validating the ship-to code.
  • OnValidateSellToCustomerNoOnBeforeCheckBlockedCustOnDocs(var SalesHeader: Record "Sales Header"; var Cust: Record Customer; var IsHandled: Boolean) (integration): Raised before checking if the customer is blocked on documents when validating sell-to customer number.
  • OnValidateBillToCustomerNoOnBeforeCheckBlockedCustOnDocs(var SalesHeader: Record "Sales Header"; var Cust: Record Customer; var IsHandled: Boolean) (integration): Raised before checking if the customer is blocked on documents when validating bill-to customer number.
  • OnBeforeSetBillToCustomerAddressFieldsFromCustomer(var SalesHeader: Record "Sales Header"; var BillToCustomer: Record Customer; var SkipBillToContact: Boolean; var IsHandled: Boolean; xSalesHeader: Record "Sales Header"; var GLSetup: Record "General Ledger Setup"; CurrentFieldNo: Integer) (integration): Raised before setting bill-to customer address fields from the customer record.
  • OnValidateBillToCustomerNoOnBeforeRecallModifyAddressNotification(var SalesHeader: Record "Sales Header"; var xSalesHeader: Record "Sales Header") (integration): Raised before recalling the modify address notification when validating bill-to customer number.
  • OnBeforeValidateBillToName(var SalesHeader: Record "Sales Header"; var Customer: Record Customer; var IsHandled: Boolean; xSalesHeader: Record "Sales Header") Δ BC27 (integration, obsolete 27.0): Raised before validating the bill-to name.
  • OnValidateShipToCodeOnBeforeValidateTaxLiable(var SalesHeader: Record "Sales Header"; var xSalesHeader: Record "Sales Header") (integration): Raised before validating tax liable when validating the ship-to code.
  • OnValidateShipToCodeOnBeforeCopyShipToAddress(var SalesHeader: Record "Sales Header"; var xSalesHeader: Record "Sales Header"; var CopyShipToAddress: Boolean) (integration): Raised before copying the ship-to address when validating the ship-to code.
  • OnBeforeValidateShipmentMethodCode(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before validating the shipment method code.
  • OnBeforeValidateShippingAgentCode(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean; var xSalesHeader: Record "Sales Header"; CurrentFieldNo: Integer) (integration): Raised before validating the shipping agent code.
  • OnInitRecordOnBeforeAssignWorkDateToPostingDate(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before assigning the work date to the posting date during record initialization.
  • OnBeforeSetBillToCustomerNo(var SalesHeader: Record "Sales Header"; var Cust: Record Customer; var IsHandled: Boolean; xSalesHeader: Record "Sales Header"; var CurrentFieldNo: Integer) (integration): Raised before setting the bill-to customer number.
  • OnBeforeValidateShippingAgentServiceCode(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before validating the shipping agent service code.
  • OnBeforeValidatePrepmtPaymentTermsCode(var SalesHeader: Record "Sales Header"; var xSalesHeader: Record "Sales Header"; CalledByFieldNo: Integer; CallingFieldNo: Integer; UpdateDocumentDate: Boolean; var IsHandled: Boolean) (integration): Raised before validating the prepayment payment terms code.
  • OnAfterRecreateSalesLines(var SalesHeader: Record "Sales Header"; ChangedFieldName: Text[100]) (integration): Raised after recreating sales lines.
  • OnAfterSetSellToCustomerFromFilter(var SalesHeader: Record "Sales Header") (integration): Raised after setting the sell-to customer from a filter.
  • OnBeforeCalcInvDiscForHeader(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before calculating the invoice discount for the header.
  • OnBeforeCouldDimensionsBeKept(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; var Result: Boolean; var IsHandled: Boolean) (integration): Raised before determining if dimensions could be kept.
  • OnBeforeConfirmBillToCustomerChange(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; CurrFieldNo: Integer; var Confirmed: Boolean; var IsHandled: Boolean) (integration): Raised before confirming the bill-to customer change.
  • OnValidateSellToCustomerNoOnBeforeRecallModifyAddressNotification(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header") (integration): Raised before recalling the modify address notification when validating sell-to customer number.
  • OnCheckCreditMaxBeforeInsertOnCaseIfOnBeforeSalesHeaderCheckCase(var SalesHeader: Record "Sales Header"; Rec: Record "Sales Header") (integration): Raised before checking the sales header case during credit max check before insert.
  • OnCheckCustomerCreatedOnAfterConfirmProcess(var SalesHeader: Record "Sales Header") (integration): Raised after confirming the customer creation process.
  • OnPrepmtPaymentTermsCodeOnCaseElseOnBeforeValidatePrepaymentDueDate(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; CurrFieldNo: Integer; var IsHandled: Boolean) (integration): Raised before validating the prepayment due date in the else case of prepayment payment terms code.
  • OnValidatePrepmtPaymentTermsCodeOnCaseIfOnBeforeValidatePrepaymentDueDate(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; CurrFieldNo: Integer; var IsHandled: Boolean) (integration): Raised before validating the prepayment due date in the if case when validating prepayment payment terms code.
  • OnAfterRecreateSalesLinesHandleSupplementTypes(var SalesHeader: Record "Sales Header") (integration): Raised after handling supplement types during sales lines recreation.
  • OnAfterInitPostingNoSeries(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header") (integration): Raised after initializing the posting number series.
  • OnBeforeInitFromBillToCustTemplate(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; var BillToCustTemplate: Record "Customer Templ.") (integration): Raised before initializing from the bill-to customer template.
  • OnBeforeCopyFromNewSellToCustTemplate(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; var SellToCustTemplate: Record "Customer Templ.") (integration): Raised before copying from a new sell-to customer template.
  • OnBeforeModifyCustomerAddress(var Rec: Record "Sales Header"; var xRec: Record "Sales Header") (integration): Raised before modifying the customer address.
  • OnBeforeShouldCopyAddressFromBillToCustomer(BillToCustomer: Record Customer; Rec: Record "Sales Header"; xRec: Record "Sales Header"; var Result: Boolean; var IsHandled: Boolean) (integration): Raised before determining if the address should be copied from the bill-to customer.
  • OnBeforeBillToCustomerIsReplaced(var SalesHeader: Record "Sales Header"; var xSalesHeader: Record "Sales Header"; var Result: Boolean; var IsHandled: Boolean) (integration): Raised before determining if the bill-to customer is replaced.
  • OnRecreateSalesLinesOnAfterFindSalesLine(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; ChangedFieldName: Text[100]) (integration): Raised after finding a sales line during recreation.
  • OnCopySelltoCustomerAddressFieldsFromCustomerOnBeforeAssignRespCenter(var SalesHeader: Record "Sales Header"; var SellToCustomer: Record Customer; var IsHandled: Boolean) (integration): Raised before assigning the responsibility center when copying sell-to customer address fields.
  • OnBeforeValidateExternalDocumentNo(var SalesHeader: Record "Sales Header"; var xSalesHeader: Record "Sales Header"; CurrentFieldNo: Integer; var IsHandled: Boolean) (integration): Raised before validating the external document number.
  • OnValidatePostingDateOnAfterCheckNeedUpdateCurrencyFactor(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; var NeedUpdateCurrencyFactor: Boolean) (integration): Raised after checking if the currency factor needs to be updated when validating posting date.
  • OnValidateSellToCustomerNoOnBeforeGetCust(var SalesHeader: Record "Sales Header"; var xSalesHeader: Record "Sales Header") (integration): Raised before getting the customer when validating sell-to customer number.
  • OnInitRecordOnBeforeAssignResponsibilityCenter(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before assigning the responsibility center during record initialization.
  • OnValidateSellToCustomerNoOnBeforeValidateLocationCode(var SalesHeader: Record "Sales Header"; var Cust: Record Customer; var IsHandled: Boolean; xSalesHeader: Record "Sales Header"; var LocationCode: Code[10]) + BC25 − BC25 + BC27 − BC27 (integration): Raised before validating the location code when validating sell-to customer number.
  • OnValidateSendICDocumentOnBeforeCheckICDirection(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before checking the IC direction when validating send IC document.
  • OnAfterGetPstdDocLinesToReverse(var SalesHeader: Record "Sales Header") (integration): Raised after getting posted document lines to reverse.
  • OnCopyShipToCustomerAddressFieldsFromCustOnBeforeValidateShippingAgentFields(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; SellToCustomer: Record Customer; var IsHandled: Boolean) (integration): Raised before validating shipping agent fields when copying ship-to customer address fields from customer.
  • OnSetShipToCustomerAddressFieldsFromShipToAddrOnBeforeValidateShippingAgentFields(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; ShipToAddr: Record "Ship-to Address"; var IsHandled: Boolean) (integration): Raised before validating shipping agent fields when setting ship-to customer address fields from ship-to address.
  • OnInitRecordOnBeforeGetNextArchiveDocOccurrenceNo(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before getting the next archive document occurrence number during record initialization.
  • OnRecreateSalesLinesOnBeforeCopyReservEntryFromTemp(var SalesLine: Record "Sales Line"; var TempSalesLine: Record "Sales Line" temporary; var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; ChangedFieldName: Text[100]) (integration): Raised before copying reservation entries from temporary records during sales lines recreation.
  • OnBeforeCheckCustomerPostingGroupChange(var SalesHeader: Record "Sales Header"; var xSalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before checking if the customer posting group has changed.
  • OnValidatePaymentTermsCodeOnAfterValidatePaymentDiscountWhenBlank(var SalesHeader: Record "Sales Header"; var xSalesHeader: Record "Sales Header"; CurrentFieldNo: Integer) (integration): Raised after validating the payment discount when payment terms code is blank.
  • OnUpdateSalesLineAmountsOnAfterSalesLineSetFilters(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line") (integration): Raised after setting sales line filters when updating sales line amounts.
  • OnLookupAdjmtValueEntriesCaseDocumentTypeElse(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; QtyType: Option General,Invoicing) (integration): Raised for the else case of document type when looking up adjustment value entries.
  • OnBeforeSalesLinesExist(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean; var Result: Boolean) (integration): Raised before checking if sales lines exist.
  • OnBeforeValidateVATBaseDiscountPct(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before validating the VAT base discount percentage.
  • OnValidatePricesIncludingVATOnBeforeSalesLineFindFirst(var SalesLine: Record "Sales Line") (integration): Raised before finding the first sales line when validating prices including VAT.
  • OnBeforeValidatePaymentMethodCode(var SalesHeader: Record "Sales Header"; PaymentMethod: Record "Payment Method"; var IsHandled: Boolean) (integration): Raised before validating the payment method code.
  • OnBeforeOnInsert(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean; var InsertMode: Boolean) + BC24 − BC24 (integration): Raised before the OnInsert trigger.
  • OnValidateSellToCustomerNoOnBeforeUpdateSellToCont(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; SellToCustomer: Record Customer; var SkipSellToContact: Boolean) (integration): Raised before updating the sell-to contact when validating sell-to customer number.
  • OnDeferralHeadersExistOnAfterSetFilters(var SalesHeader: Record "Sales Header"; var DeferralHeader: Record "Deferral Header") (integration): Raised after setting filters when checking if deferral headers exist.
  • OnCopySellToCustomerAddressFieldsFromCustomerOnBeforeUpdateLocation(var SalesHeader: Record "Sales Header"; var SellToCustomer: Record Customer; var IsHandled: Boolean) (integration): Raised before updating the location when copying sell-to customer address fields.
  • OnValidateVATReportingDateOnBeforeInitVATDate(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before initializing the VAT date when validating VAT reporting date.
  • OnShowDocDimOnBeforeSalesHeaderModify(var SalesHeader: Record "Sales Header") (integration): Raised before modifying the sales header when showing document dimensions.
  • OnCreateDimSetForPrepmtAccDefaultDimOnBeforeTempSalesLineCreateDim(var DefaultDimSource: List of [Dictionary of [Integer, Code[20]]]; SalesLine: Record "Sales Line") (integration): Raised before creating dimensions on a temporary sales line for prepayment account default dimensions.
  • OnBeforeInitDefaultDimensionSources(var SalesHeader: Record "Sales Header"; var DefaultDimSource: List of [Dictionary of [Integer, Code[20]]]; FieldNo: Integer) (integration): Raised before initializing default dimension sources.
  • OnValidateSelltoContactNoOnBeforeValidateSalespersonCode(var SalesHeader: Record "Sales Header"; Contact: Record Contact; var IsHandled: Boolean) (integration): Raised before validating the salesperson code when validating sell-to contact number.
  • OnCreateInvtPutAwayPickOnBeforeTestingStatus(var SalesHeader: Record "Sales Header") (integration): Raised before testing the status when creating inventory put-away or pick.
  • OnSendToPostingOnAfterPost(var SalesHeader: Record "Sales Header"; IsSuccess: Boolean) + BC28 − BC28 (integration): Raised after posting when sending to posting.
  • OnBeforeCheckItemAvailabilityInLines(SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; var IsHandled: Boolean) (integration): Raised before checking item availability in lines.
  • OnValidateSellToCustomerNoOnAfterTestStatusOpen(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised after testing status open when validating sell-to customer number.
  • OnValidateBillToCustomerNoOnAfterCheckBilltoCustomerNoChanged(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; CurrFieldNo: Integer; var IsHandled: Boolean; var IsHandledDoExist: Boolean) + BC26 − BC26 (integration): Raised after checking if bill-to customer number changed when validating bill-to customer number.
  • OnValidateSellToContactNoOnAfterContCheckIfPrivacyBlockedGeneric(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised after checking if contact is privacy blocked when validating sell-to contact number.
  • OnRecreateSalesLinesHandleSupplementTypesOnAfterCreateSalesLine(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; var TempSalesLine: Record "Sales Line" temporary) (integration): Raised after creating a sales line when handling supplement types during recreation.
  • OnBeforeConfirmCloseUnposted(var SalesHeader: Record "Sales Header"; var Result: Boolean; var IsHandled: Boolean) + BC28 (integration): Raised before confirming close unposted.
  • OnBeforeGetFilterCustNo(var SalesHeader: Record "Sales Header") + BC28 (integration): Raised before getting filter customer number.
  • OnConfirmCloseUnpostedOnSalesLinesExist(var SalesHeader: Record "Sales Header"; var Result: Boolean; var IsHandled: Boolean) (integration): Raised when confirming close unposted and sales lines exist.
  • OnBeforeResetInvoiceDiscountValue(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before resetting the invoice discount value.
  • OnCreateSalesLineOnBeforeAssignType(var SalesLine: Record "Sales Line"; TempSalesLine: Record "Sales Line" temporary; var SalesHeader: Record "Sales Header") Δ BC24 (integration): Raised before assigning the type when creating a sales line.
  • OnCreateSalesLineOnBeforeValidateShipmentDate(var SalesLine: Record "Sales Line"; TempSalesLine: Record "Sales Line" temporary; SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before validating the shipment date when creating a sales line.
  • OnCreateSalesLineOnBeforeSetDropShipment(var SalesLine: Record "Sales Line"; TempSalesLine: Record "Sales Line" temporary; var IsHandled: Boolean) (integration): Raised before setting the drop shipment flag when creating a sales line.
  • OnCreateSalesLineOnAfterValidateNo(var SalesLine: Record "Sales Line"; TempSalesLine: Record "Sales Line" temporary) (integration): Raised after validating the number field when creating a sales line.
  • OnCheckCustomerCreatedOnBeforeConfirmProcess(SalesHeader: Record "Sales Header"; var Prompt: Boolean; var Result: Boolean; var IsHandled: Boolean) (integration): Raised before confirming the customer creation process.
  • OnBeforeConfirmUpdateDeferralDate(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; CurrFieldNo: Integer; var IsHandled: Boolean) (integration): Raised before confirming the deferral date update.
  • OnBeforeSetCompanyBankAccount(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration): Raised before setting the company bank account.
  • OnUpdateSellToCustOnAfterFindContactBusinessRelation(SalesHeader: Record "Sales Header"; Contact: Record Contact; var ContactBusinessRelation: Record "Contact Business Relation"; var ContactBusinessRelationFound: Boolean) (integration): Raised after finding the contact business relation when updating sell-to customer.
  • OnUpdateBillToCustOnAfterFindContactBusinessRelation(SalesHeader: Record "Sales Header"; Contact: Record Contact; var ContactBusinessRelation: Record "Contact Business Relation"; var ContactBusinessRelationFound: Boolean) (integration): Raised after finding the contact business relation when updating bill-to customer.
  • OnCopyShipToCustomerAddressFieldsFromCustOnAfterAssignAddressFromSellToCustomer(var SalesHeader: Record "Sales Header"; SellToCustomer: Record Customer) (integration): Raised after assigning the address from sell-to customer when copying ship-to customer address fields.
  • OnBeforeHasSellToAddress(var SalesHeader: Record "Sales Header"; var Result: Boolean; var IsHandled: Boolean) (integration): Raised before checking if the sales header has a sell-to address.
  • OnBeforeHasShipToAddress(var SalesHeader: Record "Sales Header"; var Result: Boolean; var IsHandled: Boolean) (integration): Raised before checking if the sales header has a ship-to address.
  • OnBeforeHasBillToAddress(var SalesHeader: Record "Sales Header"; var Result: Boolean; var IsHandled: Boolean) (integration): Raised before checking if the sales header has a bill-to address.
  • OnAfterSetShipToAddress(var SalesHeader: Record "Sales Header") (integration): Raised after setting the ship-to address.
  • OnBeforeValidateShipmentDate(var SalesHeader: Record "Sales Header"; CurrentFieldNo: Integer; var IsHandled: Boolean) (integration): Raised before validating the shipment date.
  • OnBeforeValidatePaymentDiscount(var SalesHeader: Record "Sales Header"; CurrentFieldNo: Integer; var IsHandled: Boolean) + BC24 (integration): Raised before validating the payment discount.
  • OnBeforeUpdateSalesOrderLineIfExist(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) + BC24 (integration): Raised before updating sales order lines if they exist.
  • OnBeforeLinkSalesDocWithOpportunity(var SalesHeader: Record "Sales Header"; OldOpportunityNo: Code[20]; var IsHandled: Boolean) + BC24 (integration): Raised before linking a sales document with an opportunity.
  • OnBeforeUpdateVATReportingDate(var SalesHeader: Record "Sales Header"; CalledByFieldNo: Integer; var IsHandled: Boolean) + BC24 (integration): Raised before updating the VAT reporting date.
  • OnBeforeSendToPosting(var SalesHeader: Record "Sales Header"; var IsSuccess: Boolean; var IsHandled: Boolean; PostingCodeunitID: Integer) + BC24 (integration): Raised before sending the document to posting.
  • OnUpdateSellToCustOnBeforeValidateBillToContactNo(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) + BC24 (integration): Raised before validating the bill-to contact number when updating sell-to customer.
  • OnBeforePerformManualRelease(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) + BC25 (integration): Raised before performing a manual release.
  • OnBeforeIsNotFullyCancelled(var SalesCrMemoHeader: Record "Sales Cr.Memo Header"; var Result: Boolean; var IsHandled: Boolean) + BC25 Δ BC27 (integration, obsolete 27.0): Raised before checking if the document is not fully cancelled.
  • OnCheckCreditLimitOnAfterCreditLimitCheck(var SalesHeader: Record "Sales Header") + BC25 (integration): Raised after the credit limit check.
  • OnBeforeCreateDimFromDefaultDim(var Rec: Record "Sales Header"; FieldNo: Integer; var IsHandled: Boolean) + BC25 (integration): Raised before creating dimensions from default dimensions.
  • OnBeforeValidateCustomerDiscGroup(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; CurrentFieldNo: Integer; var IsHandled: Boolean) + BC25 (integration): Raised before validating the customer discount group.
  • OnBeforeSetWorkDescription(var SalesHeader: Record "Sales Header"; var NewWorkDescription: Text) + BC25 (integration): Raised before setting the work description.
  • OnBeforeLookupPrepmtCrMemoNoSeries(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) + BC25 (integration): Raised before looking up the prepayment credit memo number series.
  • OnBeforeValidatePrepmtCrMemoNoSeries(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) + BC25 (integration): Raised before validating the prepayment credit memo number series.
  • OnCalcOutstandingQuantityBaseOnAfterSalesLineSetFilters(var SalesLine: Record "Sales Line") + BC26 Δ BC27 (integration, obsolete 27.0): Raised after setting sales line filters when calculating outstanding quantity base.
  • OnBeforeCalculateReservableOutstandingQuantityBase(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean; var OutstandingQtyBase: Decimal) + BC27 (integration): Raised before calculating the reservable outstanding quantity base.
  • OnBeforeModifyBillToCustomerAddress(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) + BC26 (integration): Raised before modifying the bill-to customer address.
  • OnAfterValidateAppliesToDocNo(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; CustLedgEntry: Record "Cust. Ledger Entry") + BC27 (integration): Raised after validating the applies-to document number.
  • OnBeforeLookupPrepmtNoSeries(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) + BC26 (integration): Raised before looking up the prepayment number series.
  • OnBeforeValidatePrepmtNoSeries(var SalesHeader: Record "Sales Header"; var IsHandled: Boolean) + BC26 (integration): Raised before validating the prepayment number series.
  • OnCopySellToCustomerFilterOnAfterGetSellToCustomerFilter(var SalesHeader: Record "Sales Header"; var SellToCustomerFilter: Text) + BC26 (integration): Raised after getting the sell-to customer filter when copying.
  • OnBeforeSetSellToCustomerFromFilter(var SalesHeader: Record "Sales Header") + BC26 (integration): Raised before setting the sell-to customer from a filter.
  • OnLookupSellToCustomerNameOnBeforeSelectCustomer(SalesHeader: Record "Sales Header"; var Customer: Record Customer; var CustomerName: Text) + BC26 (integration): Raised before selecting a customer when looking up sell-to customer name.
  • OnCalcQuoteValidUntilDateOnBeforeAssign(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; var QuoteValidityCalculation: DateFormula; UpdateDocumentDate: Boolean) + BC28 (integration)
  • OnBeforeResponsibilityCenterValidate(var SalesHeader: Record "Sales Header"; xSalesHeader: Record "Sales Header"; var IsHandled: Boolean) + BC28 (integration)

Trigger event subscribers

Procedures

  • InitInsert(): Initializes a new sales header with a new document number from the number series.
  • InitRecord(): Initializes a new sales header with default values.
  • InitPostingDescription(): Initializes the posting description with formatted document type and number text for the sales header.
  • SetStandardCodesMgt(var StandardCodesMgtNew: Codeunit "Standard Codes Mgt."): Sets global StandardCodesMgtGlobal codeunit to a new instance.
  • AssistEdit(OldSalesHeader: Record "Sales Header"): Boolean: Opens a page to select related number series for the sales header and updates the document number with the selected number series.
  • TestNoSeries(): Checks if the number series for different types of sales documents are filled in the sales setup.
  • GetNoSeriesCode(): Code[20]: Returns the number series code from the sales setup based on the document type of the sales header.
  • TestNoSeriesDate(No: Code[20]; NoSeriesCode: Code[20]; NoCapt: Text[1024]; NoSeriesCapt: Text[1024]): Checks if the number series has to be assigned chronologically after various documents are already posted.
  • ConfirmDeletion(): Boolean: Opens a confirmation dialog to confirm the deletion of the sales header. This check is to confirm with the user that gaps will happen in the posted documents if the document is deleted.
  • GetCust(CustNo: Code[20]): Record Customer: Updates the global Customer record. Record will not be retrieved if document type is quote and provided customer no is blank.
  • SalesLinesExist(): Boolean: Checks if any sales lines exists for sales header.
  • RecreateSalesLines(ChangedFieldName: Text[100]): Recreates sales lines for a sales document when the provided field in the sales header is changed.
  • StoreSalesCommentLineToTemp(var TempSalesCommentLine: Record "Sales Comment Line" temporary): Inserts existing sales comment lines into a temporary record.
  • RestoreSalesCommentLine(var TempSalesCommentLine: Record "Sales Comment Line" temporary; OldDocumnetLineNo: Integer; NewDocumentLineNo: Integer): Inserts sales comment lines for the sales line of the document. Lines are inserted from the provided temporary sales comment line record set.
  • MessageIfSalesLinesExist(ChangedFieldName: Text[100]): Displays a message if sales lines exist for the sales header and the changed field was not updated on the lines.
  • PriceMessageIfSalesLinesExist(ChangedFieldName: Text[100]): Displays a message to the user if there are existing sales lines and a provided field in the sales header has been changed, which might affect the prices and discounts on the sales lines.
  • UpdateCurrencyFactor(): Updates currency factor on the sales header and recreates sales lines if the currency code has changed.
  • ConfirmCurrencyFactorUpdate(): Updates currency factor on the sales header if confirmed by the user.
  • SetHideValidationDialog(NewHideValidationDialog: Boolean): Sets the value of the global flag HideValidationDialog.
  • GetHideValidationDialog(): Boolean: Returns the value of the global flag HideValidationDialog.
  • SetHideCreditCheckDialogue(NewHideCreditCheckDialogue: Boolean): Sets the value of the global flag HideCreditCheckDialogue.
  • GetHideCreditCheckDialogue(): Boolean: Returns the value of the global flag HideCreditCheckDialogue.
  • UpdateLocationCode(LocationCode: Code[10]): Updates the location code with the specified location code. If it’s empty, it takes location code from user setup management.
  • UpdateSalesLines(ChangedFieldName: Text[100]; AskQuestion: Boolean): Updates sales lines to reflect changes in the sales header field. Optionally the confirmation is raised, for the user to confirm the update of lines.
  • UpdateSalesLinesByFieldNo(ChangedFieldNo: Integer; AskQuestion: Boolean): Updates sales lines based on the provided field number.
  • ConfirmReservationDateConflict(): Raises a confirmation informing the user that reservations may be canceled if the change in the field causes a date conflict. Confirmation is only raised if reservations exist. If not confirmed, the execution stops.
  • CreateDim(DefaultDimSource: List of [Dictionary of [Integer, Code[20]]]): Creates and assigns dimensions for the sales header based on the provided default dimension sources.
  • ValidateShortcutDimCode(FieldNumber: Integer; var ShortcutDimCode: Code[20]): Verifies whether the provided shortcut dimension code and value are valid. If valid, assigns it to the sales document.
  • ShippedSalesLinesExist(): Boolean: Determines if sales lines that are already shipped exist.
  • ReturnReceiptExist(): Boolean: Determines if sales lines that are already returned exist.
  • DeleteAllSalesLines(): Deletes all sales lines, reservation, and comment lines for the document.
  • CheckCustomerCreated(Prompt: Boolean): Boolean: Checks if sell-to and bill-to customer numbers are filled. If not, it creates customers based on the associated contact and customer template, and assigns the new customer number to the document.
  • RecreateReqLine(var TempReqLine: Record "Requisition Line" temporary; OldSalesLine: Record "Sales Line"; NewSourceRefNo: Integer; ToTemp: Boolean) + BC25 Δ BC25 − BC28: Recreates requisition lines linked to a sales line, either shifting them to a temporary table or back based on the provided ToTemp flag, updating the order promising line ID in the process.
  • TestPostingDate(BatchPost: Boolean) + BC27: Validates that the posting date matches the work date when posting date check is enabled in sales setup.
  • UpdateSellToCont(CustomerNo: Code[20]): Updates the sell-to contact details of a sales header based on the provided customer number.
  • UpdateBillToCont(CustomerNo: Code[20]): Updates the bill-to contact details of a sales header based on the provided customer number.
  • UpdateSellToCust(ContactNo: Code[20]): Updates the sell-to customer details of a sales header based on the provided contact number.
  • GetShippingTime(CalledByFieldNo: Integer): Updates the shipping time on the sales header.
  • GetSellToCustomerFaxNo(): Text: Gets sell-to customer fax number.
  • CheckCreditMaxBeforeInsert(): Checks the bill to customer credit limit and if credit limit is exceeded, creates a notification.
  • CreateInvtPutAwayPick(): Creates inventory put-away, pick, or movement documents for a released sales document.
  • CreateTask(): Starts the create task wizard with information from the sales header.
  • UpdateShipToAddress(): Updates the ship-to address information if the sales header has a credit document type.
  • ShowDocDim(): Opens a page for editing dimensions for the sales header. If dimensions are changed, they’re updated on the sales lines as well.
  • UpdateAllLineDim(NewParentDimSetID: Integer; OldParentDimSetID: Integer): Updates the dimensions of sales lines in a sales document when the dimensions of the sales header are changed.
  • LookupAdjmtValueEntries(QtyType: Option General,Invoicing): Opens a page with adjustment value entries related to the sales header.
  • GetCustomerVATRegistrationNumber(): Text: Returns the VAT registration number from a sales header.
  • GetCustomerVATRegistrationNumberLbl(): Text: Returns the VAT registration number field caption from a sales header.
  • GetStatusStyleText(): Text: Returns customer global location number. Currently defined to return an empty value.
  • GetPstdDocLinesToReverse(): Opens a page with posted document lines that can be reversed. After the user selects the lines, they are copied to the current document.
  • CalcInvDiscForHeader(): Calculates invoice discount for a sales header if calculate invoice discount is enabled in the sales setup.
  • SetSecurityFilterOnRespCenter(): Filters the sales header for responsibility center set in the user setup or company information. The filter is set in filter group 2 and is hidden from the user.
  • SynchronizeForReservations(var NewSalesLine: Record "Sales Line"; OldSalesLine: Record "Sales Line"): Updates reservations data if location or bin have changed on the sales line.
  • InventoryPickConflict(DocType: Enum "Sales Document Type"; DocNo: Code[20]; ShippingAdvice: Enum "Sales Header Shipping Advice"): Boolean: Determines if there is a conflict between inventory pick and sales line for a given sales document.
  • WhseShipmentConflict(DocType: Enum "Sales Document Type"; DocNo: Code[20]; ShippingAdvice: Enum "Sales Header Shipping Advice"): Boolean: Determines if there is a conflict between warehouse shipment and sales line for a given sales document.
  • CheckItemAvailabilityInLines(): Checks if all lines of the document are in stock. If the quantity in stock is too low, a notification is shown.
  • QtyToShipIsZero(): Boolean: Determines if the quantity to ship is zero for all sales document lines.
  • IsApprovedForPosting(): Boolean: Checks if the sales document can be posted. It checks for status, approvals, payments and prepayments, and throws an error if conditions are not met.
  • IsApprovedForPostingBatch(): Boolean: Determines if the sales document can be posted. It checks for status, approvals, payments, and prepayments.
  • GetLegalStatement(): Text: Returns legal statement from sales setup. Currently defined to return an empty value.
  • SendToPosting(PostingCodeunitID: Integer): Boolean: Posts a sales document by running the provided codeunit if the document is approved for posting.
  • CancelBackgroundPosting(): Cancels a background posting job for a sales document.
  • EmailRecords(ShowDialog: Boolean): Sends an email with the sales document attached.
  • GetDocTypeTxt(): Text[50]: Retrieves the full document type name based on the sales header document type.
  • GetFullDocTypeTxt(): Text: Retrieves the full sales document type name based on the sales header document type.
  • LinkSalesDocWithOpportunity(OldOpportunityNo: Code[20]): Updates the link between the sales document and an opportunity.
  • SynchronizeAsmHeader(): Updates the posting date of related assembly headers with the sales header.
  • CheckShippingAdvice(): Checks if the sales document can be shipped completely and throws an error if it cannot.
  • GetContactAsCompany(Contact: Record Contact; var SearchContact: Record Contact): Boolean (protected): Retrieves the company contact associated with the provided contact.
  • InvoicedLineExists(): Boolean: Determines whether there are invoiced sales lines for the sales header.
  • CreateDimSetForPrepmtAccDefaultDim(): Updates dimensions on lines with prepayments.
  • PrepareOpeningDocumentStatistics(): Runs checks and prepares data needed to open the document statistics page.
  • CheckAvailableCreditLimit(): Decimal: Determines the available credit limit for the customer associated with the sales header.
  • SetStatus(NewStatus: Option): Sets the status of a sales document.
  • TransferItemChargeAssgntSalesToTemp(var ItemChargeAssgntSales: Record "Item Charge Assignment (Sales)"; var TempItemChargeAssgntSales: Record "Item Charge Assignment (Sales)" temporary): Transfers item charge assignments to the temporary record set and deletes them from the original record.
  • CheckSalesPostRestrictions(): Triggers the OnCheckSalesPostRestrictions event that allows customized restrictions to be added to the sales document post process.
  • CustomerCreditLimitExceeded(): Triggers the OnCustomerCreditLimitExceeded event that allows a custom solution to be added when the calculated credit limit exceeds the customer’s credit limit.
  • CustomerCreditLimitExceeded(NotificationId: Guid): Triggers the OnCustomerCreditLimitExceeded event that allows a custom solution to be added when the calculated credit limit exceeds the customer’s credit limit.
  • CustomerCreditLimitNotExceeded(): Triggers the OnCustomerCreditLimitNotExceeded event that allows a custom solution to be added when the calculated credit limit not exceeds the customer’s credit limit.
  • CheckSalesReleaseRestrictions(): Checks the sales document approvals if the status is open.
  • DeferralHeadersExist(): Boolean: Determines whether there are related deferrals.
  • SetSellToCustomerFromFilter(): Sets the sell-to customer number from the filter applied to the sell-to customer field if the filter is not blank.
  • GetSellToCustomerFromFilter(): Code[20]: Retrieves the sell-to customer no. of a sales header based on a single-value filter applied to the sell-to customer no. field.
  • CopySellToCustomerFilter(): Moves the filter on sell-to customer no. from the current filter group to filter group 2.
  • BatchConfirmUpdateDeferralDate(var BatchConfirm: Option " ",Skip,Update; ReplacePostingDate: Boolean; PostingDateReq: Date; ReplaceVATDate: Boolean; VATDateReq: Date) − BC25: Raises a confirmation to update the deferral schedules on the lines to reflect the changed dates. If user confirms the update, the sales lines are updated.
  • BatchConfirmUpdatePostingDate(ReplacePostingDate: Boolean; PostingDateReq: Date; ReplaceVATDate: Boolean; VATDateReq: Date; ReplaceDocDate: Boolean) + BC25: Updates the posting date, VAT reporting date, and document date on the sales header during batch posting.
  • GetSelectedPaymentServicesText(): Text: Retrieves the name of the payment service assigned to the document.
  • SetDefaultPaymentServices(): Updates the payment service on the document with the default payment service from the setup.
  • ChangePaymentServiceSetting(): Opens a page to either select an existing payment service or set up a new one if none exists. The payment service is then assigned to the document.
  • IsCreditDocType(): Boolean: Check if sales header is credit document type. Credit documents are return orders and credit memos.
  • HasSellToAddress(): Boolean: Determines if sales header has sell-to information.
  • HasShipToAddress(): Boolean: Determines if sales header has ship-to information.
  • HasBillToAddress(): Boolean: Determines if sales header has bill-to information.
  • HasItemChargeAssignment(): Boolean: Determines if the sales header has any item charge assignments.
  • CopyShipToCustomerAddressFieldsFromCust(var SellToCustomer: Record Customer): Updates sales header with data from provided sell-to customer record.
  • SetShipToCustomerAddressFieldsFromShipToAddr(ShipToAddr: Record "Ship-to Address"): Updates the document’s shipping address from the provided ship-to address.
  • SetBillToCustomerAddressFieldsFromCustomer(var BillToCustomer: Record Customer): Updates the billing information on the document from the provided bill-to customer.
  • SetShipToAddress(ShipToName: Text[100]; ShipToName2: Text[50]; ShipToAddress: Text[100]; ShipToAddress2: Text[50]; ShipToCity: Text[30]; ShipToPostCode: Code[20]; ShipToCounty: Text[30]; ShipToCountryRegionCode: Code[10]): Sets the shipping address details for a sales header.
  • ShipToAddressEqualsSellToAddress(): Boolean: Determines if sell-to address matches the ship-to address.
  • BillToAddressEqualsSellToAddress(): Boolean: Determines if sell-to address matches the bill-to address.
  • CopySellToAddressToShipToAddress(): Copies the sell-to address to the ship-to address.
  • CopySellToAddressToBillToAddress(): Copies the sell-to address to the bill-to address if bill-to and sell-to customer numbers are the same.
  • ConfirmCloseUnposted(): Boolean: Raises a dialog to confirm closing a page if unposted lines exist.
  • InitFromSalesHeader(SourceSalesHeader: Record "Sales Header"): Initializes a sales header from the provided sales header.
  • SetWorkDescription(NewWorkDescription: Text): Updates current sales header work description with the provided description.
  • GetWorkDescription(): Text: Retrieves work description from the sales header.
  • LookupContact(CustomerNo: Code[20]; ContactNo: Code[20]; var Contact: Record Contact): Filters the contact for the company number that is associated with either the customer or contact number.
  • SetAllowSelectNoSeries(): Sets the global flag SelectNoSeriesAllowed to true.
  • SetDefaultSalesperson(): Sets the default salesperson code for the sales header.
  • GetUserSetupSalespersonCode(): Code[20]: Retrieves the salesperson code of the current user from the user setup.
  • SelltoCustomerNoOnAfterValidate(var SalesHeader: Record "Sales Header"; var xSalesHeader: Record "Sales Header"): Removes the filter on customer number if the customer number has changed.
  • PerformManualRelease(var SalesHeader: Record "Sales Header"): Releases the sales documents that are not yet released.
  • PerformManualRelease(): Releases the sales document if it’s not already released.
  • PerformManualReopen(var SalesHeader: Record "Sales Header"): Reopens sales documents that are not already open.
  • SelectSalesHeaderNewCustomerTemplate(): Code[20]: Opens a page for selecting a customer template to use for creating a new customer.
  • RecallModifyAddressNotification(NotificationID: Guid): Recalls a sent notification for the provided notification GUID.
  • GetModifyCustomerAddressNotificationId(): Guid: Returns a GUID for a notification that warns if the sell-to address on sales documents is different from the customer’s existing address.
  • GetModifyBillToCustomerAddressNotificationId(): Guid: Returns a GUID for a notification that warns if the bill-to address on sales documents is different from the customer’s existing address.
  • GetLineInvoiceDiscountResetNotificationId(): Guid: Returns a GUID for a notification that warns if the invoice discount amount for the sales line record has been reset.
  • GetWarnWhenZeroQuantitySalesLinePosting(): Guid: Returns a GUID for a notification that warns before posting lines on sales documents where quantity is 0.
  • SetModifyCustomerAddressNotificationDefaultState(): Inserts the default notification to warn that sell-to address on sales documents is different from the customer’s existing address.
  • SetModifyBillToCustomerAddressNotificationDefaultState(): Inserts the default notification to warn that bill-to address on sales documents is different from the customer’s existing address.
  • SetShowExternalDocAlreadyExistNotificationDefaultState(DefaultState: Boolean) + BC25: Sets the default state for the external document already exists notification in My Notifications.
  • DontNotifyCurrentUserAgain(NotificationID: Guid): Disables a specified notification for the current user.
  • HasDifferentSellToAddress(Customer: Record Customer): Boolean: Determines if the sell-to address matches the provided customer’s address.
  • HasDifferentBillToAddress(Customer: Record Customer): Boolean: Determines if the bill-to address matches the provided customer’s address.
  • HasDifferentShipToAddress(Customer: Record Customer): Boolean: Determines if the ship-to address matches the provided customer’s address.
  • ShowInteractionLogEntries(): Opens the interaction log entries page where entries related to the sales document are displayed.
  • GetBillToNo(): Code[20]: Retrieves the bill-to (customer or contact) number for a sales document.
  • GetCurrencySymbol(): Text[10]: Gets the currency symbol for sales document. If currency symbol is not specified returns the currency code.
  • UpdateShipToSalespersonCode(FieldNo: Integer) + BC24 + BC25 Δ BC26 − BC29: Updates the salesperson code from either the ship-to addresses or bill-to customer’s salesperson.
  • SetSalespersonCode(SalesPersonCodeToCheck: Code[20]; var SalesPersonCodeToAssign: Code[20]): Updates salesperson code. If the provided salesperson code privacy is not blocked, returns provided salesperson code, otherwise returns empty value to assign.
  • ValidateSalesPersonOnSalesHeader(SalesHeader2: Record "Sales Header"; IsTransaction: Boolean; IsPostAction: Boolean): Checks if the document can be created/posted depending on the privacy blocked of the salesperson.
  • ShouldSearchForCustomerByName(CustomerNo: Code[20]): Boolean: Determines whether a search for a customer should be performed by name for the provided customer number.
  • CanCalculateTax(): Boolean: Returns the value of the global variable SkipTaxCalculation.
  • SetSkipTaxCalulation(Skip: Boolean): Sets the value of the global variable SkipTaxCalculation.
  • TestQuantityShippedField(SalesLine: Record "Sales Line"): Checks if the sales line quantity shipped is zero. If it is not, an error is raised.
  • TestStatusIsNotPendingApproval(): Boolean: Determines if sales document status is not pending approval.
  • TestStatusIsNotPendingPrepayment(): Boolean: Determines if sales document status is not pending prepayment.
  • TestStatusIsNotReleased(): Boolean: Determines if sales document status is not released.
  • TestStatusOpen() + BC26: Checks if sales document status is open. If it is not, an error is raised.
  • TestStatusOpen(ThrowErrorIfNot: Boolean): Boolean + BC26: Checks if sales document status is open. If it is not, an error is raised.
  • SuspendStatusCheck(Suspend: Boolean): Sets the value of the global flag StatusCheckSuspended.
  • CheckForBlockedLines(): Checks if there are any blocked items or resources in the sales lines of the sales header.
  • CopyDocument(): Runs the copy sales document report for the sales header.
  • LookupSellToCustomerName(var CustomerName: Text): Boolean: Opens customer lookup page to select a customer.
  • SetBillToCustomerNo(var Cust: Record Customer) Δ BC26: Sets the bill-to customer number based on the provided customer record.
  • GetStatusCheckSuspended(): Boolean: Returns the value of the global flag StatusCheckSuspended.
  • GetCalledFromWhseDoc(): Boolean: Returns the value of the global flag CalledFromWhseDoc.
  • SetCalledFromWhseDoc(NewCalledFromWhseDoc: Boolean): Sets the value of the global flag CalledFromWhseDoc.
  • GetUseDate(): Date: Returns the date to use for the sales document.
  • InitPostingNoSeries(): Initializes the number series for sales document posting based on the document type.
  • CreateDimFromDefaultDim(FieldNo: Integer): Initializes the dimensions for the document from default dimensions for the related entry specified in the field.
  • SelltoContactLookup(): Boolean: Opens a contact lookup page and validates the sell-to contact number with the selected contact.
  • SetWarnZeroQuantitySalesPosting(): Inserts the default notification to warn before posting lines on sales documents where quantity is 0.
  • SalesLinesEditable(): Boolean: Determines if the sales lines are editable based on whether sell-to information is in the sales header.
  • GetShowExternalDocAlreadyExistNotificationId(): Guid + BC25: Returns the GUID for the external document already exists notification.
  • UpdateSalesOrderLineIfExist() Δ BC24 Δ BC26: Updates the related sales order line if a posted credit memo exists for this document.
  • GetQtyReservedFromStockState(): Enum "Reservation From Stock" (internal)
  • CalculateReservableOutstandingQuantityBase(): Decimal + BC27 (internal)
  • SendICSalesDoc(var SalesHeader: Record "Sales Header") + BC25: Sends filtered sales documents to intercompany partners through the IC inbox/outbox.

Plus 102 local procedures.

Triggers

OnDelete, OnInsert, OnRename

Relations

Referenced by

82 fields in 44 objects relate to this table (TableRelation or CalcFormula).

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.

Recent changes

Countries that replace it

AU, BE, CA, CH, ES, FR, IT, MX, NL, NO, NZ, RU, SE, US

Deprecations

  • field Coupled to CRM: Removed 26.0 (#if not CLEANSCHEMA26), “Replaced by flow field Coupled to Dataverse”
  • procedure OnBeforeIsNotFullyCancelled: Pending 27.0 (#if not CLEAN27), “Removed Not used anymore.”
  • procedure OnBeforeValidateBillToName: Pending 27.0 (#if not CLEAN27), “This event is never raised.”
  • procedure OnCalcOutstandingQuantityBaseOnAfterSalesLineSetFilters: Pending 27.0 (#if not CLEAN27), “Not used anymore due to new implementation that uses Query. Replaced by OnBeforeCalculateReservableOutstandingQuantityBase.”

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

Evidence 1 sources