tableRelationship Managementofficial - Microsoftderived - from the source, no model text

Table 5050 "Contact"

Base Application · Microsoft.CRM.Contact

Across versions

  1. BC23present
  2. BC2412 fields changed, 7 events added
  3. BC2527 fields changed, 1 events added
  4. BC262 fields changed, 2 fields removed
  5. BC2711 fields changed, 3 events added
  6. BC2849 fields changed, 8 procedures added
  7. BC29-30unchanged

Neighbourhood 147 connected objects and pages

Table 5065 "Interaction Log Entry" (relates to, 5 links)Interaction Log EntryTable 5093 "Opportunity Entry" (relates to, 4 links)Table 13 "Salesperson/Purchaser" (relates to, 2 links)Table 225 "Post Code" (relates to, 2 links)Post CodePage 5052 "Contact List" (pages and codeunits on it, 3 links)Contact ListCodeunit 5055 "CustVendBank-Update" (pages and codeunits on it)Table extension 4812 "Intrastat Report Contact" (extended by)Table extension 7246 "MDM Contact" (extended by)Codeunit 7006 "Price Helper - V16" (event subscribers, 2 links)Codeunit 1630 "Office Management" (event subscribers)Codeunit 1381 "Customer Templ. Mgt." (calls, 5 links)Customer Templ. Mgt.Codeunit 1387 "Employee Templ. Mgt." (calls, 5 links)Employee Templ. Mgt.Codeunit 5055 "CustVendBank-Update" (calls, 5 links)CustVendBank-UpdateCodeunit 5060 "DuplicateManagement" (calls, 5 links)Codeunit 1385 "Vendor Templ. Mgt." (calls, 3 links)Vendor Templ. Mgt.Codeunit 249 "VAT Registration Log Mgt." (calls, 3 links)Codeunit 7030 "Campaign Target Group Mgt" (calls, 3 links)Campaign Target Group MgtCodeunit 10 "Type Helper" (calls, 2 links)Codeunit 1630 "Office Management" (calls, 2 links)Page 456 "No. Series" (calls, 2 links)Page 5061 "Contact Business Relations" (calls, 2 links)Table 5065 "Interaction Log Entry" (referenced by, 4 links)Interaction Log EntryTable 5077 "Segment Line" (referenced by, 4 links)Segment LineTable 5080 "To-do" (referenced by, 4 links)To-doTable 5085 "Contact Duplicate" (referenced by, 4 links)Contact DuplicateTable 5092 "Opportunity" (referenced by, 4 links)Table 5089 "Contact Profile Answer" (referenced by, 3 links)Contact Profile AnswerTable 5102 "RM Matrix Management" (referenced by, 3 links)Table 9063 "Relationship Mgmt. Cue" (referenced by, 3 links)Relationship Mgmt. CueTable 110 "Sales Shipment Header" (referenced by, 2 links)Table 112 "Sales Invoice Header" (referenced by, 2 links)Table 114 "Sales Cr.Memo Header" (referenced by, 2 links)Table 120 "Purch. Rcpt. Header" (referenced by, 2 links)Table 122 "Purch. Inv. Header" (referenced by, 2 links)Table 124 "Purch. Cr. Memo Hdr." (referenced by, 2 links)Table 13 "Salesperson/Purchaser" (referenced by, 2 links)Table 36 "Sales Header" (referenced by, 2 links)Table 38 "Purchase Header" (referenced by, 2 links)Consolidate Balances for a Company that is a Customer and a Vendor (Learn pages)contact resource type (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.CRM.Contact · BC23-30 · source at ea08af5e · facts from BC29

Learn documents this table through its pages: Page 30071 “APIV2 - Contacts” (5 Learn pages), Page 30089 “APIV2 - CustContacts” (4), Page 5050 “Contact Card” (2), Page 1627 “Office No Customer Dlg” (1), Page 1628 “Office No Vendor Dlg” (1), Page 5052 “Contact List” (1).

Properties

Property Value
Caption Contact
DataClassification CustomerContent
Permissions TableData “Sales Header” = rm, TableData “Contact Alt. Address” = rd, TableData “Contact Alt. Addr. Date Range” = rd, TableData “Contact Business Relation” = rid, TableData “Contact Mailing Group” = rd, TableData “Contact Industry Group” = rd, TableData “Contact Web Source” = rd, TableData “Rlshp. 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 No. Δ BC25 Δ BC28 Code[20] Specifies the number of the involved entry or record, according to the specified number series.
2 Name Δ BC25 Δ BC28 Text[100] Specifies the name of the contact. If the contact is a person, you can click the field to see the Name Details window.
3 Search Name Δ BC27 Δ BC28 Code[100] Specifies an alternate name that you can use to search for the record in question when you cannot remember the value in the Name field.
4 Name 2 Δ BC25 Δ BC28 Text[50] Specifies an additional part of the name.
5 Address Δ BC25 Δ BC28 Text[100] Specifies the contact’s address.
6 Address 2 Δ BC25 Δ BC28 Text[50] Specifies additional address information.
7 City Δ BC25 Δ BC28 Text[30] Specifies the city where the contact is located. TableRelation Table 225 “Post Code” (if (“Country/Region Code” = const(‘’)) “Post Code”.City else if (“Country/Region Code” = filter(<> ‘’)) “Post Code”.City where(“Country/Region Code” = field(“Country/Region Code”)))
9 Phone No. Δ BC25 Δ BC28 Text[30] Specifies the contact’s phone number.
10 Telex No. Δ BC25 Text[20] —
15 Territory Code Δ BC28 Code[10] Specifies the territory code for the contact. TableRelation Table 286 “Territory”
22 Currency Code Δ BC28 Code[10] Specifies the currency code for the contact. TableRelation Table 4 “Currency”
24 Language Code Δ BC28 Code[10] Specifies the language that is used when translating specified text on documents to foreign business partner, such as an item description on an order confirmation. TableRelation Table 8 “Language”
25 Registration Number Δ BC25 Δ BC28 Text[50] Specifies the registration number of the contact. You can enter a maximum of 20 characters, both numbers and letters.
29 Salesperson Code Δ BC28 Code[20] Specifies the code of the salesperson who normally handles this contact. TableRelation Table 13 “Salesperson/Purchaser” (Salesperson/Purchaser)
35 Country/Region Code Δ BC28 Code[10] Specifies the country/region of the address. TableRelation Table 9 “Country/Region” (Country/Region)
38 Comment Boolean — FlowField: exist(“Rlshp. Mgt. Comment Line” where(“Table Name” = const(Contact), “No.” = field(“No.”), “Sub No.” = const(0))); not editable
48 Format Region Δ BC25 Δ BC28 Text[80] Specifies the format region that is used when formatting dates and numbers on documents to foreign business partner, such as an total amount on an order date. TableRelation “Language Selection”.“Language Tag”
54 Last Date Modified Date — not editable
84 Fax No. Δ BC25 Δ BC28 Text[30] Specifies the contact’s fax number.
85 Telex Answer Back Δ BC25 Text[20] —
86 VAT Registration No. Δ BC25 Δ BC28 Text[20] Specifies the contact’s VAT registration number. This field is valid for companies only.
91 Post Code Δ BC28 Code[20] Specifies the postal code. TableRelation Table 225 “Post Code” (if (“Country/Region Code” = const(‘’)) “Post Code” else if (“Country/Region Code” = filter(<> ‘’)) “Post Code” where(“Country/Region Code” = field(“Country/Region Code”)))
92 County Δ BC25 Δ BC28 Text[30] Specifies the state, province or county as a part of the address.
102 E-Mail Δ BC25 Δ BC28 Text[80] Specifies the email address of the contact.
103 Home Page Δ BC24 Δ BC25 Δ BC27 Δ BC28 Text[255] Specifies the contact’s web site.
107 No. Series Code[20] — TableRelation Table 308 “No. Series” (No. Series)
140 Image Δ BC28 Media Specifies the picture of the contact, for example, a photograph if the contact is a person, or a logo if the contact is a company.
150 Privacy Blocked Δ BC28 Boolean Specifies whether to limit access to data for the data subject during daily operations. This is useful, for example, when protecting data from changes while it is under privacy review.
151 Minor Δ BC28 Boolean Specifies that the person’s age is below the definition of adulthood as recognized by law. Data for minors is blocked until a parent or guardian of the minor provides parental consent. You unblock the data by selecting the Parental Consent Received check box.
152 Parental Consent Received Δ BC28 Boolean Specifies that a parent or guardian of the minor has provided their consent to allow the minor to use this service. When this check box is selected, data for the minor can be processed.
720 Coupled to CRM Δ BC26 Boolean Coupled to Dataverse caption obsolete Removed 26.0; #if not CLEANSCHEMA26; not editable
721 Coupled to Dataverse Δ BC28 Boolean Specifies that the contact is coupled to a contact in Dataverse. FlowField: exist(“CRM Integration Record” where(“Integration ID” = field(SystemId), “Table ID” = const(Database::Contact))); not editable
5050 Type Δ BC28 Enum “Contact Type” Specifies the type of contact, either company or person. enum Enum 5050 “Contact Type”
5051 Company No. Δ BC28 Code[20] Specifies the number for the contact’s company. TableRelation Table 5050 “Contact” (Contact where(Type = const(Company)))
5052 Company Name Δ BC25 Δ BC28 Text[100] Specifies the name of the company. If the contact is a person, Specifies the name of the company for which this contact works. This field is not editable. TableRelation Table 5050 “Contact” (Contact.Name where(Type = const(Company)))
5053 Lookup Contact No. Code[20] — TableRelation Table 5050 “Contact”; not editable
5054 First Name Δ BC25 Δ BC28 Text[30] Specifies the contact’s first name and is valid for contact persons only.
5055 Middle Name Δ BC25 Δ BC28 Text[30] Specifies the contact’s middle name and is valid for contact persons only.
5056 Surname Δ BC25 Δ BC28 Text[30] Specifies the contact’s surname and is valid for contact persons only.
5058 Job Title Δ BC25 Δ BC28 Text[30] Specifies the contact’s job title.
5059 Initials Δ BC25 Δ BC28 Text[30] Specifies the contact’s initials, when the contact is a person.
5060 Extension No. Δ BC25 Text[30] —
5061 Mobile Phone No. Δ BC25 Δ BC28 Text[30] Specifies the contact’s mobile telephone number.
5062 Pager Δ BC25 Text[30] —
5063 Organizational Level Code Δ BC28 Code[10] Specifies the organizational code for the contact, for example, top management. This field is valid for persons only. TableRelation Table 5070 “Organizational Level” (Organizational Level)
5064 Exclude from Segment Δ BC28 Boolean Specifies if the contact should be excluded from segments:
5065 Date Filter Date — FlowFilter
5066 Next Task Date Δ BC24 Δ BC26 Δ BC28 Date Specifies the date of the next task involving the contact. FlowField: min(“To-do”.Date where(“Contact Company No.” = field(“Company No.”), “Contact No.” = field(filter(“Lookup Contact No.”)), Closed = const(false), “System To-do Type” = filter(Organizer | “Contact Attendee”))); not editable
5067 Last Date Attempted Δ BC24 Δ BC28 Date Specifies the date when the contact was last contacted, for example, when you tried to call the contact, with or without success. This field is not editable. FlowField: max(“Interaction Log Entry”.Date where(“Contact Company No.” = field(“Company No.”), “Contact No.” = field(filter(“Lookup Contact No.”)), “Initiated By” = const(Us), Postponed = const(false))); not editable
5068 Date of Last Interaction Δ BC24 Δ BC28 Date Specifies the date of the last interaction involving the contact, for example, a received or sent mail, e-mail, or phone call. This field is not editable. FlowField: max(“Interaction Log Entry”.Date where(“Contact Company No.” = field(“Company No.”), “Contact No.” = field(filter(“Lookup Contact No.”)), “Attempt Failed” = const(false), Postponed = const(false))); not editable
5069 No. of Job Responsibilities Δ BC28 Integer Specifies the number of job responsibilities for this contact. This field is valid for persons only and is not editable. FlowField: count(“Contact Job Responsibility” where(“Contact No.” = field(“No.”))); not editable
5070 No. of Industry Groups Δ BC28 Integer Specifies the number of industry groups to which the contact belongs. When the contact is a person, this field contains the number of industry groups for the contact’s company. This field is not editable. FlowField: count(“Contact Industry Group” where(“Contact No.” = field(“Company No.”))); not editable
5071 No. of Business Relations Integer — FlowField: count(“Contact Business Relation” where(“Contact No.” = field(“Company No.”))); not editable
5072 No. of Mailing Groups Δ BC28 Integer Specifies the number of mailing groups for this contact. FlowField: count(“Contact Mailing Group” where(“Contact No.” = field(“No.”))); not editable
5073 External ID Code[20] —
5074 No. of Interactions Δ BC24 Δ BC28 Integer Specifies the number of interactions created for this contact. The field is not editable. FlowField: count(“Interaction Log Entry” where(“Contact Company No.” = field(filter(“Company No.”)), Canceled = const(false), “Contact No.” = field(filter(“Lookup Contact No.”)), Date = field(“Date Filter”), Postponed = const(false))); not editable
5076 Cost (LCY) Δ BC24 Δ BC27 Decimal Specifies the total cost of all the interactions involving the contact. The field is not editable. via Page 5053 “Contact Statistics” FlowField: sum(“Interaction Log Entry”.“Cost (LCY)” where(“Contact Company No.” = field(“Company No.”), Canceled = const(false), “Contact No.” = field(filter(“Lookup Contact No.”)), Date = field(“Date Filter”), Postponed = const(false))); not editable
5077 Duration (Min.) Δ BC24 Δ BC27 Decimal Specifies the total duration of all the interactions involving the contact. The field is not editable. via Page 5053 “Contact Statistics” FlowField: sum(“Interaction Log Entry”.“Duration (Min.)” where(“Contact Company No.” = field(“Company No.”), Canceled = const(false), “Contact No.” = field(filter(“Lookup Contact No.”)), Date = field(“Date Filter”), Postponed = const(false))); not editable
5078 No. of Opportunities Δ BC24 Δ BC28 Integer Specifies the number of open opportunities involving the contact. The field is not editable. FlowField: count(“Opportunity Entry” where(Active = const(true), “Contact Company No.” = field(“Company No.”), “Estimated Close Date” = field(“Date Filter”), “Contact No.” = field(filter(“Lookup Contact No.”)), “Action Taken” = field(“Action Taken Filter”))); not editable
5079 Estimated Value (LCY) Δ BC24 Δ BC27 Decimal Specifies the total estimated value of all the opportunities involving the contact. The field is not editable. via Page 5053 “Contact Statistics” FlowField: sum(“Opportunity Entry”.“Estimated Value (LCY)” where(Active = const(true), “Contact Company No.” = field(“Company No.”), “Estimated Close Date” = field(“Date Filter”), “Contact No.” = field(filter(“Lookup Contact No.”)), “Action Taken” = field(“Action Taken Filter”))); not editable
5080 Calcd. Current Value (LCY) Δ BC24 Δ BC27 Decimal Specifies the total calculated current value of all the opportunities involving the contact. The field is not editable. via Page 5053 “Contact Statistics” FlowField: sum(“Opportunity Entry”.“Calcd. Current Value (LCY)” where(Active = const(true), “Contact Company No.” = field(“Company No.”), “Estimated Close Date” = field(“Date Filter”), “Contact No.” = field(filter(“Lookup Contact No.”)), “Action Taken” = field(“Action Taken Filter”))); not editable
5082 Opportunity Entry Exists Δ BC24 Boolean — FlowField: exist(“Opportunity Entry” where(Active = const(true), “Contact Company No.” = field(“Company No.”), “Contact No.” = field(filter(“Lookup Contact No.”)), “Sales Cycle Code” = field(“Sales Cycle Filter”), “Sales Cycle Stage” = field(“Sales Cycle Stage Filter”), “Salesperson Code” = field(“Salesperson …; not editable
5083 Task Entry Exists Δ BC24 Boolean — FlowField: exist(“To-do” where(“Contact Company No.” = field(“Company No.”), “Contact No.” = field(filter(“Lookup Contact No.”)), “Team Code” = field(“Team Filter”), “Salesperson Code” = field(“Salesperson Filter”), “Campaign No.” = field(“Campaign Filter”), Date = field(“Date Filter”), Status = field(“Task St…; not editable
5084 Salesperson Filter Code[20] — TableRelation Table 13 “Salesperson/Purchaser” (Salesperson/Purchaser); FlowFilter
5085 Campaign Filter Code[20] — TableRelation Table 5071 “Campaign”; FlowFilter
5086 Contact Business Relation Δ BC28 Enum “Contact Business Relation” Specifies the type of the existing business relation. enum Enum 5056 “Contact Business Relation”; not editable
5087 Action Taken Filter Δ BC28 Enum “Opportunity Action Taken” — FlowFilter; enum Enum 5091 “Opportunity Action Taken”
5088 Sales Cycle Filter Code[10] — TableRelation Table 5090 “Sales Cycle” (Sales Cycle); FlowFilter
5089 Sales Cycle Stage Filter Integer — TableRelation Table 5091 “Sales Cycle Stage” (“Sales Cycle Stage”.Stage where(“Sales Cycle Code” = field(“Sales Cycle Filter”))); FlowFilter
5090 Probability % Filter Δ BC27 Decimal — FlowFilter
5091 Completed % Filter Δ BC27 Decimal — FlowFilter
5092 Estimated Value Filter Δ BC27 Decimal — FlowFilter
5093 Calcd. Current Value Filter Δ BC27 Decimal — FlowFilter
5094 Chances of Success % Filter Δ BC27 Decimal — FlowFilter
5095 Task Status Filter Enum “Task Status” — FlowFilter; enum Enum 5081 “Task Status”
5096 Task Closed Filter Boolean — FlowFilter
5097 Priority Filter Option — FlowFilter; OptionCaption: Low,Normal,High
5098 Team Filter Code[10] — TableRelation Table 5083 “Team”; FlowFilter
5099 Close Opportunity Filter Code[10] — TableRelation Table 5094 “Close Opportunity Code” (Close Opportunity Code); FlowFilter
5100 Correspondence Type Δ BC28 Enum “Correspondence Type” Specifies the preferred type of correspondence for the interaction. enum Enum 5076 “Correspondence Type”
5101 Salutation Code Δ BC28 Code[10] Specifies the salutation code that will be used when you interact with the contact. The salutation code is only used in Word documents. To see a list of the salutation codes already defined, click the field. TableRelation Table 5068 “Salutation”
5102 Search E-Mail Code[80] Search Email caption
5104 Last Time Modified Time —
5105 E-Mail 2 Δ BC25 Text[80] Specifies the alternate email address of the contact. via Page 4412 “SOA Contact Lookup”
5106 Job Responsibility Filter Code[10] — TableRelation Table 5066 “Job Responsibility” (Job Responsibility); FlowFilter
8050 Xrm Id Guid — not editable

Keys

  • Key1: No. (clustered)
  • Key2: Search Name
  • Key3: Company Name, Company No., Type, Name
  • Key4: Company No.
  • Key5: Territory Code
  • Key6: Salesperson Code
  • Key7: VAT Registration No.
  • Key8: Search E-Mail
  • Key9: Name
  • Key10: City
  • Key11: Post Code
  • Key12: Phone No.
  • Key13: SystemModifiedAt
  • Key15: Contact Business Relation
  • Key16: E-Mail
  • Key17: E-Mail 2

Events published

  • OnAfterGetSalutation(var SalutationType: Enum "Salutation Formula Salutation Type"; var LanguageCode: Code[10]; var NamePart: array[5] of Text[100]; var Contact: Record Contact; var SalutationFormula: Record "Salutation Formula") (integration)
  • OnAfterInheritCompanyToPersonData(var Contact: Record Contact; xContact: Record Contact; NewCompanyContact: Record Contact) (integration)
  • OnAfterUpdateQuotesForContact(Contact: Record Contact; Customer: Record Customer) (integration)
  • OnAfterVendorInsert(var Vendor: Record Vendor; var Contact: Record Contact) (integration)
  • OnBeforeVendorInsert(var Vend: Record Vendor; var Contact: Record Contact; VendorTemplateCode: Code[20]) Δ BC24 (integration)
  • OnBeforeCheckIfTypeChangePossibleForPerson(var Contact: Record Contact; xContact: Record Contact; var IsHandled: Boolean) (integration)
  • OnBeforeChooseNewCustomerTemplate(var Contact: Record Contact; var CustTemplateCode: Code[20]; var IsHandled: Boolean) (integration)
  • OnChooseNewCustomerTemplateOnBeforeSelectWithConfirm(var Contact: Record Contact; var CustomerTempl: Record "Customer Templ."; var IsHandled: Boolean) (integration)
  • OnCreateCustomerFromTemplateOnBeforeCustomerInsert(var Cust: Record Customer; CustomerTemplate: Code[20]; var Contact: Record Contact) (integration)
  • OnBeforeFindNewCustomerTemplate(var Contact: Record Contact; var CustTemplateCode: Code[20]; var IsHandled: Boolean) (integration)
  • OnBeforeInheritCompanyToPersonData(var Contact: Record Contact; xContact: Record Contact; var NewCompanyContact: Record Contact; var IsHandled: Boolean) (integration)
  • OnBeforeIsUpdateNeeded(var Contact: Record Contact; xContact: Record Contact; var UpdateNeeded: Boolean) (integration)
  • OnCreateCustomerOnBeforeCustomerModify(var Customer: Record Customer; Contact: Record Contact) (integration)
  • OnCreateCustomerFromTemplateOnAfterApplyCustomerTemplate(var Customer: Record Customer; CustomerTemplate: Record "Customer Templ."; var Contact: Record Contact) (integration)
  • OnAfterCalculatedName(var Contact: Record Contact; var NewName92: Text[92]) (integration)
  • OnAfterCreateBankAccount(var Contact: Record Contact; var BankAccount: Record "Bank Account") (integration)
  • OnAfterCreateCustomer(var Contact: Record Contact; var Customer: Record Customer) (integration)
  • OnAfterCreateInteraction(var Contact: Record Contact) (integration)
  • OnAfterCreateVendor(var Contact: Record Contact; var Vendor: Record Vendor) (integration)
  • OnAfterIdenticalAddress(Contact: Record Contact; RecContact: Record Contact; var IsIdentical: Boolean) (integration)
  • OnAfterModifySellToCustomerNo(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line") (integration)
  • OnAfterModifyBillToCustomerNo(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line") (integration)
  • OnAfterOnInsert(var Contact: Record Contact; xContact: Record Contact) (integration)
  • OnAfterOnModify(var Contact: Record Contact; xContact: Record Contact) (integration)
  • OnAfterProcessNameChange(var Contact: Record Contact; Customer: Record Customer; Vendor: Record Vendor) (integration)
  • OnAfterSetDefaults(var Contact: Record Contact; MarketingSetup: Record "Marketing Setup") (integration)
  • OnAfterSetLastDateTimeModified(var Contact: Record Contact) (integration)
  • OnAfterSetDefaultSalesperson(var Contact: Record Contact) (integration)
  • OnAfterSetTypeForContact(var Contact: Record Contact; xContact: Record Contact) (integration)
  • OnAfterShowCustVendBank(var Contact: Record Contact; var ContactBusinessRelation: Record "Contact Business Relation"; FormSelected: Boolean) (integration)
  • OnAfterSyncAddress(var Contact: Record Contact; RecContact: Record Contact; var ContChanged: Boolean; var ContactBeforeModify: Record Contact) (integration)
  • OnAfterTypeChange(var Contact: Record Contact) (integration)
  • OnAfterValidateCity(var Contact: Record Contact; xContact: Record Contact) (integration)
  • OnAfterValidatePostCode(var Contact: Record Contact; xContact: Record Contact) (integration)
  • OnAssistEditOnAfterNoSeriesMgtSetSeries(var Contact: Record Contact; OldContact: Record Contact) (integration)
  • OnBeforeActiveAltAddress(var Contact: Record Contact; var Result: Code[10]; var IsHandled: Boolean) (integration)
  • OnBeforeApplyCompanyChangeToPerson(var PersonContact: Record Contact; Contact: Record Contact; xContact: Record Contact; var ContChanged: Boolean; OldContact: Record Contact) (integration)
  • OnBeforeAssistEdit(var Contact: record Contact; OldContact: Record Contact; var IsHandled: Boolean; var Result: Boolean) (integration)
  • OnBeforeBankAccountInsert(var BankAccount: Record "Bank Account"; var Contact: Record Contact) (integration)
  • OnBeforeDuplicateCheck(Contact: Record Contact; xContact: Record Contact; var IsDuplicateCheckNeeded: Boolean) (integration)
  • OnBeforeCalculatedName(var Contact: Record Contact; var NewName: Text[100]; var IsHandled: Boolean) (integration)
  • OnBeforeCheckForExistingRelationships(var Contact: Record Contact; LinkToTable: Integer; var IsHandled: Boolean) (integration)
  • OnBeforeCheckForCompanyContactExistingRelationships(var Contact: Record Contact; var ContBusRel: Record "Contact Business Relation"; var IsHandled: Boolean) (integration)
  • OnBeforeCheckCompanyNo(var Contact: Record Contact; var IsHandled: Boolean) (integration)
  • OnBeforeCheckDuplicates(var Contact: Record Contact; var IsHandled: Boolean) (integration)
  • OnBeforeCheckContactType(var Contact: Record Contact; ContactType: enum "Contact Type"; var IsHandled: Boolean) (integration)
  • OnBeforeCheckUnloggedSegments(var Contact: Record Contact; var IsHandled: Boolean) (integration)
  • OnBeforeCreateCustomerFromTemplate(var Contact: Record Contact; var CustNo: Code[20]; var IsHandled: Boolean; CustomerTemplate: Code[20]; HideValidationDialog: Boolean) (integration)
  • OnBeforeCreateCompanyContactCustomerFromTemplate(var Contact: Record Contact; CustomerTemplate: Code[20]; var CustNo: Code[20]; HideValidationDialog: Boolean; var CustomerCreated: Boolean; var IsHandled: Boolean) (integration)
  • OnBeforeCreateCompanyContactVendor(var Contact: Record Contact; var VendorNo: Code[20]; HideValidationDialog: Boolean; var VendorCreated: Boolean; var IsHandled: Boolean) (integration)
  • OnBeforeCreateBankAccount(var Contact: Record Contact; var BankAccountNo: Code[20]; var IsHandled: Boolean) (integration)
  • OnBeforeCreateSalesQuoteFromContact(var Contact: Record Contact; var SalesHeader: Record "Sales Header") (integration)
  • OnBeforeCreatePurchaseQuoteFromContact(var Contact: Record Contact) + BC28 (integration)
  • OnBeforeCreateVendor(var Contact: Record Contact; var VendorNo: Code[20]; var IsHandled: Boolean) (integration)
  • OnBeforeGetSalutation(var Contact: Record Contact; var SalutationType: Enum "Salutation Formula Salutation Type"; var LanguageCode: Code[10]; var IsHandled: Boolean; var Salutation: Text[260]) (integration)
  • OnBeforeLookupCity(var Contact: Record Contact; var PostCode: Record "Post Code") (integration)
  • OnBeforeLookupPostCode(var Contact: Record Contact; var PostCode: Record "Post Code") (integration)
  • OnBeforeNameBreakdown(var Contact: Record Contact; var IsHandled: Boolean) (integration)
  • OnBeforeOnDelete(var Contact: Record Contact; xContact: Record Contact; var IsHandled: Boolean) (integration)
  • OnBeforeOnInsert(var Contact: Record Contact; var IsHandled: Boolean) (integration)
  • OnBeforeProcessPersonNameChange(var IsHandled: Boolean; var Contact: Record Contact; var Customer: Record Customer; var Vendor: Record Vendor) (integration)
  • OnBeforeTypeChange(var Contact: Record Contact; xContact: Record Contact; var InteractLogEntry: Record "Interaction Log Entry"; var Opp: Record Opportunity; var Task: Record "To-do"; var Cont: Record Contact; var IsHandled: Boolean) (integration)
  • OnBeforeVATRegistrationValidation(var Contact: Record Contact; var IsHandled: Boolean) (integration)
  • OnBeforeValidateCity(var Contact: Record Contact; var PostCode: Record "Post Code"; CurrentFieldNo: Integer; var IsHandled: Boolean) (integration)
  • OnBeforeValidateNo(var Contact: Record Contact; var IsHandled: Boolean) (integration)
  • OnBeforeValidateVATRegistrationNo(var Contact: Record Contact; xContact: Record Contact; FieldNumber: Integer; var IsHandled: Boolean) (integration)
  • OnBeforeLaunchDuplicateForm(var Contact: Record Contact; var IsHandled: Boolean) (integration)
  • OnBeforeUpdateCompanyNo(var Contact: Record Contact; xContact: Record Contact; var IsHandled: Boolean; var SkipModifyOpportunity: Boolean; var SkipModifyOpportunityEntry: Boolean; var SkipModifyTask: Boolean; var SkipModifyInteractionLogEntry: Boolean; var SkipModifySalesHeader: Boolean) + BC24 − BC24 + BC26 − BC26 (integration)
  • OnBeforeUpdateQuotesFromTemplate(Customer: Record Customer; CustomerTemplateCode: Code[20]; var IsHandled: Boolean; var Contact: Record Contact) (integration)
  • OnBeforeUpdateFieldForNewCompany(var Contact: Record Contact; var FieldNo: Integer; var IsHandled: Boolean) (integration)
  • OnBeforeUpdateSearchName(var Contact: Record Contact; xContact: Record Contact; var IsHandled: Boolean) (integration)
  • OnBeforeValidatePostCode(var Contact: Record Contact; var PostCode: Record "Post Code"; CurrentFieldNo: Integer; var IsHandled: Boolean) (integration)
  • OnCreateSalesQuoteFromContactOnBeforeSalesHeaderInsert(var Contact: Record Contact; var SalesHeader: Record "Sales Header") (integration)
  • OnCreateCustomerOnBeforeUpdateQuotes(var Customer: Record Customer; Contact: Record Contact; var IsHandled: Boolean) (integration)
  • OnCreateVendorOnAfterUpdateVendor(var Vendor: Record Vendor; Contact: Record Contact; var ContBusRel: Record "Contact Business Relation") (integration)
  • OnLookupNewCustomerTemplateOnBeforeSetTableView(Contact: Record Contact; var CustomerTemplate: Record "Customer Templ.") (integration)
  • OnGetCompNoOnAfterSetFilters(var Contact: Record Contact) (integration)
  • OnGetSalutationString(var SalutationString: Text[260]; SalutationFormula: Record "Salutation Formula"; NamePart: array[5] of Text[100]) (integration)
  • OnShowCustVendBankOnBeforeRunPage(var Contact: Record Contact; FormSelected: Boolean; var ContBusRel: Record "Contact Business Relation"; var IsHandled: Boolean) (integration)
  • OnAfterCreateEmployee(var Employee: Record Employee; var ContBusRel: Record "Contact Business Relation") (integration)
  • OnAfterLookupPostCode(var Contact: Record Contact; var PostCode: Record "Post Code") (integration)
  • OnTypeChangeOnAfterCheckInteractionLog(var Contact: Record Contact; xContact: Record Contact) (integration)
  • OnTypeChangeOnAfterContSetFilters(var Contact: Record Contact; CurrentContact: Record Contact) (integration)
  • OnTypeChangeOnAfterTypePersonTestFields(Contact: Record Contact) (integration)
  • OnBeforeSetDefaultSalesperson(var Contact: Record Contact; var IsHandled: Boolean) (integration)
  • OnBeforeShowResultForCustomer(var Customer: Record Customer; var Contact: Record Contact; var HideValidationDialog: Boolean; var IsHandled: Boolean) (integration)
  • OnBeforeShowResultForVendor(var Vendor: Record Vendor; var Contact: Record Contact; var HideValidationDialog: Boolean; var IsHandled: Boolean) (integration)
  • OnCreateVendorFromTemplateOnBeforeCommit(Contact: Record Contact; Vend: Record Vendor; var IsHandled: Boolean) (integration)
  • OnCreateCustomerFromTemplateOnBeforeInitCustomerNo(var Customer: Record Customer; var Contact: Record Contact; CustomerTempl: Record "Customer Templ."; var IsHandled: Boolean) (integration)
  • OnCreateVendorFromTemplateOnBeforeInitVendorNo(var Vendor: Record Vendor; var Contact: Record Contact; VendorTempl: Record "Vendor Templ."; var IsHandled: Boolean) (integration)
  • OnBeforeProcessCompanyNameChange(var Contact: Record Contact; var IsHandled: Boolean) (integration)
  • OnProcessPersonNameChangeOnBeforeAssignCustomerContact(var Customer: Record Customer; var Contact: Record Contact; var IsHandled: Boolean) (integration)
  • OnProcessPersonNameChangeOnBeforeAssignVendorContact(var Vendor: Record Vendor; var Contact: Record Contact; var IsHandled: Boolean) (integration)
  • OnBeforeOnModify(var Contact: Record Contact; ContactBeforeModify: Record Contact) (integration)
  • OnBeforeValidateEmail(var Contact: Record Contact; CurrentFieldNo: Integer; var IsHandled: Boolean) (integration)
  • OnShowResultForVendorOnBeforeShowrelatedRecordisCreatedMsg(var Vendor: Record Vendor; var IsHandled: Boolean) (integration)
  • OnBeforeValidateRegistrationNumber(var Contact: Record Contact; var IsHandled: Boolean) (integration)
  • OnAfterLookupCity(var Contact: Record Contact; var PostCode: Record "Post Code") (integration)
  • OnCreateSalesQuoteFromContactOnBeforeRunPage(Contact: Record Contact; SalesHeader: Record "Sales Header"; var IsHandled: Boolean) (integration)
  • OnCreateSalesQuoteFromContactOnAfterRunPage(Contact: Record Contact; SalesHeader: Record "Sales Header") (integration)
  • OnModifyOnBeforeInheritAddressDetails(var RecContact: Record Contact; var xRecContact: Record Contact; MarketingSetup: Record "Marketing Setup"; Contact: Record Contact; var ContChanged: Boolean; var IsHandled: Boolean) (integration)
  • OnModifyOnBeforeInheritCommunicationDetails(var RecContact: Record Contact; var xRecContact: Record Contact; MarketingSetup: Record "Marketing Setup"; Contact: Record Contact; var ContChanged: Boolean; var IsHandled: Boolean) (integration)
  • OnCreateEmployeeOnBeforeInitEmployeeNo(var Employee: Record Employee; var Contact: Record Contact; EmployeeTempl: Record "Employee Templ."; var IsHandled: Boolean) (integration)
  • OnCreateCustomerFromTemplateOnBeforeContBusRelInsert(var Contact: Record Contact; var Customer: Record Customer; var ContactBusinessRelation: Record "Contact Business Relation") + BC24 (integration)
  • OnCreateVendorFromTemplateOnBeforeContBusRelInsert(var Contact: Record Contact; var Vendor: Record Vendor; var ContactBusinessRelation: Record "Contact Business Relation") + BC24 (integration)
  • OnCreateBankAccountOnBeforeContBusRelInsert(var Contact: Record Contact; var BankAccount: Record "Bank Account"; var ContactBusinessRelation: Record "Contact Business Relation") + BC24 (integration)
  • OnBeforeTouchContact(ContactNo: Code[20]; var IsHandled: Boolean) + BC25 (integration)
  • OnShowBusinessRelationOnAfterFilterBusinessRelations(var Rec: Record Contact; var ContactBusinessRelation: Record "Contact Business Relation"; ContactBusinessRelationLinkToTable: Enum "Contact Business Relation Link To Table"; All: Boolean) + BC24 (integration)
  • OnCreateVendorOnVendorTemplateNotExist(var Contact: Record Contact; var VendorNo: Code[20]; var IsHandled: Boolean) + BC27 (integration)
  • OnBeforeCreateCustomer(var Contact: Record Contact; var CustomerNo: Code[20]; var IsHandled: Boolean) + BC27 (integration)
  • OnAfterGetSelectedRelationCodes(var CodeFilter: Text) + BC28 (integration)

Trigger event subscribers

Procedures

  • DoModify(ContactBeforeModify: Record Contact)
  • TypeChange()
  • AssistEdit(OldCont: Record Contact): Boolean
  • CreateCustomer(): Code[20]
  • CreateCustomerFromTemplate(CustomerTemplateCode: Code[20]): Code[20]
  • CreateVendor(): Code[20]
  • CreateVendorFromTemplate(VendorTemplateCode: Code[20]): Code[20]
  • CreateBankAccount(): Code[20]
  • CreateInteraction()
  • GetDefaultPhoneNo(): Text[30]
  • ShowBusinessRelation(LinkToTable: Enum "Contact Business Relation Link To Table"; All: Boolean)
  • ShowBusinessRelations()
  • UpdateBusinessRelation(): Boolean
  • HasBusinessRelation(LinkToTable: Enum "Contact Business Relation Link To Table"; BusRelationCode: Code[10]): Boolean
  • HasBusinessRelations(var RelatedCustomerEnabled: Boolean; var RelatedVendorEnabled: Boolean; var RelatedBankEnabled: Boolean; var RelatedEmployeeEnabled: Boolean)
  • SetSkipDefault()
  • IdenticalAddress(Cont: Record Contact): Boolean
  • ActiveAltAddress(ActiveDate: Date): Code[10]
  • CalculatedName(): Text[100]
  • UpdateSearchName()
  • CheckDuplicates()
  • CheckContactType(ContactType: Enum "Contact Type")
  • FindNewCustomerTemplate(): Code[20]
  • FindNewVendorTemplate(): Code[20] + BC28
  • ChooseNewCustomerTemplate(): Code[20]
  • UpdateQuotesFromTemplate(Customer: Record Customer; CustomerTemplateCode: Code[20]) + BC28
  • GetSalutation(SalutationType: Enum "Salutation Formula Salutation Type"; LanguageCode: Code[10]): Text[260]
  • InheritCompanyToPersonData(NewCompanyContact: Record Contact)
  • StaleAddress(): Boolean (protected)
  • SetHideValidationDialog(NewHideValidationDialog: Boolean)
  • GetHideValidationDialog(): Boolean
  • DisplayMap()
  • ProcessNameChange()
  • GetCompNo(ContactText: Text): Text
  • ToPriceSource(var PriceSource: Record "Price Source")
  • LookupCompany()
  • LookupNewCustomerTemplate(): Code[20]
  • CheckForExistingRelationships(LinkToTable: Enum "Contact Business Relation Link To Table")
  • FindCustomer(var Customer: Record Customer): Boolean + BC27
  • SetLastDateTimeModified()
  • GetLastDateTimeModified(): DateTime
  • SetLastDateTimeFilter(DateFilter: DateTime)
  • TouchContact(ContactNo: Code[20])
  • CountNoOfBusinessRelations(LinkToTable: Enum "Contact Business Relation Link To Table"): Integer
  • CreateSalesQuoteFromContact()
  • CreatePurchaseQuoteFromContact() + BC28
  • ContactToCustBusinessRelationExist(): Boolean
  • ContactToVendBusinessRelationExist(): Boolean + BC28
  • CheckIfMinorForProfiles()
  • CheckIfPrivacyBlocked(IsPosting: Boolean)
  • CheckIfPrivacyBlockedGeneric()
  • SetDefaultSalesperson() (protected)
  • VATRegistrationValidation()
  • GetContNo(ContactText: Text): Code[20]
  • MarkContactsWithSimilarName(var Contact: Record Contact; ContactText: Text) (protected)
  • GetContactsSelectionFromContactList(SelectMode: Boolean): Boolean
  • SetSearchEmail() (protected)
  • CreateEmployee(): Code[20] Δ BC28
  • GetOrClear(ContactNo: Code[20])
  • LookupNewVendorTemplate(): Code[20] + BC28 (internal)
  • CreateInteractionForEmail() + BC27 (internal)

Plus 32 local procedures.

Triggers

OnDelete, OnInsert, OnModify, OnRename

Relations

Referenced by

126 fields in 70 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, FR, IT, NZ

Deprecations

  • field Coupled to CRM: Removed 26.0 (#if not CLEANSCHEMA26), “Replaced by flow field Coupled to Dataverse”

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

Evidence 1 sources