Lattice - Complete Entity Reference
Set-based import entities. The 15 import-only entities that load journals and high-volume masters with data management's Set-based processing are not public and are not on this page; see Set-based imports.
Cross-reference keys. Several entities on this page (the sales and purchase order lines, the vendor contact person and the document attachment entities other than the quality order attachment entity) also accept
ExternalSystemplus...ExternalKeyfields in place of lookup values. These fields are unmapped and are not listed in the tables below; see Cross-reference keys and the data entity reference.
This document provides comprehensive metadata for 28 core data entities and the composite entity of the Lattice model, which has 133 public data entities in total.
Table of Contents
- General Document Attachments
- Customers
- Vendors
- Sales
- Purchasing
- Order Lines
- Document Attachments -- Master Data
- Document Attachments -- Manufacturing
- Document Attachments -- Transfer
- Document Attachments -- Purchase Order Lines
- Inventory & Product (High-Performance)
- Composite Entities
General Document Attachments
MGCLatticeDocuRefEntity
The generic attachment entity is not on the OData surface: it would let a caller attach a document to any record of any table by table id and record id, which are not portable between environments. The typed document attachment entities below are the public surface; each names its parent record by its business key. This entity remains the internal base those entities read file content through.
| Property | Value |
|---|---|
| Label | @MGCLattice:DocuRefEntityLabel |
| Read/Write | Read-Write |
| Configuration Key | LedgerBasic |
| Entity Category | Document |
| Staging Table | (none) |
| OData | Not public (internal helper of the typed attachment entities) |
| Primary Company Context | ActualCompanyId |
Data Sources:
| Data Source | Table | Join Type |
|---|---|---|
| DocuRef (root) | DocuRef | -- |
| DocuValue | DocuValue | OuterJoin (ValueRecId = RecId on DocuRef via DocuValue relation) |
Fields:
| Entity Field | DataSource.DataField | Type |
|---|---|---|
| DocumentId | DocuRef.DocumentId | Mapped |
| ActualCompanyId | DocuRef.ActualCompanyId | Mapped (Private) |
| TypeId | DocuRef.TypeId | Mapped |
| RefCompanyId | DocuRef.RefCompanyId | Mapped |
| RefRecId | DocuRef.RefRecId | Mapped |
| RefTableId | DocuRef.RefTableId | Mapped |
| Name | DocuRef.Name | Mapped |
| Restriction | DocuRef.Restriction | Mapped |
| Notes | DocuRef.Notes | Mapped |
| ValueRecId | (computed) | Unmapped Int64 (Private, defineValueRecId) |
| DocuValueType | DocuValue.Type | Mapped (Private) |
| FileName | (computed) | Unmapped String (defineFileName) |
| FileType | (computed) | Unmapped String (defineFileType) |
| FileContents | (computed) | Unmapped Container (defineFileContents) |
| DefaultAttachment | DocuRef.DefaultAttachment | Mapped |
| StorageProviderId | DocuValue.StorageProviderId | Mapped |
Entity Key: DocumentId
Relations:
- DocuTypeEntity (Association: ActualCompanyId = DataAreaId, TypeId = ID)
Custom X++ Methods:
initValue- Generates a new GUID for DocumentId on new recordsinsertEntityDataSource- Skips DocuValue insert; uses skipDataMethods on DocuRef then attaches file content via DocuActionpostLoad- Populates FileContents container from Document Management for file-type attachmentsgetWhitelistedFields- Returns set of fields (Notes, Name, Restriction) allowed for updatehasAttachmentFile- Checks whether a document type is file-backedupdate- Restricts update to whitelisted fields only; throws error for non-whitelisted changesvalidateWrite- Validates DocuType exists and file fields are consistentdefineFileName- Computed column exposing DocuValue.FileName (bypasses AllowEdit restriction)defineFileType- Computed column exposing DocuValue.FileType (bypasses AllowEdit restriction)defineValueRecId- Computed column for DocuRef.ValueRecIddefineFileContents- Computed null expression for FileContents virtual fieldsetAttachmentFile- Static helper to read attachment file content into a container fieldsetAttachmentFileInCompany- Loads the attachment file content in the current company; seesetAttachmentFilecheckAttachmentValidity- Validates attachment with cross-company supporthasValidAttachmentFile- Checks file type and storage provider validitypersistEntity- Skips validation on RefRecId, ValueRecId, RefCompanyId, RefTableId
Customers
MGCLatticeCustomerContactInfoEntity
| Property | Value |
|---|---|
| Label | @MGCLattice:CustomerContactInfo |
| Read/Write | Read-Write |
| Configuration Key | LogisticsBasic |
| Entity Category | Document |
| Staging Table | MGCLatticeCustomerContactInfoStaging |
| OData Entity Name | LatticeCustomerContactInfo |
| OData Collection | LatticeCustomerContactInfos |
| Primary Company Context | CustomerDataAreaId |
| SubscriberAccessLevel | Read=Allow |
Data Sources:
| Data Source | Table | Join Type | Relations |
|---|---|---|---|
| DirPartyContactEntity (root) | DirPartyContactEntity | -- | -- |
| DirPartyTable | DirPartyTable | InnerJoin | PartyNumber = PartyNumber on DirPartyContactEntity |
| CustTable | CustTable | InnerJoin | RecId = Party on DirPartyTable |
Fields:
| Entity Field | DataSource.DataField |
|---|---|
| Type | DirPartyContactEntity.Type |
| Locator | DirPartyContactEntity.Locator |
| Description | DirPartyContactEntity.Description |
| Purpose | DirPartyContactEntity.Purpose |
| LocatorExtension | DirPartyContactEntity.LocatorExtension |
| CountryRegionCode | DirPartyContactEntity.CountryRegionCode |
| IsPrimary | DirPartyContactEntity.IsPrimary |
| IsMobilePhone | DirPartyContactEntity.IsMobilePhone |
| IsPrivate | DirPartyContactEntity.IsPrivate |
| LocationId | DirPartyContactEntity.LocationId |
| PartyNumber | DirPartyContactEntity.PartyNumber |
| CustomerAccount | CustTable.AccountNum |
| CustomerDataAreaId | CustTable.DataAreaId |
Entity Key: CustomerAccount, CustomerDataAreaId, Type, Locator, Description
Custom X++ Methods:
initializeEntityDataSource- Sets PartyNumber and LocationId from CustTable on insert; resolves DirPartyContactEntity buffer on updateresolveDirPartyContactEntity- Finds the DirPartyContactEntity record matching key fields (PartyNumber, LocationId, Type, Description, Locator)setPartyNumberAndLocationId- Resolves party number from CustTable.Party and creates DirPartyLocation if LocationId is blank
MGCLatticeCustomerContactPersonEntity
| Property | Value |
|---|---|
| Label | @MGCLattice:CustomerContactPersons |
| Read/Write | Read-Write |
| Configuration Key | LogisticsBasic |
| Entity Category | Document |
| Staging Table | MGCLatticeCustomerContactPersonStaging |
| OData Entity Name | LatticeCustomerContactPerson |
| OData Collection | LatticeCustomerContactPersons |
| Primary Company Context | CustomerDataAreaId |
| SubscriberAccessLevel | Read=Allow |
Each row pairs a contact person with the customer account of the same legal entity. When AssociatedPartyNumber is not sent, it is set to the customer account's party; a party that is not the account's party is refused.
Data Sources:
| Data Source | Table | Join Type |
|---|---|---|
| smmContactPersonV2Entity (root) | smmContactPersonV2Entity | -- |
| DirPartyTable (read-only) | DirPartyTable | InnerJoin (PartyNumber = AssociatedPartyNumber on smmContactPersonV2Entity) |
| CustTable (read-only) | CustTable | InnerJoin (Party = RecId on DirPartyTable, in the contact person's legal entity) |
Fields (59):
| Entity Field | DataSource.DataField |
|---|---|
| AddressBookNames | smmContactPersonV2Entity.AddressBookNames |
| AlternateComplimentaryClosingPhrase | smmContactPersonV2Entity.AlternateComplimentaryClosingPhrase |
| AlternateSalutationPhrase | smmContactPersonV2Entity.AlternateSalutationPhrase |
| AnniversaryDay | smmContactPersonV2Entity.AnniversaryDay |
| AnniversaryMonth | smmContactPersonV2Entity.AnniversaryMonth |
| AnniversaryYear | smmContactPersonV2Entity.AnniversaryYear |
| AssistantName | smmContactPersonV2Entity.AssistantName |
| AssistantPhoneNumber | smmContactPersonV2Entity.AssistantPhoneNumber |
| AssociatedPartyNumber | smmContactPersonV2Entity.AssociatedPartyNumber |
| AvailableFromTime | smmContactPersonV2Entity.AvailableFromTime |
| AvailableToTime | smmContactPersonV2Entity.AvailableToTime |
| BillingInformation | smmContactPersonV2Entity.BillingInformation |
| BirthDay | smmContactPersonV2Entity.BirthDay |
| BirthMonth | smmContactPersonV2Entity.BirthMonth |
| BirthYear | smmContactPersonV2Entity.BirthYear |
| ChildrenNames | smmContactPersonV2Entity.ChildrenNames |
| ContactActivitySensitivityLevel | smmContactPersonV2Entity.ContactActivitySensitivityLevel |
| ContactInformationLanguageId | smmContactPersonV2Entity.ContactInformationLanguageId |
| ContactPersonId | smmContactPersonV2Entity.ContactPersonId |
| ContactPersonName | smmContactPersonV2Entity.ContactPersonName (ReadOnly) |
| ContactPersonPartyNumber | smmContactPersonV2Entity.ContactPersonPartyNumber (Internal) |
| ContactPersonPartyType | smmContactPersonV2Entity.ContactPersonPartyType (Internal, ReadOnly) |
| ContactPersonResponsiblePersonnelNumber | smmContactPersonV2Entity.ContactPersonResponsiblePersonnelNumber |
| DecisionMakingRoleCode | smmContactPersonV2Entity.DecisionMakingRoleCode |
| DisplayNameSequencePatternName | smmContactPersonV2Entity.DisplayNameSequencePatternName |
| ElectronicLocationId | smmContactPersonV2Entity.ElectronicLocationId |
| EmploymentComputerNetworkName | smmContactPersonV2Entity.EmploymentComputerNetworkName |
| EmploymentDepartment | smmContactPersonV2Entity.EmploymentDepartment |
| EmploymentJobFunctionName | smmContactPersonV2Entity.EmploymentJobFunctionName |
| EmploymentJobTitle | smmContactPersonV2Entity.EmploymentJobTitle |
| EmploymentOfficeLocation | smmContactPersonV2Entity.EmploymentOfficeLocation |
| EmploymentProfession | smmContactPersonV2Entity.EmploymentProfession |
| FirstName | smmContactPersonV2Entity.FirstName |
| FormattedPrimaryAddress | smmContactPersonV2Entity.FormattedPrimaryAddress |
| Gender | smmContactPersonV2Entity.Gender |
| GovernmentIdentificationNumber | smmContactPersonV2Entity.GovernmentIdentificationNumber |
| HasRequestedInternetAccess | smmContactPersonV2Entity.HasRequestedInternetAccess |
| Hobbies | smmContactPersonV2Entity.Hobbies |
| IdentityCardNumber | smmContactPersonV2Entity.IdentityCardNumber |
| Initials | smmContactPersonV2Entity.Initials |
| IsContactPersonExternallyMaintained | smmContactPersonV2Entity.IsContactPersonExternallyMaintained |
| IsDefaultContactPerson | smmContactPersonV2Entity.IsDefaultContactPerson |
| IsImported | smmContactPersonV2Entity.IsImported |
| IsInactive | smmContactPersonV2Entity.IsInactive |
| LastName | smmContactPersonV2Entity.LastName |
| MiddleName | smmContactPersonV2Entity.MiddleName |
| PrimaryAddressCity | smmContactPersonV2Entity.PrimaryAddressCity |
| PrimaryAddressCountryRegionId | smmContactPersonV2Entity.PrimaryAddressCountryRegionId |
| PrimaryAddressCountryRegionISOCode | smmContactPersonV2Entity.PrimaryAddressCountryRegionISOCode |
| PrimaryAddressStateId | smmContactPersonV2Entity.PrimaryAddressStateId |
| PrimaryAddressStreet | smmContactPersonV2Entity.PrimaryAddressStreet |
| PrimaryAddressZipCode | smmContactPersonV2Entity.PrimaryAddressZipCode |
| PrimaryEmailAddress | smmContactPersonV2Entity.PrimaryEmailAddress |
| PrimaryPhoneNumber | smmContactPersonV2Entity.PrimaryPhoneNumber |
| PrimaryFaxNumber | smmContactPersonV2Entity.PrimaryFaxNumber |
| PrimaryURL | smmContactPersonV2Entity.PrimaryURL |
| SearchName | smmContactPersonV2Entity.SearchName |
| CustomerAccount | CustTable.AccountNum |
| CustomerDataAreaId | CustTable.DataAreaId |
Entity Key: CustomerAccount, CustomerDataAreaId, ContactPersonId
Custom X++ Methods:
validateWrite- Resolves the associated party from the customer account before validatingpersistEntity- Resolves the associated party from the customer account before any data source is writtenresolveAssociatedParty- SetsAssociatedPartyNumberto the customer account's party (in the row's legal entity) when it is not sent; refuses a different partyinitializeEntityDataSource- Skips ContactPersonId validation; resolves smmContactPersonV2Entity buffer on updateresolveContactPersonEntity- Finds smmContactPersonV2Entity by ContactPersonId under the customer account's party, in the row's legal entity
MGCLatticeCustomerPackingSlipJournalHeaderEntity
| Property | Value |
|---|---|
| Label | @MGCLattice:CustomerPackingSlipJournalHeader |
| Read/Write | Read-Only |
| Configuration Key | LedgerBasic |
| Entity Category | Document |
| Staging Table | MGCLatticeCustomerPackingSlipJournalHeaderStaging |
| OData Entity Name | LatticeCustomerPackingSlipJournalHeader |
| OData Collection | LatticeCustomerPackingSlipJournalHeaders |
| Primary Company Context | DataAreaId |
Data Sources:
| Data Source | Table | Join Type | Relations |
|---|---|---|---|
| CustPackingSlipJour (root) | CustPackingSlipJour | -- (ReadOnly) | -- |
| HcmWorker_OrderTaker | HcmWorker | OuterJoin | WorkerSalesTaker = RecId on CustPackingSlipJour |
| DefaultDimensionDAVS | DimensionSetEntity | OuterJoin | DefaultDimension = RecId on CustPackingSlipJour |
| LogisticsPostalAddressBaseEntity | LogisticsPostalAddressBaseEntity | OuterJoin | DeliveryPostalAddress = AddressRecId on CustPackingSlipJour |
Fields (64): Weight, BillOfLadingId, BOLAddress, BOLCarrierName, BOLFreightedBy, BOLPackageAppearance, ContactPersonId, CustomerRef, DeliveryDate, DeliveryName, DeliveryModeCode (DlvMode), DeliveryReasonId (DlvReason), DeliveryTermsId (DlvTerm), DocumentDate, ExportReason, FreightSlipNumber (FreightSlipNum), FreightSlipType, IntercompanyLegalEntityId (InterCompanyCompanyId), IntercompanyPosted (InterCompanyPosted), IntercompanyPurchaseOrderNumber (InterCompanyPurchId), IntrastatDispatch, InventoryWarehouseId (InventLocationId), InvoiceAccount, InvoicingName, LanguageId, LedgerVoucher, CustomerAccount (OrderAccount), PackingSlipId, PurchaseOrder, Quantity (Qty), ReturnItemNumber (ReturnItemNum), ReturnPackingSlipId, SalesOrderNumber (SalesId), SalesOrderType (SalesType), ShipCarrierAccount, ShipCarrierBlindShipment, ShipCarrierDeliveryContact, ShipCarrierEmail, ShipCarrierId, ShipCarrierPhone, Volume, PersonnelNumber, DefaultDimensionDisplayValue (DisplayValue), DeliveryAddressCity (City), DeliveryAddressCountryRegionId (CountryRegionId), DeliveryAddressCountryRegionISOCode (CountryRegionISOCode), DeliveryAddressCountyId (County), DeliveryAddressDescription (Description), DeliveryAddressDistrictName (DistrictName), DeliveryAddressDunsNumber (DunsNumber), IsDeliveryAddressPrivate (IsPrivate), DeliveryAddressLatitude (Latitude), DeliveryAddressLocationId (LocationId), DeliveryAddressLongitude (Longitude), DeliveryAddressPostBox (PostBox), DeliveryAddressStateId (State), DeliveryAddressStreet (Street), DeliveryAddressStreetNumber (StreetNumber), DeliveryAddressTimeZone (TimeZone), DeliveryAddressZipCode (ZipCode), DeliveryAddressCityInKana (CityInKana), DeliveryAddressStreetInKana (StreetInKana), ValidTo, ValidFrom
Entity Key: PackingSlipId, SalesOrderNumber
MGCLatticeCustomerPackingSlipJournalLinesEntity
| Property | Value |
|---|---|
| Label | @MGCLattice:CustomerPackingSlipJournalLines |
| Read/Write | Read-Only |
| Configuration Key | LedgerBasic |
| Entity Category | Document |
| Staging Table | MGCLatticeCustomerPackingSlipJournalLinesStaging |
| OData Entity Name | LatticeCustomerPackingSlipJournalLine |
| OData Collection | LatticeCustomerPackingSlipJournalLines |
| Primary Company Context | DataAreaId |
Data Sources:
| Data Source | Table | Join Type | Relations |
|---|---|---|---|
| CustPackingSlipTrans (root) | CustPackingSlipTrans | -- (ReadOnly) | -- |
| DefaultDimensionDAVS | DimensionSetEntity | OuterJoin | DefaultDimension = RecId on CustPackingSlipTrans |
| LogisticsPostalAddressBaseEntity | LogisticsPostalAddressBaseEntity | OuterJoin | DeliveryPostalAddress = AddressRecId on CustPackingSlipTrans |
| InventDim | InventDim | OuterJoin | InventDim relation on CustPackingSlipTrans |
Fields (73): Amount (AmountCur), CountryRegionOfShipment, CurrencyCode, DeliveryDate, DeliveryType, DeliveryTermsId (DlvTerm), ExternalItemId, FullyMatched, IntercompanyInventoryLotId (InterCompanyInventTransId), IntrastatDispatchId, InventoryQuantity (inventQty), InventoryRefId (InventRefId), InventoryRefTransId (InventRefTransId), InventoryRefType (InventRefType), InventoryLotId (InventTransId), ItemNumber (ItemId), LineHeader, LineNumber (LineNum), ItemName (Name), OrderedQuantity (Ordered), OriginalCountryRegionId (OrigCountryRegionId), OriginalSalesOrderNumber (OrigSalesId), OriginalStateId (OrigStateId), PackingSlipId, Quantity (Qty), RemainingQuantity (Remain), RemainingInventoryQuantity (RemainInvent), SalesGroup, SalesOrderNumber (SalesId), SalesLineShippingDateConfirmed, SalesLineShippingDateRequested, SalesUnitSymbol (SalesUnit), Scrap, IntrastatProcId (StatProcId), IntrastatValueMST (StatValueMST), StockedProduct, IntrastatTransactionCode (TransactionCode), IntrastatTransport (Transport), ValueMST, Weight, DefaultDimensionDisplayValue (DisplayValue), DeliveryAddressCountryRegionId (CountryRegionId), DeliveryAddressStreetNumber (StreetNumber), DeliveryAddressZipCode (ZipCode), DeliveryAddressCityInKana (CityInKana), DeliveryAddressLongitude (Longitude), DeliveryAddressDescription (Description), DeliveryAddressDunsNumber (DunsNumber), DeliveryAddressLocationId (LocationId), DeliveryAddressStateId (State), DeliveryAddressLatitude (Latitude), DeliveryAddressCountryRegionISOCode (CountryRegionISOCode), DeliveryAddressStreet (Street), DeliveryAddressTimeZone (TimeZone), DeliveryAddressCountyId (County), DeliveryAddressPostBox (PostBox), IsDeliveryAddressPrivate (IsPrivate), DeliveryAddressCity (City), DeliveryAddressStreetInKana (StreetInKana), DeliveryAddressDistrictName (DistrictName), ValidTo, ValidFrom, ItemBatchNumber (inventBatchId), ItemSerialNumber (inventSerialId), OrderedInventoryStatusId (InventStatusId), ProductColorId (InventColorId), ProductConfigurationId (configId), ProductSizeId (InventSizeId), ProductStyleId (InventStyleId), ProductVersionId (InventVersionId), ShippingSiteId (InventSiteId), ShippingWarehouseId (InventLocationId), ShippingWarehouseLocationId (wMSLocationId)
Entity Key: SalesOrderNumber, DeliveryDate, PackingSlipId, LineNumber, InventoryLotId
Relations:
- MGCLatticeCustomerPackingSlipJournalHeaderEntity (Association: SalesOrderNumber, PackingSlipId, DeliveryDate)
Vendors
MGCLatticeVendorContactInfoEntity
| Property | Value |
|---|---|
| Label | @MGCLattice:VendorContactInfo |
| Read/Write | Read-Write |
| Configuration Key | LogisticsBasic |
| Entity Category | Document |
| Staging Table | MGCLatticeVendorContactInfoStaging |
| OData Entity Name | LatticeVendorContactInfo |
| OData Collection | LatticeVendorContactInfos |
| Primary Company Context | VendorDataAreaId |
| SubscriberAccessLevel | Read=Allow |
Data Sources:
| Data Source | Table | Join Type | Relations |
|---|---|---|---|
| DirPartyContactEntity (root) | DirPartyContactEntity | -- | -- |
| DirPartyTable | DirPartyTable | InnerJoin | PartyNumber = PartyNumber on DirPartyContactEntity |
| VendTable | VendTable | InnerJoin | RecId = Party on DirPartyTable |
Fields:
| Entity Field | DataSource.DataField |
|---|---|
| VendorAccountNumber | VendTable.AccountNum |
| VendorDataAreaId | VendTable.DataAreaId |
| Type | DirPartyContactEntity.Type |
| Locator | DirPartyContactEntity.Locator |
| Description | DirPartyContactEntity.Description |
| Purpose | DirPartyContactEntity.Purpose |
| LocatorExtension | DirPartyContactEntity.LocatorExtension |
| CountryRegionCode | DirPartyContactEntity.CountryRegionCode |
| IsPrimary | DirPartyContactEntity.IsPrimary |
| IsMobilePhone | DirPartyContactEntity.IsMobilePhone |
| IsPrivate | DirPartyContactEntity.IsPrivate |
| LocationId | DirPartyContactEntity.LocationId |
| PartyNumber | DirPartyContactEntity.PartyNumber (Internal) |
Entity Key: VendorAccountNumber, VendorDataAreaId, Type, Locator, Description
Custom X++ Methods:
initializeEntityDataSource- Sets PartyNumber and LocationId from VendTable on insert; resolves DirPartyContactEntity buffer on updatesetPartyNumberAndLocationId- Resolves party number from VendTable.Party and creates DirPartyLocation if LocationId is blankresolveDirPartyContactEntity- Finds DirPartyContactEntity by PartyNumber, LocationId, Type, Description, Locator
MGCLatticeVendorContactPersonEntity
| Property | Value |
|---|---|
| Label | @MGCLattice:VendorContactPersons |
| Read/Write | Read-Write |
| Configuration Key | LogisticsBasic |
| Entity Category | Document |
| Staging Table | MGCLatticeVendorContactPersonStaging |
| OData Entity Name | LatticeVendorContactPerson |
| OData Collection | LatticeVendorContactPersons |
| Primary Company Context | VendorDataAreaId |
| SubscriberAccessLevel | Read=Allow |
Each row pairs a contact person with the vendor account of the same legal entity. When AssociatedPartyNumber is not sent, it is set to the vendor account's party; a party that is not the account's party is refused.
Data Sources:
| Data Source | Table | Join Type |
|---|---|---|
| smmContactPersonV2Entity (root) | smmContactPersonV2Entity | -- |
| DirPartyTable (read-only) | DirPartyTable | InnerJoin (PartyNumber = AssociatedPartyNumber on smmContactPersonV2Entity) |
| VendTable (read-only) | VendTable | InnerJoin (Party = RecId on DirPartyTable, in the contact person's legal entity) |
Fields (61; the two cross-reference key fields are not listed):
| Entity Field | DataSource.DataField |
|---|---|
| AddressBookNames | smmContactPersonV2Entity.AddressBookNames |
| AlternateComplimentaryClosingPhrase | smmContactPersonV2Entity.AlternateComplimentaryClosingPhrase |
| AlternateSalutationPhrase | smmContactPersonV2Entity.AlternateSalutationPhrase |
| AnniversaryDay | smmContactPersonV2Entity.AnniversaryDay |
| AnniversaryMonth | smmContactPersonV2Entity.AnniversaryMonth |
| AnniversaryYear | smmContactPersonV2Entity.AnniversaryYear |
| AssistantName | smmContactPersonV2Entity.AssistantName |
| AssistantPhoneNumber | smmContactPersonV2Entity.AssistantPhoneNumber |
| AssociatedPartyNumber | smmContactPersonV2Entity.AssociatedPartyNumber |
| AvailableFromTime | smmContactPersonV2Entity.AvailableFromTime |
| AvailableToTime | smmContactPersonV2Entity.AvailableToTime |
| BillingInformation | smmContactPersonV2Entity.BillingInformation |
| BirthDay | smmContactPersonV2Entity.BirthDay |
| BirthMonth | smmContactPersonV2Entity.BirthMonth |
| BirthYear | smmContactPersonV2Entity.BirthYear |
| ChildrenNames | smmContactPersonV2Entity.ChildrenNames |
| ContactActivitySensitivityLevel | smmContactPersonV2Entity.ContactActivitySensitivityLevel |
| ContactInformationLanguageId | smmContactPersonV2Entity.ContactInformationLanguageId |
| ContactPersonId | smmContactPersonV2Entity.ContactPersonId |
| ContactPersonName | smmContactPersonV2Entity.ContactPersonName (ReadOnly) |
| ContactPersonPartyNumber | smmContactPersonV2Entity.ContactPersonPartyNumber (Internal) |
| ContactPersonPartyType | smmContactPersonV2Entity.ContactPersonPartyType (Internal, ReadOnly) |
| ContactPersonResponsiblePersonnelNumber | smmContactPersonV2Entity.ContactPersonResponsiblePersonnelNumber |
| DecisionMakingRoleCode | smmContactPersonV2Entity.DecisionMakingRoleCode |
| DisplayNameSequencePatternName | smmContactPersonV2Entity.DisplayNameSequencePatternName |
| ElectronicLocationId | smmContactPersonV2Entity.ElectronicLocationId |
| EmploymentComputerNetworkName | smmContactPersonV2Entity.EmploymentComputerNetworkName |
| EmploymentDepartment | smmContactPersonV2Entity.EmploymentDepartment |
| EmploymentJobFunctionName | smmContactPersonV2Entity.EmploymentJobFunctionName |
| EmploymentJobTitle | smmContactPersonV2Entity.EmploymentJobTitle |
| EmploymentOfficeLocation | smmContactPersonV2Entity.EmploymentOfficeLocation |
| EmploymentProfession | smmContactPersonV2Entity.EmploymentProfession |
| FirstName | smmContactPersonV2Entity.FirstName |
| FormattedPrimaryAddress | smmContactPersonV2Entity.FormattedPrimaryAddress |
| Gender | smmContactPersonV2Entity.Gender |
| GovernmentIdentificationNumber | smmContactPersonV2Entity.GovernmentIdentificationNumber |
| HasRequestedInternetAccess | smmContactPersonV2Entity.HasRequestedInternetAccess |
| Hobbies | smmContactPersonV2Entity.Hobbies |
| IdentityCardNumber | smmContactPersonV2Entity.IdentityCardNumber |
| Initials | smmContactPersonV2Entity.Initials |
| IsContactPersonExternallyMaintained | smmContactPersonV2Entity.IsContactPersonExternallyMaintained |
| IsDefaultContactPerson | smmContactPersonV2Entity.IsDefaultContactPerson |
| IsImported | smmContactPersonV2Entity.IsImported |
| IsInactive | smmContactPersonV2Entity.IsInactive |
| LastName | smmContactPersonV2Entity.LastName |
| MiddleName | smmContactPersonV2Entity.MiddleName |
| PrimaryAddressCity | smmContactPersonV2Entity.PrimaryAddressCity |
| PrimaryAddressCountryRegionId | smmContactPersonV2Entity.PrimaryAddressCountryRegionId |
| PrimaryAddressCountryRegionISOCode | smmContactPersonV2Entity.PrimaryAddressCountryRegionISOCode |
| PrimaryAddressStateId | smmContactPersonV2Entity.PrimaryAddressStateId |
| PrimaryAddressStreet | smmContactPersonV2Entity.PrimaryAddressStreet |
| PrimaryAddressZipCode | smmContactPersonV2Entity.PrimaryAddressZipCode |
| PrimaryEmailAddress | smmContactPersonV2Entity.PrimaryEmailAddress |
| PrimaryPhoneNumber | smmContactPersonV2Entity.PrimaryPhoneNumber |
| PrimaryFaxNumber | smmContactPersonV2Entity.PrimaryFaxNumber |
| PrimaryURL | smmContactPersonV2Entity.PrimaryURL |
| SearchName | smmContactPersonV2Entity.SearchName |
| VendorAccountNumber | VendTable.AccountNum |
| VendorDataAreaId | VendTable.DataAreaId |
Entity Key: VendorAccountNumber, VendorDataAreaId, ContactPersonId
To update an existing vendor contact person through Data management, send VendorAccountNumber: the vendor's external key alone does not find the existing row.
Custom X++ Methods:
validateWrite- Resolves the external keys and the associated party before validatingpersistEntity- Resolves the external keys and the associated party; skips validation on DisplayNameSequencePatternName (auto-generated field)resolveExternalKeys- ResolvesVendorAccountNumberfromExternalSystem+VendorAccountNumberExternalKeyresolveAssociatedParty- SetsAssociatedPartyNumberto the vendor account's party (in the row's legal entity) when it is not sent; refuses a different partyinitializeEntityDataSource- Resolves smmContactPersonV2Entity buffer on updatemapEntityToDataSource- Maps entity fields to smmContactPersonV2Entity data sourceresolveContactPersonEntity- Finds smmContactPersonV2Entity by ContactPersonId under the vendor account's party, in the row's legal entity
Sales
MGCLatticeSalesConfirmationDocumentAttachmentEntity
| Property | Value |
|---|---|
| Label | @MGCLattice:SalesConfirmationDocumentAttachment |
| Read/Write | Read-Write |
| Configuration Key | LedgerBasic |
| Entity Category | Document |
| Staging Table | MGCLatticeSalesConfirmationDocumentAttachmentStaging |
| OData Entity Name | LatticeSalesConfirmationDocumentAttachment |
| OData Collection | LatticeSalesConfirmationDocumentAttachments |
| Primary Company Context | ActualCompanyId |
| SubscriberAccessLevel | Read=Allow |
Data Sources:
| Data Source | Table | Join Type | Relations |
|---|---|---|---|
| DocuRefEntity (root) | DocuRefEntity | -- | -- |
| CustConfirmJour | CustConfirmJour | InnerJoin (read-only) | RefTableId = TableId, RefRecId = RecId, RefCompanyId = DataAreaId on DocuRefEntity |
Fields:
| Entity Field | DataSource.DataField |
|---|---|
| DocumentId | DocuRefEntity.DocumentId |
| ActualCompanyId | DocuRefEntity.ActualCompanyId (Private) |
| DocumentAttachmentTypeCode | DocuRefEntity.TypeId |
| AttachmentDescription | DocuRefEntity.Name |
| Notes | DocuRefEntity.Notes |
| AccessRestriction | DocuRefEntity.Restriction |
| Attachment | DocuRefEntity.FileContents |
| FileName | DocuRefEntity.FileName |
| FileType | DocuRefEntity.FileType |
| IsDefaultAttachment | DocuRefEntity.DefaultAttachment |
| SalesOrderNumber | CustConfirmJour.SalesId |
| ConfirmationId | CustConfirmJour.ConfirmId |
| ConfirmationDate | CustConfirmJour.ConfirmDate |
| CustomerAccount | CustConfirmJour.OrderAccount |
| InvoiceAccount | CustConfirmJour.InvoiceAccount |
Entity Key: DocumentId
Custom X++ Methods:
postLoad- Loads the file content from Document Management into theAttachmentfield, in the attachment's own companyinitializeEntityDataSource- Resolves the CustConfirmJour record the new attachment belongs to on insertvalidateWrite- Resolves the external keys before validating, so an id sent only as an external key counts as filled inpersistEntity- Resolves the external keys before any data source is writtenresolveExternalKeys- ResolvesSalesOrderNumberfromExternalSystem+SalesOrderNumberExternalKey; a key that does not resolve is an error
MGCLatticeSalesPackingSlipDocumentAttachmentEntity
| Property | Value |
|---|---|
| Label | @MGCLattice:SalesPackingSlipDocumentAttachment |
| Read/Write | Read-Write |
| Configuration Key | LedgerBasic |
| Entity Category | Document |
| Staging Table | MGCLatticeSalesPackingSlipDocumentAttachmentStaging |
| OData Entity Name | LatticeSalesPackingSlipDocumentAttachment |
| OData Collection | LatticeSalesPackingSlipDocumentAttachments |
| Primary Company Context | ActualCompanyId |
| SubscriberAccessLevel | Read=Allow |
Data Sources:
| Data Source | Table | Join Type | Relations |
|---|---|---|---|
| DocuRefEntity (root) | DocuRefEntity | -- | -- |
| CustPackingSlipJour | CustPackingSlipJour | InnerJoin (read-only) | RefTableId = TableId, RefRecId = RecId, RefCompanyId = DataAreaId on DocuRefEntity |
Fields:
| Entity Field | DataSource.DataField |
|---|---|
| DocumentId | DocuRefEntity.DocumentId |
| ActualCompanyId | DocuRefEntity.ActualCompanyId (Private) |
| DocumentAttachmentTypeCode | DocuRefEntity.TypeId |
| AttachmentDescription | DocuRefEntity.Name |
| Notes | DocuRefEntity.Notes |
| AccessRestriction | DocuRefEntity.Restriction |
| Attachment | DocuRefEntity.FileContents |
| FileName | DocuRefEntity.FileName |
| FileType | DocuRefEntity.FileType |
| IsDefaultAttachment | DocuRefEntity.DefaultAttachment |
| SalesOrderNumber | CustPackingSlipJour.SalesId |
| PackingSlipId | CustPackingSlipJour.PackingSlipId |
| DeliveryDate | CustPackingSlipJour.DeliveryDate |
| CustomerAccount | CustPackingSlipJour.OrderAccount |
| InvoiceAccount | CustPackingSlipJour.InvoiceAccount |
Entity Key: DocumentId
Custom X++ Methods:
postLoad- Loads the file content from Document Management into theAttachmentfield, in the attachment's own companyinitializeEntityDataSource- Resolves the CustPackingSlipJour record the new attachment belongs to on insertvalidateWrite- Resolves the external keys before validating, so an id sent only as an external key counts as filled inpersistEntity- Resolves the external keys before any data source is writtenresolveExternalKeys- ResolvesSalesOrderNumberfromExternalSystem+SalesOrderNumberExternalKey; a key that does not resolve is an error
MGCLatticeSalesInvoiceDocumentAttachmentEntity
| Property | Value |
|---|---|
| Label | @MGCLattice:SalesInvoiceDocumentAttachment |
| Read/Write | Read-Write |
| Configuration Key | LedgerBasic |
| Entity Category | Document |
| Staging Table | MGCLatticeSalesInvoiceDocumentAttachmentStaging |
| OData Entity Name | LatticeSalesInvoiceDocumentAttachment |
| OData Collection | LatticeSalesInvoiceDocumentAttachments |
| Primary Company Context | ActualCompanyId |
| SubscriberAccessLevel | Read=Allow |
Data Sources:
| Data Source | Table | Join Type | Relations |
|---|---|---|---|
| DocuRefEntity (root) | DocuRefEntity | -- | -- |
| CustInvoiceJour | CustInvoiceJour | InnerJoin (read-only) | RefTableId = TableId, RefRecId = RecId, RefCompanyId = DataAreaId on DocuRefEntity |
Fields:
| Entity Field | DataSource.DataField |
|---|---|
| DocumentId | DocuRefEntity.DocumentId |
| ActualCompanyId | DocuRefEntity.ActualCompanyId (Private) |
| DocumentAttachmentTypeCode | DocuRefEntity.TypeId |
| AttachmentDescription | DocuRefEntity.Name |
| Notes | DocuRefEntity.Notes |
| AccessRestriction | DocuRefEntity.Restriction |
| Attachment | DocuRefEntity.FileContents |
| FileName | DocuRefEntity.FileName |
| FileType | DocuRefEntity.FileType |
| IsDefaultAttachment | DocuRefEntity.DefaultAttachment |
| SalesOrderNumber | CustInvoiceJour.SalesId |
| InvoiceId | CustInvoiceJour.InvoiceId |
| InvoiceDate | CustInvoiceJour.InvoiceDate |
| CustomerAccount | CustInvoiceJour.OrderAccount |
| InvoiceAccount | CustInvoiceJour.InvoiceAccount |
Entity Key: DocumentId
Custom X++ Methods:
postLoad- Loads the file content from Document Management into theAttachmentfield, in the attachment's own companyinitializeEntityDataSource- Resolves the CustInvoiceJour record the new attachment belongs to on insertvalidateWrite- Resolves the external keys before validating, so an id sent only as an external key counts as filled inpersistEntity- Resolves the external keys before any data source is writtenresolveExternalKeys- ResolvesSalesOrderNumberfromExternalSystem+SalesOrderNumberExternalKey; a key that does not resolve is an error
MGCLatticeIntercompanyOrderEntity
| Property | Value |
|---|---|
| Label | @MGCLattice:IntercompanyOrder |
| Read/Write | Read-Only |
| Configuration Key | LedgerBasic |
| Entity Category | Document |
| Staging Table | MGCLatticeIntercompanyOrderStaging |
| OData Entity Name | LatticeIntercompanyOrder |
| OData Collection | LatticeIntercompanyOrders |
| Primary Company Context | DataAreaId |
| SubscriberAccessLevel | Read=Allow |
Data Sources:
| Data Source | Table | Join Type | Ranges |
|---|---|---|---|
| SalesTable (root) | SalesTable | -- (ReadOnly) | InterCompanyOrder = 1 |
Fields:
| Entity Field | DataSource.DataField |
|---|---|
| SalesOrderNumber | SalesTable.SalesId |
| CustomerAccount | SalesTable.CustAccount |
| InvoiceAccount | SalesTable.InvoiceAccount |
| SalesOrderStatus | SalesTable.SalesStatus |
| CurrencyCode | SalesTable.CurrencyCode |
| IntercompanyOrder | SalesTable.InterCompanyOrder |
| IntercompanyLegalEntityId | SalesTable.InterCompanyCompanyId |
| IntercompanyPurchaseOrderNumber | SalesTable.InterCompanyPurchId |
| IntercompanyOriginalSalesOrderNumber | SalesTable.InterCompanyOriginalSalesId |
| IntercompanyDirectDelivery | SalesTable.InterCompanyDirectDelivery |
| CreatedDate | SalesTable.CreatedDateTime |
| DeliveryMode | SalesTable.DlvMode |
Entity Key: SalesOrderNumber
MGCLatticeIntercompanyPurchaseOrderEntity
| Property | Value |
|---|---|
| Label | @MGCLattice:IntercompanyPurchaseOrder |
| Read/Write | Read-Only |
| Configuration Key | LedgerBasic |
| Entity Category | Document |
| Staging Table | MGCLatticeIntercompanyPurchaseOrderStaging |
| OData Entity Name | LatticeIntercompanyPurchaseOrder |
| OData Collection | LatticeIntercompanyPurchaseOrders |
| Primary Company Context | DataAreaId |
| SubscriberAccessLevel | Read=Allow |
Data Sources:
| Data Source | Table | Join Type | Ranges |
|---|---|---|---|
| PurchTable (root) | PurchTable | -- (ReadOnly) | InterCompanyOrder = 1 |
Fields:
| Entity Field | DataSource.DataField |
|---|---|
| PurchaseOrderNumber | PurchTable.PurchId |
| VendorAccountNumber | PurchTable.OrderAccount |
| InvoiceAccount | PurchTable.InvoiceAccount |
| PurchaseOrderStatus | PurchTable.PurchStatus |
| CurrencyCode | PurchTable.CurrencyCode |
| IntercompanyOrder | PurchTable.InterCompanyOrder |
| IntercompanyLegalEntityId | PurchTable.InterCompanyCompanyId |
| IntercompanySalesOrderNumber | PurchTable.InterCompanySalesId |
| IntercompanyDirectDelivery | PurchTable.InterCompanyDirectDelivery |
| CreatedDate | PurchTable.CreatedDateTime |
| DeliveryMode | PurchTable.DlvMode |
Entity Key: PurchaseOrderNumber
Purchasing
MGCLatticePurchaseOrderConfirmationDocumentAttachmentEntity
| Property | Value |
|---|---|
| Label | @MGCLattice:PurchOrderConfirmDocumentAttachment |
| Read/Write | Read-Write |
| Configuration Key | LedgerBasic |
| Entity Category | Document |
| Staging Table | MGCLatticePurchaseOrderConfirmationDocumentAttachmentStaging |
| OData Entity Name | LatticePurchaseOrderConfirmationDocumentAttachment |
| OData Collection | LatticePurchaseOrderConfirmationDocumentAttachments |
| Primary Company Context | ActualCompanyId |
| SubscriberAccessLevel | Read=Allow |
Data Sources:
| Data Source | Table | Join Type | Relations |
|---|---|---|---|
| DocuRefEntity (root) | DocuRefEntity | -- | -- |
| VendPurchOrderJour | VendPurchOrderJour | InnerJoin (read-only) | RefTableId = TableId, RefRecId = RecId, RefCompanyId = DataAreaId on DocuRefEntity |
Fields:
| Entity Field | DataSource.DataField |
|---|---|
| DocumentId | DocuRefEntity.DocumentId |
| ActualCompanyId | DocuRefEntity.ActualCompanyId (Private) |
| DocumentAttachmentTypeCode | DocuRefEntity.TypeId |
| AttachmentDescription | DocuRefEntity.Name |
| Notes | DocuRefEntity.Notes |
| AccessRestriction | DocuRefEntity.Restriction |
| Attachment | DocuRefEntity.FileContents |
| FileName | DocuRefEntity.FileName |
| FileType | DocuRefEntity.FileType |
| IsDefaultAttachment | DocuRefEntity.DefaultAttachment |
| StorageProviderId | DocuRefEntity.StorageProviderId (Private) |
| PurchaseOrderNumber | VendPurchOrderJour.PurchId |
| ConfirmationNumber | VendPurchOrderJour.PurchOrderDocNum |
| ConfirmationDate | VendPurchOrderJour.PurchOrderDate |
| VendorAccountNumber | VendPurchOrderJour.OrderAccount |
Entity Key: DocumentId
Custom X++ Methods:
postLoad- Loads the file content from Document Management into theAttachmentfield, in the attachment's own companyinitializeEntityDataSource- Resolves the VendPurchOrderJour record the new attachment belongs to on insertvalidateWrite- Resolves the external keys before validating, so an id sent only as an external key counts as filled inpersistEntity- Resolves the external keys before any data source is writtenresolveExternalKeys- ResolvesPurchaseOrderNumberfromExternalSystem+PurchaseOrderNumberExternalKey; a key that does not resolve is an error
MGCLatticePurchasePackingSlipDocumentAttachmentEntity
| Property | Value |
|---|---|
| Label | @MGCLattice:PurchPackingSlipDocumentAttachment |
| Read/Write | Read-Write |
| Configuration Key | LedgerBasic |
| Entity Category | Document |
| Staging Table | MGCLatticePurchasePackingSlipDocumentAttachmentStaging |
| OData Entity Name | LatticePurchasePackingSlipDocumentAttachment |
| OData Collection | LatticePurchasePackingSlipDocumentAttachments |
| Primary Company Context | ActualCompanyId |
| SubscriberAccessLevel | Read=Allow |
Data Sources:
| Data Source | Table | Join Type | Relations |
|---|---|---|---|
| DocuRefEntity (root) | DocuRefEntity | -- | -- |
| VendPackingSlipJour | VendPackingSlipJour | InnerJoin (read-only) | RefTableId = TableId, RefRecId = RecId, RefCompanyId = DataAreaId on DocuRefEntity |
Fields:
| Entity Field | DataSource.DataField |
|---|---|
| DocumentId | DocuRefEntity.DocumentId |
| ActualCompanyId | DocuRefEntity.ActualCompanyId (Private) |
| DocumentAttachmentTypeCode | DocuRefEntity.TypeId |
| AttachmentDescription | DocuRefEntity.Name |
| Notes | DocuRefEntity.Notes |
| AccessRestriction | DocuRefEntity.Restriction |
| Attachment | DocuRefEntity.FileContents |
| FileName | DocuRefEntity.FileName |
| FileType | DocuRefEntity.FileType |
| IsDefaultAttachment | DocuRefEntity.DefaultAttachment |
| StorageProviderId | DocuRefEntity.StorageProviderId (Private) |
| PurchaseOrderNumber | VendPackingSlipJour.PurchId |
| PackingSlipId | VendPackingSlipJour.PackingSlipId |
| DeliveryDate | VendPackingSlipJour.DeliveryDate |
| VendorAccountNumber | VendPackingSlipJour.OrderAccount |
Entity Key: DocumentId
Custom X++ Methods:
postLoad- Loads the file content from Document Management into theAttachmentfield, in the attachment's own companyinitializeEntityDataSource- Resolves the VendPackingSlipJour record the new attachment belongs to on insertvalidateWrite- Resolves the external keys before validating, so an id sent only as an external key counts as filled inpersistEntity- Resolves the external keys before any data source is writtenresolveExternalKeys- ResolvesPurchaseOrderNumberfromExternalSystem+PurchaseOrderNumberExternalKey; a key that does not resolve is an error
MGCLatticePurchaseInvoiceDocumentAttachmentEntity
| Property | Value |
|---|---|
| Label | @MGCLattice:PurchInvoiceDocumentAttachment |
| Read/Write | Read-Write |
| Configuration Key | LedgerBasic |
| Entity Category | Document |
| Staging Table | MGCLatticePurchaseInvoiceDocumentAttachmentStaging |
| OData Entity Name | LatticePurchaseInvoiceDocumentAttachment |
| OData Collection | LatticePurchaseInvoiceDocumentAttachments |
| Primary Company Context | ActualCompanyId |
| SubscriberAccessLevel | Read=Allow |
Data Sources:
| Data Source | Table | Join Type | Relations |
|---|---|---|---|
| DocuRefEntity (root) | DocuRefEntity | -- | -- |
| VendInvoiceJour | VendInvoiceJour | InnerJoin (read-only) | RefTableId = TableId, RefRecId = RecId, RefCompanyId = DataAreaId on DocuRefEntity |
Fields:
| Entity Field | DataSource.DataField |
|---|---|
| DocumentId | DocuRefEntity.DocumentId |
| ActualCompanyId | DocuRefEntity.ActualCompanyId (Private) |
| DocumentAttachmentTypeCode | DocuRefEntity.TypeId |
| AttachmentDescription | DocuRefEntity.Name |
| Notes | DocuRefEntity.Notes |
| AccessRestriction | DocuRefEntity.Restriction |
| Attachment | DocuRefEntity.FileContents |
| FileName | DocuRefEntity.FileName |
| FileType | DocuRefEntity.FileType |
| IsDefaultAttachment | DocuRefEntity.DefaultAttachment |
| PurchaseOrderNumber | VendInvoiceJour.PurchId |
| InvoiceId | VendInvoiceJour.InvoiceId |
| InvoiceDate | VendInvoiceJour.InvoiceDate |
| VendorAccountNumber | VendInvoiceJour.OrderAccount |
| InvoiceAccount | VendInvoiceJour.InvoiceAccount |
Entity Key: DocumentId
Custom X++ Methods:
postLoad- Loads the file content from Document Management into theAttachmentfield, in the attachment's own companyinitializeEntityDataSource- Resolves the VendInvoiceJour record the new attachment belongs to on insertvalidateWrite- Resolves the external keys before validating, so an id sent only as an external key counts as filled inpersistEntity- Resolves the external keys before any data source is writtenresolveExternalKeys- ResolvesPurchaseOrderNumberfromExternalSystem+PurchaseOrderNumberExternalKey; a key that does not resolve is an error
MGCLatticePurchaseReceiptsListDocumentAttachmentEntity
| Property | Value |
|---|---|
| Label | @MGCLattice:PurchReceiptsListDocumentAttachment |
| Read/Write | Read-Write |
| Configuration Key | LedgerBasic |
| Entity Category | Document |
| Staging Table | MGCLatticePurchaseReceiptsListDocumentAttachmentStaging |
| OData Entity Name | LatticePurchaseReceiptsListDocumentAttachment |
| OData Collection | LatticePurchaseReceiptsListDocumentAttachments |
| Primary Company Context | ActualCompanyId |
| SubscriberAccessLevel | Read=Allow |
Data Sources:
| Data Source | Table | Join Type | Relations |
|---|---|---|---|
| DocuRefEntity (root) | DocuRefEntity | -- | -- |
| VendReceiptsListJour | VendReceiptsListJour | InnerJoin (read-only) | RefTableId = TableId, RefRecId = RecId, RefCompanyId = DataAreaId on DocuRefEntity |
Fields:
| Entity Field | DataSource.DataField |
|---|---|
| DocumentId | DocuRefEntity.DocumentId |
| ActualCompanyId | DocuRefEntity.ActualCompanyId (Private) |
| DocumentAttachmentTypeCode | DocuRefEntity.TypeId |
| AttachmentDescription | DocuRefEntity.Name |
| Notes | DocuRefEntity.Notes |
| AccessRestriction | DocuRefEntity.Restriction |
| Attachment | DocuRefEntity.FileContents |
| FileName | DocuRefEntity.FileName |
| FileType | DocuRefEntity.FileType |
| IsDefaultAttachment | DocuRefEntity.DefaultAttachment |
| StorageProviderId | DocuRefEntity.StorageProviderId (Private) |
| PurchaseOrderNumber | VendReceiptsListJour.PurchId |
| ReceiptsListId | VendReceiptsListJour.ReceiptsListId |
| VendorAccountNumber | VendReceiptsListJour.VendAccount |
Entity Key: DocumentId
Custom X++ Methods:
postLoad- Loads the file content from Document Management into theAttachmentfield, in the attachment's own companyinitializeEntityDataSource- Resolves the VendReceiptsListJour record the new attachment belongs to on insertvalidateWrite- Resolves the external keys before validating, so an id sent only as an external key counts as filled inpersistEntity- Resolves the external keys before any data source is writtenresolveExternalKeys- ResolvesPurchaseOrderNumberfromExternalSystem+PurchaseOrderNumberExternalKey; a key that does not resolve is an error
Order Lines
How a line is identified. A sales order line, return order line or sales quotation line is identified by its inventory lot id (InventoryLotId, the line's InventTransId) in every Lattice entity that keys on one line: LatticeSalesOrderLines, LatticeSalesOrderLineCharges, LatticeOpenSalesOrderLines, LatticeIntercompanyOrderLines and the sales order, return order and sales quotation line cross-reference entities. The order number and line number are returned as ordinary fields but are not unique: lines created by Commerce statement posting all carry line number 0. Purchase order lines are identified by PurchaseOrderNumber + LineNumber, which Microsoft keeps unique for purchase lines; LatticePurchaseOrderLines keys on InventoryLotId as Microsoft's purchase order line entity does, and both forms address the same line.
MGCLatticeSalesOrderLineEntity
| Property | Value |
|---|---|
| Label | @MGCLattice:SalesOrderLine |
| Read/Write | Read-Write |
| Configuration Key | LedgerBasic |
| Entity Category | Document |
| Staging Table | MGCLatticeSalesOrderLineStaging |
| OData Entity Name | LatticeSalesOrderLine |
| OData Collection | LatticeSalesOrderLines |
| Primary Company Context | DataAreaId |
| Tags | Sales |
Data Sources:
| Data Source | Table | Join Type |
|---|---|---|
| SalesLine (root) | SalesLine | -- (DynamicFields=Yes) |
| InventDim | InventDim | OuterJoin (via InventDim relation on SalesLine) |
Fields:
| Entity Field | DataSource.DataField |
|---|---|
| SalesOrderNumber | SalesLine.SalesId |
| LineNumber | SalesLine.LineNum |
| ItemNumber | SalesLine.ItemId |
| OrderedSalesQuantity | SalesLine.QtyOrdered |
| SalesPrice | SalesLine.SalesPrice |
| LineAmount | SalesLine.LineAmount |
| CurrencyCode | SalesLine.CurrencyCode |
| SalesUnitSymbol | SalesLine.SalesUnit |
| SalesStatus | SalesLine.SalesStatus |
| RequestedReceiptDate | SalesLine.ShippingDateRequested |
| ShippingSiteId | InventDim.InventSiteId |
| ShippingWarehouseId | InventDim.InventLocationId |
| InventoryLotId | SalesLine.InventTransId |
Entity Key: InventoryLotId
Design Notes:
- Uses DynamicFields=Yes on the root SalesLine data source for performance
- InventDim is joined as a read-only outer join to provide site/warehouse dimensions without blocking records that lack InventDim
ShippingSiteId/ShippingWarehouseIdset the line's site and warehouse on create and update (mapEntityToDataSourceresolves the line's inventory dimension); a warehouse sent without a site uses the warehouse's site- The staging key is
InventoryLotId. To import new lines through Data management, send a lot ID per row or set theInventoryLotIdmapping to auto-generated; a lot ID that is sent is kept - Resolves the sales order and item from
ExternalSystem+SalesOrderNumberExternalKey/ItemNumberExternalKeybefore the line is written - Lightweight alternative to the standard SalesOrderLineV2Entity for high-volume OData reads
MGCLatticePurchaseOrderLineEntity
| Property | Value |
|---|---|
| Label | @MGCLattice:PurchaseOrderLine |
| Read/Write | Read-Write |
| Configuration Key | LedgerBasic |
| Entity Category | Document |
| Staging Table | MGCLatticePurchaseOrderLineStaging |
| OData Entity Name | LatticePurchaseOrderLine |
| OData Collection | LatticePurchaseOrderLines |
| Primary Company Context | DataAreaId |
Data Sources:
| Data Source | Table | Join Type |
|---|---|---|
| PurchLine (root) | PurchLine | -- (DynamicFields=Yes) |
| InventDim | InventDim | OuterJoin (via InventDim relation on PurchLine) |
Fields:
| Entity Field | DataSource.DataField |
|---|---|
| PurchaseOrderNumber | PurchLine.PurchId |
| LineNumber | PurchLine.LineNumber |
| ItemNumber | PurchLine.ItemId |
| OrderedPurchaseQuantity | PurchLine.PurchQty |
| PurchasePrice | PurchLine.PurchPrice |
| LineAmount | PurchLine.LineAmount |
| CurrencyCode | PurchLine.CurrencyCode |
| PurchaseUnitSymbol | PurchLine.PurchUnit |
| PurchaseStatus | PurchLine.PurchStatus |
| RequestedDeliveryDate | PurchLine.DeliveryDate |
| ReceivingSiteId | InventDim.InventSiteId |
| ReceivingWarehouseId | InventDim.InventLocationId |
| InventoryLotId | PurchLine.InventTransId |
Entity Key: InventoryLotId
Design Notes:
- Uses DynamicFields=Yes on the root PurchLine data source for performance
- InventDim is joined as a read-only outer join to provide site/warehouse dimensions without blocking records that lack InventDim
ReceivingSiteId/ReceivingWarehouseIdset the line's site and warehouse on create and update (mapEntityToDataSourceresolves the line's inventory dimension); a warehouse sent without a site uses the warehouse's site- Resolves the purchase order and item from
ExternalSystem+PurchaseOrderNumberExternalKey/ItemNumberExternalKeybefore the line is written - Lightweight alternative to the standard PurchaseOrderLineV2Entity for high-volume OData reads
Document Attachments -- Master Data
MGCLatticeCustomerDocumentAttachmentEntity
| Property | Value |
|---|---|
| Read/Write | Read-Write |
| Entity Category | Document |
| Staging Table | MGCLatticeCustomerDocumentAttachmentStaging |
| OData Entity Name | LatticeCustomerDocumentAttachment |
| OData Collection | LatticeCustomerDocumentAttachments |
| Primary Company Context | ActualCompanyId |
Data Sources:
| Data Source | Table | Join Type |
|---|---|---|
| DocuRefEntity (root) | DocuRefEntity | -- |
| CustTable | CustTable | InnerJoin (read-only) (RefTableId = TableId, RefRecId = RecId, RefCompanyId = DataAreaId on DocuRefEntity) |
Custom X++ Methods:
postLoad- Loads the file content from Document Management into theAttachmentfield, in the attachment's own companyvalidateWrite- Resolves the external keys before validating, so an id sent only as an external key counts as filled inpersistEntity- Resolves the external keys before any data source is writtenresolveExternalKeys- ResolvesCustomerAccountfromExternalSystem+CustomerAccountExternalKey; a key that does not resolve is an error
MGCLatticeFreeTextInvoiceDocumentAttachmentEntity
| Property | Value |
|---|---|
| Read/Write | Read-Write |
| Entity Category | Document |
| Staging Table | MGCLatticeFreeTextInvoiceDocumentAttachmentStaging |
| OData Entity Name | LatticeFreeTextInvoiceDocumentAttachment |
| OData Collection | LatticeFreeTextInvoiceDocumentAttachments |
| Primary Company Context | ActualCompanyId |
Data Sources:
| Data Source | Table | Join Type |
|---|---|---|
| DocuRefEntity (root) | DocuRefEntity | -- |
| CustInvoiceTable | CustInvoiceTable | InnerJoin (read-only) (RefTableId = TableId, RefRecId = RecId, RefCompanyId = DataAreaId on DocuRefEntity) |
Custom X++ Methods:
postLoad- Loads the file content from Document Management into theAttachmentfield, in the attachment's own companyinitializeEntityDataSource- Resolves the CustInvoiceTable record the new attachment belongs to on insertvalidateWrite- Resolves the external keys before validating, so an id sent only as an external key counts as filled inpersistEntity- Resolves the external keys before any data source is writtenresolveExternalKeys- ResolvesInvoiceIdfromExternalSystem+InvoiceIdExternalKey; a key that does not resolve is an error
MGCLatticeProjectDocumentAttachmentEntity
| Property | Value |
|---|---|
| Read/Write | Read-Write |
| Entity Category | Document |
| Staging Table | MGCLatticeProjectDocumentAttachmentStaging |
| OData Entity Name | LatticeProjectDocumentAttachment |
| OData Collection | LatticeProjectDocumentAttachments |
| Primary Company Context | ActualCompanyId |
Data Sources:
| Data Source | Table | Join Type |
|---|---|---|
| DocuRefEntity (root) | DocuRefEntity | -- |
| ProjTable | ProjTable | InnerJoin (read-only) (RefTableId = TableId, RefRecId = RecId, RefCompanyId = DataAreaId on DocuRefEntity) |
Custom X++ Methods:
postLoad- Loads the file content from Document Management into theAttachmentfield, in the attachment's own companyvalidateWrite- Resolves the external keys before validating, so an id sent only as an external key counts as filled inpersistEntity- Resolves the external keys before any data source is writtenresolveExternalKeys- ResolvesProjectIdfromExternalSystem+ProjectIdExternalKey; a key that does not resolve is an error
Document Attachments -- Manufacturing
MGCLatticeProductionOrderDocumentAttachmentEntity
| Property | Value |
|---|---|
| Read/Write | Read-Write |
| Entity Category | Document |
| Staging Table | MGCLatticeProductionOrderDocumentAttachmentStaging |
| OData Entity Name | LatticeProductionOrderDocumentAttachment |
| OData Collection | LatticeProductionOrderDocumentAttachments |
| Primary Company Context | ActualCompanyId |
Data Sources:
| Data Source | Table | Join Type |
|---|---|---|
| DocuRefEntity (root) | DocuRefEntity | -- |
| ProdTable | ProdTable | InnerJoin (read-only) (RefTableId = TableId, RefRecId = RecId, RefCompanyId = DataAreaId on DocuRefEntity) |
Custom X++ Methods:
postLoad- Loads the file content from Document Management into theAttachmentfield, in the attachment's own companyvalidateWrite- Resolves the external keys before validating, so an id sent only as an external key counts as filled inpersistEntity- Resolves the external keys before any data source is writtenresolveExternalKeys- ResolvesProductionOrderNumberfromExternalSystem+ProductionOrderNumberExternalKey; a key that does not resolve is an error
MGCLatticeQualityOrderDocumentAttachmentEntity
| Property | Value |
|---|---|
| Read/Write | Read-Write |
| Entity Category | Document |
| Staging Table | MGCLatticeQualityOrderDocumentAttachmentStaging |
| OData Entity Name | LatticeQualityOrderDocumentAttachment |
| OData Collection | LatticeQualityOrderDocumentAttachments |
| Primary Company Context | ActualCompanyId |
Data Sources:
| Data Source | Table | Join Type |
|---|---|---|
| DocuRefEntity (root) | DocuRefEntity | -- |
| InventQualityOrderTable | InventQualityOrderTable | InnerJoin (read-only) (RefTableId = TableId, RefRecId = RecId, RefCompanyId = DataAreaId on DocuRefEntity) |
Custom X++ Methods:
postLoad- Loads the file content from Document Management into theAttachmentfield, in the attachment's own company
Document Attachments -- Transfer
MGCLatticeTransferOrderDocumentAttachmentEntity
| Property | Value |
|---|---|
| Read/Write | Read-Write |
| Entity Category | Document |
| Staging Table | MGCLatticeTransferOrderDocumentAttachmentStaging |
| OData Entity Name | LatticeTransferOrderDocumentAttachment |
| OData Collection | LatticeTransferOrderDocumentAttachments |
| Primary Company Context | ActualCompanyId |
Data Sources:
| Data Source | Table | Join Type |
|---|---|---|
| DocuRefEntity (root) | DocuRefEntity | -- |
| InventTransferTable | InventTransferTable | InnerJoin (read-only) (RefTableId = TableId, RefRecId = RecId, RefCompanyId = DataAreaId on DocuRefEntity) |
Custom X++ Methods:
postLoad- Loads the file content from Document Management into theAttachmentfield, in the attachment's own companyvalidateWrite- Resolves the external keys before validating, so an id sent only as an external key counts as filled inpersistEntity- Resolves the external keys before any data source is writtenresolveExternalKeys- ResolvesTransferOrderNumberfromExternalSystem+TransferOrderNumberExternalKey; a key that does not resolve is an error
MGCLatticeTransferOrderLineDocumentAttachmentEntity
| Property | Value |
|---|---|
| Read/Write | Read-Write |
| Entity Category | Document |
| Staging Table | MGCLatticeTransferOrderLineDocumentAttachmentStaging |
| OData Entity Name | LatticeTransferOrderLineDocumentAttachment |
| OData Collection | LatticeTransferOrderLineDocumentAttachments |
| Primary Company Context | ActualCompanyId |
Data Sources:
| Data Source | Table | Join Type |
|---|---|---|
| DocuRefEntity (root) | DocuRefEntity | -- |
| InventTransferLine | InventTransferLine | InnerJoin (read-only) (RefTableId = TableId, RefRecId = RecId, RefCompanyId = DataAreaId on DocuRefEntity) |
Custom X++ Methods:
postLoad- Loads the file content from Document Management into theAttachmentfield, in the attachment's own companyvalidateWrite- Resolves the external keys before validating, so an id sent only as an external key counts as filled inpersistEntity- Resolves the external keys before any data source is writtenresolveExternalKeys- ResolvesTransferOrderNumberfromExternalSystem+TransferOrderNumberExternalKeyandLineNumberfromExternalSystem+LineNumberExternalKey; a key that does not resolve is an error
Document Attachments -- Purchase Order Lines
MGCLatticePurchaseOrderLineDocumentAttachmentEntity
| Property | Value |
|---|---|
| Read/Write | Read-Write |
| Entity Category | Document |
| Staging Table | MGCLatticePurchaseOrderLineDocumentAttachmentStaging |
| OData Entity Name | LatticePurchaseOrderLineDocumentAttachment |
| OData Collection | LatticePurchaseOrderLineDocumentAttachments |
| Primary Company Context | ActualCompanyId |
Data Sources:
| Data Source | Table | Join Type |
|---|---|---|
| DocuRefEntity (root) | DocuRefEntity | -- |
| PurchLine | PurchLine | InnerJoin (read-only) (RefTableId = TableId, RefRecId = RecId, RefCompanyId = DataAreaId on DocuRefEntity) |
Custom X++ Methods:
postLoad- Loads the file content from Document Management into theAttachmentfield, in the attachment's own companyvalidateWrite- Resolves the external keys before validating, so an id sent only as an external key counts as filled inpersistEntity- Resolves the external keys before any data source is writtenresolveExternalKeys- ResolvesPurchaseOrderNumberfromExternalSystem+PurchaseOrderNumberExternalKeyandLineNumberfromExternalSystem+LineNumberExternalKey; a key that does not resolve is an error
Inventory & Product (High-Performance)
MGCLatticeInventOnHandEntity
| Property | Value |
|---|---|
| Label | @MGCLattice:InventOnHand |
| Read/Write | Read-Only |
| Configuration Key | (none) |
| Entity Category | Transaction |
| Staging Table | MGCLatticeInventOnHandStaging |
| OData Entity Name | LatticeInventoryOnHand |
| OData Collection | LatticeInventoryOnHands |
| Primary Company Context | DataAreaId |
| Tags | Inventory |
| Modules | Inventory |
| SubscriberAccessLevel | Read=Allow |
Data Sources:
| Data Source | Table | Join Type | DynamicFields | Ranges |
|---|---|---|---|---|
| InventSum (root) | InventSum | -- (ReadOnly) | No | Closed = 0 (open rows only) |
| InventDim | InventDim | OuterJoin (via InventDim relation on InventSum) | No | -- |
Fields:
| Entity Field | DataSource.DataField |
|---|---|
| ItemNumber | InventSum.ItemId |
| InventoryDimensionId | InventSum.InventDimId |
| PhysicalInventoryQuantity | InventSum.PhysicalInvent |
| PhysicalReservedQuantity | InventSum.ReservPhysical |
| PickedQuantity | InventSum.Picked |
| ReceivedQuantity | InventSum.Received |
| DeductedQuantity | InventSum.Deducted |
| OnOrderQuantity | InventSum.OnOrder |
| OrderedQuantity | InventSum.Ordered |
| InventorySiteId | InventDim.InventSiteId |
| InventoryWarehouseId | InventDim.InventLocationId |
| WarehouseLocationId | InventDim.wMSLocationId |
| InventoryBatchId | InventDim.InventBatchId |
| InventoryStatusId | InventDim.InventStatusId |
| LicensePlateId | InventDim.LicensePlateId |
Entity Key: ItemNumber, InventoryDimensionId
Design Notes:
DynamicFields=Noon both data sources with an explicit minimal field projection -- SQL selects only the mapped columns, minimizing I/O for high-volume snapshot feeds.- Read-only (
IsReadOnly=Yes) -- no write or validation overhead. - Baked-in range
Closed == 0on InventSum restricts the feed to open (non-closed) inventory rows, producing smaller result sets. - InventDim is an outer join so on-hand rows are never dropped if the dimension record is missing.
- Key (ItemNumber + InventoryDimensionId) aligns with the InventSum primary index for efficient
$skiptokenkeyset paging. - Designed to have change tracking enabled (VS designer, "Enable entire entity") for incremental delta export.
- No custom X++ business logic methods.
- Workload: high-volume on-hand snapshot feeds -- WMS/3PL stock sync, e-commerce inventory, ATP, BI. A lean alternative to the heavy standard on-hand entities.
MGCLatticeReleasedProductEntity
| Property | Value |
|---|---|
| Label | @MGCLattice:ReleasedProduct |
| Read/Write | Read-Only |
| Configuration Key | (none) |
| Entity Category | Master |
| Staging Table | MGCLatticeReleasedProductStaging |
| OData Entity Name | LatticeReleasedProduct |
| OData Collection | LatticeReleasedProducts |
| Primary Company Context | DataAreaId |
| FormRef | EcoResProductDetailsExtended |
| Tags | Inventory |
| Modules | Inventory |
| SubscriberAccessLevel | Read=Allow |
Data Sources:
| Data Source | Table | Join Type | DynamicFields | Ranges |
|---|---|---|---|---|
| InventTable (root) | InventTable | -- | No | -- |
| InventTableModule | InventTableModule | InnerJoin (ItemId = ItemId on InventTable) | No | ModuleType = Invent |
| EcoResProductTranslation | EcoResProductTranslation | OuterJoin (Product = Product on InventTable) | No | LanguageId = en-us |
Fields:
| Entity Field | DataSource.DataField |
|---|---|
| ItemNumber | InventTable.ItemId |
| SearchName | InventTable.NameAlias |
| ProductType | InventTable.ItemType |
| InventoryUnitSymbol | InventTableModule.UnitId |
| ProductName | EcoResProductTranslation.Name |
| ProductDescription | EcoResProductTranslation.Description |
Entity Key: ItemNumber
Design Notes:
DynamicFields=Noon all data sources with an explicit minimal field projection.- Read-only (
IsReadOnly=Yes) -- no write or validation overhead. - InventTableModule is inner-joined with a baked-in range
ModuleType == Inventto surface the inventory unit of measure. - EcoResProductTranslation is outer-joined with a fixed range
LanguageId == en-us, soProductNameandProductDescriptionare the product's en-us translation, and products without one keep their row with empty values. A product that has no en-us translation (for example in a company that maintains product names only in another language) shows empty values; read the translations through Microsoft's product translation entity instead. The language is fixed because a language key would return one row per translation. - Designed to have change tracking enabled (VS designer, "Enable entire entity") for incremental delta export.
- No custom X++ business logic methods.
- Workload: lean catalog/PIM/storefront sync. Not a replacement for the full released-product entity.
Composite Entities
MGCLatticeCustomerPackingSlipsEntity
| Property | Value |
|---|---|
| Label | @MGCLattice:CustomerPackingSlipHeaderAndLines |
| Read/Write | Read-Only |
| Entity Category | Transaction |
| Type | Composite |
Structure:
| Level | Entity | Relation |
|---|---|---|
| Root | MGCLatticeCustomerPackingSlipJournalHeaderEntity | -- |
| Child | MGCLatticeCustomerPackingSlipJournalLinesEntity | MGCLatticeCustomerPackingSlipJournalHeaderEntity (on SalesOrderNumber, PackingSlipId, DeliveryDate) |