Table 8052 "Customer Subscription Contract"
Subscription Billing · Microsoft.SubscriptionBilling
Across versions
- BC23-28not present
- BC29present
- BC30changed
Neighbourhood 41 connected objects and pages
Subscription Billing · Microsoft.SubscriptionBilling · BC29-30 · source at ea08af5e · facts from BC29
Learn documents this table through its pages: Page 8053 “Customer Contracts” (5 Learn pages), Page 8052 “Customer Contract” (4).
Properties
| Property | Value |
|---|---|
| Caption | Customer Subscription Contract |
| DataClassification | CustomerContent |
| LookupPageId | Customer Contracts |
| DrillDownPageId | Customer Contracts |
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 |
|---|---|---|---|---|
| 2 | Sell-to Customer No. | Code[20] | Specifies the number of the customer who will receive the contract components and be billed by default. via Page 8052 “Customer Contract” | TableRelation Table 18 “Customer” |
| 3 | No. | Code[20] | Specifies the number of the involved entry or record, according to the specified number series. via Page 8052 “Customer Contract” | |
| 4 | Bill-to Customer No. | Code[20] | Specifies the number of the customer that you send or sent the invoice or credit memo to. via Page 8053 “Customer Contracts” | TableRelation Table 18 “Customer”; NotBlank; DataClassification EndUserIdentifiableInformation |
| 5 | Bill-to Name | Text[100] | Specifies the customer to whom you will send the contract invoice, when different from the contractor. via Page 8052 “Customer Contract” | TableRelation Customer.Name; DataClassification EndUserIdentifiableInformation |
| 6 | Bill-to Name 2 | Text[50] | — | DataClassification EndUserIdentifiableInformation |
| 7 | Bill-to Address | Text[100] | Specifies the address of the customer that you will send the invoice to. via Page 8052 “Customer Contract” | DataClassification EndUserIdentifiableInformation |
| 8 | Bill-to Address 2 | Text[50] | Specifies additional address information. via Page 8052 “Customer Contract” | DataClassification EndUserIdentifiableInformation |
| 9 | Bill-to City | Text[30] | Specifies the city of the customer on the contract invoice. via Page 8052 “Customer Contract” | 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”))); DataClassification EndUserIdentifiableInformation |
| 10 | Bill-to Contact | Text[100] | Specifies the name of the person you should contact at the customer who you are sending the invoice to. via Page 8052 “Customer Contract” | DataClassification EndUserIdentifiableInformation |
| 11 | Your Reference | Text[35] | Specifies the customer’s reference. The content will be printed on contract invoice. via Page 8052 “Customer Contract” | |
| 12 | Ship-to Code | Code[10] | Specifies the code for another shipment address than the customer’s own address, which is entered by default. via Page 8052 “Customer Contract” | TableRelation Table 222 “Ship-to Address” (“Ship-to Address”.Code where(“Customer No.” = field(“Sell-to Customer No.”))) |
| 13 | Ship-to Name | Text[100] | Specifies the name of the one who receives or uses the Subscription Contract Lines. via Page 8052 “Customer Contract” | DataClassification EndUserIdentifiableInformation |
| 14 | Ship-to Name 2 | Text[50] | — | DataClassification EndUserIdentifiableInformation |
| 15 | Ship-to Address | Text[100] | Specifies the address of the one who receives or uses the Subscription Contract Lines. via Page 8052 “Customer Contract” | DataClassification EndUserIdentifiableInformation |
| 16 | Ship-to Address 2 | Text[50] | Specifies additional address information. via Page 8052 “Customer Contract” | DataClassification EndUserIdentifiableInformation |
| 17 | Ship-to City | Text[30] | Specifies the city of the customer on the contract. via Page 8052 “Customer Contract” | 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”))); DataClassification EndUserIdentifiableInformation |
| 18 | Ship-to Contact | Text[100] | Specifies the name of the contact person at the address where Subscription Contract Lines are received or used. via Page 8052 “Customer Contract” | DataClassification EndUserIdentifiableInformation |
| 23 | Payment Terms Code | Code[10] | Specifies a formula that calculates the payment due date, payment discount date, and payment discount amount. via Page 8052 “Customer Contract” | TableRelation Table 3 “Payment Terms” (Payment Terms) |
| 29 | Shortcut Dimension 1 Code | 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. via Page 8052 “Customer Contract” | TableRelation Table 349 “Dimension Value” (“Dimension Value”.Code where(“Global Dimension No.” = const(1), Blocked = const(false))) |
| 30 | Shortcut Dimension 2 Code | 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. via Page 8052 “Customer Contract” | TableRelation Table 349 “Dimension Value” (“Dimension Value”.Code where(“Global Dimension No.” = const(2), Blocked = const(false))) |
| 32 | Currency Code | Code[10] | Specifies the currency of amounts on the contract invoice. via Page 8052 “Customer Contract” | TableRelation Table 4 “Currency” |
| 33 | DefaultExcludeFromPriceUpdate | Boolean | Specifies whether new contract lines will be set to be allowed in price updates by default, when they are assigned to the contract. via Page 8052 “Customer Contract” | |
| 34 | Customer Price Group | Code[10] | — | TableRelation Table 6 “Customer Price Group” (Customer Price Group) |
| 43 | Salesperson Code | Code[20] | Specifies the name of the salesperson who is assigned to the customer. via Page 8052 “Customer Contract” | TableRelation Table 13 “Salesperson/Purchaser” (Salesperson/Purchaser) |
| 79 | Sell-to Customer Name | Text[100] | Specifies the name of the customer who will receive the contract components and be billed by default. via Page 8052 “Customer Contract” | TableRelation Customer.Name; DataClassification EndUserIdentifiableInformation |
| 80 | Sell-to Customer Name 2 | Text[50] | — | DataClassification EndUserIdentifiableInformation |
| 81 | Sell-to Address | Text[100] | Specifies the address where the customer is located. via Page 8052 “Customer Contract” | DataClassification EndUserIdentifiableInformation |
| 82 | Sell-to Address 2 | Text[50] | Specifies additional address information. via Page 8052 “Customer Contract” | DataClassification EndUserIdentifiableInformation |
| 83 | Sell-to City | Text[30] | Specifies the city of the customer on the Customer Subscription Contract. via Page 8052 “Customer Contract” | 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”))); DataClassification EndUserIdentifiableInformation |
| 84 | Sell-to Contact | Text[100] | Specifies the name of the person to contact at the customer. via Page 8052 “Customer Contract” | DataClassification EndUserIdentifiableInformation |
| 85 | Bill-to Post Code | Code[20] | Specifies the postal code. via Page 8052 “Customer Contract” | TableRelation Table 225 “Post Code” (Post Code); DataClassification EndUserIdentifiableInformation |
| 86 | Bill-to County | Text[30] | Specifies the state, province or county of the address. via Page 8052 “Customer Contract” | DataClassification EndUserIdentifiableInformation |
| 87 | Bill-to Country/Region Code | Code[10] | Specifies the country or region of the address. via Page 8052 “Customer Contract” | TableRelation Table 9 “Country/Region” (Country/Region); DataClassification EndUserIdentifiableInformation |
| 88 | Sell-to Post Code | Code[20] | Specifies the postal code. via Page 8052 “Customer Contract” | 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”))); DataClassification EndUserIdentifiableInformation |
| 89 | Sell-to County | Text[30] | Specifies the state, province or county of the address. via Page 8052 “Customer Contract” | DataClassification EndUserIdentifiableInformation |
| 90 | Sell-to Country/Region Code | Code[10] | Specifies the country or region of the address. via Page 8052 “Customer Contract” | TableRelation Table 9 “Country/Region” (Country/Region); DataClassification EndUserIdentifiableInformation |
| 91 | Ship-to Post Code | Code[20] | Specifies the postal code. via Page 8052 “Customer Contract” | 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”))); DataClassification EndUserIdentifiableInformation |
| 92 | Ship-to County | Text[30] | Specifies the state, province or county of the address. via Page 8052 “Customer Contract” | DataClassification EndUserIdentifiableInformation |
| 93 | Ship-to Country/Region Code | Code[10] | Specifies the customer’s country/region. via Page 8052 “Customer Contract” | TableRelation Table 9 “Country/Region” (Country/Region); DataClassification EndUserIdentifiableInformation |
| 104 | Payment Method Code | Code[10] | Specifies how to make payment, such as with bank transfer, cash, or check. via Page 8052 “Customer Contract” | TableRelation Table 289 “Payment Method” (Payment Method) |
| 107 | No. Series | Code[20] | — | TableRelation No. Series; not editable |
| 171 | Sell-to Phone No. | Text[30] | Specifies the telephone number of the contact person that the sales document will be sent to. via Page 8052 “Customer Contract” | |
| 172 | Sell-to E-Mail | Text[80] | Specifies the email address of the contact person that the sales document will be sent to. via Page 8052 “Customer Contract” | |
| 200 | Description | Blob | — | |
| 480 | Dimension Set ID | Integer | — | TableRelation Table 480 “Dimension Set Entry” (Dimension Set Entry); not editable |
| 5052 | Sell-to Contact No. | Code[20] | Specifies the number of the contact that receives the contract components. via Page 8052 “Customer Contract” | TableRelation Table 5050 “Contact” |
| 5053 | Bill-to Contact No. | Code[20] | Specifies the number of the contact the invoice will be sent to. via Page 8052 “Customer Contract” | TableRelation Table 5050 “Contact” |
| 8050 | Create Contract Deferrals | Boolean | Specifies whether to generate contract deferrals for the contract in general. The field affects only Subscription lines assigned to the contract for which the field “Create Contract Deferrals” is set to Contract-dependent. via Page 8052 “Customer Contract” | |
| 8051 | Without Contract Deferrals | Boolean | Specifies whether deferrals should be generated for the contract. If the field is activated, no deferrals are generated and the invoices are posted directly to profit or loss. via Page 8052 “Customer Contract” | obsolete Pending 27.0; #if not CLEANSCHEMA30 |
| 8052 | Detail Overview | Enum “Contract Detail Overview” | Specifies whether the billing details for this contract are automatically output with invoices and credit memos. via Page 8052 “Customer Contract” | enum Enum 8060 “Contract Detail Overview” |
| 8053 | Billing Rhythm Filter | DateFormula | — | FlowFilter |
| 8054 | Dimension from Job No. | Code[20] | Specifies the Project number from which the dimensions for the contract are transferred. via Page 8052 “Customer Contract” | TableRelation Job.“No.” where(“Bill-to Customer No.” = field(“Bill-to Customer No.”)) |
| 8055 | Billing Base Date | Date | Specifies the billing base date for the contract. If a date is specified here, the billing of all Subscription Lines will be harmonized based on this date. via Page 8052 “Customer Contract” | |
| 8056 | Default Billing Rhythm | DateFormula | Specifies the billing rhythm of the contract. If a date formula is specified here, the billing of all Subscription Lines will be harmonized based on this billing rhythm. via Page 8052 “Customer Contract” | |
| 8057 | Next Billing From | Date | Specifies the start date of the next billing period. The next billing of all Subscription Lines will be harmonized to this date. via Page 8052 “Customer Contract” | not editable |
| 8058 | Next Billing To | Date | Specifies the end date of the next billing period. The next billing of all Subscription Line will be harmonized to this date. via Page 8052 “Customer Contract” | not editable |
| 8059 | Contractor Name in coll. Inv. | Boolean | Specifies that the name of the contractor (Sell-to Customer) is transferred to collective invoices. via Page 8052 “Customer Contract” | |
| 8060 | Recipient Name in coll. Inv. | Boolean | Specifies that the recipient name (Ship-to Address) is transferred to collective invoices. via Page 8052 “Customer Contract” | |
| 9000 | Assigned User ID | Code[50] | Specifies the ID of the user who is responsible for the document. via Page 8052 “Customer Contract” | TableRelation Table 91 “User Setup” (“User Setup”.“User ID”); DataClassification EndUserIdentifiableInformation |
| 9500 | Active | Boolean | Specifies whether the contract is active. via Page 8052 “Customer Contract” | |
| 9501 | Contract Type | Code[10] | Specifies the classification of the contract. via Page 8052 “Customer Contract” | TableRelation Table 8053 “Subscription Contract Type” (Subscription Contract Type) |
| 9502 | Description Preview | Text[100] | — |
Keys
- PK: No. (clustered)
Events published
OnAfterIsShipToAddressEqualToSellToAddress(SellToCustomerSubscriptionContract: Record "Customer Subscription Contract"; ShipToCustomerSubscriptionContract: Record "Customer Subscription Contract"; var Result: Boolean)(integration)OnAfterIsShipToAddressEqualToSubscriptionHeaderShipToAddress(CustomerSubscriptionContract: Record "Customer Subscription Contract"; SubscriptionHeader: Record "Subscription Header"; var Result: Boolean)(integration)OnAfterGetSubscriptionContractSetup(CustomerSubscriptionContract: Record "Customer Subscription Contract"; var SubscriptionContractSetup: Record "Subscription Contract Setup"; CalledByFieldNo: Integer)(integration)OnAfterValidateShortcutDimCode(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; xCustomerSubscriptionContract: Record "Customer Subscription Contract"; FieldNumber: Integer; var ShortcutDimCode: Code[20])(integration)OnAfterSetFieldsBilltoCustomer(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; Customer: Record Customer)(integration)OnAfterCopySellToAddressToShipToAddress(var CustomerSubscriptionContract: Record "Customer Subscription Contract")(integration)OnAfterCopySellToAddressToBillToAddress(var CustomerSubscriptionContract: Record "Customer Subscription Contract")(integration)OnAfterCopyShipToCustomerAddressFieldsFromCustomer(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; SellToCustomer: Record Customer)(integration)OnAfterCopyShipToCustomerAddressFieldsFromShipToAddr(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; ShipToAddress: Record "Ship-to Address")(integration)OnAfterCopySellToCustomerAddressFieldsFromCustomer(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; SellToCustomer: Record Customer; CurrentFieldNo: Integer)(integration)OnBeforeAssistEdit(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; OldCustomerSubscriptionContract: Record "Customer Subscription Contract"; var IsHandled: Boolean)(integration)OnBeforeConfirmBillToContactNoChange(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; xCustomerSubscriptionContract: Record "Customer Subscription Contract"; CurrentFieldNo: Integer; var Confirmed: Boolean; var IsHandled: Boolean)(integration)OnBeforeConfirmSellToContactNoChange(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; xCustomerSubscriptionContract: Record "Customer Subscription Contract"; CurrentFieldNo: Integer; var Confirmed: Boolean; var IsHandled: Boolean)(integration)OnBeforeInitInsert(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; xCustomerSubscriptionContract: Record "Customer Subscription Contract"; var IsHandled: Boolean)(integration)OnBeforeCopyShipToCustomerAddressFieldsFromCustomer(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; Customer: Record Customer; var IsHandled: Boolean)(integration)OnBeforeCopyShipToCustomerAddressFieldsFromShipToAddr(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; ShipToAddress: Record "Ship-to Address"; var IsHandled: Boolean)(integration)OnBeforeCreateDim(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; var IsHandled: Boolean)(integration)OnBeforeLookupBillToPostCode(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; var PostCodeRec: Record "Post Code")(integration)OnBeforeLookupSellToPostCode(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; var PostCodeRec: Record "Post Code")(integration)OnBeforeLookupShipToPostCode(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; var PostCodeRec: Record "Post Code")(integration)OnBeforeValidateBillToPostCode(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; var PostCodeRec: Record "Post Code")(integration)OnBeforeValidateSellToPostCode(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; var PostCodeRec: Record "Post Code")(integration)OnBeforeValidateShipToPostCode(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; var PostCodeRec: Record "Post Code")(integration)OnBeforeUpdateSellToCust(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; var Contact: Record Contact; var Customer: Record Customer; ContactNo: Code[20])(integration)OnCreateDimOnBeforeModify(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; xCustomerSubscriptionContract: Record "Customer Subscription Contract"; CurrentFieldNo: Integer)(integration)OnInitFromContactOnAfterInitNoSeries(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; var xCustomerSubscriptionContract: Record "Customer Subscription Contract")(integration)OnValidateSellToCustomerNoAfterInit(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; var xCustomerSubscriptionContract: Record "Customer Subscription Contract")(integration)OnAfterUpdateBillToCont(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; Customer: Record Customer; Contact: Record Contact)(integration)OnAfterUpdateBillToCust(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; Contact: Record Contact)(integration)OnAfterUpdateSellToCont(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; Customer: Record Customer; Contact: Record Contact)(integration)OnAfterUpdateSellToCust(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; Contact: Record Contact)(integration)OnBeforeValidateBillToCustomerName(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; var Customer: Record Customer)(integration)OnBeforeValidateSellToCustomerName(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; var Customer: Record Customer)(integration)OnBeforeValidateShortcutDimCode(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; xCustomerSubscriptionContract: Record "Customer Subscription Contract"; FieldNumber: Integer; var ShortcutDimCode: Code[20])(integration)OnUpdateBillToCustOnBeforeContactIsNotRelatedToAnyCustomerErr(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; Contact: Record Contact; var ContactBusinessRelation: Record "Contact Business Relation"; var IsHandled: Boolean)(integration)OnUpdateBillToCustOnBeforeFindContactBusinessRelation(Contact: Record Contact; var ContBusinessRelation: Record "Contact Business Relation"; var ContactBusinessRelationFound: Boolean; var IsHandled: Boolean)(integration)OnUpdateSellToCustOnBeforeContactIsNotRelatedToAnyCustomerErr(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; Contact: Record Contact; var ContactBusinessRelation: Record "Contact Business Relation"; var IsHandled: Boolean)(integration)OnUpdateSellToCustOnBeforeFindContactBusinessRelation(Cont: Record Contact; var ContBusinessRelation: Record "Contact Business Relation"; var ContactBusinessRelationFound: Boolean; var IsHandled: Boolean)(integration)OnValidateBillToCustomerNoOnAfterConfirmed(var CustomerSubscriptionContract: Record "Customer Subscription Contract")(integration)OnBeforeUpdateBillToCust(var CustomerSubscriptionContract: Record "Customer Subscription Contract"; ContactNo: Code[20]; var IsHandled: Boolean)(integration)OnBeforeCheckContactRelatedToCustomerCompany(CustomerSubscriptionContract: Record "Customer Subscription Contract"; CurrFieldNo: Integer; var IsHandled: Boolean)(integration)OnBeforeCreateCustomerContractLineFromSubscriptionLine(var SubscriptionLine: Record "Subscription Line"; ContractNo: Code[20]; var CustSubContractLine: Record "Cust. Sub. Contract Line")(integration)OnAfterCreateCustomerContractLineFromSubscriptionLine(SubscriptionLine: Record "Subscription Line"; var CustSubContractLine: Record "Cust. Sub. Contract Line")(integration)OnBeforeModifySubscriptionLineOnCreateCustomerContractLineFromSubscriptionLine(var SubscriptionLine: Record "Subscription Line"; CustSubContractLine: Record "Cust. Sub. Contract Line")(integration)OnAfterCreateDimDimSource(CustomerSubscriptionContract: Record "Customer Subscription Contract"; CurrFieldNo: Integer; var DefaultDimSource: List of [Dictionary of [Integer, Code[20]]])(integration)OnAfterUpdateHarmonizedBillingFields(var CustomerSubscriptionContract: Record "Customer Subscription Contract")(integration)OnBeforeUpdateAllLineDim(var CustomerContract: Record "Customer Subscription Contract"; NewParentDimSetID: Integer; OldParentDimSetID: Integer; var IsHandled: Boolean; xCustomerContract: Record "Customer Subscription Contract")(integration)OnBeforeConfirmUpdateAllLineDim(var CustomerContract: Record "Customer Subscription Contract"; xCustomerContract: Record "Customer Subscription Contract"; var Confirmed: Boolean; var IsHandled: Boolean)(integration)OnBeforeCreateCustomerContractLineFromTempSubscriptionLine(var TempSubscriptionLine: Record "Subscription Line" temporary; CustomerSubscriptionContract: Record "Customer Subscription Contract"; var IsHandled: Boolean)(integration)OnBeforeUpdateServicesDates(CustomerSubscriptionContract: Record "Customer Subscription Contract"; var CustSubContractLine: Record "Cust. Sub. Contract Line")(integration)
Procedures
IsContractTypeSetAsHarmonizedBilling(): Boolean(internal)AssistEdit(OldCustomerContract: Record "Customer Subscription Contract"): Boolean(internal)CustomerContractLinesExists(): Boolean(internal)NotReleasedCustomerContractDeferralsExists(): Boolean(internal)SetHideValidationDialog(NewHideValidationDialog: Boolean)ValidateShortcutDimCode(FieldNumber: Integer; var ShortcutDimCode: Code[20])ShowDocDim()(internal)SetSellToCustomerFromFilter()(internal)CopySellToCustomerFilter()(internal)ShipToAddressEqualsSellToAddress(): Boolean(internal)IsShipToAddressEqualToServiceObjectShipToAddress(var ServiceObject: Record "Subscription Header"): Boolean(internal)CopySellToAddressToShipToAddress()(internal)CopySellToAddressToBillToAddress()(internal)SetDescription(NewDescription: Text)(internal)GetDescription(): Text(internal)SelltoCustomerNoOnAfterValidate(var CustomerContract: Record "Customer Subscription Contract"; var xCustomerContract: Record "Customer Subscription Contract")(internal)RecallModifyAddressNotification(NotificationID: Guid)(internal)GetModifyCustomerAddressNotificationId(): Guid(internal)GetModifyBillToCustomerAddressNotificationId(): Guid(internal)GetNotificationIdDiscountIsNotTransferredFromSalesLine(): Guid(internal)DontNotifyCurrentUserAgain(NotificationID: Guid)(internal)CheckContactRelatedToCustomerCompany(ContactNo: Code[20]; CustomerNo: Code[20]; CurrentFieldNo: Integer)(internal)LookupSellToCustomerName(): Boolean(internal)CreateCustomerContractLinesFromServiceCommitments(var TempServiceCommitment: Record "Subscription Line" temporary): Creates customer subscription contract line from subscription line which are not already assigned to a customer subscription contract line.CreateCustomerContractLineFromServiceCommitment(TempServiceCommitment: Record "Subscription Line" temporary; ContractNo: Code[20])CreateCustomerContractLineFromServiceCommitment(var ServiceCommitment: Record "Subscription Line"; ContractNo: Code[20]; var CustomerContractLine: Record "Cust. Sub. Contract Line")UpdateHarmonizedBillingFields(ServiceCommitment: Record "Subscription Line")(internal)ResetHarmonizedBillingFields()(internal)UpdateServicesDates()(internal)UpdateAndRecalculateServiceCommitmentCurrencyData()(internal)ResetCustomerServiceCommitmentCurrencyFromLCY()(internal)CreateBillingProposal()(internal)UpdateDimensionsInDeferrals()(internal)RecalculateHarmonizedBillingFieldsBasedOnNextBillingDate(DeletedCustContractLineNo: Integer)(internal)FindEarliestServiceCommitment(var ServiceCommitment: Record "Subscription Line"; DeletedCustContractLineNo: Integer): Boolean(internal)
Plus 50 local procedures.
Triggers
OnInsert, OnRename, OnDelete
Relations
- drill-down page Page 8053 “Customer Contracts”
- lookup page Page 8053 “Customer Contracts”
- Salesperson Code: TableRelation Table 13 “Salesperson/Purchaser”
- Bill-to Customer No.: TableRelation Table 18 “Customer”
- Sell-to Customer No.: TableRelation Table 18 “Customer”
- Ship-to Code: TableRelation Table 222 “Ship-to Address”
- Bill-to City: TableRelation Table 225 “Post Code” (conditional)
- Bill-to Post Code: TableRelation Table 225 “Post Code”
- Sell-to City: TableRelation Table 225 “Post Code” (conditional)
- Sell-to Post Code: TableRelation Table 225 “Post Code” (conditional)
- Ship-to City: TableRelation Table 225 “Post Code” (conditional)
- Ship-to Post Code: TableRelation Table 225 “Post Code” (conditional)
- Payment Method Code: TableRelation Table 289 “Payment Method”
- Payment Terms Code: TableRelation Table 3 “Payment Terms”
- Shortcut Dimension 1 Code: TableRelation Table 349 “Dimension Value”
- Shortcut Dimension 2 Code: TableRelation Table 349 “Dimension Value”
- Currency Code: TableRelation Table 4 “Currency”
- Dimension Set ID: TableRelation Table 480 “Dimension Set Entry”
- Bill-to Contact No.: TableRelation Table 5050 “Contact”
- Sell-to Contact No.: TableRelation Table 5050 “Contact”
- Customer Price Group: TableRelation Table 6 “Customer Price Group”
- Contract Type: TableRelation Table 8053 “Subscription Contract Type”
- Bill-to Country/Region Code: TableRelation Table 9 “Country/Region”
- Sell-to Country/Region Code: TableRelation Table 9 “Country/Region”
- Ship-to Country/Region Code: TableRelation Table 9 “Country/Region”
- Assigned User ID: TableRelation Table 91 “User Setup”
Referenced by
19 fields in 18 objects relate to this table (TableRelation or CalcFormula).
- Table 8001 “Sub. Contract Renewal Line”: Linked to Sub. Contract No., Subscription Contract No.
- Table 8002 “Planned Subscription Line”: Subscription Contract No.
- Table 8006 “Usage Data Billing”: Subscription Contract No.
- Table 8007 “Overdue Subscription Line”: Subscription Contract No.
- Table 8009 “Imported Subscription Line”: Subscription Contract No.
- Table 8019 “Sub. Contr. Analysis Entry”: Subscription Contract No.
- Table 8022 “Contract Billing Err. Log”: Subscription Contract No.
- Table 8059 “Subscription Line”: Subscription Contract No.
- Table 8061 “Billing Line”: Subscription Contract No.
- Table 8062 “Cust. Sub. Contract Line”: Subscription Contract No.
- Table 8064 “Billing Line Archive”: Subscription Contract No.
- Table 8066 “Cust. Sub. Contract Deferral”: Subscription Contract No.
- Table 8073 “Subscription Line Archive”: Subscription Contract No.
- Table extension 8000 “Contracts Contact”: Cust. Subscription Contracts
- Table extension 8001 “Contracts Customer”: Cust. Subscription Contracts
- Table extension 8056 “Sales Invoice Line”: Subscription Contract No.
- Table extension 8058 “Sales Cr. Memo Line”: Subscription Contract No.
- Table extension 8067 “G/L Entry”: Subscription Contract No.
Pages and codeunits on this table
- Page 8024 “Customer Contracts API” (source table)
- Page 8052 “Customer Contract” (source table)
- Page 8053 “Customer Contracts” (source table)
Recent changes
- 2026-09-30 #12053 Remove-Sustainability-CLEAN27-tags-for-Wave2-2026 (main, BC30, obsoletion)
- 2026-09-22 #10064 Add support for “External Document No.” in Subscription Contracts Fixes #8818 (main, BC30, feature)
- 2026-07-27 #9712 [master] - Changing the contact of a Customer Subscription Contract doesn’t update the email of the contract. (main, BC30, fix)
- 2026-07-14 #8115 Subscription Billing: respect Default Dimension Priorities on Subscription Lines (main, BC30, fix)
Deprecations
- field Without Contract Deferrals: Pending 27.0 (#if not CLEANSCHEMA30), “Removed in favor of Create Contract Deferrals.”
Source: AL metadata extracted from the code (names, ids, signatures, properties); no code bodies (D10).
Ask your agent
Procedure bodies are not stored here (D10). For a procedure body or the calls of one procedure, ask bc-code-atlas (external, by Stefan Maron, MIT; default corpus w1-28), which the bc-observatory plugin connects: bcatlas_resolve_node(object_type: "table", object_name: "Customer Subscription Contract"), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.