Skip to main content

Lattice -- Data Entity Catalog

Lattice is a Microsoft Dynamics 365 Finance & Operations package published by Magicite. This catalog covers its data entities: the Lattice model provides 149 data entities plus 1 composite entity. 133 of them expose ERP data through OData and, for 116 of them, the Data Management Framework (DMF); 15 are set-based import entities, import-only through DMF. All entity OData collection names use the Lattice prefix (e.g., LatticeCustomerContactInfos). Every DMF-enabled entity has a dedicated staging table, and the entities with custom X++ business logic are listed under Summary Statistics.

Cross-reference keys. 33 entities maintain the keys other systems use for D365 records; see Cross-Reference Keys and Cross-reference keys. Twenty more entities also accept ExternalSystem and ...ExternalKey fields that accept an external key in place of a lookup value (sales and purchase order lines, the free text invoice template line, payment requests, the vendor contact person and the document attachment entities). Their staging tables carry the same columns: after the database sync, regenerate the mappings of the data projects that use them.

This catalog is organized by functional area. Each entity table lists the OData collection name, read/write access, a description of what the entity exposes, the recommended integration scenario, and a concrete business use case.


Table of Contents​


Contact & Address​

Customer and vendor contact information and contact person records.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeCustomerContactInfoEntityLatticeCustomerContactInfosRead/WriteExposes customer contact information (phone, email, fax) without requiring knowledge of the party number; resolves party number automatically from the customer account.Data migration, master data syncA distributor migrating from a legacy ERP imports all customer phone numbers and email addresses into D365 using customer account numbers, without needing to look up party numbers first.
MGCLatticeCustomerContactPersonEntityLatticeCustomerContactPersonsRead/WriteExposes customer contact person records with full demographic and employment details. 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. On update, the existing contact person is found by its ID under the customer account's party, in the row's legal entity. Key: CustomerAccount + CustomerDataAreaId + ContactPersonId.Data migration, CRM integrationA manufacturer syncs contact persons from Salesforce CRM into D365 by customer account, so the contacts attach to the right customer for sales follow-up and order communication.
MGCLatticeVendorContactInfoEntityLatticeVendorContactInfosRead/WriteExposes vendor contact information (phone, email, fax) without requiring knowledge of the party number; resolves party number automatically from the vendor account.Data migration, master data syncA procurement team imports vendor phone numbers and email addresses from a legacy purchasing system during an ERP migration, using vendor account numbers as the key.
MGCLatticeVendorContactPersonEntityLatticeVendorContactPersonsRead/WriteExposes vendor contact person records with demographic and employment details. 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. On update, the existing contact person is found by its ID under the vendor account's party, in the row's legal entity. To update an existing contact person through Data management, send VendorAccount: the vendor's external key alone does not find the existing row. Key: VendorAccount + VendorDataAreaId + ContactPersonId.Data migration, supplier managementA global sourcing team loads vendor contact persons (buyer contacts, account managers) from a supplier portal export into D365 for all active vendors.

Finance Transactions​

Read-only, lean feeds of posted ledger, bank, customer and fixed asset transactions for reporting, reconciliation and data-warehouse export, each keyed on the source record ID and enabled for both OData and Data management.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeGeneralLedgerEntryEntityLatticeGeneralLedgerEntriesRead-onlyExposes posted general ledger lines (GeneralJournalAccountEntry) with the voucher, accounting date and journal number of their journal entry (GeneralJournalEntry), posting type, main account, ledger dimension display value, description, and amounts in transaction, accounting and reporting currency. The entity is shared across companies and returns lines from every legal entity; the LegalEntityId column (the legal entity that owns the ledger, from Ledger.PrimaryForLegalEntity) tells them apart and can be filtered, for example $filter=LegalEntityId eq 'USMF'. Key: GeneralJournalAccountEntryRecId.Nightly export to a data warehouse or BYODA finance data team at a single-company distributor exports each day's posted ledger lines (voucher, main account, dimension string and amounts) into its data warehouse for daily P&L reporting.
MGCLatticeBankAccountTransactionEntityLatticeBankAccountTransactionsRead-onlyExposes bank account transactions (BankAccountTrans) with bank account, date, voucher, bank transaction type, description, reconciled flag, amounts in accounting and transaction currency, and the bank account name (BankAccountTable, outer join). Key: SysRecId (record ID).Treasury reconciliation feed, cash reportingEach morning a treasury analyst's cash-management tool pulls the bank account transactions that are not yet reconciled and matches them against the bank's statement file.
MGCLatticeCustomerTransactionEntityLatticeCustomerTransactionsRead-onlyExposes posted customer transactions (CustTrans) with customer account, voucher, transaction type, date, due date, invoice, document number, payment reference, closed date, amounts and settled amounts, plus the remaining open amount in both currencies, summed over the transaction's open records (CustTransOpen), so a transaction with several open installments is still one row and a fully settled transaction shows 0. Key: SysRecId (record ID).Receivables extract, collections toolingA collections platform pulls the customer invoices that still have an open balance every night and prioritizes follow-up calls by due date and remaining amount.
MGCLatticeCustomerSettlementEntityLatticeCustomerSettlementsRead-onlyExposes customer settlement history (CustSettlement): which customer transaction was settled against which offset transaction (record ID, voucher, account and company), the settlement date and voucher, due and closed dates, settled amounts in accounting and transaction currency, and whether the settlement can be reversed. Key: SysRecId (record ID).Cash application reconciliation, DSO reportingA shared-services team exports each day's settlements to see which invoices were closed by which payments and feeds the result into its days-sales-outstanding report.
MGCLatticeFixedAssetTransactionEntityLatticeFixedAssetTransactionsRead-onlyExposes fixed asset transactions per book (AssetTrans), such as acquisition, depreciation and disposal, with date, voucher, description, amounts, consumption units, and the posting layer of the book (AssetBookTable, outer join). Key: SysRecId (record ID).Fixed asset subledger export, tax reconciliationAt year-end a tax department exports the depreciation transactions of its financial and tax books to reconcile the two in its tax provision software.

General Ledger & Tax​

Trial balance snapshots and posted sales tax and withholding tax transactions.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeTrialBalanceEntityLatticeTrialBalancesRead-onlyExposes trial balance snapshot data (LedgerTrialBalanceSnapshotData with its snapshot header, ledger, fiscal year and fiscal period): per account and dimension combination and period, the opening balance, debit, credit, net change, closing adjustments and closing balance in accounting currency, posting layer, main account category and dimension values 1 to 11, with ledger name, fiscal year, period name, type and dates, and snapshot status. Shared across companies, so it covers every ledger; data exists only for snapshots created on the standard Trial balance snapshots page. Key: SnapshotDataRecId.Financial reporting, consolidation, BIA group reporting tool loads the latest trial balance snapshot of every legal entity's ledger at month end to feed its consolidation, instead of recalculating balances from ledger entries.
MGCLatticeTaxTransactionEntityLatticeTaxTransactionsRead-onlyExposes posted sales tax transactions (TaxTrans) with sales tax code, direction, date, voucher, sales tax group and item sales tax group, tax and base amounts in accounting currency, tax amount in transaction currency, tax rate value and currency. Key: SysRecId.Tax reporting, reconciliationAn indirect-tax reporting tool extracts each month's posted sales tax transactions to prepare VAT returns and reconcile tax by voucher to the general ledger.
MGCLatticeWithholdingTaxTransactionEntityLatticeWithholdingTaxTransactionsRead-onlyExposes withholding tax transactions (TaxWithholdTrans) with vendor or customer account, invoice, invoice amount, base amount and withheld amount in invoice currency, journal number, competence date and withholding tax code. Key: SysRecId.Tax compliance, year-end reportingAn accounts payable team exports withholding tax transactions at year end to prepare vendor withholding certificates and reconcile the amounts withheld per tax code.

General Ledger & Period Close Setup​

Financial period close setup (closing calendars, roles, resources and task areas), shared across legal entities, and the per-company general ledger parameters, for moving configuration between environments and checking it against a baseline.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeGeneralLedgerParametersEntityLatticeGeneralLedgerParametersRead/WriteExposes the general ledger parameters (LedgerParameters), one row per legal entity: voucher and continuous-number checks, maximum penny differences in accounting and reporting currency, year-end transfer options, posting definitions, error-account interruption, summary account dimension values, and reverse-opposite-sign and journal sorting settings. Key: GeneralLedgerParametersKey.Configuration baselines, environment setup over ODataAfter every environment refresh, an implementation team reads the general ledger parameters of all legal entities and compares them with its approved baseline to catch configuration drift.
MGCLatticePeriodCloseCalendarEntityLatticePeriodCloseCalendarsRead/WriteExposes financial period close closing calendars (LedgerPeriodCloseCalendar): calendar ID, name, start date and end date. Shared across legal entities. Key: Calendar.Configuration migration between environmentsA finance operations lead creates next year's monthly and quarterly closing calendars in the test environment and moves them to production in a data package.
MGCLatticePeriodCloseRoleEntityLatticePeriodCloseRolesRead/WriteExposes financial period close closing roles (LedgerPeriodCloseRole) with name and description. Shared across legal entities. Key: ClosingRoleName.Configuration migration between environmentsA shared-services center defines closing roles such as AP accountant, AR accountant and controller once and imports them into each new environment.
MGCLatticePeriodCloseResourceEntityLatticePeriodCloseResourcesRead/WriteExposes financial period close resources (LedgerPeriodCloseWorker), identified by the worker's personnel number rather than an internal record ID, with the task visibility setting (all tasks or assigned tasks only). A resource is added for an existing worker named by WorkerPersonnelNumber; the worker is never created or changed, and an unknown personnel number is refused. Role assignments are not included. Shared across legal entities. Key: WorkerPersonnelNumber.Onboarding sync from HR, configuration migrationWhen accountants join the finance team, an onboarding integration adds them as period close resources by personnel number, set to see only the tasks assigned to them.
MGCLatticePeriodCloseTaskAreaEntityLatticePeriodCloseTaskAreasRead/WriteExposes financial period close task areas (LedgerPeriodCloseArea) with name and description. Shared across legal entities. Key: TaskAreaName.Configuration migration between environmentsWhile building its close schedule, a controller's team loads task areas such as Accounts payable, Fixed assets and Consolidation in one import.

Accounts Receivable Setup​

Writable setup entities for free text invoice templates and customer summary update settings, suited to bulk maintenance and to moving configuration between environments.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeFreeTextInvoiceTemplateEntityLatticeFreeTextInvoiceTemplatesRead/WriteExposes free text invoice template headers (CustInvoiceTemplate): name, description, currency, language, posting profile, sales tax groups, terms and method of payment, payment schedule and specification, cash discount, delivery terms and the prices-include-sales-tax setting. Default financial dimensions are returned as a display value for reference and cannot be set through the entity; template charges are not included. Key: TemplateName.Configuration migration between environmentsA billing team copies its recurring-service invoice templates from the test environment to production in a data package instead of re-keying currency, payment terms and tax groups.
MGCLatticeFreeTextInvoiceTemplateLineEntityLatticeFreeTextInvoiceTemplateLinesRead/WriteExposes the standard lines of free text invoice templates (CustInvoiceStandardLineTemplate), linked to their template by template name: description, invoice text, quantity, unit price, amount, sales tax groups and project defaults. A line is added to an existing template named by TemplateName; the template is never created or changed, and an unknown template name is refused. The ledger account and default dimensions are returned as display values for reference and cannot be set through the entity. Key: TemplateName + LineNumber.Template audits, bulk line maintenanceAhead of a sales tax change, a billing analyst exports every template line with its ledger account and tax groups, then imports corrected item sales tax groups for the affected lines.
MGCLatticeCustomerSummaryUpdateParametersEntityLatticeCustomerSummaryUpdateParametersRead/WriteExposes the customer summary update settings (SalesJournalAutoSummary): for each customer account or sales order and each document type (for example confirmation, packing slip or invoice), whether the document is summary-updated. Importing a row whose key matches an existing setting updates that setting instead of creating a duplicate. Key: CustomerAccount + ModuleType + SalesOrderId + DocumentType.Bulk configuration via Data managementBefore go-live, an accounts receivable lead imports summary update settings for 400 wholesale customers so that orders shipped in the same week can be invoiced together on one invoice.

Accounts Payable​

Posted vendor transactions and settlements for aging, reconciliation and payment reporting.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeVendorTransactionEntityLatticeVendorTransactionsRead-onlyExposes posted vendor transactions (VendTrans) with voucher, transaction type, date, due date, invoice, document number, closed date, amounts in accounting and transaction currency, currency and settled amounts, plus the remaining open amounts, summed over the transaction's open records (VendTransOpen), so a transaction with several open installments is still one row and a fully settled transaction shows 0. Key: SysRecId.AP aging, subledger reconciliation, BIA finance data warehouse pulls vendor transactions nightly to build an AP aging report from due dates and remaining open amounts, and to reconcile the vendor subledger to the general ledger.
MGCLatticeVendorSettlementEntityLatticeVendorSettlementsRead-onlyExposes vendor settlement records (VendSettlement): the settled transaction and its offset (record references, vouchers, accounts and companies), settlement voucher, settlement, due and closed dates, settled amounts in accounting and transaction currency, and whether the settlement can be reversed. Key: SysRecId.Payment reconciliation, AP reportingA treasury team exports vendor settlements each day to match payments to the invoices they paid, including settlements against transactions in another legal entity.

Payment Requests​

Cash flow management payment requests and their lines, readable and writable through OData and Data management, with the company taken from the payment request company field.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticePaymentRequestEntityLatticePaymentRequestsRead/WriteExposes cash flow management payment request headers (CFMPaymentRequestTable): request ID, due and payment dates, request status and workflow status, account type (vendor, customer or worker) and account, currency and payment currency, and the payment request company and treasury company. Key: PaymentRequestId.Treasury planning feed, status sync with a payment portalEach morning a central treasury team pulls confirmed and scheduled payment requests from all subsidiaries to plan the day's payment runs by due date and currency.
MGCLatticePaymentRequestLineEntityLatticePaymentRequestLinesRead/WriteExposes payment request lines (CFMPaymentRequestLine), linked to their header by payment request ID: line number, original amount, amount to pay, and sales tax groups. Key: PaymentRequestId + LineNumber.Treasury planning feed (with the header entity)Alongside the headers, the same treasury feed pulls each request's lines to compare the original amount with the amount to pay before approving partial payments.

Customer Packing Slips​

Customer packing slip journal headers and lines for shipment reporting.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeCustomerPackingSlipJournalHeaderEntityLatticeCustomerPackingSlipJournalHeadersRead-onlyExposes customer packing slip journal headers (CustPackingSlipJour) with delivery address, financial dimensions, order taker, shipping carrier, and bill of lading details.DMF export, warehouse reportingA logistics team exports daily packing slip headers to a data warehouse to track shipment volumes, delivery performance, and carrier utilization by customer.
MGCLatticeCustomerPackingSlipJournalLinesEntityLatticeCustomerPackingSlipJournalLinesRead-onlyExposes customer packing slip journal line details (CustPackingSlipTrans) including item, quantity, inventory dimensions, delivery address, and financial dimensions.DMF export, order fulfillment reportingA warehouse manager exports packing slip line data to analyze pick accuracy, comparing ordered versus shipped quantities at the item and batch level.

Intercompany Orders​

Intercompany sales and purchase order records with cross-entity linkage metadata.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeIntercompanyOrderEntityLatticeIntercompanyOrdersRead-onlyExposes intercompany sales order records from SalesTable, filtered to intercompany orders only, with linkage metadata to the corresponding purchase order in the other legal entity.Intercompany reconciliation, reportingA corporate controller queries intercompany sales orders across legal entities to reconcile intercompany revenue and verify elimination entries during month-end close.
MGCLatticeIntercompanyPurchaseOrderEntityLatticeIntercompanyPurchaseOrdersRead-onlyExposes intercompany purchase order records from PurchTable, filtered to intercompany orders only, with linkage metadata to the corresponding sales order in the other legal entity.Intercompany reconciliation, reportingA group finance team exports intercompany purchase orders to match them against intercompany sales orders in the selling entity, verifying transfer prices and eliminating intercompany balances at consolidation.

Intercompany Order Lines​

Read-only, line-level views of intercompany sales and purchase orders that complement the Intercompany Orders header entities, available through OData only (not enabled for Data management).

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeIntercompanyOrderLineEntityLatticeIntercompanyOrderLinesRead-onlyExposes sales order lines (SalesLine) of intercompany sales orders only (the SalesTable header join is filtered to intercompany orders), with lot ID, item, description, quantity, unit, unit price, net amount and deliver remainder, plus the customer account, intercompany company and intercompany purchase order from the header. Key: SalesOrderNumber + LineNumber.Intercompany reconciliation over ODataAt month-end a group controller compares intercompany sales order lines in the selling company with the purchase order lines in the buying company to find quantity and price mismatches before eliminations.
MGCLatticeIntercompanyPurchaseOrderLineEntityLatticeIntercompanyPurchaseOrderLinesRead-onlyExposes purchase order lines (PurchLine) of intercompany purchase orders only (the PurchTable header join is filtered to intercompany orders), with lot ID, item, description, quantity, unit, unit price, net amount and deliver remainder, plus the vendor account, intercompany company and intercompany sales order from the header. Key: PurchaseOrderNumber + LineNumber.Intercompany reconciliation over ODataA procurement analyst lists the intercompany purchase lines that still have quantity to receive and follows up with the supplying sister company on late shipments.

Order Lines​

Performance-optimized order line entities with inventory dimension (site/warehouse) joins. These entities use DynamicFields=Yes on the root data source and an outer join to InventDim, providing a lightweight alternative to the standard D365 order line entities for high-volume OData reads.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeSalesOrderLineEntityLatticeSalesOrderLinesRead/WriteExposes sales order line records (SalesLine) with core order fields (item, qty, price, amount, status) and inventory site/warehouse dimensions via InventDim outer join. ShippingSiteId and ShippingWarehouseId set the line's site and warehouse on create and update; a warehouse sent without a site uses the warehouse's site. Key: InventoryLotId, which is also the staging key: to import new lines through Data management, send a lot ID per row or set the InventoryLotId mapping to auto-generated (a lot ID that is sent is kept).OData reporting, order line syncA BI dashboard queries all open sales order lines with site/warehouse breakdown to track fulfillment status by location in near-real-time.
MGCLatticePurchaseOrderLineEntityLatticePurchaseOrderLinesRead/WriteExposes purchase order line records (PurchLine) with core order fields (item, qty, price, amount, status) and inventory site/warehouse dimensions via InventDim outer join. ReceivingSiteId and ReceivingWarehouseId set the line's site and warehouse on create and update; a warehouse sent without a site uses the warehouse's site. Key: InventoryLotId.OData reporting, order line syncA procurement analytics tool pulls purchase order lines with receiving site/warehouse to monitor open commitments and expected deliveries by location.

Sales Order Charges​

Miscellaneous charges on individual sales order lines.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeSalesOrderLineChargeEntityLatticeSalesOrderLineChargesRead/WriteExposes miscellaneous charges (MarkupTrans, customer module) on sales order lines with charge code, category, fixed, per-unit, percentage and external amounts, currency, sales tax groups, keep flag and intercompany and broker-fee flags. Only lines of orders of type Sales order are included. New charges must carry a charge code and are always created as line-level charges. Key: SalesOrderNumber + SalesOrderLineInventoryLotId + ChargeLineNumber.Order integration, charge syncAn e-commerce order integration adds a freight charge and a gift-wrap charge to the individual sales order lines it creates, so each charge is invoiced and taxed with its line.

Sales & Procurement Setup​

Company-level parameters and setup that govern sales and purchase processing: module parameters, purchase summary update rules, transport calendars and print management.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeSalesParametersEntityLatticeSalesParametersRead/WriteExposes a subset of the sales parameters (SalesParameters, one row per company): mark order as voided, delete order line invoiced in total, delete order after invoicing, time between shipping date and invoice date, customer quotation type, ATP time fence, ATP including planned orders, and bill of lading. Key: SalesParametersKey.Configuration migration, parameter auditAn implementation team loads the sales parameter settings of its template legal entity into each newly created company as part of a configuration data package.
MGCLatticeProcurementParametersEntityLatticeProcurementParametersRead/WriteExposes procurement parameters (PurchParameters, one row per company): default purchase type and purchase pool, default return action, prices and amounts printed on purchase orders, change management and per-vendor override, discount type, automatic charges for header and lines, price date type, purchase cycle, find purchase agreements, product receipt number check, over- and underdelivery acceptance, product receipt charges, summary update defaults and error tolerance, three-way match, total discount on posting and margin alert. Key: ProcurementParametersKey.Configuration migration, policy governanceA procurement center of excellence exports the parameters of its reference company, imports them into every legal entity, and then reads them over OData to catch any company whose change management or three-way match settings have drifted.
MGCLatticeVendorSummaryUpdateParametersEntityLatticeVendorSummaryUpdateParametersRead/WriteExposes purchase summary update settings (PurchJournalAutoSummary): whether documents of a given type (for example product receipts or invoices) are summarized automatically, set per vendor account or per purchase order. Key: VendorAccount + ModuleType + PurchaseOrderId + DocumentType.Configuration migration, vendor setupA company that consolidates product receipts and invoices per vendor imports the automatic summary settings for its 200 highest-volume vendors in one data package instead of setting up each vendor by hand.
MGCLatticeTransportCalendarSetupEntityLatticeTransportCalendarSetupsRead/WriteExposes transport calendar assignments (CustVendTransportCalendarSetup): the transport calendar that applies to a mode of delivery, optionally for a specific warehouse. Key: ModeOfDeliveryId + InventoryWarehouseId.Configuration migration, logistics setupA distributor rolling out carrier holiday calendars imports which transport calendar applies to each mode of delivery at each shipping warehouse across its legal entities.
MGCLatticePrintManagementSettingEntityLatticePrintManagementSettingsRead/WriteExposes print management settings (PrintMgmtSettings with its PrintMgmtDocInstance node): node and document type, original or copy, name, priorities, description, number of copies and do-not-print flag, plus any customer or vendor override as AccountTableName + AccountNum and the print destination as DestinationType, FileFormat and FileName. Scope: module-level settings (AccountTableName and AccountNum blank) and customer- or vendor-account settings (AccountTableName CustTable or VendTable); order-level settings and settings on any other record are not included. The account columns are computed in the database, so rows can be read, updated and deleted by key, and re-importing an existing setting updates it. When rows are created, the override is resolved to that account in the target company (the row fails if the account does not exist); the account of an existing row cannot be changed. The destination is built from DestinationType, FileFormat and FileName only, so printer and email details are not carried on create; an update that changes the destination keeps the other details already stored.Configuration migration, document output setupAn implementation team copies print management setup, including customer-specific invoice copies saved as PDF files, from its template company into a new legal entity with a data package; customer overrides are matched by account number in the new company.

Trade Agreements​

Read-only feeds over trade agreements (PriceDiscTable): sales and purchase prices and line, multiline and total discounts. MGCLatticeTradeAgreementEntity is the unified feed: it returns every agreement row, identifies each row's type in PriceType (the relation) and ModuleType (Cust or Vend), and is the only one of the nine enabled for Data management (export projects and BYOD, where change tracking can be enabled for incremental export). The eight split feeds expose the same fields and key (SysRecId) with a fixed filter to one module and one relation, and are available through OData only; LatticeSalesPriceAgreements, for example, returns the rows of LatticeTradeAgreements where ModuleType is Cust and PriceType is PriceSales. Use the unified feed for bulk or incremental export and for consumers that need more than one agreement type; use a split feed for a simple OData read of one type. None of the nine filters on dates, so expired and future agreements are included; filter on FromDate and ToDate to get the agreements in effect. Each split feed has a display name of its own that names its type, for example Sales price trade agreements or Purchase total discount trade agreements; the unified feed is Trade Agreement.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeTradeAgreementEntityLatticeTradeAgreementsRead-onlyExposes every trade-agreement row in PriceDiscTable, sales and purchase, prices and all discount types: account and item relations (code type plus account or group), inventory dimension ID, unit, currency, quantity or amount range, amount, discount percentages 1 and 2, price charges, price unit, from and to dates, delivery lead time and agreement ID. PriceType and ModuleType identify each row's type. Key: SysRecId.DMF/BYOD export, incremental price-list sync, multi-type OData readsA pricing platform takes one full export of all trade agreements, then enables change tracking and pulls only new and changed sales prices, purchase prices and discounts each night.
MGCLatticeSalesPriceAgreementEntityLatticeSalesPriceAgreementsRead-onlyExposes sales price agreements only (ModuleType = Cust, PriceType = PriceSales), with the same fields and key as LatticeTradeAgreements. OData only.OData price lookup, storefront price syncA B2B web shop reads the sales price agreements for each customer price group every night to publish contract prices in its storefront.
MGCLatticeSalesLineDiscountAgreementEntityLatticeSalesLineDiscountAgreementsRead-onlyExposes sales line discount agreements only (ModuleType = Cust, PriceType = LineDiscSales), with the same fields and key as LatticeTradeAgreements. OData only.OData discount lookup, quotingA CPQ tool reads the line discount agreements for a customer's line discount group to show the discount percentage each quote line will receive.
MGCLatticeSalesMultilineDiscountAgreementEntityLatticeSalesMultilineDiscountAgreementsRead-onlyExposes sales multiline discount agreements only (ModuleType = Cust, PriceType = MultiLineDiscSales), with the same fields and key as LatticeTradeAgreements. OData only.OData discount lookup, sales enablementA field-sales app shows reps the quantity breaks at which a customer earns a multiline discount when items from the same multiline discount group are combined on one order.
MGCLatticeSalesTotalDiscountAgreementEntityLatticeSalesTotalDiscountAgreementsRead-onlyExposes sales total discount agreements only (ModuleType = Cust, PriceType = EndDiscSales), with the same fields and key as LatticeTradeAgreements. OData only.OData discount lookup, customer portalA customer portal reads total discount agreements to tell buyers the order value at which their order-level discount starts.
MGCLatticePurchPriceAgreementEntityLatticePurchasePriceAgreementsRead-onlyExposes purchase price agreements only (ModuleType = Vend, PriceType = PricePurch), with the same fields and key as LatticeTradeAgreements. OData only.OData price lookup, supplier collaborationA supplier portal shows each vendor its current purchase price agreements so the supplier can confirm contract prices before accepting a purchase order.
MGCLatticePurchLineDiscountAgreementEntityLatticePurchaseLineDiscountAgreementsRead-onlyExposes purchase line discount agreements only (ModuleType = Vend, PriceType = LineDiscPurch), with the same fields and key as LatticeTradeAgreements. OData only.OData discount lookup, spend analyticsA spend-analytics tool reads vendor line discount agreements to check that invoiced purchase lines received the negotiated discount percentages.
MGCLatticePurchMultilineDiscountAgreementEntityLatticePurchaseMultilineDiscountAgreementsRead-onlyExposes purchase multiline discount agreements only (ModuleType = Vend, PriceType = MultiLineDiscPurch), with the same fields and key as LatticeTradeAgreements. OData only.OData discount lookup, purchase planningA buyer's planning workbook reads vendor multiline discount agreements to see how many units from one discount group must be combined on a purchase order to reach the next discount tier.
MGCLatticePurchTotalDiscountAgreementEntityLatticePurchaseTotalDiscountAgreementsRead-onlyExposes purchase total discount agreements only (ModuleType = Vend, PriceType = EndDiscPurch), with the same fields and key as LatticeTradeAgreements. OData only.OData discount lookup, order consolidationA sourcing team reads vendor total discount agreements to find the order value at which a supplier grants an order-level discount before consolidating its weekly purchase orders.

Inventory & Product (High-Performance)​

Read-only, performance-tuned feeds for high-volume integration and BI workloads. Both entities use DynamicFields=No with explicit minimal field projections, are marked read-only (no write/validation overhead), and apply baked-in range filters so consumers receive smaller, pre-filtered result sets. Both are enabled for Data management, where change tracking can be turned on for incremental export; the entities do not turn it on themselves, and it does not apply to OData reads. These are lean alternatives to the standard on-hand and released-product entities, which are heavy for high-frequency sync.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeInventOnHandEntityLatticeInventoryOnHandsRead-onlyInventory on-hand snapshot from InventSum joined to InventDim (outer join), filtered to open rows (Closed==No). Projects physical, reserved, picked, received, deducted, on-order, and ordered quantities plus site, warehouse, location, batch, inventory status, and license plate. Key: ItemNumber + InventoryDimensionId.WMS/3PL stock sync, e-commerce inventory, ATP, BIA 3PL integration polls the on-hand snapshot for its warehouses every few minutes to keep an external warehouse management system's available-to-promise quantities in sync.
MGCLatticeReleasedProductEntityLatticeReleasedProductsRead-onlyLean released-product catalog from InventTable + InventTableModule (ModuleType=Invent) + EcoResProductTranslation (LanguageId=en-us, outer join). Exposes item number, search name, product type, inventory unit symbol, and en-us product name/description. Key: ItemNumber.Catalog/PIM/storefront syncAn e-commerce platform syncs the released-product catalog nightly to refresh storefront product names, descriptions, and units of measure without the overhead of the full released-product entity.

Inventory & Supply Chain Transactions​

Read-only, lean feeds of inventory transactions, open order lines and master planning output with explicit field projections, enabled for both OData and Data management.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeInventTransactionEntityLatticeInventoryTransactionsRead-onlyExposes inventory transactions (InventTrans) with item number, lot ID and reference category from the transaction origin (InventTransOrigin), issue and receipt status, physical and financial dates, packing slip, invoice, quantity, physical and financial cost amounts, and site, warehouse, location, batch, serial, inventory status and license plate (InventDim). The table is very large, so always filter, for example by item or date. Key: SysRecId (record ID).Incremental export to a data warehouseA cost accounting team exports the previous day's financially updated inventory transactions with site, warehouse and batch to analyze cost of goods sold by batch.
MGCLatticeOpenSalesOrderLineEntityLatticeOpenSalesOrderLinesRead-onlyExposes open sales order lines (SalesLine), filtered to lines that still have quantity to ship (deliver remainder greater than zero), with item, remaining quantity, unit, requested ship date, line status, customer account, and shipping site and warehouse (InventDim, outer join). Key: SalesOrderNumber + LineNumber.Near-real-time open-order feed to a WMS, 3PL or portalA 3PL integration polls open sales order lines for its warehouse every 15 minutes and plans picking waves by requested ship date.
MGCLatticeOpenPurchaseOrderLineEntityLatticeOpenPurchaseOrderLinesRead-onlyExposes open purchase order lines (PurchLine), filtered to lines that still have quantity to receive (deliver remainder greater than zero), with item, remaining quantity, unit, requested receipt date, line status, vendor account, and receiving site and warehouse (InventDim, outer join). Key: PurchaseOrderNumber + LineNumber.Inbound receiving schedule feedA dock scheduling system pulls open purchase order lines for each receiving warehouse every morning to book unloading slots for the quantities still expected.
MGCLatticePlannedOrderRequirementEntityLatticePlannedOrderRequirementsRead-onlyExposes master planning net requirement transactions (ReqTrans) for every plan version: item, coverage dimension ID, direction, coverage quantity, action date and action type, delayed-to date and delay flag, and reference type and number. Rows are not limited to planned orders (on-hand, sales, purchase and other requirements are included), so filter on ReferenceType, and on PlanVersion (the plan version record ID) to read one plan. Key: SysRecId (record ID).Planning output export to analytics toolsAfter the nightly master planning run, a supply planner exports planned purchase and production orders with their action dates and delays into Power BI to decide what to expedite.

Product & Inventory Setup​

Writable setup entities for inventory statuses, item group and model group assignments, item order settings, item sales tax groups and inventory parameters, suited to bulk maintenance and to moving configuration between environments.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeInventoryStatusEntityLatticeInventoryStatusesRead/WriteExposes warehouse inventory statuses (WHSInventStatus): status ID, name and whether the status blocks inventory. Key: InventoryStatusId.Master data sync with a WMS or 3PLWhen onboarding a 3PL, a warehouse team imports the partner's status codes (Available, Damaged, Quarantine) and marks the damaged and quarantine statuses as blocking.
MGCLatticeItemGroupAssignmentEntityLatticeItemGroupAssignmentsRead/WriteExposes the assignment of items to item groups (InventItemGroupItem), with the item group and its company. The company comes from the item's company field (ItemDataAreaId), which is part of the key. Key: ItemId + ItemDataAreaId.Bulk reassignment via Data managementAfter redesigning its posting setup, a finance team moves 2,000 items to new item groups by importing a spreadsheet of item number, company and item group.
MGCLatticeItemModelGroupAssignmentEntityLatticeItemModelGroupAssignmentsRead/WriteExposes the assignment of items to item model groups (InventModelGroupItem), with the model group and its company. The company comes from the item's company field (ItemDataAreaId), which is part of the key. Key: ItemId + ItemDataAreaId.Data migration, bulk assignmentDuring a data migration, item model groups are assigned in bulk right after the released products are created and before any stock is received.
MGCLatticeItemPurchOrderSetupEntityLatticeItemPurchaseOrderSetupsRead/WriteExposes item purchase order settings (InventItemPurchSetup), both the default row and site-specific rows: purchase lead time and working-days setting, multiple, standard, minimum and maximum order quantities, mandatory site and warehouse, and override and stopped flags. Key: ItemNumber + InventoryDimensionId.Bulk maintenance from supplier data via Data managementEach quarter a procurement team updates purchase lead times and minimum and multiple order quantities for 5,000 items from its supplier catalog through a data project.
MGCLatticeItemSalesOrderSetupEntityLatticeItemSalesOrderSetupsRead/WriteExposes item sales order settings (InventItemSalesSetup), both the default row and site-specific rows: sales lead time and its override, delivery date control, ATP time fence and whether ATP includes planned orders, multiple and standard order quantities, mandatory site and warehouse, and the stopped flag. Key: ItemNumber + InventoryDimensionId.Bulk maintenance via Data managementA sales operations team switches delivery date control to ATP and stops sales of discontinued items by importing updated sales order settings for the affected items.
MGCLatticeItemSalesTaxGroupTaxCodeEntityLatticeItemSalesTaxGroupTaxCodesRead/WriteExposes which sales tax codes belong to each item sales tax group (TaxOnItem), with the exempt code. Key: ItemSalesTaxGroup + TaxCode.Tax configuration migration, bulk maintenanceWhen a new local sales tax takes effect, a tax team adds the new tax code to 30 item sales tax groups in one import instead of editing each group by hand.
MGCLatticeInventoryParametersEntityLatticeInventoryParametersRead/WriteExposes the inventory parameters (InventParameters), one row per legal entity: default unit, default and fallback warehouse, counting journal name, separate ledger accounts by site, end output inventory order, and cost breakdown. Key: InventoryParametersKey.Environment setup, configuration baselines over ODataA rollout team sets the default unit, fallback warehouse and counting journal for twelve new legal entities from its company-creation script.

Warehouse Management​

Warehouse work headers and lines, reservation quantities and location types from warehouse management.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeWarehouseWorkEntityLatticeWarehouseWorksRead-onlyExposes warehouse work headers (WHSWorkTable): work ID, status, work order type (purchase, sales, production, transfer, replenishment, cycle count and others), source order number, shipment, load, wave, work pool, target license plate, container, site, warehouse, work template, priority, creating user and the in-process, closed and canceled date and time. Key: WorkId.Warehouse KPIs, WMS/3PL monitoringA distribution center's labor dashboard reads work every few minutes to track the open picking backlog by wave and how long work takes from start to close.
MGCLatticeWarehouseWorkLineEntityLatticeWarehouseWorkLinesRead-onlyExposes warehouse work lines (WHSWorkLine) with work type, status, location and proposed location, item, work and remaining quantities in work and inventory units, unit, lot ID, load, shipment, work class, zone and in-process and closed date and time, plus batch number, serial number, inventory status and license plate from the line's inventory dimensions (InventDim, outer join). Key: WorkId + LineNumber.Warehouse analytics, traceabilityDuring a recall, a quality team reads the pick lines for the affected shipments to trace which batches and license plates were picked from which locations.
MGCLatticeWarehouseReservationEntityLatticeWarehouseReservationsRead-onlyExposes warehouse management inventory reservations (WHSInventReserve) per item and inventory dimension combination at each level of the reservation hierarchy: available physical, total available, physical reserved and ordered reserved quantities, hierarchy level, site and warehouse. Key: ItemNumber + InventoryDimensionId.Availability sync, reservation analysisAn order-promising service reads reservation and availability quantities at warehouse level to decide which warehouse can still fulfill a large order before it is released.
MGCLatticeWarehouseLocationTypeEntityLatticeWarehouseLocationTypesRead/WriteExposes warehouse location types (WHSLocationType): the location type code and description used to classify warehouse locations. Key: LocationType.Configuration migration, warehouse setupA company opening a new distribution center imports its standard location types (bulk, pick, staging, final shipping) before loading location profiles and locations.

Warehouse Mobile Device Setup​

Warehouse mobile device step configurations and their texts, for moving customized steps and translations between environments.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeMobileDeviceStepEntityLatticeMobileDeviceStepsRead/WriteExposes warehouse mobile device step configurations (WHSMobileAppFlowStep): menu item name, step ID and step icon; a blank menu item name is the step's default configuration. Key: MenuItemName + StepId.Configuration migration between environmentsA warehouse solution team moves its customized step icons from the test environment to production in a data package, followed by the step texts.
MGCLatticeMobileDeviceStepTextEntityLatticeMobileDeviceStepTextsRead/WriteExposes the customized titles, instructions and descriptions of warehouse mobile device steps (WHSMobileAppText) per language, addressed by menu item name and step ID. When a text is inserted or updated, its step is looked up by menu item name and step ID and the row is rejected if the step does not exist, so import the steps first. Key: MenuItemName + StepId + TextType + LanguageId.Configuration migration, translation loadsA warehouse operator with sites in Spain and Poland imports translated step titles and instructions for its receiving and picking menu items.

Production & Projects​

Production journal headers and the ledger postings of project transactions.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeProductionJournalHeaderEntityLatticeProductionJournalHeadersRead-onlyExposes production journal headers (ProdJournalTable): journal number, journal name, journal type (picking list, route card, job card or report as finished), description, posted flag, posted date and time, posting user and number of lines. Key: ProductionJournalNumber.Shop-floor monitoring, DMF exportA plant manager's dashboard lists the route card and picking list journals still unposted at the end of each shift so supervisors can clear them.
MGCLatticeProjectPostedTransactionEntityLatticeProjectPostedTransactionsRead-onlyExposes the ledger postings of project transactions (ProjTransPosting, written for every posted project transaction): project, transaction ID and type (hour, expense, item, fee, on-account and others), project date, category, ledger posting type, amount in accounting currency, quantity, lot ID and funding source record ID. Key: SysRecId.Project cost reporting, BIA PMO reporting tool pulls project postings weekly to report actual cost and revenue by project, category and posting type against budget.

Project Management​

Estimate projects for project accounting, exposed for data migration and ongoing maintenance.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeEstimateProjectEntityLatticeEstimateProjectsRead/WriteExposes estimate projects (ProjWIPTable): estimate project ID, description, cost template, period code, project cost and revenue profile, and the eliminated flag, which cannot be changed through an update. Key: EstimateProjectId.One-time migration via Data managementDuring a migration from a legacy project system, a project accounting team creates 150 estimate projects with their cost templates and period codes in one import.

Sales & Marketing​

Sales and marketing opportunities for pipeline reporting and integration with external CRM tools.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeOpportunityEntityLatticeOpportunitiesRead/WriteExposes sales and marketing opportunities (smmOpportunityTable): opportunity ID, subject, status, sales process, probability, prognosis, sales unit, estimated revenue, and opened and closed dates. The party and owner worker are exposed as record IDs, and the status cannot be changed through an update. Key: OpportunityId.Pipeline reporting, CRM integrationA sales operations team exports open opportunities with subject, estimated revenue and probability every week into its pipeline dashboard.

Retail​

Commerce transactions recorded by stores and other channels.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeRetailTransactionEntityLatticeRetailTransactionsRead-onlyExposes retail transaction headers (RetailTransactionTable) with store, register, receipt number, channel record ID, date and time, operator, customer account, entry status, transaction type, and gross, net, cost and payment amounts with currency. Every transaction type is included (sales, payments, logons, shift operations and others), so filter on TransactionType for sales. Key: SysRecId.Retail analytics, store reconciliationA retail analytics platform pulls the previous day's sales transactions for every store each morning to report sales by register and reconcile receipts against payment amounts.

Human Resources​

Personnel actions recorded against workers.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeWorkerActionEntityLatticeWorkerActionsRead-onlyExposes worker action records (HcmWorkerAction) that tie a worker to a personnel action: worker and personnel action record IDs (not personnel numbers), effective date and time, origination point (hire, transfer, compensation change, termination, leave, position assignment and others), created by, created date and time, and modified by. Shared across companies. Key: ActionState.HR audit, BIAn HR audit team exports worker actions monthly to confirm that each termination and transfer took effect on the approved date and to see who recorded or last changed it.

Document Attachments -- Sales​

Entities for reading and writing document attachments (DocuRef/DocuValue) linked to sales journal types. Each entity links a new attachment to the journal named in the row. Files are imported and returned in the Attachment field (base64 over OData), together with FileName, FileType and a document type whose action is a file.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeSalesConfirmationDocumentAttachmentEntityLatticeSalesConfirmationDocumentAttachmentsRead/WriteExposes document attachments linked to sales confirmation journal records (CustConfirmJour), including file metadata and content.Document management, archive integrationA sales team attaches signed order confirmation PDFs received from customers by importing them through DMF, linking each file to the corresponding confirmation journal record.
MGCLatticeSalesPackingSlipDocumentAttachmentEntityLatticeSalesPackingSlipDocumentAttachmentsRead/WriteExposes document attachments linked to sales packing slip journal records (CustPackingSlipJour), including file metadata and content.Document management, proof of deliveryA logistics provider imports signed proof-of-delivery documents from a mobile scanning app, attaching them to the corresponding packing slip journals in D365.
MGCLatticeSalesInvoiceDocumentAttachmentEntityLatticeSalesInvoiceDocumentAttachmentsRead/WriteExposes document attachments linked to sales invoice journal records (CustInvoiceJour), including file metadata and content.Document management, invoice archivalAn accounts receivable team archives PDF copies of posted sales invoices by importing them as attachments, creating a searchable document trail for audit requests.

Document Attachments -- Purchase​

Entities for reading and writing document attachments (DocuRef/DocuValue) linked to purchase journal types and purchase order lines. Each entity links a new attachment to the journal or order line named in the row. Files are imported and returned in the Attachment field (base64 over OData), together with FileName, FileType and a document type whose action is a file.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticePurchaseOrderConfirmationDocumentAttachmentEntityLatticePurchaseOrderConfirmationDocumentAttachmentsRead/WriteExposes document attachments linked to purchase order confirmation journal records (VendPurchOrderJour), including file metadata and content.Document management, vendor complianceA procurement team imports vendor-signed PO confirmation documents received via email, attaching them to the corresponding confirmation journals for compliance tracking.
MGCLatticePurchaseReceiptsListDocumentAttachmentEntityLatticePurchaseReceiptsListDocumentAttachmentsRead/WriteExposes document attachments linked to purchase receipts list journal records (VendReceiptsListJour), including file metadata and content.Document management, receiving documentationA warehouse receiving team attaches inspection certificates and photos of received goods to the purchase receipts list journal via an automated import.
MGCLatticePurchasePackingSlipDocumentAttachmentEntityLatticePurchasePackingSlipDocumentAttachmentsRead/WriteExposes document attachments linked to purchase packing slip journal records (VendPackingSlipJour), including file metadata and content.Document management, goods receipt recordsA quality control team imports lab test results and certificates of analysis as attachments on vendor packing slips, ensuring traceability documentation is linked to specific receipts.
MGCLatticePurchaseInvoiceDocumentAttachmentEntityLatticePurchaseInvoiceDocumentAttachmentsRead/WriteExposes document attachments linked to purchase invoice journal records (VendInvoiceJour), including file metadata and content.Document management, invoice archivalAn AP department imports scanned vendor invoice images from a document management system, linking each image to the posted purchase invoice for three-way match audit trails.
MGCLatticePurchaseOrderLineDocumentAttachmentEntityLatticePurchaseOrderLineDocumentAttachmentsRead/WriteExposes document attachments linked to purchase order line records (PurchLine), including file metadata and content.Document management, line-level documentationA buyer attaches supplier quotes or specification sheets to individual PO lines for reference during goods receipt and invoice matching.

Document Attachments -- Vendor​

Document attachments (DocuRef) linked to vendor master records; the vendor counterpart of MGCLatticeCustomerDocumentAttachmentEntity.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeVendorDocumentAttachmentEntityLatticeVendorDocumentAttachmentsRead/WriteExposes document attachments linked to vendor master records (VendTable) with vendor account, attachment type, description, notes, restriction, file name and type, and default-attachment flag. Files are imported and returned in the Attachment field (base64 over OData) with FileName and FileType. Key: DocumentId.Document import and export, vendor complianceA supplier-compliance team exports every vendor's attached insurance certificates and tax forms, with file content, to its compliance archive each quarter.

Document Attachments -- Master & Manufacturing​

Entities for reading and writing document attachments linked to master data and manufacturing records. Files are imported and returned in the Attachment field (base64 over OData), together with FileName, FileType and a document type whose action is a file.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeCustomerDocumentAttachmentEntityLatticeCustomerDocumentAttachmentsRead/WriteExposes document attachments linked to customer master records (CustTable), including file metadata and content.Customer documentation, complianceA credit team attaches signed credit applications, tax exemption certificates, and contracts to customer master records for reference during order processing and audits.
MGCLatticeFreeTextInvoiceDocumentAttachmentEntityLatticeFreeTextInvoiceDocumentAttachmentsRead/WriteExposes document attachments linked to free text invoice records (CustInvoiceTable), including file metadata and content.Document management, invoice supportAn AR team attaches supporting documentation (contracts, service agreements) to free text invoices for audit trail and customer dispute resolution.
MGCLatticeProjectDocumentAttachmentEntityLatticeProjectDocumentAttachmentsRead/WriteExposes document attachments linked to project records (ProjTable), including file metadata and content.Project documentation, complianceA project manager attaches scope documents, change orders, and status reports to project records for centralized project documentation.
MGCLatticeProductionOrderDocumentAttachmentEntityLatticeProductionOrderDocumentAttachmentsRead/WriteExposes document attachments linked to production order records (ProdTable), including file metadata and content.Manufacturing documentation, qualityA production supervisor attaches work instructions, quality check photos, and deviation reports to production orders for traceability.
MGCLatticeQualityOrderDocumentAttachmentEntityLatticeQualityOrderDocumentAttachmentsRead/WriteExposes document attachments linked to quality order records (InventQualityOrderTable), including file metadata and content.Quality management, complianceA QA team attaches test results, certificates of analysis, and non-conformance reports to quality orders as part of the quality management workflow.

Document Attachments -- Transfer​

Entities for reading and writing document attachments linked to transfer order records. Files are imported and returned in the Attachment field (base64 over OData), together with FileName, FileType and a document type whose action is a file.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeTransferOrderDocumentAttachmentEntityLatticeTransferOrderDocumentAttachmentsRead/WriteExposes document attachments linked to transfer order header records (InventTransferTable), including file metadata and content.Warehouse documentation, inter-site transfersA logistics coordinator attaches customs documentation and shipping manifests to transfer orders moving goods between warehouses in different countries.
MGCLatticeTransferOrderLineDocumentAttachmentEntityLatticeTransferOrderLineDocumentAttachmentsRead/WriteExposes document attachments linked to transfer order line records (InventTransferLine), including file metadata and content.Line-level transfer documentationA warehouse manager attaches item-specific handling instructions or hazmat documentation to individual transfer order lines.

General-Purpose Document Attachments​

An internal entity over DocuRef attachment records on any table. It is not public and not enabled for Data management, so it has no OData collection: the purchase order confirmation, purchase packing slip and purchase receipts list document attachment entities use it as a data source.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeDocuRefEntityNone (not public)Read/WriteDocuRef records on any table, addressed by table ID and record ID. Generates the DocumentId, accepts file content in a container field, validates document types, handles attachments in other companies, and restricts updates to Notes, Name and Restriction.Data source of other attachment entitiesThe purchase receipts list document attachment entity reads its attachment rows through this entity.

Integration Monitoring​

Read-only views of Lattice integration activity for monitoring and support tools: asynchronous operation tracking, file ingestion logs, the dead-letter queue, individual service calls, daily call statistics and request-level idempotency. All six are shared across legal entities and available through OData only; query examples for the service entities are in the API reference.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeAsyncOperationTrackingEntityLatticeAsyncOperationTrackingRecordsRead-onlyExposes one tracking record per operation submitted through the Lattice asynchronous operation service: tracking, request and correlation IDs, service and operation name, legal entity, user, status (for example Queued, Processing, Succeeded or Failed), submitted and completed times, resulting document ID, message, error details, request payload and batch job ID. Key: TrackingId.Status polling, operations dashboardsAn integration platform submits a month-end depreciation run asynchronously, then polls the tracking record by its TrackingId until the status is Succeeded or Failed.
MGCLatticeFileIngestLogEntityLatticeFileIngestLogsRead-onlyExposes file ingestion log entries (MGCLatticeFileIngestLog): level (Info, Warning or Error), connection ID, bundle (ingested file) and segment (record) IDs, message, details and the time the entry was logged (LoggedDateTime). Key: FileIngestLogRecId (record ID).Operations monitoring and alertingAfter each ingestion run, an operations team's monitoring job reads the new Error-level entries and raises an alert naming the connection and file bundle that failed.
MGCLatticeIntegrationDeadLetterEntityLatticeIntegrationDeadLettersRead-onlyExposes the integration dead-letter queue (MGCLatticeIntegrationDeadLetter), which holds failed asynchronous operations and file ingestion items: source, service and operation, request ID, original and edited payloads, error code, category and message, retryable flag, attempt count and maximum, next retry, first failure and last attempt times, status (for example Retrying, Parked, Requeued or Reprocessed) and the user who last acted on it. Key: DeadLetterId.Operations monitoring and alertingA support team's dashboard shows dead-letter depth by service, lists parked items that need manual repair, and alerts when items reach their maximum retry attempts.
MGCLatticeServiceCallLogEntityLatticeServiceCallLogsRead-onlyExposes the Lattice service call log (MGCLatticeServiceCallLog): one row per service operation call with service and operation, legal entity, user, start and end time, duration in milliseconds, success flag, status, message, document ID, request, correlation and execution IDs, machine-readable error code, and a preview flag marking posting-preview (run-and-abort) calls. Rows are kept according to each operation's logging level (every call by default, or failures only, or none). Key: RequestId + ExecutionId.Integration monitoring, SLA reportingAn integration support team's monitoring tool polls for failed calls every five minutes and opens a ticket carrying the request and correlation IDs, so the failing message can be traced end to end.
MGCLatticeServiceCallStatisticsEntityLatticeServiceCallStatisticsRead-onlyExposes daily per-operation rollups of the service call log (MGCLatticeServiceCallStatistics): call, success and failure counts, total, minimum, maximum and average duration in milliseconds, and last call time, per service, operation and UTC date. Filled by the service call statistics rollup batch job, which rebuilds a trailing window (30 days by default) from the call log, so it counts only the calls the log kept. Key: ServiceName + OperationName + StatisticsDate.Integration observability, trend dashboardsAn operations dashboard charts daily call volume, failure rate and average duration for each posting operation to spot an integration that is slowing down or failing more often.
MGCLatticeServiceIdempotencyLogEntityLatticeServiceIdempotencyLogsRead-onlyExposes the idempotency log (MGCLatticeServiceIdempotencyLog): one row per request ID a Lattice service has claimed, with correlation ID, service, operation, success flag, document ID, completion time, claim status and claim time, the legal entity and table of the document created inside the claim, and the reconciliation state set by the idempotency reconciliation sweep. A completed request shows Success = Yes, status Succeeded and a completion time, a request still in progress shows status Processing and no completion time, and a failed request's row is removed so the request can be retried with the same request ID. Key: RequestId.Retry handling, duplicate preventionAfter a timeout, a middleware retry handler looks up its request ID before resubmitting a posting; if the request already completed, it records the returned document ID instead of posting again.

Data Management & Migration Planning​

Entities that set up data management recurring data jobs from a data package or script, show how each job is doing and what happened to its messages, and a snapshot of which tables hold data and which data entities read them. Import order and constraints for the recurring data job entities are in the API reference, and the health rules in Recurring data job health entities; the coverage analysis is described in Table data and entity coverage.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeRecurringDataJobEntityLatticeRecurringDataJobsRead/WriteExposes data management recurring data jobs (IntegrationActivityTable, the records behind Manage recurring data jobs): data project, direction, data source type, message processing options and state. The packed schedule is projected into recurrence and monitoring fields (unit, interval, start, end condition, time zone) and repacked on write, keeping pattern detail these fields do not express. Setting State to Active runs the platform scheduler and setting it to Inactive stops the job's batch jobs, as do the bound OData actions Activate and Deactivate; a job is always created inactive, and activation fails unless the job has a recurrence and at least one enabled client application. Shared across companies. Key: Name.Configuration as code, environment setupAn integration team keeps its recurring data jobs in source control and, after each environment refresh, imports the jobs, then their client authorizations, and activates them with the Activate action instead of recreating them by hand.
MGCLatticeRecurringDataJobClientEntityLatticeRecurringDataJobClientsRead/WriteExposes the client applications authorized to submit messages to a recurring data job (IntegrationClientMapTable), exchanging the job by name instead of by record ID: JobName is resolved to the job on write, and a name that matches no job fails the row. New rows default to enabled, and a second authorization of the same client for the same job is rejected. Shared across companies. Key: JobName + ClientId.Configuration as code, integration securityAfter importing its nightly customer-import job, an integration team imports the Microsoft Entra application ID of its middleware as an enabled client so the job can be activated.
MGCLatticeRecurringJobHealthEntityLatticeRecurringJobHealthsRead/WriteExposes the health of each recurring data job: state (Inactive, Healthy, Warning, Failing or Broken), the previous state and when it changed, the reasons (worst first), the signal values it was derived from (waiting messages and the oldest one, failed and partially processed messages in the failure window, stuck messages, last message, enabled clients, mapping errors on the data project, the batch jobs and their status), and the job's own thresholds and alert switch. Only the thresholds and the alert switch can be written; the bound OData action Refresh evaluates one job now and RefreshAll evaluates every job. Enabled for Data management, so thresholds travel with the configuration. Shared across companies. Key: JobName.Integration monitoring, alerting, configuration as codeA monitoring tool reads the jobs whose health is Failing or Broken every quarter of an hour and opens a ticket with the reasons, and the integration team keeps each job's silence period in source control with its recurring data jobs.
MGCLatticeRecurringJobMessageEntityLatticeRecurringJobMessagesRead-onlyExposes the messages of recurring data jobs: job, direction, entity, status (for example Enqueued, Processed or ProcessedWithErrors), enqueue and processing times, user, company, retries, error details, external correlation ID, and the data management execution that processed the message with its status and staging and target error counts. Shared across companies. Key: MessageId.Integration monitoring, troubleshootingA support engineer filters the messages of a job processed with errors, then reads the failed rows of each execution through the data management execution APIs.
MGCLatticeTableEntityCoverageEntityLatticeTableEntityCoveragesRead-onlyExposes the table data and entity coverage snapshot (MGCLatticeTableEntityCoverageSnapshot): per analyzed table and run, the row count (current company for per-company tables, 0 when the run skipped counting), shared or per-company scope, table group, owning model, whether any data entity reads the table through its data sources, and how many and which entities do (the name list is cut at 1,000 characters; the count is exact). Each Analyze run adds a new SnapshotId, stored in the company where the analysis ran. Key: SnapshotId + TableName + CompanyId.Migration planning, gold-configuration reviewBefore a migration, a data team exports the latest snapshot and filters to tables that hold rows but have no covering entity, to size the custom entities it must build.

Set-Based Import Entities​

Fifteen import-only entities that load journals and high-volume masters with data management's Set-based processing: each rule refuses all the rows that break it in one statement, and the good rows are written with a handful of statements in one transaction. Microsoft ships set-based processing for only the general journal, fixed asset journal, budget register and a few reference entities; these cover the rest of the journal types. They are not published to OData, they are registered set-based by default, and they refuse row-by-row writes. Columns, rules and defaults per entity are in Set-based imports.

Entity NameTargetR/WDescriptionBest Used ForScenario
MGCLatticeSetBasedInventoryJournalLineEntityInventJournalTransImportMovement, adjustment, transfer, counting, project and ownership change journal lines; new journals per grouping key or lines added to an open journal. Each line still gets its standard estimated inventory transactions.Store and warehouse feeds, count uploadsA retailer uploads the nightly count of 600 stores as one file and gets one counting journal per store, ready to post.
MGCLatticeSetBasedCustomerInvoiceJournalLineEntityLedgerJournalTransImportCustomer invoice lines of general journals.Billing from external systems, migration of open receivablesA subscription billing platform delivers a month's customer invoices as one import into a general journal.
MGCLatticeSetBasedCustomerPaymentJournalLineEntityLedgerJournalTransImportCustomer payment journal lines.Lockbox and bank file loadsA treasury team loads the morning lockbox file of 20,000 receipts into customer payment journals.
MGCLatticeSetBasedVendorPaymentJournalLineEntityLedgerJournalTransImportVendor payment journal lines.Payment runs from an external AP systemAn outsourced AP provider returns its payment run as a file that becomes vendor payment journals.
MGCLatticeSetBasedVendorInvoiceJournalLineEntityLedgerJournalTransImportVendor invoice journal and invoice register lines.Invoice capture, migration of open payablesAn invoice scanning service delivers a day's invoices as one invoice register import.
MGCLatticeSetBasedProjectExpenseJournalLineEntityLedgerJournalTrans + LedgerJournalTrans_ProjectImportProject expense (ledger Cost) journal lines with their project line.Expense feeds charged to projectsA field-service company loads card transactions charged to projects every night.
MGCLatticeSetBasedProjectJournalLineEntityProjJournalTransImportProject hour and fee journal lines.Timesheet feeds from an external time systemA consultancy loads 50,000 weekly timesheet hours from its time-tracking tool into hour journals.
MGCLatticeSetBasedTradeAgreementJournalLineEntityPriceDiscAdmTransImportPrice, line, multiline and total discount agreement journal lines.Price list loadsA distributor loads the yearly price list of 200,000 item prices into one trade agreement journal.
MGCLatticeSetBasedProductionPickingListLineEntityProdJournalBOMImportProduction picking list journal lines.MES consumption feedsA plant's MES reports material consumption for every order of the shift.
MGCLatticeSetBasedProductionReportAsFinishedLineEntityProdJournalProdImportReport as finished journal lines.MES output feedsThe MES reports finished quantities per order at the end of each shift.
MGCLatticeSetBasedProductionRouteCardLineEntityProdJournalRouteImportRoute card and job card journal lines.Shop floor time feedsA shop floor terminal system sends operation hours and good quantities per job.
MGCLatticeSetBasedDemandForecastLineEntityForecastSalesImportDemand forecast lines, inserted or updated by entry number.Forecast loads from a planning toolA demand planning tool republishes 300,000 forecast lines each week.
MGCLatticeSetBasedBomLineEntityBOMImportLines of existing BOMs (insert only).Engineering data migrationAn engineering team migrates BOM structures from its PLM system.
MGCLatticeSetBasedBankStatementLineEntityBankStmtISOReportEntryImportLines added to an existing open bank statement.High-volume bank statementsA payment processor's daily statement with tens of thousands of lines is added to the open statement.
MGCLatticeSetBasedAssetBookEntityAssetBookImportFixed asset books, inserted or updated while not acquired.Fixed asset migrationA migration loads the books of 40,000 assets before their acquisitions are posted.

Cross-Reference Keys​

One entity per record kind for the keys other systems use for D365 records. Each row is one external system's key for one record: the record's business key plus ExternalSystem form the entity key, and ExternalKey is the value. All 33 are company-specific, writable and enabled for OData and Data management, each with its own staging table. The external systems themselves are maintained through LatticeExternalSystems (first row), which is shared across companies. An empty ExternalKey clears the key, and a business key that names no record is refused. Setup, security and the rules are in Cross-reference keys.

Entity NameOData CollectionR/WDescriptionBest Used ForScenario
MGCLatticeExternalSystemEntityLatticeExternalSystemsRead/WriteThe external systems the keys belong to (MGCLatticeExternalSystem), shared across companies. Key: ExternalSystemId. A system still used by a key or a setting cannot be deleted.Registering a source systemAn integration registers its system (for example CRM) once, before it writes any key for it.
MGCLatticeCustomerCrossReferenceEntityLatticeCustomerCrossReferencesRead/WriteExternal systems' keys for customers (CustTable). Key: CustomerAccount, ExternalSystem.Customer key mappingA CRM integration loads each account's CRM id so later orders can name the customer by that id.
MGCLatticeVendorCrossReferenceEntityLatticeVendorCrossReferencesRead/WriteExternal systems' keys for vendors (VendTable). Key: VendorAccountNumber, ExternalSystem.Vendor key mappingA supplier portal stores its supplier number against each D365 vendor account.
MGCLatticeReleasedProductCrossReferenceEntityLatticeReleasedProductCrossReferencesRead/WriteExternal systems' keys for released products (InventTable). Key: ItemNumber, ExternalSystem.Item key mapping, data migrationA legacy ERP's item codes are imported with the released products so migrated open orders resolve.
MGCLatticeProductVariantCrossReferenceEntityLatticeProductVariantCrossReferencesRead/WriteExternal systems' keys for product variants (InventDimCombination). Key: ItemNumber, ProductConfigurationId, ProductSizeId, ProductColorId, ProductStyleId, ProductVersionId, ExternalSystem; unused dimensions are left empty.Variant (SKU) key mappingA marketplace's SKU for each size and color is stored against the variant.
MGCLatticeBatchCrossReferenceEntityLatticeBatchCrossReferencesRead/WriteExternal systems' keys for batches (InventBatch). Key: ItemNumber, BatchNumber, ExternalSystem.Lot key mappingA supplier's lot numbers are kept against the D365 batches received from them.
MGCLatticeTransferOrderCrossReferenceEntityLatticeTransferOrderCrossReferencesRead/WriteExternal systems' keys for transfer orders (InventTransferTable). Key: TransferOrderNumber, ExternalSystem.3PL order mappingA 3PL's shipment number is stored against the transfer order it ships.
MGCLatticeTransferOrderLineCrossReferenceEntityLatticeTransferOrderLineCrossReferencesRead/WriteExternal systems' keys for transfer order lines (InventTransferLine). Key: TransferOrderNumber, LineNumber, ExternalSystem.3PL line mappingThe 3PL's line ids let its ship and receive confirmations name the lines.
MGCLatticeSalesOrderCrossReferenceEntityLatticeSalesOrderCrossReferencesRead/WriteExternal systems' keys for sales orders (SalesTable). A return order number is refused. Key: SalesOrderNumber, ExternalSystem.Order key mappingA web shop's order number is stored against the sales order it created.
MGCLatticeSalesOrderLineCrossReferenceEntityLatticeSalesOrderLineCrossReferencesRead/WriteExternal systems' keys for sales order lines (SalesLine). Key: SalesOrderNumber, LineNumber, ExternalSystem.Order line mappingThe web shop's order line ids are kept against the sales order lines.
MGCLatticeReturnOrderCrossReferenceEntityLatticeReturnOrderCrossReferencesRead/WriteExternal systems' keys for return orders (SalesTable). A sales order number is refused. Key: ReturnOrderNumber, ExternalSystem.Return (RMA) key mappingA returns portal's RMA number is stored against the return order.
MGCLatticeReturnOrderLineCrossReferenceEntityLatticeReturnOrderLineCrossReferencesRead/WriteExternal systems' keys for return order lines (SalesLine). Key: ReturnOrderNumber, LineNumber, ExternalSystem.Return line mappingThe returns portal's line ids are kept against the return order lines.
MGCLatticeSalesQuotationCrossReferenceEntityLatticeSalesQuotationCrossReferencesRead/WriteExternal systems' keys for sales quotations (SalesQuotationTable). Key: SalesQuotationNumber, ExternalSystem.Quote key mappingA CPQ tool's quote id is stored against the sales quotation.
MGCLatticeSalesQuotationLineCrossReferenceEntityLatticeSalesQuotationLineCrossReferencesRead/WriteExternal systems' keys for sales quotation lines (SalesQuotationLine). Key: SalesQuotationNumber, LineNumber, ExternalSystem.Quote line mappingThe CPQ tool's line ids are kept against the quotation lines.
MGCLatticeFreeTextInvoiceCrossReferenceEntityLatticeFreeTextInvoiceCrossReferencesRead/WriteExternal systems' keys for free text invoices (CustInvoiceTable). Key: InvoiceIdentifier (the invoice record ID), ExternalSystem.Billing key mappingA billing platform's invoice id is stored against the free text invoice it created.
MGCLatticeFreeTextInvoiceLineCrossReferenceEntityLatticeFreeTextInvoiceLineCrossReferencesRead/WriteExternal systems' keys for free text invoice lines (CustInvoiceLine). Key: ParentRecId, LineNumber, ExternalSystem.Billing line mappingThe billing platform's charge ids are kept against the invoice lines.
MGCLatticeSalesAgreementCrossReferenceEntityLatticeSalesAgreementCrossReferencesRead/WriteExternal systems' keys for sales agreements (SalesAgreementHeader). Key: SalesAgreementId, ExternalSystem.Contract key mappingA contract management system's contract number is stored against the sales agreement.
MGCLatticeSalesAgreementLineCrossReferenceEntityLatticeSalesAgreementLineCrossReferencesRead/WriteExternal systems' keys for sales agreement lines (AgreementLine). Key: SalesAgreementId, LineNumber, ExternalSystem.Contract line mappingThe contract system's line ids are kept against the agreement lines.
MGCLatticePurchaseOrderCrossReferenceEntityLatticePurchaseOrderCrossReferencesRead/WriteExternal systems' keys for purchase orders of every type, including returns (PurchTable). Key: PurchaseOrderNumber, ExternalSystem.Supplier order mappingA supplier's sales order number is stored against the purchase order it fulfils.
MGCLatticePurchaseOrderLineCrossReferenceEntityLatticePurchaseOrderLineCrossReferencesRead/WriteExternal systems' keys for purchase order lines (PurchLine). Key: PurchaseOrderNumber, LineNumber, ExternalSystem.Supplier line mappingThe supplier's line ids are kept against the purchase order lines.
MGCLatticePurchaseRequisitionCrossReferenceEntityLatticePurchaseRequisitionCrossReferencesRead/WriteExternal systems' keys for purchase requisitions (PurchReqTable), stored per legal entity. Key: RequisitionNumber, ExternalSystem.Requisition key mappingAn e-procurement tool's request id is stored against the purchase requisition.
MGCLatticePurchaseRequisitionLineCrossReferenceEntityLatticePurchaseRequisitionLineCrossReferencesRead/WriteExternal systems' keys for purchase requisition lines (PurchReqLine). Key: RequisitionNumber, RequisitionLineNumber, ExternalSystem.Requisition line mappingThe e-procurement tool's line ids are kept against the requisition lines.
MGCLatticePurchaseAgreementCrossReferenceEntityLatticePurchaseAgreementCrossReferencesRead/WriteExternal systems' keys for purchase agreements (PurchAgreementHeader). Key: PurchaseAgreementId, ExternalSystem.Contract key mappingA sourcing tool's contract number is stored against the purchase agreement.
MGCLatticePurchaseAgreementLineCrossReferenceEntityLatticePurchaseAgreementLineCrossReferencesRead/WriteExternal systems' keys for purchase agreement lines (AgreementLine). Key: PurchaseAgreementId, LineNumber, ExternalSystem.Contract line mappingThe sourcing tool's line ids are kept against the agreement lines.
MGCLatticeFixedAssetCrossReferenceEntityLatticeFixedAssetCrossReferencesRead/WriteExternal systems' keys for fixed assets (AssetTable). Key: FixedAssetNumber, ExternalSystem.Asset tag mappingAn asset tracking system's tag numbers are stored against the fixed assets.
MGCLatticeProjectCrossReferenceEntityLatticeProjectCrossReferencesRead/WriteExternal systems' keys for projects (ProjTable). Key: ProjectId, ExternalSystem.Project key mappingA PSA tool's project code is stored against the D365 project so time entries can name it.
MGCLatticeProjectContractCrossReferenceEntityLatticeProjectContractCrossReferencesRead/WriteExternal systems' keys for project contracts (ProjInvoiceTable). Key: ProjectContractId, ExternalSystem.Contract key mappingA CRM's opportunity contract id is stored against the project contract.
MGCLatticeLedgerJournalCrossReferenceEntityLatticeLedgerJournalCrossReferencesRead/WriteExternal systems' keys for journals (LedgerJournalTable). Key: JournalBatchNumber, ExternalSystem.Journal batch mappingA payroll system's batch number is stored against the general journal it produced.
MGCLatticeLedgerJournalLineCrossReferenceEntityLatticeLedgerJournalLineCrossReferencesRead/WriteExternal systems' keys for journal lines (LedgerJournalTrans). Key: JournalBatchNumber, LineNumber, ExternalSystem.Journal line mappingThe payroll system's entry ids are kept against the journal lines.
MGCLatticeProductionOrderCrossReferenceEntityLatticeProductionOrderCrossReferencesRead/WriteExternal systems' keys for production orders (ProdTable). Key: ProductionOrderNumber, ExternalSystem.MES order mappingAn MES work order number is stored against the production order.
MGCLatticeBOMCrossReferenceEntityLatticeBOMCrossReferencesRead/WriteExternal systems' keys for bills of materials (BOMTable). Key: BOMId, ExternalSystem.PLM key mappingA PLM system's BOM number is stored against the D365 BOM.
MGCLatticeBOMVersionCrossReferenceEntityLatticeBOMVersionCrossReferencesRead/WriteExternal systems' keys for BOM versions (BOMVersion). Key: ManufacturedItemNumber, BOMId, SequenceId, ExternalSystem.PLM revision mappingThe PLM revision id is stored against the BOM version it released.
MGCLatticeRouteCrossReferenceEntityLatticeRouteCrossReferencesRead/WriteExternal systems' keys for routes (RouteTable). Key: RouteId, ExternalSystem.Routing key mappingAn MES routing id is stored against the D365 route.
MGCLatticeRouteVersionCrossReferenceEntityLatticeRouteVersionCrossReferencesRead/WriteExternal systems' keys for route versions (RouteVersion). Key: Microsoft's route version key (ItemNumber, RouteId, ProductionSiteId, the product dimensions, IsActive, ValidFromDate, ValidFromQuantity) plus ExternalSystem; a key matching two versions is refused.Routing revision mappingThe MES routing revision is stored against the route version it applies to.

Composite Entities​

Composite entities bundle related header and line entities into a single DMF-compatible package for atomic import/export operations. Composite entities are used exclusively through the Data Management Framework and are not available via OData.

Composite EntityChild EntitiesR/WDescriptionBest Used ForScenario
MGCLatticeCustomerPackingSlipsEntityMGCLatticeCustomerPackingSlipJournalHeaderEntity, MGCLatticeCustomerPackingSlipJournalLinesEntityRead-onlyCombines customer packing slip journal headers with their associated line records into a single exportable package.DMF export, data migrationA company migrating to a new analytics platform exports all historical customer packing slips as a single data package, preserving the header-to-line relationship for shipment analysis.

OData Navigation Properties​

Seven relations between Lattice entities are published as OData navigation properties, so a client can read a header with its lines in one request, for example GET /data/LatticePaymentRequests?$expand=PaymentRequestLines. Each relation has a navigation property on both sides: from the child entity to its parent, and from the parent to its children.

Child entityNavigation to the parentParent entityNavigation to the children
MGCLatticeCustomerPackingSlipJournalLinesEntityCustomerPackingSlipJournalHeaderMGCLatticeCustomerPackingSlipJournalHeaderEntityCustomerPackingSlipJournalLines
MGCLatticeFreeTextInvoiceTemplateLineEntityFreeTextInvoiceTemplateMGCLatticeFreeTextInvoiceTemplateEntityFreeTextInvoiceTemplateLines
MGCLatticePaymentRequestLineEntityPaymentRequestMGCLatticePaymentRequestEntityPaymentRequestLines
MGCLatticePurchaseOrderLineDocumentAttachmentEntityPurchaseOrderLineMGCLatticePurchaseOrderLineEntityPurchaseOrderLineDocumentAttachments
MGCLatticeTransferOrderLineDocumentAttachmentEntityTransferOrderDocumentAttachmentMGCLatticeTransferOrderDocumentAttachmentEntityTransferOrderLineDocumentAttachments
MGCLatticeWarehouseWorkLineEntityWarehouseWorkMGCLatticeWarehouseWorkEntityWarehouseWorkLines
MGCLatticeSalesOrderLineChargeEntitySalesOrderLineMGCLatticeSalesOrderLineEntitySalesOrderLineCharges

Summary Statistics​

MetricCount
Total data entities149
Read-only entities46
Read/Write entities103
Composite entities1
Enabled for Data management (each with a staging table)131
Data management only (the set-based import entities)15
OData only17
Internal (neither OData nor Data management)1
Entities with X++ business logic83
Security privileges granting entity access212
Security duties that group them7 (MGCLatticeDataEntitiesView, MGCLatticeDataEntitiesMaintain, MGCLatticeIntegrationServiceMonitoringDuty, MGCLatticeIntegrationServiceQueryDuty, MGCLatticeIntegrationServiceHighRiskDuty, MGCLatticeCrossReferenceViewDuty, MGCLatticeCrossReferenceMaintainDuty)

See Security for the privileges and duties, and the data entity reference for each entity's fields and key.

Entities with X++ Business Logic​

The following entities contain custom X++ methods (for example resolving journal references or accounts, handling file attachments, packing schedules, or resolving cross-reference keys); the other 66 are defined entirely in metadata. The 15 set-based import entities (not listed one by one) hand each data management execution to their import class through copyCustomStagingToTarget and refuse row-by-row writes. The 15 document attachment entities and the vendor contact person entity listed below also resolve their ExternalSystem + ...ExternalKey fields before a row is written:

  • MGCLatticeBatchCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeBOMCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeBOMVersionCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeCustomerContactInfoEntity -- Resolves party number and location ID from customer account
  • MGCLatticeCustomerContactPersonEntity -- Sets the associated party from the customer account (refusing a different party), finds the existing contact person under the account's party in the row's legal entity for updates, skips ContactPersonId validation
  • MGCLatticeCustomerCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeCustomerDocumentAttachmentEntity -- Loads attachment file content via postLoad from DocuRefEntity
  • MGCLatticeCustomerTransactionEntity -- Computes the remaining amounts in accounting and transaction currency in SQL (computed columns)
  • MGCLatticeDocuRefEntity -- Generates DocumentId, handles file upload via container field, enforces update whitelist (Notes, Name, Restriction), validates document types, manages cross-company context
  • MGCLatticeFixedAssetCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeFreeTextInvoiceCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeFreeTextInvoiceDocumentAttachmentEntity -- Loads attachment file content via postLoad, resolves CustInvoiceTable reference
  • MGCLatticeFreeTextInvoiceLineCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeFreeTextInvoiceTemplateLineEntity -- Resolves the project from ExternalSystem + ProjectIdExternalKey before the line is written, links a new line to the existing template its TemplateName names (never writing the template), and refuses an unknown template name
  • MGCLatticeLedgerJournalCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeLedgerJournalLineCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeMobileDeviceStepTextEntity -- Looks up the mobile device step by menu item name and step ID when a text is inserted or updated, and rejects the row if the step does not exist
  • MGCLatticePaymentRequestEntity -- Resolves the customer or vendor account from ExternalSystem + AccountNumberExternalKey (by AccountType) before the request is written
  • MGCLatticePeriodCloseResourceEntity -- Links a new resource to the existing worker its personnel number names, never writes the worker, and refuses an unknown personnel number
  • MGCLatticePrintManagementSettingEntity -- Computes the customer or vendor account override from the record ID in SQL (so it can be part of the key) and resolves it back to a record ID when rows are created, limits the entity to module-level and account-level settings, unpacks the print destination on read and repacks it when rows are created or the destination is changed
  • MGCLatticeProductionOrderCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeProductionOrderDocumentAttachmentEntity -- Loads attachment file content via postLoad from DocuRefEntity
  • MGCLatticeProductVariantCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeProjectContractCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeProjectCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeProjectDocumentAttachmentEntity -- Loads attachment file content via postLoad from DocuRefEntity
  • MGCLatticePurchaseAgreementCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticePurchaseAgreementLineCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticePurchaseInvoiceDocumentAttachmentEntity -- Resolves VendInvoiceJour reference for attachment linking
  • MGCLatticePurchaseOrderConfirmationDocumentAttachmentEntity -- Resolves VendPurchOrderJour reference for attachment linking
  • MGCLatticePurchaseOrderCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticePurchaseOrderLineCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticePurchaseOrderLineDocumentAttachmentEntity -- Loads attachment file content via postLoad from DocuRefEntity
  • MGCLatticePurchaseOrderLineEntity -- Resolves the purchase order and item from ExternalSystem + PurchaseOrderNumberExternalKey / ItemNumberExternalKey before the line is written, and sets the line's inventory dimension from the receiving site and warehouse the row sends
  • MGCLatticePurchasePackingSlipDocumentAttachmentEntity -- Resolves VendPackingSlipJour reference for attachment linking
  • MGCLatticePurchaseReceiptsListDocumentAttachmentEntity -- Resolves VendReceiptsListJour reference for attachment linking
  • MGCLatticePurchaseRequisitionCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticePurchaseRequisitionLineCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeQualityOrderDocumentAttachmentEntity -- Loads attachment file content via postLoad from DocuRefEntity
  • MGCLatticeRecurringDataJobClientEntity -- Resolves the job name to the stored job record, defaults new rows to enabled, rejects unknown jobs and duplicate client authorizations
  • MGCLatticeRecurringDataJobEntity -- Projects and repacks the recurrence and monitoring schedules, validates name, data project and end condition, starts or stops the job through the platform scheduler when State changes, and provides the Activate and Deactivate OData actions
  • MGCLatticeRecurringJobHealthEntity -- Refuses a row for an unknown job and every delete, and provides the Refresh and RefreshAll OData actions, which evaluate the jobs' health and raise the health-changed business event
  • MGCLatticeRecurringJobMessageEntity -- Sums the staging and target error counts of the message's execution in SQL (computed columns)
  • MGCLatticeReleasedProductCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeReturnOrderCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeReturnOrderLineCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeRouteCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeRouteVersionCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeSalesAgreementCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeSalesAgreementLineCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeSalesConfirmationDocumentAttachmentEntity -- Resolves CustConfirmJour reference for attachment linking
  • MGCLatticeSalesInvoiceDocumentAttachmentEntity -- Resolves CustInvoiceJour reference for attachment linking
  • MGCLatticeSalesOrderCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeSalesOrderLineChargeEntity -- Requires a charge code on insert, creates charges at line level, limits change tracking to customer charges, and opens the sales order line from a staging record
  • MGCLatticeSalesOrderLineCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeSalesOrderLineEntity -- Resolves the sales order and item from ExternalSystem + SalesOrderNumberExternalKey / ItemNumberExternalKey before the line is written, sets the line's inventory dimension from the shipping site and warehouse the row sends, and keeps the lot ID a new row sends
  • MGCLatticeSalesPackingSlipDocumentAttachmentEntity -- Resolves CustPackingSlipJour reference for attachment linking
  • MGCLatticeSalesQuotationCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeSalesQuotationLineCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeTransferOrderCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeTransferOrderDocumentAttachmentEntity -- Loads attachment file content via postLoad from DocuRefEntity
  • MGCLatticeTransferOrderLineCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeTransferOrderLineDocumentAttachmentEntity -- Loads attachment file content via postLoad from DocuRefEntity
  • MGCLatticeVendorContactInfoEntity -- Resolves party number and location ID from vendor account
  • MGCLatticeVendorContactPersonEntity -- Sets the associated party from the vendor account (refusing a different party), finds the existing contact person under the account's party in the row's legal entity for updates, skips DisplayNameSequencePatternName validation
  • MGCLatticeVendorCrossReferenceEntity -- Stamps the record kind and target record when a key is written, clears the key when ExternalKey is empty, and refuses a business key that names no record
  • MGCLatticeVendorDocumentAttachmentEntity -- Loads attachment file content via postLoad from DocuRefEntity
  • MGCLatticeVendorTransactionEntity -- Computes the remaining amounts in accounting and transaction currency in SQL (computed columns)

Note: MGCLatticeInventOnHandEntity and MGCLatticeReleasedProductEntity contain no custom X++ logic; they are read-only with explicit field projections (DynamicFields=No) and baked-in range filters defined entirely in entity metadata. The eight split trade-agreement feeds differ from MGCLatticeTradeAgreementEntity only by their baked-in range filters.