Ax 40 Data Model

158
Documentation Dynamics AX 4.0 data model overview Prepared for Microsoft Corporation Wednesday, 24 September 2008 Version .1 Draft Prepared by Fred Viidul MBS Consultant [email protected] Contributors [Document Contributors]

Transcript of Ax 40 Data Model

Documentation Dynamics AX 4.0 data model overview

Prepared for

Microsoft Corporation

Wednesday, 24 September 2008

Version .1 Draft

Prepared by

Fred Viidul

MBS Consultant

[email protected]

Contributors

[Document Contributors]

Prepared for Microsoft Corporation

The information contained in this document represents the current view of Microsoft Corporation on the issues discussed as of the date of publication and is subject to change at any time without notice to you. This document and its contents are provided AS IS without warranty of any kind, and should not be interpreted as an offer or commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information presented. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT.

The descriptions of other companies’ products in this document, if any, are provided only as a convenience to you. Any such references should not be considered an endorsement or support by Microsoft. Microsoft cannot guarantee their accuracy, and the products may change over time. Also, the descriptions are intended as brief highlights to aid understanding, rather than as thorough coverage. For authoritative descriptions of these products, please consult their respective manufacturers.

This deliverable is provided AS IS without warranty of any kind and MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, OR OTHERWISE.

All trademarks are the property of their respective companies.

©2005 Microsoft Corporation. All rights reserved.

Microsoft and Windows are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries.

The names of actual companies and products mentioned herein may be the trademarks of their respective owners.

Page ii Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

Prepared for Microsoft Corporation

Page iii Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

Revision and Signoff Sheet

Change Record

Date Author Version Change reference

.1 Initial draft for review/discussion

Reviewers

Name Version approved Position Date

Prepared for Microsoft Corporation

Page iv Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

Table of Contents

1  Executive Summary .................................................................................................................... 1 

Business need for the project ........................................................................................................... 1 

Documentation approach ................................................................................................................. 1 

Documentation areas ....................................................................................................................... 1 

2  Introduction ................................................................................................................................. 2 

2.1  Data structure description principles ...................................................................................... 2 

2.2  Dynamics AX overall data structure information ..................................................................... 2 2.2.1  Currencies ........................................................................................................................ 2 2.2.2  Table naming .................................................................................................................... 2 2.2.3  Data area ID ..................................................................................................................... 4 2.2.4  Rec ID and Rec version .................................................................................................... 4 2.2.5  Indexes ............................................................................................................................. 4 2.2.6  Base enumerations ........................................................................................................... 4 2.2.7  Extended data types ......................................................................................................... 4 2.2.8  Dimensions ....................................................................................................................... 4 2.2.9  Relations ........................................................................................................................... 4 2.2.10  Delete actions ............................................................................................................... 4 2.2.11  Field groups .................................................................................................................. 4 2.2.12  Methods ........................................................................................................................ 4 2.2.13  Automatic fields ............................................................................................................. 4 2.2.14  Views ............................................................................................................................ 4 2.2.15  Table maps ................................................................................................................... 4 2.2.16  Transaction tables relation schema ............................................................................... 4 

3  Dynamics AX data structures ..................................................................................................... 6 

3.1  Ledger transaction data model ............................................................................................... 6 3.1.1  LedgerTable ...................................................................................................................... 7 3.1.2  Dimensions ....................................................................................................................... 8 3.1.3  LedgerTableInterval .......................................................................................................... 9 3.1.4  LedgerTrans ................................................................................................................... 10 3.1.5  LedgerBalancesTrans ..................................................................................................... 17 3.1.6  LedgerBalancesDimTrans .............................................................................................. 19 3.1.7  LedgerBalances .............................................................................................................. 20 3.1.8  LedgerBalancesDim ........................................................................................................ 21 

3.2  Tax system setup data model .............................................................................................. 21 

3.3  Tax transaction data model .................................................................................................. 23 3.3.1  TaxTable ......................................................................................................................... 23 3.3.2  TaxReportCollection ....................................................................................................... 26 3.3.3  TaxTrans ........................................................................................................................ 26 3.3.4  TaxReportVoucher .......................................................................................................... 31 3.3.5  Dimensions ..................................................................................................................... 32 

Prepared for Microsoft Corporation

Page v Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.3.6  LedgerTable .................................................................................................................... 32 3.3.7  LedgerTrans ................................................................................................................... 32 

3.4  Ledger budgeting data model ............................................................................................... 32 3.4.1  LedgerBudget ................................................................................................................. 33 3.4.2  Dimensions ..................................................................................................................... 37 3.4.3  LedgerTable .................................................................................................................... 37 3.4.4  BudgetModel ................................................................................................................... 37 3.4.5  ForecastModel ................................................................................................................ 38 3.4.6  ForecastPurch ................................................................................................................ 38 3.4.7  ForecastSales ................................................................................................................. 39 3.4.8  ProjTransBudget ............................................................................................................. 39 3.4.9  AssetTable ...................................................................................................................... 39 3.4.10  AssetBook ................................................................................................................... 40 

3.5  Fixed assets data structure .................................................................................................. 40 3.5.1  AssetTrans data structure ............................................................................................... 40 3.5.2  AssetDepBookTrans data structure ................................................................................ 47 3.5.3  AssetBudget data structure ............................................................................................. 52 

3.6  Accounts receivables data structure ..................................................................................... 55 3.6.1  CustTrans Data structure ................................................................................................ 55 3.6.2  CustInvoiceTrans Data structure ..................................................................................... 63 

3.7  Accounts payables data structure ........................................................................................ 70 3.7.1  VendTrans Data structure ............................................................................................... 71 3.7.2  VendInvoiceTrans Data structure .................................................................................... 72 

3.8  Inventory transactions data structure ................................................................................... 74 3.8.1  InventTrans ..................................................................................................................... 75 3.8.2  InventDim........................................................................................................................ 78 3.8.3  InventSum....................................................................................................................... 79 3.8.4  InventTable ..................................................................................................................... 80 3.8.5  InventTableModule ......................................................................................................... 80 3.8.6  CustTable ....................................................................................................................... 81 3.8.7  VendTable ...................................................................................................................... 81 3.8.8  BOMTable....................................................................................................................... 82 3.8.9  RouteTable ..................................................................................................................... 82 3.8.10  ProjTable .................................................................................................................... 82 3.8.11  ProjCategory ............................................................................................................... 82 3.8.12  ProjCategoryGroup ..................................................................................................... 82 

3.9  Production General data model ............................................................................................ 82 3.9.1  ProdTable ....................................................................................................................... 83 3.9.2  ProdCalcTrans ................................................................................................................ 91 3.9.3  ProdBOM ........................................................................................................................ 94 3.9.4  ProdRoute..................................................................................................................... 101 3.9.5  ProdRouteJob ............................................................................................................... 106 3.9.6  ProdRouteTrans ........................................................................................................... 110 

Prepared for Microsoft Corporation

Page vi Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.9.7  WrkCtrTable .................................................................................................................. 116 3.9.8  WrkCtrCapRes .............................................................................................................. 119 

3.10  Bank transactions data structure ................................................................................... 122 

3.11  Project transactions data structure ................................................................................ 123 

3.12  Project forecast data structure ...................................................................................... 139 

4  References ............................................................................................................................... 152 

Prepared for Microsoft Corporation

Page 1 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

1 EXECUTIVE SUMMARY

Business need for the project Dynamics AX as ERP system gathers lot of different data depending on the product usage in the

company, starting from financial data and ending with data from manufacturing, master planning,

human recourses, strategic planning etc. This data is often used by third party products for

reporting and data warehousing purposes. Currently it is lack of information about data model

inside Dynamics AX applications. It is difficult to understand what data is stored in which table and

how these tables are linked to each other. To get this understanding you have to use Dynamics AX

development environment tools and know also product functionality in order to find out best way for

analyses and reporting system based on Dynamics AX data model.

Goal of the current document is to describe main Dynamics AX data tables for the experts who are

not Dynamics AX professionals and want to get data form AX tables for further analyses and

reporting purposes.

Documentation approach To achieve documentation goals, about describing data model for third party application usage, each functional Dynamics AX module should next documentation topics to be covered:

1. Main tables relational structure for each documented module

2. Main tables key aggregate data columns description

3. Main tables dimension columns description and filtering suggestions

4. Hints and suggestions how to build and use most common queries in particular business functionality area

Documentation areas Document covers next functional areas in Dynamics AX (ordered by general interest towards this module data):

1. General ledger and Tax

2. Banking

3. Accounts receivables

4. Accounts payables

5. Inventory management

6. Production

7. Project

Prepared for Microsoft Corporation

Page 2 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

2 INTRODUCTION

2.1 Data structure description principles Current document is created to assist people from data varehousing area to understand Microsoft Dynamics AX (AX) data structure and find relevan information for reporting and alanyses purposes. There fore only selected tables are included to the document. Selection principle is functional areas description regarding central fact and dimension data.

Also not all fields from selected tables are described in the document. Setup and lonx text type fields are often left out as these have no importance in terms of analyses and reporting.

In the table description there are pointed out dield data type (INTEGER, CHAR(10), REAL etc.). These are default data types that can be modified accordingly to the customer needs (especially CRAR type of fields). Therefore it might happen that in real implementation data type for certain field is other than defined in current document.

Not alla data relations between described tables are defined in the drawings. Relations that are not so relevand or are evidential are not incuded into the drawings.

2.2 Dynamics AX overall data structure information Dynamics AX datastructure is described in AX development anviroment, which sommunicates with SQL server to sünchronize table changes to the SQL server. AX database itself is located in SQL server. In SQL server level there are defined following objects: tables, fields, primary keys, check constraints, default values, indexes.

Table primary key / foreign key constraints are not defined in SQL server but stored in AX. It means that there is not possible (or is wery dangerous) to update or upload data directly to the SQL database, as business logics controls are defined in AX only. Lot of transactional relations and primary keys are based on RecId, what is AX generated unique value and creation outside AX business logis can couse mess in the database.

2.2.1 Currencies There are three different currency calcilations in AX environment, transaction currency, company currency and secondary currency.

Transaction currency is currency what is used in relevant transaction (invoice currency, general ledger transaction currency etc.) Currency code (field named usually CurrencyCode) and rate for that currency are usually stored in the same table than currency amount.

Company Currency is defined in company information table (CompanyInfo). All transactions are converted to the company currency accordingly to the currency rate defined in the transaction. Amount fields meant for company currency are usually ending with capital characters “MST”.

Secondary currency adds possibility to keeb accounting transactions in two different accounting currencies. This can be used if local company is part of bigger corporation and local and corporate accounting currencies are different. Secondary currency is also widely used in European countries who have their own currency, but due to the joining euro zone accounting should be done in two currencies. Amount fields meant for secondary currency are usually ending with “MSTSecond”.

2.2.2 Table naming Tables in AX solution are named by certain rule for better understandinf the data model. Usually first part of table name is defining the functional area that certain taibel is related to. Taböe naming are following

Table prefix Functional area

Prepared for Microsoft Corporation

Page 3 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

ADDRESS* Central address register

AIF* Application Integration Framefork

ASSET* Fixed assets module

BANK* Banking module

BACH* Bach processing functionality

BOM* Bills of material functionality (manufacturing)

COS* Cost accounting module

CUST* Accounts receivables functionality

DEL_* Tables what are not used in the current version, but are still maintained for version upgrade purposes

DIMENSION* Cross application (financial) dimension tables

EVENT* Alert system tables

FORECAST* Item forecast functionality

HRM* Human recourse management tables

INTERCOMPANY* Tables for intercompany functionality

INTRASTAT* Tables related with intrastate reporting

INVENT* Inventory related functionality tables

KM* Knwledge management module tables

LEDGER* Tables related with general ledger functionality

NUMBERSEQUENCE* Number Sequence setup tables

OLAP* Tables related with Olnine Analytical Processing functionality in AX

Prepared for Microsoft Corporation

Page 4 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

DEL marked tables and fields,

2.2.3 Data area ID Virtual companies

DataAreaId is always part of primary key

2.2.4 Rec ID and Rec version X

2.2.5 Indexes Detailed information about indexes can be found in database

2.2.6 Base enumerations X

2.2.7 Extended data types X

2.2.8 Dimensions X

2.2.9 Relations X

2.2.10 Delete actions X

2.2.11 Field groups X

2.2.12 Methods X

2.2.13 Automatic fields CreatedTransID

2.2.14 Views X

2.2.15 Table maps

X

2.2.16 Transaction tables relation schema In the following schema below is table relation overview about 17 main Dynamics AX transaction tables. All these tables have separate section in chapter 3, where also related dimension tables

Prepared for Microsoft Corporation

Page 5 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

and most of the data fielas are explained. Some areas are not presented in this overview table, but they have separate section below (Production, Project Budgeting, Fixed Assets Budgets, Ledger Budgets etc.)

Figure 1

Prepared for Microsoft Corporation

Page 6 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3 DYNAMICS AX DATA STRUCTURES

3.1 Ledger transaction data model

The core part of an ERP system is general ledger (GL), and at the center of general ledger is the table where all ledger transactions are recorded in cumulative manner. In Dynamics AX, the table where ledger transactions are stored is called “LedgerTrans”. The following chapter will describe the key tables storing data regarding general ledger transactions.. It also describes different dimensions that can be used for analytical purposes.

The table structure around GL transaction tables is shown in diagram 1. Next, we will look at these tables and content inside of these tables.

Diagram 1 shows three tables that are dimension type tables (LedgerTable, LedgerTableInterval and Dimensions) and three other tables that are fact tables (LedgerTrans, LedgerBalancesTrans, LedgerbalancesDimTrans). LedgerTable is register for financial accounting ledger accounts and LedgerTableInterval is the setup table where the grouping of different LedgerTable accounts are described. The Dimensions is the table where additional attributes of the transactions for analytical purposes are recorded (dimensions in AX are cross system attributes for designed analyses, not only related with General Ledger functionality). As mentioned earlier, the LedgerTrans table is the central table where all ledger transactions are stored. The tables LedgerBalancesTrans, LedgerbalancesDimTrans consist of aggregated data based on data found in LedgerTrans. In diagram 1, there ale also two views, LedgerBalances and LedgerBalancesDim, that are inturn aggregated data from tables LedgerBalancesTrans and LedgerbalancesDimTrans.

Table descriptions in more detail:

Prepared for Microsoft Corporation

Page 7 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

Figure 2

3.1.1 LedgerTable

LedgerTable describes the chart of accounts. Most of the fields in this table are table are dedicated to general ledger setup and transaction control. This table can be used as a dimensions table for the LedgerTrans, LedgerTrans aggregation tables (LedgerBalancesTrans, LedgerbalancesDimTrans), and it can be used as an aggregated view for ledger balances (LedgerBalancesTrans, LedgerbalancesDimTrans).

Field name Data type Field description

AccountNum CHAR(20) Unique identifier of accounts in the current table. It represents the account number in the chart of accounts. Sometimes suggested structure of this code is defined by local law. Based on the value of this field, financial statements like a balance sheet and a profit and loss statement are created.

The format of the AccountNum value usually represents the logical structure of the company balance and profit and loss statement (accounts starting with 1 are assets while accounts starting with 2 are liabilities etc.)

AccountName CHAR(60) The long name of the account. It can be used as additional attribute or display name for the dimension.

AccountPIType INTEGER Field that describes the type of the account. This field is an

Prepared for Microsoft Corporation

Page 8 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

enumerated value in AX, but it is stored as integer in a SQL database. The AccountPIType field can have one of the following values:

SQL value

AX value Description

0 AccountOperations Profit & Loss type account (not defined if it is profit or loss)

1 AccountRevenue Profit & Loss type account (defined as revenue account)

2 AccountCost Profit & Loss type account (defined as cost account)

3 AccountStatus Balance type account (not defined if it is asset or liability)

4 AccountActive Balance type account (defined as asset account)

5 AccountLiable Balance type account (defined as liability account)

6 Heading Heading type account designed for reporting design in AX

7 HeadingEmpty Heading type account designed for reporting design in AX

8 HeadingPage Heading type account designed for reporting design in AX

9 sum Summary account that sums accounts with AccountPIType 0-5 incl. Has relation to LedgerTableInterval where summing intervals are defined.

10 AccountGroup Summary account like the previous item. The difference is that the summing intervals are added to the table LedgerTableInterval automatically based on the GL setting

RecId INTEGER Unique identifier in table.

3.1.2 Dimensions

This table contains analytical dimension values that are used in different transaction tables in the AX modules. AX default dimensions are department (marketing, financials, production etc.), cost centres (production line no 1, Building x etc.), Projects (project1, project2 etc.). By default in AX there are these three dimensions available. If needed, additional dimensions can be created to company data model. Dimension foreign key fields in transaction and setup tables are named as following:

1st dimension – DIMENSION

Prepared for Microsoft Corporation

Page 9 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

2nd dimension – DIMENSON2_

3rd dimension – DIMENSION3_

4th dimension – DIMENSION4_

Etc.

Each of these fields refers to the “Dimensions” table “Num” field which has relevant DimensionCode.

Field name Data type Field description

DimensionCode INTEGER Numeric value that describes the dimension sequence to what dimension value is related:

Value 0 means that Dimension.Num = LedgerTable.Dimension

Value 1 means that Dimension.Num = LedgerTable.Dimension2_

Value 2 means that Dimension.Num = LedgerTable.Dimension3_

Etc.

This relation model is common in AX where dimensions are used

Num CHAR(20) Dimension value for analysis purposes. Can be used as an analysis dimension when creating analyses cubes

Description CHAR(60) Dimension description. Can be used as additional attribute or display name for the dimension

InCarge CHAR(10) Relation to EmplTable (Dimensions.InCharge = EmplTable.EmplId). EmplTable is used to store information about company employees so each dimension can have an employee attached to its value. This structure makes available to group dimensions by employees.

CompanyGroup CHAR(10) Dimension transformational value for consolidation purposes. The value in the “Num” field is replaced by the value in the “CompanyGroup” field during the consolidation process (if the transformation is used)

Closed INTEGER Yes / No type field where Yes indicates, that dimension is closed and cannot be used in transactions.

Possible values are:

SQL value

AX value

0 No

1 Yes

3.1.3 LedgerTableInterval

A Table that is related to the LedgerTable lines where AccountPIType is 9 or 10. This table can be used for dimension hierarchy design for ledger account number grouping purposes

Field name Data type Field description

AccountTableID INTEGER Table ID of the relevant table, for the intervals that are described.

Prepared for Microsoft Corporation

Page 10 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

Ledger intervals can be defined for different tables. AccountTableId referring to LedgerTable has value 221.

AccountRecId INTEGER Part of the table’s primary key that refers to the specific row in the LedgerAccounts table

RecId INTEGER Unique row identifier in the table. RecId is part of the primary key

FromAccount CHAR(20) Reference to the LedgerTable.AccountNum field which identifies the beginning of the summing interval

ToAccount CHAR(20) Reference to the LedgerTable.AccountNum field which identifies the end of the summing interval

3.1.4 LedgerTrans

Central table in general ledger where all financial transactions are posted. Transactions in this table can be created directly using GL journals or indirectly through other AX modules. This table can have (depending on setup) the most detailed level of information regarding financial transactions. If no transaction level information is needed, then it is more reasonable to use already aggregated data from views generated from the LedgerTrans (LedgerBalancesTrans, LedgerbalancesDimTrans)

Field name Data type Field description

RecId INTEGER Unique row identifier in table and the primary key

Voucher CHAR(20) Ledger transaction identifier. Several number series are applied to this identifier as AX creates GL transactions from various locations. Sometimes the first or last few digits in the voucher number remain the same by identifying the process that created the transaction. For example AP006723, where “AP” stands for account payables and is the identifying process in AX. In some cases where such rules are used, these prefixes or suffixes can also be used for analytical purposes.

AccountNum CHAR(20) General ledger account number , foreign key to Ledgertable.AccountNum. One of the key analysis value in GL

TransDate DATE Date of transaction

AmountMST DECIMAL(28;12) Amounts in the company currency that is defined in CompanyInfo.CurrencyCode. Amounts can be positive or negative. Negative transactions are not always credit transactions. The Transaction type is specified by the LedgerTrans.Crediting field. If the field has a value of 1 the transaction is a credit type transaction.

AmountCUR DECIMAL(28;12) Amounts in the transaction currency that is defined in Ledgertrans.CurrencyCode. Amounts can be positive or negative. Negative transactions are not always credit transactions. The transaction type is specified by the LedgerTrans.Crediting field. If the field has a value of1 the transaction is a credit type transaction.

CurrencyCode CHAR(3) Currency code defining the transaction currency

Prepared for Microsoft Corporation

Page 11 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

TransType INTEGER Identifies which AX module created the transaction. In some cases this field can be also blank (GL journals transactions, fixed asset acquisition, opening transactions, currency rounding)

In following table all possible TransType values are listed:

SQL Value  AX value 

1 Transfer

2 Sales 

3 Purch 

4 Invent 

5 Production

6 Project

7 Interest 

8 Cust 

9 ExchAdjustment 

10 SummedUp

11 Payroll 

12 FixedAssets 

13 CollectionLetter 

14 Vend

15 Payment

16 Tax 

17 Bank 

18 Conversion 

19 BillOfExchange

20 PromissoryNote 

21 Cost 

22 Work 

23 Fee

24 Settlement

Dimension CHAR(10) Analytical Dimension no. 1 value (see also table “Dimensions” description)

Dimension2_ CHAR(10) Analytical Dimension no. 2 value (see also table “Dimensions” description)

Dimension3_ CHAR(10) Analytical Dimension no. 3 value (see also table “Dimensions” description)

Qty DECIMAL(28;12) In journals the transaction quantity can also be defined.

DocumentDate DATE Date of the document. The document can have a different date than the transaction (for example invoice date and invoice posting date)

JournalNum CHAR(10) AX transactions are prepared in journals and then posted by the system where also GL transactions are created. This field refers to the specific journal in the module where the current transaction is prepared and posted.

Prepared for Microsoft Corporation

Page 12 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

JournalizeNo CHAR(20) As described in the previous field, AX transactions are entered to the GL through a number of different journals in different modules. It is possible to group all these transactions to the special journal to get s better overview about transactions in the system. These journals are usually created periodically and can contain, for example, all transactions for one month.

JournalizeSeqNum INTEGER This field identifies the sequence order of the transaction belonging to the journal described in field “JournalizeNo”

Posting The field describes which AX process created the transaction in the table. For example daily journal transaction value is 14 (LedgerJournal)

Using this field it is easy to separate transactions by their creation origin.

SQL value

AX value

0 None 

1 ExchRateGain

2 ExchRateLoss

3 InterCompany 

4 Tax 

5 VATRoundOff 

6 Allocation

7 InvestmentDuty 

8 Liquidity 

9 MSTDiffSecond 

10 ErrorAccount

11 MSTDiff

12 YearResult 

13 Closing 

14 LedgerJournal 

15 CashDiscount

16 ConsolidateDiffBalance 

17 PaymentFee 

18 TaxReport 

19 TransferOpeningClosing 

20 Bank

21 ConversionProfit 

22 ConversionLoss 

23 TaxWithhold 

31 CustBalance

32 CustRevenue 

33 CustInterest 

34 CustCashDisc 

35 CustCollectionLetterFee 

Prepared for Microsoft Corporation

Page 13 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

36 CustInterestFee 

37 CustInvoiceDisc 

38 CustPayment 

39 CustReimbursement

40 CustSettlement 

41 VendBalance 

42 VendPurchLedger 

43 VendOffsetAccount

44 VendInterest 

45 VendCashDisc 

46 VendPayment 

47 VendInvoiceDisc 

48 VendSettlement

51 SalesRevenue 

52 SalesConsump 

53 SalesDisc 

54 SalesCash

55 SalesFreight 

56 SalesFee 

57 SalesPostage 

58 SalesRoundOff 

59 SalesPackingSlip

60 SalesOffsetAccountPackingSlip 

61 SalesIssue 

62 SalesCommission 

63 SalesOffsetAccountCommission 

64 SalesPckSlipRevenue 

65 SalesPckSlipRevenueOffsetAccount 

206 SalesPackingslipTax 

71 PurchConsump 

72 PurchDisc

73 PurchCash 

74 PurchFreight 

75 PurchFee 

76 PurchPostage

77 PurchOffsetAccount 

78 PurchaseInvoiceRoundOff 

79 PurchMarkupFreight 

80 PurchMarkupCustoms 

81 PurchMarkupInsurance 

82 PurchPckSlp 

83 PurchOffsetAccountPckSlp 

84 PurchReceipt 

Prepared for Microsoft Corporation

Page 14 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

85 PurchStdProfit 

86 PurchStdLoss 

87 PurchStdOffsetAccount 

201 PurchCharge

202 PurchStockVariation 

205 PurchPckSlpPurchase 

203 PurchPckSlpPurchaseOffsetAccount 

204 PurchPckSlpTax

91 InventReceipt 

92 InventIssue 

93 InventProfit 

94 InventLoss 

95 InventStdProfit

96 InventStdLoss 

105 ProdReportFinished 

106 ProdReportFinishedOffsetAccount 

107 ProdIssue

108 ProdIssueOffsetAccount 

109 ProdReceipt 

110 ProdReceiptOffsetAccount 

111 ProdPicklistOffsetAccount 

112 ProdPicklist

113 ProdWIPValuation 

114 ProdWIPIssue 

115 ProdWrkCtrIssue 

116 ProdScrap

117 ProdWrkCtrIssueOffsetAccount 

118 ProdScrapOffsetAccount 

121 ProjCost 

122 ProjPayrollAllocation 

123 ProjWIPCostvalue

124 ProjOffsetAccountItem 

125 ProjStatusAccountItem 

126 ProjTurnover 

127 ProjOnAccount

128 ProjSalesvalue 

129 ProjSalesvalueOffset 

130 ProjAccruedTurnoverProd 

131 ProjWIPProduction 

132 ProJAccruedTurnoverProfit 

133 ProjWIPProfit 

134 ProjNeverLedger 

135 ProjAccruedCost 

Prepared for Microsoft Corporation

Page 15 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

136 ProjWIPCost 

137 ProjAccruedRevenueOnAccount 

138 ProjWIPInvoicedOnAccount 

139 ProjNoLedger

207 ProjAccruedRevenueSubscription 

208 ProjWIPSubscription 

141 PayrollDebitAccount 

142 PayrollCreditAccount

161 FixedAssetsDebit 

162 FixedAssetsCredit 

163 CACLedgerJournalNoOff 

24 ConsolidateDiffProfitLoss 

Correct INTEGER Yes / No type field where information is stored if the current transaction is a correction transaction.

Yes indicates, that transaction is correction type transaction and debit and credit amounts are accounted with negative signs, not to influence credit / and debit turnover. Correction type transactions are eliminating previously made transactions, that need to be cancelled (for example invoice crediting routine).

Values in SQL table are:

SQL value

AX value

0 No

1 Yes

Crediting INTEGER Yes / No type field where information is stored if the current line is credit part of transaction. As transaction types (debit or credit) can not be identified just by negative or positive amount the special field for this purpose is defined.

Values in SQL table are:

SQL value

AX value Description

0 No Transaction line type is debit

1 Yes Transaction line type is credit

PeriodCode INTEGER Enumerated value with three possible values. It indicates accounting period type which applies to the current transaction.

Values are following:

SQL value

AX value Description

0 Opening Transactions belonging to opening period. Created while transferring account balances from the old financial year to the new financial year

Prepared for Microsoft Corporation

Page 16 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

1 Normal Usual transactions that are created during the financial year

2 Closing Transactions belonging to the closing period. These transactions usually represent specific financial year closing procedures created by accountants.

OperationsTax INTEGER Represents the transactions posting layer to general ledger. According to this field, transactions can be separated and different accounting principles can be used. For example, different depreciation profiles for fixed assets can be used for tax accounting and the posting layer can be used to separate these transactions from general accounting.

SQL value

AX value Description

0 Current Normal transactions created from different AX modules.

1 Operations Special transaction layer, that can separate special accounting transactions from general accounting.

2 Tax Special transaction layer for tax oriented accounting procedures

AccountMSTSecond DECIMAL(28;12) Accounting in AX can be done in two different currencies. In this field transaction value is displayed in second currency. Secondary currency is defined in CompanyInfo.SecondaryCurrencyCode.

EuroTriangulation INTEGER Transactions what are related with triangular sales and purchase schema, related with inventory transactions between European Union member states. These transactions are used for special Tax reporting.

SQL value

AX value Description

0 No Transaction is not related with Euro triangulation

1 Yes Transaction is related with Euro triangulation

FurtherPostingType INTEGER In AX it is possible to define bridged posting in payment functionality, where the payment is transferred to the middle account prior to the final transaction.

SQL value

AX value Description

0 No Transaction is not related with bridged posting functionality

1 Yes Transaction is related with bridged

Prepared for Microsoft Corporation

Page 17 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

posting functionality

TaxRefId Tax transactions are created in a specific tax transaction table TaxTrans. To ensure unique relationship between transactions in LedgerTrans and TaxTrans current field is created, because transaction umber (Voucher) might not be unique in table LedgerTrans.

Relation model:

LedgerTrans.Voucher = Tactrans.Voucher

LedgerTrans.TaxRefId = Tactrans.TaxRefId

3.1.5 LedgerBalancesTrans

Table contains aggregated data from the LedgerTrans table. Debit and credit transactions from the LedgerTrans.AmountMST and LedgerTrans.AmountMSTSecond fields are stored in different fields separating the debit and credit turnover. Also, separation is made for different posting layer transactions based on the field LedgerTrans OperationsTax. So from one field storing transaction amount (like AmountMST), six different fields are created, where subsets of that field total amount are stored.

The aggregation level in the table is not best for the reporting. Due to performance considerations a new field was added to the table primary key “LedgerBalancesVariant”. This field reduces the locking problem inside the AX data structure, but on the other hand the table needs some further aggregation in order to be optimal for reporting (see p. 3.1.7). Table aggregation is done by five primary keys.

Field name Data type Field description

AccountNum CHAR(20) Account number foreign key from LedgerTable,AccountNum

PeriodCode INTEGER Enumerated value with three possible values. It indicates the accounting period type that applies to the current aggregation.

Values are following:

SQL value

AX value Description

0 Opening Transactions belonging to the opening period. Created while transferring account balances from the old financial year to the new one

1 Normal Usual transactions that are created during financial year

2 Closing Transactions belonging to closing period. These transactions usually represent specific financial year closing procedures created by accountants.

TransDate DATE Date of summed transactions. If no transactions made on the particular date, no line for that date is created.

LedgerBalancesVariant INTEGER Special field used to reduce the locking problem that slows

Prepared for Microsoft Corporation

Page 18 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

down AX posting procedures. This field is a random number from 0 to19 which is generated based on user session id. It reduces probability by 20 times that one user needs to wait for another user while the update has been carried through in the relevant line. In AX version 2.5 there was no such mechanism and it caused performance problems due to SQL locking. For analyses purposes this field should be ignored while aggregating data. For that reason special views are created where this field is excluded.

SystemGeneratedUltimo INTEGER Transactions that are generated by systematic job in AX. An example is can be opening balances lines, which are created during year end procedures.

DebitMST DECIMAL(28;12) Summed up debit value from LedgerTrans. AmountMST for transaction type “Current” in field LedgerTrans.OperationsTax

CreditMST DECIMAL(28;12) Summed up credit value from LedgerTrans. AmountMST for transaction type “Current” in field LedgerTrans.OperationsTax

DebitOPRMST DECIMAL(28;12) Summed up debit value from LedgerTrans. AmountMST for transaction type “Operations” in field LedgerTrans.OperationsTax

CreditOPRMST DECIMAL(28;12) Summed up credit value from LedgerTrans. AmountMST for transaction type “Operations” in field LedgerTrans.OperationsTax

DebitTaxMST DECIMAL(28;12) Summed up debit value from LedgerTrans. AmountMST for transaction type “Tax” in field LedgerTrans.OperationsTax

CreditTaxMST DECIMAL(28;12) Summed up credit value from LedgerTrans. AmountMST for transaction type “Tax” in field LedgerTrans.OperationsTax

DebitMSTSecond DECIMAL(28;12) Summed up debit value from LedgerTrans. AmountMSTSecond for transaction type “Current” in field LedgerTrans.OperationsTax

CreditMSTSecond DECIMAL(28;12) Summed up credit value from LedgerTrans. AmountMSTSecond for transaction type “Current” in field LedgerTrans.OperationsTax

DebitOPRMSTSecond DECIMAL(28;12) Summed up debit value from LedgerTrans. AmountMSTSecond for transaction type “Operations” in field LedgerTrans.OperationsTax

CreditOPRMSTSecond DECIMAL(28;12) Summed up credit value from LedgerTrans. AmountMSTSecond for transaction type “Operations” in field LedgerTrans.OperationsTax

DebitTaxMSTSecond DECIMAL(28;12) Summed up debit value from LedgerTrans. AmountMSTSecond for transaction type “Tax” in field LedgerTrans.OperationsTax

CreditTaxMSTSecond DECIMAL(28;12) Summed up credit value from LedgerTrans. AmountMSTSecond for transaction type “Tax” in field LedgerTrans.OperationsTax

Qty DECIMAL(28;12) Summed up value from LedgerTrans.Qty

Prepared for Microsoft Corporation

Page 19 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.1.6 LedgerBalancesDimTrans

Basically similar aggregation table as described in p. 3.1.5, but also all analytical dimension combinations are added to the aggregations calculations.

Table contains aggregated data from table LedgerTrans. Debit and credit transactions from fields LedgerTrans.AmountMST and LedgerTrans.AmountMSTSecond are stored in different fields separating the debit and credit turnover. Also separation is made for different posting layer transactions based on the field LedgerTrans OperationsTax. So from one field storing transaction amount (like AmountMST), six different fieldd are created, where subsets of that field total amount are stored.

Aggregation level in that table is not best for the reporting. Due to the performance considerations new field has been added to the table primary key “LedgerBalancesVariant”. This field reduces locking problem inside AX data structure, but on the other hand table needs some further aggregation in order to be optimal for reporting (see p. 3.1.8). Table aggregation is done by six primary keys (including all analytical dimension combinations).

Field name Data type Field description

AccountNum CHAR(20) Account number foreign key from LedgerTable,AccountNum

PeriodCode INTEGER Enumerated value with three possible choice shows what accounting period type applies to the current aggregation.

Values are following:

SQL value

AX value Description

0 Opening Transactions belonging to opening period. Created while transferring account balances from old financial year to the new one

1 Normal Usual transactions, created during financial year

2 Closing Transactions belonging to closing period. These transactions represent usually specifics financial year closing procedures created by accountants.

TransDate DATE Date of summed up transactions. If no transactions made in particular date, also no line for that date is created.

LedgerBalancesVariant INTEGER Special field created to the table to reduce locking problem what slowed down AX posting procedures. Field gets random number from 0 to 19 generated based on user session id. It reduces probability by 20 times that one user needs to wait for another user while update has been carried through in the relevant line. In AX version 2.5 there was no this mechanism and it caused performance problems due to the SQL locking. For analyses purposes this field should be ignored while aggregating data. For that reason special views are created where this field is excluded.

SystemGeneratedUltimo INTEGER Transactions what are generated by systematic job in AX. One example can be opening balances lines, what are created during year end procedures.

Dimension CHAR(10) First dimension value

Prepared for Microsoft Corporation

Page 20 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

Dimension2_ CHAR(10) Second dimension value

Dimension3_ CHAR(10) Third dimension value

DebitMST DECIMAL(28;12) Summed up debit value from LedgerTrans. AmountMST for transaction type “Current” in field LedgerTrans.OperationsTax

CreditMST DECIMAL(28;12) Summed up credit value from LedgerTrans. AmountMST for transaction type “Current” in field LedgerTrans.OperationsTax

DebitOPRMST DECIMAL(28;12) Summed up debit value from LedgerTrans. AmountMST for transaction type “Operations” in field LedgerTrans.OperationsTax

CreditOPRMST DECIMAL(28;12) Summed up credit value from LedgerTrans. AmountMST for transaction type “Operations” in field LedgerTrans.OperationsTax

DebitTaxMST DECIMAL(28;12) Summed up debit value from LedgerTrans. AmountMST for transaction type “Tax” in field LedgerTrans.OperationsTax

CreditTaxMST DECIMAL(28;12) Summed up credit value from LedgerTrans. AmountMST for transaction type “Tax” in field LedgerTrans.OperationsTax

DebitMSTSecond DECIMAL(28;12) Summed up debit value from LedgerTrans. AmountMSTSecond for transaction type “Current” in field LedgerTrans.OperationsTax

CreditMSTSecond DECIMAL(28;12) Summed up credit value from LedgerTrans. AmountMSTSecond for transaction type “Current” in field LedgerTrans.OperationsTax

DebitOPRMSTSecond DECIMAL(28;12) Summed up debit value from LedgerTrans. AmountMSTSecond for transaction type “Operations” in field LedgerTrans.OperationsTax

CreditOPRMSTSecond DECIMAL(28;12) Summed up credit value from LedgerTrans. AmountMSTSecond for transaction type “Operations” in field LedgerTrans.OperationsTax

DebitTaxMSTSecond DECIMAL(28;12) Summed up debit value from LedgerTrans. AmountMSTSecond for transaction type “Tax” in field LedgerTrans.OperationsTax

CreditTaxMSTSecond DECIMAL(28;12) Summed up credit value from LedgerTrans. AmountMSTSecond for transaction type “Tax” in field LedgerTrans.OperationsTax

Qty DECIMAL(28;12) Summed up value from LedgerTrans.Qty

3.1.7 LedgerBalances

LedgerBalanceTrans is view created on top of table LedgerBalancesTrans table. Purpose of that view is to eliminate field LedgerBalanceTrans .LedgerBalancesVariant from analyses view. This field is created for performance acceleration.

It is advised, that for analyses purposes view “LedgerBalances“ is used instead of table “LedgerBalanceTrans”

Prepared for Microsoft Corporation

Page 21 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.1.8 LedgerBalancesDim

LedgerBalanceTrans is view created on top of table LedgerBalancesTrans table. Purpose of that view is to eliminate field LedgerBalanceTrans .LedgerBalancesVariant from analyses view. This field is created for performance acceleration.

It is advised, that for analyses purposes view “LedgerBalances“ is used instead of table “LedgerBalanceTrans”

3.2 Tax system setup data model In the current chapter AX tax system data model is defined. This part of AX data model explains from database side how the tax transactions are created and how different tax codes are working together.

Sales tax calculation in AX has two sides: inventory side and customer/vendor side. As shown in figure 2, source tables where default tax setup is defined are CustTable (customer register) or VendTable (vendor register, depend if it is sales or purchase) and InventTable (inventory register). CustTable and VendTable contain tax code from table TaxGroupHeading. Central table in Tax calculation setup is TaxTable. Tax calculations specified in this table are grouped together in TaxGroupData by using values from TaxGroupHeading table. Using this structure (see figure 2) customer and vendor registers are related with one or more tax codes in table TaxTable.

Similar structure is used when linking TaxTable codes with item codes from InventTable. Difference here is one additional table InventTableModule. This table contains three lines for every line in InventTable. These three lines are inventory setup for purchase, stock keeping and sales, where also tax information from table TaxItemGroupHeading is stored. For item taxation purposes tax grouping is arranged where TaxTable codes are grouped by using table TaxOnItem by using values from TaxItemGroupHeading table. Using this structure (see figure 2) inventory register is related with one or more tax codes in table TaxTable.

For each transaction where tax should be calculated there must be two tax codes defined, one from table TaxGroupHeading and another from TaxItemGroupHeading. Default values are inherited from customer/vendor table and InventTable as described above. Before transaction posting it is usually possible to possible to adjust tax group combination setup. Both these tax codes have one or more tax codes from TaxTable grouped under it. When tax is going to be calculated, only these tax codes from TaxTable are activated what are defined in both relevant tax groups (TaxIGroupHeading and TaxItemGroupHeading).

Created tax transactions are stored in table TaxTrans.

Tax rates are stored in table TaData

Figure 3

Prepared for Microsoft Corporation

Page 22 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

Prepared for Microsoft Corporation

Page 23 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.3 Tax transaction data model Central table where all tax related transactions are stored is TaxTrans (see figure 3). Around this table several dimension tables can be defined. Most of tax calculation and analysis information is stored in table TaxTable. This table has list of different tax codes in use and also there can be defined several analysis codes for tax amounts reporting. List of analyses codes for tax reporting is stored in table TaxReportCollection.

TaxReportVoucher is table where periodical tax payment reports and transaction codes are stored. Based on the taxation rules it is periodical job where calculated tax amounts are summed up and liabilities for tax authorities are recognized.

TaxTrans has relation also to the Dimensions, LedgerTable and LedgerTrans tables. Most of tax transactions have financial transactions linked to it. LedgerTrans is containing financial transaction information (for detailed description see p. 3.1.4).

Figure 4

3.3.1 TaxTable

Central register for tax calculation codes. Table contains tax calculation principles and several fields for different analysis and reporting codes.

All fields having names starting with “RepField…” are meant for tax analyses purposes. AX has special logics when creating tax analysis reports on top of these reporting codes. At the same time by knowing purpose of the fields in TaxTrans table and using reporting code combination tax reporting solutions can be created using third party products.

Field name Data type Field description

TaxCode CHAR 10 Unique identifier of the sales tax code that is easily identifiable. The sales tax code identifies a tax that is connected with a sale,

Prepared for Microsoft Corporation

Page 24 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

such as a sales tax, fee, duty, purchase duty, or packing duty.

TaxName CHAR 30 Descriptive name for the sales tax code.

TaxPeriod DATE Code identifying in which the selected sales tax, represented by the sales tax code, is calculated and paid. The settlement period (stored in table TaxPeriodHead) includes the terms of payment and the tax authority.

(TaxTable.TaxPeriod = TaxPeriodHead.Taxperiod)

TaxAccountGroup CHAR 10 Ledger posting group for the selected sales tax code. The value in this field defines the general ledger accounts to which sales tax amounts for the sales tax code are automatically posted.

TaxCurrencyCode CHAR 3 Currency in which the sales tax is calculated. If the original transaction is in another currency, the tax is converted automatically.

TaxRoundoff REAL The lowest unit for which sales taxes are calculated for the selected sales tax code.

If taxes should be rounded off to a unit that is 1/100 of the currency of the tax, the value 0.01 should be defined.

TaxRoundoffType INTEGER Select how calculated taxes are rounded off.

SQL value

AX value Description

0 Normal The amount is rounded off to the nearest number of decimal points that is specified in the TaxRoundOff field.

1 Downward The amount is rounded down to the nearest number of decimal points that is specified in the TaxRoundOff field.

2 Rounding-Up The amount is rounded up to the nearest number of decimal points that is specified in the TaxRoundOff field.

NegativeTax INTEGER Checkbox is selected if negative tax percentage for the sales tax code is allowed.

SQL value

AX value Description

0 No Not allowed

1 Yes Allowed

TaxCountryRegionType INTEGER Country/region type that controls item receipts and statistics.

SQL value

AX value

0 Domestic

Prepared for Microsoft Corporation

Page 25 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

1 EU

2 EFTA

3 Third Country/ Region

NotEUSalesList INTEGER This check box is checked to exclude the selected sales tax code from the EU sales list.

SQL value

AX value Description

0 No Tax code is included in the EU sales list

1 Yes Tax code is excluded from the EU sales list

RepFieldBaseIncoming CHAR 10 Field in the sales tax report that contains taxable purchases

RepFieldBaseOutgoing CHAR 10 Field in the sales tax report that contains taxable sales

RepFieldBaseUseTax CHAR 10 Field in the sales tax report that contains taxable import

RepFieldTaxFreeBuy CHAR 10 Field in the sales tax report that contains tax-free purchases

RepFieldTaxFreeSales CHAR 10 Field in the sales tax report that contains tax-free sales

RepFieldUseTaxOffset CHAR 10 Field in the sales tax report that contains the transaction that offsets the use-tax

RepFieldUseTax CHAR 10 Field in the sales tax report that contains use-tax

RepFieldTaxIncoming CHAR 10 Field in the sales tax report that contains sales tax receivables

RepFieldTaxOutgoing CHAR 10 Field in the sales tax report that contains sales tax payable

RepFieldBaseUseTaxOffset CHAR 10 Field in the sales tax report that contains offset taxable import

RepFieldTaxIncomingCreditNote CHAR 10 Field number used to report sales tax on purchase credit notes.

RepFieldBaseOutgoingCreditNote CHAR 10 Field number used to report taxable sales credit notes

RepFieldTaxOutgoingCreditNote CHAR 10 Field number used to report sales tax on sales credit notes.

RepFieldBaseIncomingCreditNote CHAR 10 Field number used to report taxable purchase credit notes

RepFieldUseTaxOffsetCreditNote CHAR 10 Field number used to report offset sales tax on import credit notes.

RepFieldUseTaxCreditNote CHAR 10 Field number used to report sales tax on import credit notes.

RepFieldBaseUseTaxCredirnote CHAR 10 Field number used to report taxable import credit notes.

RepFieldTaxFreeSalesCreditNote CHAR 10 Field number used to report tax exempt sales credit notes.

RepFieldTaxFreeBuyCreditNote CHAR 10 Field number used to report tax exempt purchase credit notes.

RepFieldBaseUseTaxOffsetCreditNote CHAR 10 Field number used to report offset taxable import credit notes.

Prepared for Microsoft Corporation

Page 26 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.3.2 TaxReportCollection

This table contains different tax reporting codes what can be specified in TaxTable, described in chapter 3.3.1. All field from TaxTable starting with RepField*** are referring to table TaxReportCollection

Field name Data type Field description

TaxReportField INTEGER Reporting code in numeric format to be linked with different tax codes in TaxTable reporting fields. Part of table primary key

TaxReportLayout INTEGER Enumbered field what defines reporting format, as different counties can have different reporting layout. Part of table primary key

Description CHAR(60) Tax code description

3.3.3 TaxTrans

Central register for sales tax transactions. Table contains all tax transactions generated by AX system. By filtering and summing different data from this table all kind of sales tax reports can be created.

Field name Data type Field description

RecId DOUBLE Unique identifier of the record, also primary key

Voucher CHAR(20) The voucher number from the original posted transaction. This is usually generated automatically from a number sequence. Voucher number in TaxTrans is the same as Voucher number in LedgerTrans table.

TransDate DATE The date that the transaction was posted. This date determines the settlement period of tax transactions and the date that the accrual of interest, if any, begins.

Source INTEGER The source module of the sales tax transaction. This is set automatically at posting.

SQL value

AX value Description

0 Sales Tax transactions, created by sales order porting process

1 Purch Tax transactions, created by purchase order porting process

2 Voucher Tax transactions created by different vouchers defined in general ledger module

3 SalesInvoice

4 PurchInvoice

5 FreeTxtInvoice Tax created by free text

Prepared for Microsoft Corporation

Page 27 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

invoice posting

6 CustCollectionLetter Tax created by customer collection letter posting

7 Tax Transactions created during periodical tax payment job

8 CustInterestNote Tax created by customer interest note posting

9 Project Tax transactions created by different vouchers defined in project module

10 ProjectInvoice Tax created by project invoice posting

11 BankAccountReconsile Tax posted during bank account reconciliation process

InventTransId CHAR(20) Identification of inventory transaction in central inventory transactions table InventTrans.

TaxTrans.InventTransId = InventTrans.InventTransId

Not all tax transactions are related with inventory transaction. In case there is no relation, TaxTrans.InvenTransId is empty.

TaxCode CHAR(10) Sales tax code from TaxTable to identify what tax is calculated

AccountNum CHAR(20) The ledger account that the selected sales tax transaction is posted to, usually as part of a summary transaction that is posted for the entire voucher. The account is determined by the setup of the ledger posting group of the sales tax code at the time of posting.

TaxBaseAmount NUMERIC(28;12) The amount in the default currency (company currency) of the tax base. If the tax base was originally posted in a different currency, the amount in this field is converted using the appropriate exchange rate in the Exchange rates form

TaxBaseQty NUMERIC(28;12) The quantity of units that the posted sales tax transaction is calculated on. For example, packaging duty could be a sales tax that is calculated on the basis of quantity.

TaxAmount NUMERIC(28;12) The sales tax in the default currency (company currency). If necessary, the amount is converted using the exchange rates in the Exchange rates form.

TaxValue NUMERIC(28;12) The tax percentage or amount per unit.

TaxAutoGenerated INTEGER If the check box is selected, the sales tax transaction is an automatic sales tax transaction that is calculated. If the check box is cleared, the sales tax transaction is posted manually.

For example when during sales or purchase process tax amount have been changed manually this field value is “0”. Also transactions created by periodical tax payment job are marked as “0”.

Prepared for Microsoft Corporation

Page 28 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

SQL value

AX value Description

0 No Tax transactions are created manually

1 Yes Tax transactions are created automatically

TaxDirection INTEGER The direction of the sales tax transaction – payable or receivable – or the reason for the transaction, such as use tax, tax-free sales or purchase, or tax transaction.

SQL value

AX value Description

0 IncomingTax Tax based on purchase

1 OutgoingTax Tax based on sales

2 UseTax Tax liability came along with purchase

3 TaxExemptPurchase Purchase with no tax calculation

4 TaxExemptSales Sales with no tax calculation

5 TaxTransaction Sales tax transaction from general ledger. No tax base amount defined, just amount if tax

TaxOrigin INTEGER The origin of the selected tax transaction:

SQL value

AX value Description

0 Tax Sales tax, such as sales tax on purchase orders, sales orders, or journals.

1 TaxReporting Sales tax payment, such as the settlement of sales tax.

2 CashDisc Cash discount, for example, from use of cash discount with a corresponding correction of sales taxes.

3 TaxReversed Offset sales tax, such as the offset of a sales tax transaction.

4 Transfer Transfer, such as an amount that is moved from one account to another to adjust a previous transaction.

Prepared for Microsoft Corporation

Page 29 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

5 Payment Payment, such as a settlement.

TaxInCostPrice NUMERIC(28;12) The sales tax amount that is a use tax and is posted as an expense in the default (company) currency. Use taxes are typically sales taxes that cannot be refunded and are added to the company's expenses.

ExemptTax INTEGER Field what shows if current transaction is tax exempt or not.

SQL value

AX value Description

0 No Usual tax transaction

1 Yes Exempt tax transaction

TaxPeriod CHAR(10) The sales tax settlement period code that is posted on the selected sales tax transaction

CurrencyCode CHAR(3) The currency code of the sales tax code (field TaxCode) that is posted on the sales tax transaction.

SourceBaseAmountCur NUMERIC(28;12) The base amount for the tax calculation in the original currency for the transaction. This is specified in Voucher currency.

TaxBaseAmountCur NUMERIC(28;12) The amount of the tax base in the sales tax code currency. If the sales tax code currency is not the default currency code, the amount is converted before the taxes are paid.

SourceTaxAmountCur NUMERIC(28;12) The sales tax amount in the original currency for the transaction. If the currency code in the Voucher currency field is not the default code, the amount is converted to the default currency before sales taxes are paid.

TaxAmountCur CHAR(3) The amount of the sales tax in the sales tax code currency. If the sales tax code currency is not the default currency code, the amount is converted before the taxes are paid.

TaxOffsetAccountUseTax NUMERIC(28;12) The ledger account that the payable use tax amount is posted to for the selected sales transaction (Use tax - Tax liability came along with purchase).

ChargeAccount CHAR(20) The ledger account that use tax as an expense has been posted to.

SourceCurrencyCode CHAR(3) The currency code used for the voucher journal.

Dimension CHAR(10) First AX dimension value, specified for particular transaction. Tax transaction dimensions are inherited from general ledger transaction.

Relation: Dimensions.Num = TaxTrans.Dimension

Dimensions.DimensionCode = 0

Dimension2_ CHAR(10) Second AX dimension value, specified for particular transaction. Tax transaction dimensions are inherited from general ledger transaction.

Relation: Dimensions.Num = TaxTrans.Dimension2_

Prepared for Microsoft Corporation

Page 30 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

Dimensions.DimensionCode = 1

Dimension3_ CHAR(10) Third AX dimension value, specified for particular transaction. Tax transaction dimensions are inherited from general ledger transaction.

Relation: Dimensions.Num = TaxTrans.Dimension3_

Dimensions.DimensionCode = 2

SourceRegulateAmountCur NUMERIC(28;12) The adjusted sales tax amount in the original currency for the transaction. For example the field is filled if user changes manually sales tax amount before posting purchase invoice. Fields TaxAmount and TaxAmountCur are containing already changed amount. Field BaseTaxAmountCur reflects original calculation without the change.

TaxInCostPriceRegulated NUMERIC(28;12) The sales tax amount that is a use tax, is manually adjusted during entry, and is posted as an expense. Use taxes are typically sales taxes that cannot be refunded and are added to the company's expenses.

TaxInCostPriceMST NUMERIC(28;12) The sales tax amount that is a use tax and is posted as an expense in the default (company) currency. Use taxes are typically sales taxes that cannot be refunded and are added to the company's expenses.

TaxInCostPriceCur NUMERIC(28;12) The sales tax amount that is a use tax and is posted as an expense in the tax code currency. Use taxes are typically sales taxes that cannot be refunded and are added to the company's expenses.

EUROTriangulation INTEGER If the check box is selected, the sales tax transaction is included in an exchange rate triangulation.

SQL value

AX value Description

0 No No EURO triangulation

1 Yes EURO triangulation is active

InvestmentTaxCur NUMERIC(28;12) The investment tax amount in the sales tax code currency. If the sales tax code currency is not the default currency code, the amount is converted before the taxes are paid.

InvestmentTaxMST NUMERIC(28;12) The investment tax amount in the default (company) currency. If necessary, the amount is converted using the exchange rates in Exchange rates form.

SourceInvestmentTaxCur NUMERIC(28;12) The investment tax in the original voucher currency. If the currency code is not the default currency code, the amount is converted before the taxes are paid.

SourceInvestmentTaxCurRegulated NUMERIC(28;12) The investment tax amount after correction. If the currency code is not the default currency code, the amount is converted before the taxes are paid.

OperationAccount CHAR(20) The ledger account that the posted sales tax transaction is posted to at settlement.

TaxRefId INTEGER To ensure relationship between transactions in LedgerTrans and TaxTrans current field is created, as transaction umber

Prepared for Microsoft Corporation

Page 31 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

(Voucher) might not be unique in table LedgerTrans.

Relation model:

LedgerTrans.Voucher = Tactrans.Voucher

LedgerTrans.TaxRefId = Tactrans.TaxRefId

TaxItemGroup CHAR(10) The item sales tax group that is posted on the selected sales tax transaction. Relation to the table TaxItemGroupHeading, see chapter 3.2 for the details.

TaxGroup CHAR(10) The sales tax group that is posted on the selected sales tax transaction. Relation to the table TaxGroupHeading, see chapter 3.2 for the details.

ExemptCode CHAR(10) The code for justification of sales tax exemption that can be printed, for example, on invoices.

SourceBaseAmountCurRegulated CHAR(10) The adjusted tax base amount in the original voucher currency.

3.3.4 TaxReportVoucher

This table contains different tax reporting codes what can be specified in TaxTable, described in chapter 3.3.1. All field from TaxTable starting with RepField*** are referring to table TaxReportCollection

Field name Data type Field description

TaxPeriod CHAR(10) Displays the settlement period code for the period definition for the settlement taken from the Sales tax settlement periods table TaxReportPeriod. Part of primary key.

TransDate DATE Date when the sales tax settlement was posted. Part of primary key.

RecId DOUBLE Unique record identifier, created by system. Part of primary key.

TaxRepVersion INTEGER Displays the settlement version that is specified when you update the settlement. This tells you whether the settlement included in the four following categories:

SQL value

AX value Description

0 Original original settlement

1 Correct all subsequent corrections

2 Latest the latest corrections

3 Total all settlements in the period interval

Voucher CHAR(20) Displays the voucher number for the settlement update. This number is retrieved automatically from the number sequence

FromDate DATE Displays the first date in the interval for this settlement period

Prepared for Microsoft Corporation

Page 32 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

ToDate DATE Displays the last date in the interval for this settlement period

Corrections INTEGER Sales tax corrections from previous periods, posted with the sales tax settlement

SQL value

AX value Description

0 No No correction transaction

1 Yes Correction transaction

Reversed INTEGER Reversed transaction. Reversal can be cause of cash discount setup combined with sales tax.

SQL value

AX value Description

0 No Ordinary tax payment

1 Yes Reversed payment

TraceNum CHAR(20) Trace number for reversal transaction.

3.3.5 Dimensions

TaxTrans table has relation to the dimensions table. Please see dimensions table description in p. 3.1.2

3.3.6 LedgerTable

TaxTrans table has relation to the Ledger accounts table by using account number AccountNum field. Please see ledger accounts table description in p. 3.1.1

3.3.7 LedgerTrans

TaxTrans table has relation to the ledger transactions table LedgerTrans by using voucher number Voucher and TaxRefId fields. Please see ledger accounts table description in p. 3.1.4

3.4 Ledger budgeting data model One important part of the functionality in Dynamics AX general ledger area is budgeting. This functionality is meant for creating general ledger budgets based on chart of accounts and dimension sets. Data model overview for that functionality is shown in figure 4.

Central table here is LedgerBudget table, where all budgeting configuration and reporting data is stored. Around this table several parameter tables are designed. BudgetModel table holds

Prepared for Microsoft Corporation

Page 33 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

information about different versions version of general ledger budgets. Also budget hierarchy can be defined in this table.

Budgeting transactions can be created automatically from other Dynamics AX modules: - Master Planning: Forecastmodel, ForecastPurch and ForecastSales are tables that have relation with LedgerBudget table in case budgeting transactions are created automatically from master planning module. - Project: ProjTransBudget table has relation with LedgerBudget table in case budgeting transactions are created automatically from the master planning module. - Fixed Assets: AssetTable and AssetBookTable have relation with LedgerBudget table in case budgeting transactions are created automatically from the fixed assets module.

LedgerTable and Dimensions table are main parameter tables for ledger budgeting data models, as budget is created by ledger accounts and dimensions.

Figure 5

3.4.1 LedgerBudget

Table contains data about ledger budget reporting lines as well as ledger budget setup lines. In ledger budget setup lines it can be defined by what logics reporting lines are created. For example monthly expense for 100EUR for next 6 month – outcome is 7 new lines totally: 6 reporting lines, created automatically after manual setup line creation and setup line itself. Reporting lines and setup lines are separated by value in field Report

Field name Data type Field description

AccountNum CHAR(20) Ledger account number from LedgerTable. Account nom is one key field in the table as general ledger budgeting is based on table of accounts.

StartDate DATE Date from which the budget amount will be in effect.

Prepared for Microsoft Corporation

Page 34 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

EndDate DATE Last date of the posting period for this periodic transaction. Used in setup lines.

FreqCode INTEGER Time interval unit in budget setup lines for creating budget reporting lines

SQL value

AX value Description

0 Days Number of days specified in field Freq.

1 Months Number of months specified in field Freq.

2 Years Number of years specified in field Freq.

Active INTEGER Marked if the amount should be included in the current budget. By default, the field is marked as active when a budget line is created.

SQL value

AX value Description

0 No Inactive

1 Yes Active

Amount REAL Amount by which the line contributes to the budget.

Comment CHAR(60) Comment on the budget transaction. By default, the name of the ledger account is proposed.

Dimension CHAR(10) First AX dimension value, specified for particular budget transaction.

Relation: Dimensions.Num = LedgerBudget.Dimension

Dimensions.DimensionCode = 0

Dimension2_ CHAR(10) Second AX dimension value, specified for particular budget transaction.

Relation: Dimensions.Num = LedgerBudget.Dimension

Dimensions.DimensionCode = 0

Dimension3_ CHAR(10) Third AX dimension value, specified for particular budget transaction.

Relation: Dimensions.Num = LedgerBudget.Dimension

Dimensions.DimensionCode = 0

Currency CHAR(3) Currency code for the current budget transaction

Qty REAL Specification quantity, if any, for the budgeted amount. This field can be used when budgeting is needed in some other units than money.

Price REAL Price used in defined currency when budgeting quantities

Stop INTEGER Indicates whether the current budget transactions should be excluded from allocations during simulations.

Prepared for Microsoft Corporation

Page 35 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

SQL value

AX value Description

0 No Not stopped

1 Yes Stopped

Key CHAR(10) Period allocation key for allocating the budget for different periods. Used in setup type lines

ExpandId INTEGER Field is filled in report type budget lines, containing RecId number referring to setup line what created the report transaction.

Report INTEGER Field is defining if the record is setup type budget line or reporting type budget line.

SQL value

AX value Description

0 No Transaction is setup type budgeting line

1 Yes Transaction is reporting type budgeting line

Cov INTEGER Wether to include the current budget transaction in cash flow forecast calculations in the General ledger

SQL value

AX value Description

0 No Not included into the cash flow forecast

1 Yes Included into the cash flow forecast

CovStatus INTEGER Status of cash flow forecast for the current transaction.

Crediting INTEGER Specifies if the transaction type is credit or debit

SQL value

AX value Description

0 No Transaction type is debet

1 Yes Transaction type is credit

Freq INTEGER Number of time units (days, months, years) jumped per transaction.

Respectively, 1 and months (FreqCode) for forecasts allocated per month.

Respectively, 3 and months (FreqCode) for forecasts allocated per quarter.

TaxGroup CHAR(10) The sales tax group for specification of sales tax on the current budget transaction.

ModelNum CHAR(10) The budget model number. As one account number can have several budget versions then different budget model codes can be

Prepared for Microsoft Corporation

Page 36 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

used for that purpose.

Relation: LedgerBudget.ModelNum = BudgetModel.ModelId

AllocateMethod CHAR(10) Methods for allocating the forecast transaction:

None – No allocation takes place. Budget line is reporting type budget transaction.

Period – Quantity with the number of units defined in the field FreqCode. This method is used if forecast with the same quantity per period.

Key – The forecast is allocated according to the period allocation key specified in the field Key. This method is used if seasonal variation should be taken into account.

ForecastModelId CHAR(10) Ledger budget functionality has relation with the master planning module. Forecasts from that module can be transferred to ledger budget. Current field is reference to the forecast model code used to create forecasts in master planning module.

Relation: LedgerBudget. ForecastModelId = ForecastModel.Modelid

AssetId CHAR(20) Ledger budget functionality has relation with the fixed assets functionality. Fixed asset budget lines from that module can be transferred to ledger budget. Current field is reference to the asset ID used to identify asset transactions in the asset module.

Relation: LedgerBudget. AssetId = AssetBudget.AssetId

AssteTransType INTEGER Field identifying what type asset transaction created current budget line. For detailed list describing possible values in that field please see field description for AssetTrans.###

AssetBookId CHAR(10) Another field describing relation between asset budget transactions and ledger budget transaction. One asset can have several versions for different transaction profiles

Relation: LedgerBudget. AssetId = AssetBudget.BookId

ProjTransId CHAR(20) Ledger budget functionality has relation with the project module. Project forecast lines from that module can be transferred to ledger budget. Current field is reference to the project ID used to identify project transactions in the project module.

Relation: LedgerBudget. ProjTransId = ProjTransBudget.TransId

AutoTrans INTEGER Specifies if budget transactions are created automatically from project table.

SQL value

AX value Description

0 No Normal budget transactions

1 Yes Budget transaction created automatically from project forecasts

InventTableId INTEGER Field is used if transactions are created automatically from master planning table. Field identifies wether transaction is based on sales or purchase forecast.

Prepared for Microsoft Corporation

Page 37 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

SQL value

AX value Description

143 143 Transactions based on purchase forecast (table: ForecastPurch)

144 144 Transactions based on sales forecast (table: ForecastSales)

InventRecId INTEGER Field is used if transactions are created automatically from master planning table. Value is unique ID referring to the certain record in purchase or sales forecast table lines.

3.4.2 Dimensions

LedgerBudget table has relation to the dimensions table. Please see dimensions table description in p. 3.1.2

3.4.3 LedgerTable

LedgerBudget table has relation to the Ledger accounts table by using account number (AccountNum field). Please see ledger accounts table description in p. 3.1.1

3.4.4 BudgetModel

This table contains list of the budgeting models what can be used in LedgerBudget table. BudgetModel table has two types of transaction types: main model and submodel. Only main models can be created manually and only main models can be selected to the budget lines in LedgerBudget table. Submodel lines are describing hierarchy relations between main models.

Field name Data type Field description

ModelId CHAR(10) A unique identifier for the budget model. Part of primary key.

SubModelId CHAR(10) This field has meaning if the row type is submodel. The field shows what submodel(s) belongs to the main model.

If the budget model is Main type, the SubModelId field has the same value as ModelId field

The field is part of primary key.

Type INTEGER Defines if the model row is main model or submodel.

SQL value

AX value Description

0 Heading Row type is Main model

1 Submodel Row type is Submodel

Blocked INTEGER Check box to block the budget model and all associated ledger budgets for modification. When the budgets that are based on the budget model are approved, selecting this check box prevents changes to the budgets

Prepared for Microsoft Corporation

Page 38 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

Txt CHAR(60) The name of the budget model.

3.4.5 ForecastModel

Table contains list of the forecasting models what can be used in master planning module. As a result forecast lines are created in to the ForecastPurch and ForecastSales tables. ForecastModel table has two types of transaction types: main model and submodel. Only main models can be created manually and only main models can be selected to the forecast lines while creating sales or purchase forecasts. Submodel lines are describing hierarchy relations between main models.

Field name Data type Field description

ModelId CHAR(10) A unique identifier for the forecast model. Part of primary key.

SubModelId CHAR(10) This field has meaning if the row type is submodel. The field shows what submodel(s) belongs to the main model.

If the budget model is Main type, the SubModelId field has the same value as ModelId field

The field is part of primary key.

Type INTEGER Defines if the model row is main model or submodel.

SQL value

AX value Description

0 Heading Row type is Main model

1 Submodel Row type is Submodel

Blocked INTEGER Check box to block the forecast model and all associated forecasts for modification. When the forecasts that are based on the forecast model are approved, selecting this check box prevents changes to the forecasts

Txt CHAR(60) The name of the forecast model.

3.4.6 ForecastPurch

Table contains purchase forecast reporting and setup lines. Table role is similar with LedgerBudget table just planning is made by item purchase and vendors instead of chart of accounts and dimensions. Please see detailed overview regarding this table in chapter ###

Field name Data type Field description

ExpandId INTEGER Forecast report row relation to the setup row. Part of primary key.

RecId INTEGER Unique identifier of the row. Part of primary key.

ItemId CHAR(20) Inventory code from inventory module.

ItemGroupId CHAR(10) Inventory group id from inventory module.

Prepared for Microsoft Corporation

Page 39 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

VendAccountId CHAR(20) Vendor code from accounts payable module.

VendGroupId CHAR(10) Vendor group id from accounts payable module.

3.4.7 ForecastSales

Table contains sales forecast reporting and setup lines. Table role is similar with LedgerBudget table just planning is made by item sales and clients instead of chart of accounts and dimensions. Please see detailed overview regarding this table in chapter 3.12.1.7

Field name Data type Field description

ExpandId INTEGER Forecast report row relation to the setup row. Part of primary key.

RecId INTEGER Unique identifier of the row. Part of primary key.

ItemId CHAR(20) Inventory code from inventory module.

ItemGroupId CHAR(10) Inventory group id from inventory module.

CustAccountId CHAR(20) Customer code from accounts payable module.

CustGroupId CHAR(10) Customer group id from accounts payable module.

3.4.8 ProjTransBudget

This table is central table for AX project module forecast transactions. There can be several different budgets in project module: Item, cost, hour, revenue, on-account and work in progress budgets. This table consolidates all these budget types and project budgets can be sent also to the general ledger budgets table LedgerBudget. Please see detailed overview regarding this table in chapter 3.11.1.1

Field name Data type Field description

RecId INTEGER Unique identifier of the row. Part of primary key.

ProjId CHAR(10) Project number. Unique project identifier in AX project module

TransId CHAR(20) Project forecast transaction ID. General ledger budget lines generated automatically from project module have this field filled, referring to the original project forecast transaction.

3.4.9 AssetTable

This table is central table for AX fixed asset module, containing list of fixed assets in the system. Fixed assets budgets can be converted to the ledger budget and created lines in LedgerBudget table have relation to the AssetTable. Please see detailed overview regarding this table in chapter 3.5.1.2

Field name Data type Field description

AssetId CHAR(20) Fixed asset number in the fixed asset register

Prepared for Microsoft Corporation

Page 40 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.4.10 AssetBook

Each fixed asset in the AssetTable can have several accounting profiles (value models), depending on local legislation and accounting best practices. For that reason LedgerBudget table has relation also to AssetBook, to identify exactly which asset profile created relevant budget transactions. Please see detailed overview regarding this table in chapter 3.5.1.3

Field name Data type Field description

AssetId CHAR(20) Fixed asset number in the fixed asset register.

BookId CHAR(10) Fixed asset value model code.

3.5 Fixed assets data structure Fixed asset functionality in Dynamics AX has three main transaction tables:

1. AssetTrans – fixed asset transactions. Based on this table also relevant transactions are made to general ledger (table LedgerTrans).

2. AssetDepBookTrans – fixed asset transactions what are not related with general ledger. This functionality provides additional opportunity to asset analyses.

3. AssetBudget – table that contains fixed asset budget transactions. These transactions can be converted to general ledger budget.

Below there are detailed descriptions about these three data structures

3.5.1 AssetTrans data structure Central table here is AssetTrans table. Asset specific tables in this data model are AssetTable (fixed asset register) and AssetBook (value models for specific fixed assets). Also dimensions table and fixes asset groups table are in the picture for analyse purposes.

Figure 6

Prepared for Microsoft Corporation

Page 41 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.5.1.1 AssetTrans

In this table most detailed level of fixed asset transactions are stored (acquisitions, revaluations, depreciations, sales etc.). Each transaction in the AssetTrans table creates also transaction in general ledger transactions table LedgerTrans. Transactions in LedgerTrans created by fixed asset functionality may be grouped together in the way that several AssetTrans lines can create one line in LedgerTrans

Field name Data type Field description

RecId INTEGER Unique row identifier in table and the primary key

AssetId CHAR(20) Fixed asset code, relation to the fixed asset register (AssetTable)

Txt CHAR(60) Text describing the transaction

TransDate DATE Date of transaction

Dimension CHAR(10) Analytical Dimension no. 1 value

Dimension2_ CHAR(10) Analytical Dimension no. 2 value

Dimension3_ CHAR(10) Analytical Dimension no. 3 value

TransType INTEGER Enumeration that describes fixed asset transaction type.

The values in that field can be following:

SQL value

AX value Description

0 None Unspecified, should not be used

1 Acquisition   

Prepared for Microsoft Corporation

Page 42 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

2 AcquisitionAdj  Acquisition Adjustment 

3 Depreciation  4 DepreciationAdj  5 Revaluation   6 WriteUpAdj   7 WriteDownAdj   8 DisposalSale  9 DisposalScrap   10 NetBookValue   11 ProfitLoss   12 AcqPriorYears   13 AcqThisYear  14 AcqAdjPriorYears   15 AcqAdjThisYear   16 DepPriorYears   17 DepThisYear   18 DepAdjPriorYears  19 DepAdjThisYear   20 RevaluePriorYears   21 RevalueThisYear   22 WriteUpAdjPriorYears  23 WriteUpAdjThisYear  24 WriteDownAdjPriorYears   25 WriteDownAdjThisYear   26 CapitalReserve   27 CapitalReserveTransfer  28 ExtraordinaryDepreciation   29 ExtraDepPriorYears   30 ExtraDepThisYear   31 DEL_Reclassification  Not used anymore 32 BonusDepreciation  33 BonusDepPriorYears   34 BonusDepThisYear   

Voucher CHAR(20) Transaction voucher number in general ledger

AmountCur REAL Amount in the currency of the transaction

ApprovedBy CHAR(10) Employee who approved the transaction

CurrencyCode CHAR(3) Currency code for the transaction

AmountMST REAL Transaction amount in default currency

PostingProfile CHAR(10) Identification of the transaction posting profile – how the transaction was posted to the general ledger

AssetGroup CHAR(10) Identification of the fixed asset group

BookId CHAR(10) Value model for the transaction, relation to the AssetBook table

Prepared for Microsoft Corporation

Page 43 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

ConsumptionQty REAL Quantity of consumption units for transaction type “Consumption”

ReClassification INTEGER If the fixed asset transaction type has been reclassified?

SQL value

AX value

0 No

1 Yes

3.5.1.2 AssetTable

Fixed asset main register table. In this table non financial fixed asset data is stored (asset name, responsible person, technical specification etc.).

Field name Data type Field description

AssetId CHAR(20) The fixed asset number for identification

AssetGroup CHAR(10) Fixed asset group to simplify the setup and reporting of assets

Name CHAR(30) Name that identifies the fixed asset. It can be used for search and filter purposes, as a range, and for sorting in inquiries and reports.

Location CHAR(20) Location for the fixed asset from the list of locations

SerialNum CHAR(20) Serial number for the fixed asset for identifying purposes

InsurancePolicyNum CHAR(20) Insurance policy number for the fixed asset

InsuredValue REAL Value that the fixed asset is insured for

Make CHAR(60) Name of the manufacturer of the item

Model CHAR(60) Model number of the item

GuaranteeDate DATE Date of the start of the guarantee for the fixed asset

MainAssetId CHAR(20) To display a hierarchical component structure, the main fixed asset for this component asset can be defined. A component fixed asset can be a main asset for another component asset, which means the structure can have many levels.

Responsible CHAR(10) Responsible employee name can be selected from the Employee table (EmplTable)

AssetType INTEGER The fixed asset type. Can be one of the following:

SQL value

AX value

0 Tangible   1 Intangible   2 Financial   3 Land and Buildings   4 Goodwill  

Prepared for Microsoft Corporation

Page 44 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

5 Other   

BarCode CHAR(20) Bar code digits assigned to the fixed asset

InsuranceDate1 DATE Insurance date field to track insurance end dates

InsuranceDate2 DATE Insurance date field to track insurance end dates

AssetReplaseCost REAL Cost to replace this fixed asset

SortingId CHAR(10) Alternative analytical field for the fixed asset

SortingId1 CHAR(10) Alternative analytical field for the fixed asset

SortingId2 CHAR(10) Alternative analytical field for the fixed asset

TechInfo1 CHAR(254) Field for technical information

TechInfo2 CHAR(254) Field for technical information

TechInfo3 CHAR(254) Field for technical information

LastMaintenance DATE Date of last maintenance

NextMaintenance DATE Date of next maintenance

PhysicalInventory DATE Date of last physical inventory update on this fixed asset

3.5.1.3 AssetBook

Table contains financial data about fixed asset (depreciation method, general ledger porting data, fixed asset possible sales value etc.) Each fixed asset specified in AssetTable must have at least one related record in AssetBook table. Asset can have more than one record in AssetBook, it means that financial accounting has been made for each value model described in AssetBook. It makes easy to create asset accounting for tax purposes for example.

Field name Data type Field description

AssetId CHAR(20) The fixed asset number for identification

BookId CHAR(10) Identification of the value model.

If fixed assets have been set up for accounting only, one value model per asset is needed.

If separate tax transactions must be posted, a value model for tax purposes also must be added to each asset.

Additional value models can be added for other accounting purposes, such as concern values of the fixed assets or for calculation purposes.

AssetGroup CHAR(20) Fixed asset group to simplify the setup and reporting of assets

Status INTEGER Various statuses are available during the service life of a fixed asset:

SQL value

AX value Description

0 NoAcquisition The default status of each new fixed asset until the first acquisition has been posted for the value model 

1 Open  The status for a fixed asset that has 

Prepared for Microsoft Corporation

Page 45 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

been acquired 2 Suspended  The status is assigned to the value 

model manually. Value models with this status are not available for posting fixed asset transactions and cannot be selected in the journals. 

3 Closed  The status is assigned to fixed assets when the last depreciation is posted and when the net book value becomes zero. 

4 Sold  The status is assigned to fixed assets and value models that have been disposed of by sale 

5 Scrapped  The status is assigned as soon as a Disposal ‐ scrap transaction has been posted in a journal 

Dimension CHAR(10) Analytical Dimension no. 1 value

Dimension2_ CHAR(10) Analytical Dimension no. 2 value

Dimension3_ CHAR(10) Analytical Dimension no. 3 value

PostingProfile CHAR(10) Identifies how fixed asset transactions are posted to the general ledger.

Depreciation INTEGER The field indicates that fixed assets can be depreciated

SQL value

AX value Description

0 No Cannot be depreciated 1 Yes  Depreciation is active 

Lifetime INTEGER When Depreciation periods are part of the setup of the depreciation calculation, they are used to calculate straight line depreciation and factor depreciation

LifetimeRest REAL The Depreciation periods remaining limits the number of depreciation periods that are left and indicates the number of times that depreciation still must be calculated. For new fixed assets it will be equal to Depreciation periods. For fixed assets that are partly depreciated already, it will be less than depreciation periods.

DepreciationConvention INTEGER The depreciation convention for the value model.

DepreciationStartDate DATE The starting date for the first depreciation calculation.

ScrapValue REAL The expected scrap value. This is part of the acquisition price, which is the value of the fixed asset at the end of its service life.

LastDapreciationDate DATE Date when the depreciation was calculated last time. This date is updated automatically each time that depreciation is posted for the fixed asset/value model

VendAccount CHAR(20) The vendor account number from where the fixed asset was purchased. It is updated automatically when a fixed asset is acquired using purchase orders.

Prepared for Microsoft Corporation

Page 46 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

PurchId CHAR(20) The identification of the acquisition purchase order

VendInvoiceId CHAR(20) The identification of the acquisition purchase order invoice

AcquisitionPrice REAL The acquisition price to be used in acquisition proposals.

AcquisitionDate DATE The system date when the fixed asset record is entered in the Fixed assets form. The date can changed if necessary. When an acquisition is posted, the acquisition date will be updated with the date of the actual acquisition. If the setup in Parameters allows multiple acquisitions, this date will be updated every time a new acquisition has been posted and display the latest acquisition date.

CustAccount CHAR(20) The customer account number where the fixed asset was sold. The customer account is updated automatically when a fixed asset is disposed externally using a free text invoice.

CustInvoiceId CHAR(20) Identification of the free text invoice.

DisposalDate DATE The date when the fixed asset was sold or scrapped.

SaleValue REAL The selling price of a fixed asset. The field is updated when a fixed asset is sold.

SortingId CHAR(10) Alternative analytical field for the fixed asset

SortingId2 CHAR(10) Alternative analytical field for the fixed asset

SortingId3 CHAR(10) Alternative analytical field for the fixed asset

ExeedingNetBookValue INTEGER The check box allows transactions, which would create a net book value greater than acquisition costs.

SQL value

AX value

0 No1 Yes   

NegativeNetBookValue INTEGER The check box allows transactions, which would create a negative net book value for the fixed asset/value model.

SQL value

AX value

0 No   1 Yes

UsedFromDate DATE The date that the asset was placed in service.

ServiceLIfe REAL The Service life of the fixed asset in years.

3.5.1.4 AssetGroup

This table contains predefined information for asset (depreciation information, asset bookinformationetc.), what simplifies asset creation process.

Field name Data type Field description

GroupId CHAR(10) Identification of the fixed asset group.

Prepared for Microsoft Corporation

Page 47 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

Name CHAR(30) Descriptive name for the fixed asset group.

AssetType INTEGER The fixed asset type. The classification can be used for sorting or selecting ranges on report.

The fixed asset type. Can be one of the following:

SQL value

AX value

0 Tangible   1 Intangible   2 Financial  3 Land and Buildings   4 Goodwill   5 Other   

3.5.1.5 Dimensions

AssetTrans table has relation also to the dimensions table. Please see dimensions table description in p. 3.1.2

3.5.2 AssetDepBookTrans data structure Data structure is pretty much the same as in AssetTrans. One change is that transactions do not have relation to dimensions table. Also there is no relation with general ledger transactions in LedgerTrans.

Figure 7

Prepared for Microsoft Corporation

Page 48 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.5.2.1 AssetDepBookTrans

AssetDepBookTrans table has similar structure than AssetTrans table. Different kind of asset transactions can be created to this table (acquisition, revaluation, depreciation etc.). Principle difference between these tables is the fact that AssetDepBookTrans table is not related with general ledger transactions. So each asset can have several financial accounting models, what do not change anything in general ledger level.

Field name Data type Field description

RecId INTEGER Unique row identifier in table and the primary key

ConsumptionQty REAL Quantity of consumption units for transaction type “Consumption”

DepreciationBookId CHAR(10) Depreciation book for the transaction, relation to the AssetDepBook table

AssetGroup CHAR(10) Identification of the fixed asset group

AmountMST REAL Transaction amount in default currency

CurrencyCode CHAR(3) Currency code for the transaction

AmountCur REAL Amount in the currency of the transaction

TransType INTEGER Enumeration that describes fixed asset transaction type.

The values in that field can be following:

SQL value

AX value Description

0 None  Unspecified, should not be used

Prepared for Microsoft Corporation

Page 49 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

1 Acquisition   2 AcquisitionAdj  Acquisition 

Adjustment 3 Depreciation  4 DepreciationAdj   5 Revaluation   6 WriteUpAdj   7 WriteDownAdj  8 DisposalSale   9 DisposalScrap   10 NetBookValue   11 ProfitLoss   12 AcqPriorYears  13 AcqThisYear   14 AcqAdjPriorYears   15 AcqAdjThisYear   16 DepPriorYears   17 DepThisYear  18 DepAdjPriorYears   19 DepAdjThisYear   20 RevaluePriorYears   21 RevalueThisYear  22 WriteUpAdjPriorYears  23 WriteUpAdjThisYear   24 WriteDownAdjPriorYears   25 WriteDownAdjThisYear   26 CapitalReserve  27 CapitalReserveTransfer  28 ExtraordinaryDepreciation   29 ExtraDepPriorYears   30 ExtraDepThisYear   31 DEL_Reclassification Not used anymore32 BonusDepreciation   33 BonusDepPriorYears   34 BonusDepThisYear   

TransDate DATE Date of transaction

Txt CHAR(60) Text describing the transaction

AssetId CHAR(20) Fixed asset code, relation to the fixed asset register (AssetTable)

OriginatingVoucher CHAR(20) The Reference to the general ledger transaction that caused transaction in the AssetDepBook table

ReClassification INTEGER If the fixed asset transaction type has been reclassified?

SQL value

AX value

0 No

Prepared for Microsoft Corporation

Page 50 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

1 Yes

3.5.2.2 AssetTable

For AssetGrpou table description please see p. 3.5.1.2

3.5.2.3 AssetDepBook

Table contains financial data about fixed asset (depreciation method, general ledger porting data, fixed asset possible sales value etc.) Each fixed asset specified in AssetTable can have more than one record in AssetDepBook, it means that asset specific accounting has been made for each depreciation book described in AsseDeptBook.

Field name Data type Field description

AssetId CHAR(20) The fixed asset number for identification

DepreciationBookId CHAR(10) Identification of the value model.

If fixed assets have been set up for accounting only, one value model per asset is needed.

If separate tax transactions must be posted, a value model for tax purposes also must be added to each asset.

Additional value models can be added for other accounting purposes, such as concern values of the fixed assets or for calculation purposes.

AssetGroupId CHAR(20) Fixed asset group to simplify the setup and reporting of assets

AssetStatus INTEGER Various statuses are available during the service life of a fixed asset:

SQL value

AX value Description

0 NoAcquisition The default status of each new fixed asset until the first acquisition has been posted for the value model 

1 Open  The status for a fixed asset that has been acquired 

2 Suspended The status is assigned to the value model manually. Value models with this status are not available for posting fixed asset transactions and cannot be selected in the journals. 

3 Closed The status is assigned to fixed assets when the last depreciation is posted and when the net book value becomes zero. 

4 Sold The status is assigned to fixed assets and value models that have been disposed of by sale 

5 Scrapped  The status is assigned as soon as a Disposal ‐ scrap transaction has been posted in a journal 

Prepared for Microsoft Corporation

Page 51 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

Depreciation INTEGER The field indicates that fixed assets can be depreciated

SQL value

AX value Description

0 No Cannot be depreciated 1 Yes  Depreciation is active 

Lifetime INTEGER When Depreciation periods are part of the setup of the depreciation calculation, they are used to calculate straight line depreciation and factor depreciation

LifetimeRest REAL The Depreciation periods remaining limits the number of depreciation periods that are left and indicates the number of times that depreciation still must be calculated. For new fixed assets it will be equal to Depreciation periods. For fixed assets that are partly depreciated already, it will be less than depreciation periods.

DepreciationStartDate DATE The starting date for the first depreciation calculation.

ScrapValue REAL The expected scrap value. This is part of the acquisition price, which is the value of the fixed asset at the end of its service life.

LastDapreciationDate DATE Date when the depreciation was calculated last time. This date is updated automatically each time that depreciation is posted for the fixed asset/value model

VendAccount CHAR(20) The vendor account number from where the fixed asset was purchased. It is updated automatically when a fixed asset is acquired using purchase orders.

PurchId CHAR(20) The identification of the acquisition purchase order

VendInvoiceId CHAR(20) The identification of the acquisition purchase order invoice

AcquisitionPrice REAL The acquisition price to be used in acquisition proposals.

AcquisitionDate DATE The system date when the fixed asset record is entered in the Fixed assets form. The date can changed if necessary. When an acquisition is posted, the acquisition date will be updated with the date of the actual acquisition. If the setup in Parameters allows multiple acquisitions, this date will be updated every time a new acquisition has been posted and display the latest acquisition date.

CustAccount CHAR(20) The customer account number where the fixed asset was sold. The customer account is updated automatically when a fixed asset is disposed externally using a free text invoice.

CustInvoiceId CHAR(20) Identification of the free text invoice.

DisposalDate DATE The date when the fixed asset was sold or scrapped.

SaleValue REAL The selling price of a fixed asset. The field is updated when a fixed asset is sold.

SortingId CHAR(10) Alternative analytical field for the fixed asset

SortingId2 CHAR(10) Alternative analytical field for the fixed asset

SortingId3 CHAR(10) Alternative analytical field for the fixed asset

ExeedingNetBookValue INTEGER The check box allows transactions, which would create a net book

Prepared for Microsoft Corporation

Page 52 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

value greater than acquisition costs.

SQL value

AX value

0 No1 Yes

NegativeNetBookValue INTEGER The check box allows transactions, which would create a negative net book value for the fixed asset/value model.

SQL value

AX value

0 No   1 Yes

UsedFromDate DATE The date that the asset was placed in service.

ServiceLIfe REAL The Service life of the fixed asset in years.

3.5.2.4 AssetGroup

For AssetGrpou table description please see p. 3.5.1.4

3.5.3 AssetBudget data structure In the centre of that data structure is budget transaction table AssetBudget. Surrounding parameter tables are LedgerTable, Dimensions, AssetBook, AssetGroup, AssetTable and BudgetModel. BudgetModel table can contain some hierarchy by referring to itself.

Figure 8

3.5.3.1 AssetBudget

Table contains budget transactions for fixed assets. Budget transactions can be transferred to the ledger

Prepared for Microsoft Corporation

Page 53 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

budget automatically. Fixed asset budget can be calculated like normal asset transactions, only budgeting journals are used. So the transaction types are similar than the financial transaction types.

Field name Data type Field description

RecId INTEGER Unique row identifier in table and the primary key

BudgetModel CHAR(10) The budget model number. As one fixed asset can have several budget versions then different budget model codes can be used for that purpose.

Relation: AssetBudget.BudgetModel = BudgetModel.ModelId

TransType INTEGER Enumeration that describes fixed asset transaction type.

The values in that field can be following:

SQL value

AX value Description

0 None  Unspecified, should not be used

1 Acquisition  2 AcquisitionAdj  Acquisition 

Adjustment 3 Depreciation   4 DepreciationAdj  5 Revaluation   6 WriteUpAdj   7 WriteDownAdj   8 DisposalSale   9 DisposalScrap  10 NetBookValue   11 ProfitLoss   12 AcqPriorYears   13 AcqThisYear  14 AcqAdjPriorYears  15 AcqAdjThisYear   16 DepPriorYears   17 DepThisYear   18 DepAdjPriorYears  19 DepAdjThisYear  20 RevaluePriorYears   21 RevalueThisYear   22 WriteUpAdjPriorYears   23 WriteUpAdjThisYear  24 WriteDownAdjPriorYears   25 WriteDownAdjThisYear   26 CapitalReserve   27 CapitalReserveTransfer   28 ExtraordinaryDepreciation  29 ExtraDepPriorYears   30 ExtraDepThisYear   

Prepared for Microsoft Corporation

Page 54 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

31 DEL_Reclassification  Not used anymore 32 BonusDepreciation   33 BonusDepPriorYears   34 BonusDepThisYear  

TransDate DATE Date of transaction

AssetId CHAR(20) Fixed asset code, relation to the fixed asset register (AssetTable)

AmountCur REAL Amount in the currency of the budget transaction

Txt CHAR(60) Text describing the budget transaction

LedgerAccount CHAR(20) Account number for posting in General ledger budget

LedgerAccountOffset CHAR(20) Offset account number for posting in ledger budget

CurrencyCode CHAR(3) Currency code for the transaction

BudgetPostingStatus INTEGER Posting status for the budget.

Either Posted to fixed asset budgets or Posted to ledger budgets.

SQL value

AX value Description

0 Notposted Not posted

1 PostedToAssets Posted to fixed asset budgets

2 PostedToBudgets Posted to ledger budgets

BookId CHAR(10) Value model for the transaction, relation to the AssetBook table

ConsumptionQty REAL Quantity of consumption units for transaction type “Consumption”

Dimension CHAR(10) Analytical Dimension no. 1 value

Dimension2_ CHAR(10) Analytical Dimension no. 2 value

Dimension3_ CHAR(10) Analytical Dimension no. 3 value

3.5.3.2 AssetTable

For AssetTable table description please see p. 3.5.1.2

3.5.3.3 AssetBook

For AssetBook table description please see p. 3.5.1.3

3.5.3.4 AssetGroup

For AssetGrpoup table description please see p. 3.5.1.4

Prepared for Microsoft Corporation

Page 55 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.5.3.5 BudgetModel

For BedgetModel table description please see p. 3.4.4

3.5.3.6 Dimensions

LedgerBudget table has relation to the dimensions table. Please see dimensions table description in p. 3.1.2

3.5.3.7 LedgerTable

LedgerBudget table has relation to the Ledger accounts table by using account number (AccountNum field). Please see ledger accounts table description in p. 3.1.1

3.6 Accounts receivables data structure Below two different data structures for accounts receivables are described:

1. CustTrans – central table for customer transactions. Based on that table customer balance can be calculated. All invoices and payments are recorded to this table and also link between invoice and payment is maintained.

2. CustInvoiceTrans – this table contains invoice line information. By using this information sales analyses can be performed answering questions like:

a. What items and services are sold to what customers

b. Which items/services are best selling

c. What are sale margins and cost price for sales

3.6.1 CustTrans Data structure Figure 9

Prepared for Microsoft Corporation

Page 56 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.6.1.1 CustTrans

All kind of customer transactions are recorded in this table. In addition to most common transactions like invoices and payments, also different periodical transactions are stored in this table (exchange adjustment, customer settlement etc.). All transactions in CustTrans table, cause also changes in general ledger transactions table LedgerTrans.

Field name Data type Field description

RecId INTEGER Unique row identifier in table and the primary key

AccountNum CHAR(20) Unique identifier of a customer who pays the invoice.

Voucher CHAR(20) The voucher number for the related ledger transaction.

Invoice CHAR(20) The invoice number that the transaction is related to

Txt CHAR(60) Descriptive text for the current transaction

AnmountCur REAL The total amount of the transaction in the specified currency

SettleAmountCur REAL The settled portion of the transaction amount in the currency that was used for the settlement

AmountMST REAL The amount of the transaction in the default currency for the

Prepared for Microsoft Corporation

Page 57 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

company

SettleAmountMST REAL The settled portion of the amount in default currency, including any exchange rate adjustments and penny differences

CurrencyCode CHAR(3) The currency code for the transaction

DueDate DATE The date by which the customer must pay the full amount (without the cash discount)

LastSettleVoucher CHAR(20) Invoice for example can be settled against several payments. This voucher refers to the settlement voucher number from the latest payment.

LastSettleDate DATE The date of the last settlement, related with the previous field

LastExcAdjVoucher CHAR(20) The voucher number for the latest exchange rate adjustment for the transaction

Closed DATE If the transaction has been settled, the date for the full settlement is displayed. This date corresponds to the transaction date of the final payment. If the field is empty, the transaction has not yet been fully settled.

For example, if a prepayment posted on January 1 is settled against an invoice posted on February 1, the invoice date is displayed.

TransType INTEGER Field is determined by the function that generated the transaction. From that value it can be monitored from which AX functional area the transaction was created.

Possible values are:

SQL value

AX value

0 None 1 Transfer 2 Sales 3 Purch4 Invent 5 Production 6 Project 7 Interest 8 Cust9 ExchAdjustment 10 SummedUp 11 Payroll 12 FixedAssets 13 CollectionLetter14 Vend 15 Payment 16 Tax 17 Bank18 Conversion19 BillOfExchange 20 PromissoryNote 

Prepared for Microsoft Corporation

Page 58 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

21 Cost 22 Work 23 Fee 24 Settlement

ApprovedBy CHAR(10) The initials or identification of the employee who approved the transaction

Approved INTEGER If this check box is selected, the transaction has been approved

SQL value

AX value Description

0 No  Not approved 1 Yes  Approved 

Dimension CHAR(10) Analytical Dimension no. 1 value

Dimension2_ CHAR(10) Analytical Dimension no. 2 value

Dimension3_ CHAR(10) Analytical Dimension no. 3 value

ExchAdjustment REAL If invoicing was done in a foreign currency, and if an exchange rate adjustment was made between the time of invoicing and the time of payment, then the amount of the exchange rate adjustment in the default currency is displayed in this field

LastExchAdj DATE The date of latest rate adjustment for the transaction

Correct INTEGER If this check box is selected, the transaction is a correction of another transaction

Settlement INTEGER If this check box is selected, the transaction can be settled automatically. If the check box is cleared, the transaction must be settled manually

CompanyBankAccountId CHAR(10) The bank account for your company that is affected by the selected transaction

PaymMode CHAR(10) The payment method used for this customer transaction (bank file types, payment steps etc.).

PaymReference CHAR(20) A reference to a specific payment. Used for linking invoices and payments together through specific identifier.

PaymMethod INTEGER The terms of payment used for this transaction.

Values can be:

SQL value

AX value Description

0 Net  The payment deadline is after certain time period (days, months) 

1 Curr. Mth. The payment deadline is at the end of current month 

2 Curr. Qtr.  The payment deadline is at the end of current quarter 

3 Curr. Year. The payment deadline is at the end of current year 

4 Curr. Week.  The payment deadline is at the end of current week 

Prepared for Microsoft Corporation

Page 59 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

5 C.O.D  Cash On Delivery – money is paid when goods/services are delivered 

CashPayment INTEGER The payment must be done by using cash (not checks)

SQL value

AX value

0 No   1 Yes   

DeliveryMode CHAR(10) Mode of delivery according to the means of transport relevant for the current order

PostingProfile CHAR(10) Identification of the transaction posting profile – how the transaction was posted to the general ledger

OffsetRecId INTEGER Reference to the settlement transactions.

If the transaction is invoice the field refers to the relevant payment RecId. If the transaction is payment the field refers to the relevant invoice RecId Relation: RecId = OffsetRecId

EUROTriangulation INTEGER Selected if the exchange rate is included in EURO triangulation schema.

OrderAccount CHAR(20) Unique identifier of a customer who receives the goods/services.

CashDiscountCode CHAR(10) Cash discount relevant for the current transaction

Prepayment INTEGER If this is check box is selected, the payment is a prepayment.

SQL value

AX value

0 No

1 Yes

CustExchAdjustmentRealized REAL The unrealized exchange adjustment amount of this transaction

CustExchAdjustmentUnrealized REAL The realized exchange adjustment amount of this transaction

BillOfExchangeId CHAR(20) The bill of exchange identifier that corresponds to the transaction

BillOfExchangeStatus INTEGER Displays one of the following bill of exchange statuses:

SQL value

AX value

0 None   1 Drawn   2 Redrawn   3 Protested4 Honored   5 Remitted   6 Invoiced   7 InvoicedRemitted   

BillOfExchangeSeqNum INTEGER Displays the number 1 for the first cycle of a bill of exchange and the

Prepared for Microsoft Corporation

Page 60 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

number 2 for the first redraw action

CollectionLetterCode INTEGER The collection letter code that is included in the collection letter for the transaction

CancelledPayment INTEGER Payment in the table is cancelled

3.6.1.2 CustPaymModeTable

Table what contains different payment modes what can be used by customers.

Field name Data type Field description

PaymMode CHAR(10) Unique identifier for the method of payment. For example, BANK for the method for bank payments from customers. This field is primary key.

Name CHAR(30) Enter a short description of the payment method

BankTransType INTEGER The transaction type for the bank account. Used for analytical purposes

3.6.1.3 CustSettlement

Table, where invoice and payment settlement transactions are stored. In case invoice is paid partially, there are several settlement transactions, showing which payment amount is covering relevant invoice. Also one payment can cover more than one invoice, in this case several invoice settlement lines are referring to one payment lines. This table is closely related with CustTrans table reference is made by using RecId fields. Information from this table is needed, when historical invoice and payment status has to be monitored. Current status of customer balance is available in CustTrans, but balances for specific date in the past need to be calculated by using data from CustSettlement table

Field name Data type Field description

RecId INTEGER Unique row identifier in table and the primary key

TransRecId INTEGER Related transaction RecId in the CustTrans table. Defines the transaction based on what the settlement transactions is created

TransDate DATE The settlement date

OffsetTransVoucher CHAR(20) Reference to the settled voucher number

AccountNum CHAR(20) Customer account number, relation to CustTable

SettleAmountCur REAL The amount of the settlement transaction in the specified currency

SettleAmountMST REAL The amount of the settlement transaction in the company currency (exchange adjustments included)

ExchAdjustment REAL Exchange rate adjustment amount calculated during the settlement

OffsetRecid INTEGER Related offset transaction RecId in the CustTrans table. Defines the transaction what was settled with the base transaction.

DueDate DATE Deadline for the invoice payment

UtilizedCashDisc REAL Cash discount what was calculated to the customer

Prepared for Microsoft Corporation

Page 61 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

CustCashDiscDate DATE Date when the cash discount is calculated

PennyDiff REAL Penny difference adjustments made during the settlement

CanBeReversed INTEGER If “yes”, then transaction can be manually reversed back to the opened transactions. Value of that field is “no” in case the transactions are several times closed and then opened. Only last closing has opportunity to be reversed to the open.

Dimension CHAR(10) Analytical Dimension no. 1 value

Dimension2_ CHAR(10) Analytical Dimension no. 2 value

Dimension3_ CHAR(10) Analytical Dimension no. 3 value

3.6.1.4 CustTable

Central client register table. Statistic and setup values are defined in this table.

Field name Data type Field description

AccountNum CHAR(20) Unique identifier of a customer

Name CHAR(60) Name of the customer. This name is printed on documents, such as invoices and account statements.

InvoiceAccount CHAR(20) Invoice account, to which the customer is linked. The invoice account is the account to which the invoice amount is debited. If no invoice account is defined, the customer account is used as the invoice account.

CustGroup CHAR(10) Customer group that the customer belongs to. Customer group contains number of setup parameters regarding general ledger posting and payment management.

SalesGroup CHAR(10) Sales group that is attached to the selected customer. The sales group includes a sales representative for the customer.

Blocked INTEGER Blocking that applies to the selected customer account.

Values can be:

SQL value

AX value Description

0 No  No blocking. All forms of transaction are permitted. 

1 Invoice  Account is blocked for picking/delivery/invoicing. 

2 All  All transactions are blocked. 

OneTimeCustomer INTEGER Customer is a one-time customer, created automatically by the system.

CrediMax REAL Maximum amount that the selected customer is allowed to have as an outstanding account balance.

This amount is always stated in the default currency of the customer.

MandatoryCreditLimit INTEGER Check box to enforce automatic credit limit check.

Prepared for Microsoft Corporation

Page 62 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

Dimension CHAR(10) Analytical Dimension no. 1 value

Dimension2_ CHAR(10) Analytical Dimension no. 2 value

Dimension3_ CHAR(10) Analytical Dimension no. 3 value

VendAccount CHAR(20) Vendor account number, if any, of the selected customer (in case the customer is also registered as a vendor). If a customer has a credit amount because of overpayment or a credit note, the reimbursement periodic job transfers the amount to the vendor account of the customer.

PriceGroup CHAR(10)

MulitiLIneDisc CHAR(10) Multiline discount group that the customer belongs to.

EndDisc CHAR(10) Total discount group that the customer belongs to. The total discount group determines which discounts are calculated automatically. Total discounts are given for a total order.

CountryRegionId CHAR(10) Country/region of the customer address.

DlvTerm CHAR(10) The standard terms of delivery for the selected customer (FOB, FAS, EXW etc.).

DlvMode CHAR(10) Mode of delivery that applies to sales to the selected customer (air, water, railway etc.).

ZIpCode CHAR(10) Postal/ZIP code of the customer address. This code is often used for searching and sorting.

State CHAR(10) State of the customer address. This field is often used for searching and sorting.

County CHAR(10) Country/region of the customer address.

StatisticsGroup CHAR(10) Statistics group that the customer is attached to, used especially for statistical purposes.

PaymMode CHAR(10) Method of payment typically used for payments from the customer.

SalesPoolId CHAR(10) Sales order pool that sales orders to the selected customer are placed in.

LanguageId CHAR(10) Language used for all external documents to the selected customer, such as invoices and account statements.

LineOfBusinessId CHAR(10) Line of business of the customer. Defined for statistical purposes.

DestinationCodeId CHAR(10) Destination code that applies to the customer. Destination codes can be used to divide deliveries into groups according to customer location.

SalesCalendarId CHAR(10) Days on which the customer wants to receive their orders.

CustClassificationId CHAR(10) Customer classification group of the selected customer. Defined for statistical purposes.

3.6.1.5 Dimensions

LedgerBudget table has relation to the dimensions table. Please see dimensions table description in p. 3.1.2

Prepared for Microsoft Corporation

Page 63 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.6.2 CustInvoiceTrans Data structure Figure 10

3.6.2.1 CustInvoiceJour

Table is dedicated to store invoice header information. In this table there are lots of fields regarding different invoice lines summaries. Also big amount of analytical information is stored in this table (Customers, Addresses, Dimensions etc.)

Field name Data type Field description

RecId INTEGER Unique row identifier in table and the primary key

CustGroup CHAR(10) Customer group that the customer belongs to. Customer group contains number of setup parameters regarding general ledger posting and payment management.

RefNum INTEGER Defines the register from where the invoice is generated. Values can be:

SQL value

AX value Description

0 SalesOrder1 Project2 Cust   

Prepared for Microsoft Corporation

Page 64 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3 Interest   

SalesId CHAR(20) The sales order or project numbers that the invoice is updated from.

OrderAccount CHAR(20) Customer ID

InvoiceAccount CHAR(20) Specified if the account number of the customer you want to invoice is different from the customer that placed the sales order.

InvoiceDate DATE Displays the invoice date, which is also used as the posting date. This date is also used to calculate the due date and the cash discount date.

DueDate DATE Deadline for invoice payment

CashDisc REAL Cash discount offering for the invoice

CashDiscDate DATE Deadline for cash discount regarding the invoice

Qty REAL Invoice quantity summed up by invoice lines. If different units are used in different invoice lines these amounts in different units are simply summed up.

Volume REAL Summarized invoice lines inventory volume in cubic meters.

Weight REAL Summarized invoice lines inventory weight in used units of measure.

SumLineDisc REAL Summarized invoice lines line discount amount in invoice currency

SalesBalance REAL Summarized invoice lines sales amounts in invoice currency (misc. charges, end discounts, sales taxes are not included)

EndDisc REAL End discount of the invoice

InvoiceAmount REAL Amount in invoice currency what is invoiced to the customer (SalesBalance + misc. charges - end discounts + sales taxes etc)

CurrencyCode CHAR(3) Invoice currency code

ExchRate REAL Currency exchange rate used during invoice posting.

SalesAdministrator CHAR(10) Employee code who received the sales order the invoice is related with.

InvoiceId CHAR(20) Invoice number

LedgerVoucher CHAR(20) Accounting transaction number in general ledger (LedgerTrans table) created during invoice posting process.

Dimension CHAR(10) Analytical Dimension no. 1 value

Dimension2_ CHAR(10) Analytical Dimension no. 2 value

Dimension3_ CHAR(10) Analytical Dimension no. 3 value

ListCode INTEGER Indication of the list code for the current invoice. This is decisive for reporting to the EU sales list, and offers the options:

SQL value

AX value Description

0 Not included  There will be no list code on the invoice. 

1 EU trade  Trade with a customer in another EU country. 

Prepared for Microsoft Corporation

Page 65 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

2 Production on toll 

Value‐added work with a customer in another EU country. 

3 Triangular/EU trade 

Trade between customers in different EU countries. 

4 Triangular/Prod. on toll 

Value‐added work between customers in different EU countries. 

IntrastatDispach CHAR(20) Shipment batch number in Intrastat reporting.

PurchaseOrder CHAR(20) Purchase order ID related with the invoice. If empty then invoice is generated by using free text invoice functionality.

DlvTerm CHAR(10) The standard terms of delivery for the invoice (FOB, FAS, EXW etc.).

DlvMode CHAR(10) Mode of delivery that applies to invoice (air, water, railway etc.).

Payment CHAR(10) Terms of payment applicable to the current invoice. The due date is automatically calculated when invoicing the order based on the terms set up for payment in the sales order.

CashDiscCode CHAR(10) Cash discount code relevant for the current invoice.

InvoiceRoundOff REAL Rounding made in the invoice.

SumMarkup REAL Sum of different additional costs added to the invoice (misc. charges etc.) in invoice currency.

BackOrder INTEGER Invoice is related with backorder sales

YES / NO

DlvZipCode CHAR(10) Postal code of the delivery address.

DlvCounty CHAR(10) Specified region for the delivery

DlvCountryRegionId CHAR(10) Specified country for the delivery

DlvState CHAR(10) Specified state for the delivery

OneTimeCustomer INTEGER Invoice in generated by using “One time customer” functionality

YES / NO

PaymentSched CHAR(30) Payment schedule code related to the invoice

SumTax REAL Tax amount calculated in the invoice.

SalesType INTEGER Sales order type use for invoice generation. Types can be following:

SQL value

AX value

0 Journal   1 Subscription   2 Sales order   3 Returned item  4 Blanket order  5 Item requirements   

EUSalesList CHAR(20) Id number in European Union sales reporting.

Prepared for Microsoft Corporation

Page 66 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

ExchRateSecondary REAL Currency exchange rate for parallel currency

Triangulation INTEGER Shows if the sale is made in triangular mode according to EU legislation.

YES / NO

LanguageId CHAR(6) Specifies the language used in the invoice printout.

InvoicingName CHAR(60) Name on the company the invoice is written to.

InvoicingAddress CHAR(250) Invoice address

InvZipCode CHAR(10) Postal code of the delivery address.

InvCounty CHAR(10) Specified region for the delivery

InvCountryRegionId CHAR(10) Specified country for the delivery

InvState CHAR(10) Specified state for the delivery

ContactPersonId CHAR(10) Relation to the ContactPerson table identifying relevant contact in the client side.

SalesOriginId CHAR(10) Code for sales origin (internet, telesales etc.)

BillOfLadingId CHAR(17) Information about Bill Of Lading transportation code

InvoiceAmountMST REAL Amount in default currency what is invoiced to the customer (SalesBalance + misc. charges - end discounts + sales taxes etc)

InvoiceRoundOffMST REAL Rounding made in the invoice in default currency

SumMarkupMST REAL Sum of different additional costs added to the invoice (misc. charges etc.) in default currency.

SumLineDIscMST REAL Summarized invoice lines line discount amount in default currency

EndDiscMST REAL End discount of the invoice in default currency

SalesBalanceMST REAL Summarized invoice lines sales amounts in default currency (misc. charges, end discounts, sales taxes are not included)

SumTaxMST REAL Tax amount calculated in the invoice.

InterCompanyCompanyId CHAR(3) Company identification in the intercompany transactions

InterCompanyPurchId CHAR(20) Related purchase id in the intercompany transactions.

3.6.2.2 CustInvoiceTrans

Current table contains information about customer invoice lines (what items are sold to the clients and what is the price, what is discount rate and what sales group sold this item). This table has relation with InventTrans table, where item cost price is declared, what makes possible sales margin calculations.

Field name Data type Field description

RecId INTEGER Unique row identifier in table and the primary key

InvoiceId CHAR(20) Invoice number

InvoiceDate DATE Displays the invoice date, which is also used as the posting date. This date is also used to calculate the due date and the cash discount

Prepared for Microsoft Corporation

Page 67 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

date.

InventTransId CHAR(20) Inventory transaction code created in central inventory movement register (inventTrans). The field is empty in case free text invoice functionality is used for invoicing.

InventRefId CHAR(20) Reference to the document what covers the need for the inventory. Document type is defined in the field InventRefType. The field is empty in case free text invoice functionality is used for invoicing.

ItemId CHAR(20) Code of the sold item. The field is empty in case free text invoice functionality is used for invoicing.

ExternalItemId CHAR(20) The external item number to specify the customer's item number for the inventory item

Name CHAR(1000) Item description

CurrencyCode CHAR(3) Invoice currency code

DlvCounty CHAR(10) Specified region for the item delivery

PriceUnit CHAR(10) Price unit specifies the quantity of the item covered by the sales price.

Qty REAL Item sales quantity

SalesPrice REAL A sales price for the item

DiscPercent REAL Line discount rate in invoice currency.

DiscAmount REAL Line discount amount in invoice currency.

LineAmount REAL Amount of the sales line in invoice currency (excluding tax)

SalesGroup CHAR(10) Sales group information for commission calculation.

LedgerAccount CHAR(20) An account number to record a sale directly in the sales account, regardless of any association the item group may have with specific sales accounts in the posting setup for the item group.

Dimension CHAR(10) Analytical Dimension no. 1 value

Dimension2_ CHAR(10) Analytical Dimension no. 2 value

Dimension3_ CHAR(10) Analytical Dimension no. 3 value

QtyPhysical REAL Sales quantity that have physically delivered to the client.

PartDelivery INTEGER If the sales line is delivered to the customer in partial manner

DlvState CHAR(10) Specified state for the delivery

SalesId CHAR(20) The sales order or project numbers that the invoice line is related to.

SalesUnit CHAR(10) Unit in which the item is sold.

CommissCalc INTEGER Defines if the sales commission calculation is active for the sales line

YES / NO

CommissAmountCur REAL Specifies the commission amount in invoice currency

TransactionCode CHAR(10) Transaction codes for intrastat reporting

DeliveryType CHAR(10) Specifies if the direct delivery functionality is used:

SQL AX value

Prepared for Microsoft Corporation

Page 68 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

value

0 None   1 Direct delivery   

CountryRegionOfShipment CHAR(10) Specified country for the delivery

ItemCodeId CHAR(10) Item commodity codes for EU reporting

TaxAmount REAL Sales tax amount in sales line.

MultiLnDisc REAL Multi-line discount as an amount per price unit.

MultiLnPercent REAL The calculated multiline discount percentage

LineDisc REAL Line discount amount in invoice currency

LinePercent REAL Line discount percent in invoice currency

OrigSalesId CHAR(20) The sales order or project numbers that the invoice line is updated from.

TransPort CHAR(10) Transport method for Intrastat reporting

InventDimId CHAR(20) Foreign key to the table InventDim. Each InventDimId contains unique dimension combination

OrigCountryRegionId CHAR(10) Country/region of the sold item origin.

StatProcId CHAR(10) Statistical procedures for Intrastat reporting.

DlvDtate DATE Delivery date for the specific sales line

LineAmountTax REAL Sales tax amount included in the sales amount, in case sales tax is included in prices (invoice currency)

Port CHAR(10) Port identification used for Intrastat reporting.

AssetId CHAR(20) Reference to the fixed asset number, if sales is related with fixed assets.

AssetBookId CHAR(10) Reference to the fixed asset accounting profile, if sales is related with fixed assets.

LineAmountMST REAL Amount of the sales line in company currency (excluding tax)

TaxAmountMST REAL The sales tax in the default currency (company currency). If necessary, the amount is converted using the exchange rates in the Exchange rates form.

LineAmountTaxMST REAL Sales tax amount included in the sales amount, in case sales tax is included in prices (company currency).

CommissAmountMST REAL Specifies the commission amount in invoice currency.

SumLineDisc REAL Sales line discount amount in invoice currency.

SumLineDiscMST REAL Sales line discount amount in company currency.

InterCompanyInventTransId CHAR(20) Reference number to the intercompany inventory transaction in the relevant company database

StatLineAmountMST REAL Transaction amount in default currency.

IntrastatDispachId CHAR(20) Shipment batch number in intrastat reporting.

InventQty REAL Quantity in the inventory unit of the item.

Prepared for Microsoft Corporation

Page 69 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

OrigState CHAR(10) State of the item origin.

InventRefType INTEGER Defines the type of the document what covers the need for the inventory. Types Can be:

SQL value

AX value

0 None   1 Sales order2 Purchase order3 Production   4 Production line   5 Inventory journal   6 CRM quotation7 Transfer order

InventRefTransId CHAR(20) Inventory transaction code created in central inventory movement register (inventTrans) and refers to the document what covers the need for the inventory

DlvCountryRegionId CHAR(10) Delivery country/region of the sold item.

Weight REAL Total weight of the sold item line in the used units of measure

3.6.2.3 InventTrans

Table contains all inventory related transactions, including customer related sales transactions. In current data model item cost price from that table is used for sales margin calculation. For detailed description about this table please see chapter 3.8.1

3.6.2.4 InventDim

For table description please see p. 3.8.2

3.6.2.5 LedgerTable

For table description please see p. 3.1.1

3.6.2.6 InventTable

For table description please see p. 3.8.4

3.6.2.7 CommissionSalesRep

Depending on the system setup, sales lines can generate commission calculation for sales personnel. Sales personnel are recorded in current table and grouped to the sales groups (CommissionSalesGroup table) and

Prepared for Microsoft Corporation

Page 70 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

sales groups are linked with the CustInvoiceTrans table.

Field name Data type Field description

GroupId CHAR(10) Commission group id, foreign key to the table CommissionSalesGroup

EmplId CHAR(10) Employee id included in the commission sales group

Proportion REAL The percentage rate that the individual employee receives in the commission that is calculated for the commission sales group

3.6.2.8 CommissionSalesGroup

Table what groups together sales representatives from table CommissionSalesRep and is linked with sales lines table CustInvoiceTrans.

Field name Data type Field description

GroupId CHAR(10) The code name or ID of the commission sales group.

Name CHAR(60) The name of the commission sales group.

3.6.2.9 CustTable

Central client register table. Lot of fields for statistic and setup purposes is created in this table. For detailed description about this table please see chapter 3.6.1.4

Field name Data type Field description

3.6.2.10 Dimensions

LedgerBudget table has relation to the dimensions table. Please see dimensions table description in p. 3.1.2

3.7 Accounts payables data structure Below two different data structures for accounts payables are described. There structures are very similar to the accounts receivables data structure described in section 3.6:

3. VendTrans – central table for vendor transactions. Based on that table vendor balance can be calculated. All invoices and payments are recorded to this table and also link between invoice and payment is maintained.

4. VendInvoiceTrans – this table contains invoice line information. By using this information sales analyses can be performed answering questions like:

a. What items and services are purchased whom which vendor

b. Which items/services are purchased most

Prepared for Microsoft Corporation

Page 71 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.7.1 VendTrans Data structure Figure 11

3.7.1.1 VendTrans

All kind of vendor transactions are recorded in this table. In addition to most common transactions like invoices and payments, also different periodical transactions are stored in this table (exchange adjustment, customer settlement etc.). All transactions in VendTrans table, cause also changes in general ledger transactions table LedgerTrans.

Field name Data type Field description

Prepared for Microsoft Corporation

Page 72 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.7.1.2 VendPaymModeTable

Table what contains different payment modes what can be used by vendors.

Field name Data type Field description

3.7.1.3 VendSettlement

Table, where invoice and payment settlement transactions are stored. In case invoice is paid partially, there are several settlement transactions, showing which payment amount is covering relevant invoice. Also one payment can cover more than one invoice, in this case several invoice settlement lines are referring to one payment lines. This table is closely related with VendTrans table reference is made by using RecId fields. Information from this table is needed, when historical invoice and payment status has to be monitored. Current status of vendor balance is available in CustTrans, but balances for specific date in the past need to be calculated by using data from CustSettlement table

Field name Data type Field description

3.7.1.4 VendTable

Central vendor register table. Most of the fields are dedicated to the statistic and setup.

Field name Data type Field description

3.7.1.5 Dimensions

LedgerBudget table has relation to the dimensions table. Please see dimensions table description in p. 3.1.2

3.7.2 VendInvoiceTrans Data structure

3.7.2.1 VendInvoiceJour

Table is dedicated to store invoice header information. In this table there are many fields

Prepared for Microsoft Corporation

Page 73 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

regrading different invoice lines summaries. Also big amount of analytical information is stored in this table (Vendors, Addresses, Dimensions etc.)

Field name Data type Field description

3.7.2.2 VendnvoiceTrans

Current table contains information about vendor invoice lines (what items are purchased to the clients and what is the price, what is discount rate and what purchase group bought this item). The table has relation with InventTrans table.

Field name Data type Field description

3.7.2.3 InventTrans

Table contains all inventory related transactions, including customer related sales transactions. In current data model item cost price from that table is used for sales margin calculation. For detailed description about this table please see chapter ###

3.7.2.4 InventDim

For the table description please see p. ###

3.7.2.5 LedgerTable

For the table description please see p. 3.1.1

3.7.2.6 InventTable

For the table description please see p. 3.8.1.1

3.7.2.7 VendTable

Central client register table. Lot of fields for statistic and setup purposes are created in this table. For detailed description about this table please see chapter 3.6.1.4

Prepared for Microsoft Corporation

Page 74 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.7.2.8 Dimensions

LedgerBudget table has relation to the dimensions table. Please see dimensions table description in p. 3.1.2

3.7.2.9 InventDim

For the table description please see p. 3.8.1.2

3.8 Inventory transactions data structure In the centre of the inventory transactions in AX is the InventTrans table. The table contains all kind of the inventory transactions in the very detailed level, generated by the different AX modules (for more information regarding the InventTrans relation to the other AX modules see drawing TransTables). The Inventory variations are recorded in the InventDim table. InventSum table contains already aggregated data (inventory stock levels, ordered inventory etc.) based on the transactions in InventTrans table. The main inventory register is stored in the InventTable, where also lots of inventory configuration parameters are defined. InventTable has 1 to 3 relations to the InventTableModule. In this table inventory sales, purchase and stock keeping parameters are stored – one line for each functional area.

InventTrans has also relations to the several AX main registers like vendors (VendTrans), customers (CustTrans), projects (ProjTable), production (BOMTable, RouteTable).

Figure 12

Prepared for Microsoft Corporation

Page 75 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.8.1 InventTrans

The table is central register for inventory transactions and contains most detailed data about any kind on inventory movement in the system. Table does not have one to one relation to the general ledger central register (LedgerTrans) as usually postings made to GL does not have such level of details (same with the customer and vendor inventory transaction registers CustInvoiceTrans and VendInvoicerans). This table is also base for inventory cost accounting. All adjustments made to inventory cost price can be found in this table.

Field name Data type Field description

InventTransId CHAR(20) Inventory transaction identifying current transaction. This number is often used as foreign key in related tables

ItemDimId CHAR(20) Identification of inventory dimensions. Each dimension combination has unique code in table InventDim

RecId INTEGER

ItemId CHAR(20) Item identification number. Relation to InventTable

StatusIssue INTEGER Current issue status for issue transactions. If the field is empty, the transaction is a receipt.

Statuses can be:

SQL value

AX value

Prepared for Microsoft Corporation

Page 76 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

0 None   1 Sold   2 Deducted   3 Picked4 Reserved physical   5 Reserved ordered   6 On Order   7 Quotation issue

DatePhysical DATE Date of the physical transaction (inventory movement with packing slip)

Qty REAL The quantity in inventory units for the transaction (defined in item card). The quantity shows receipts and issues; issues display a minus sign.

CostAmountPosted REAL Inventory cost value for the financially updated quantity, for example, in connection with invoice updating.

CurrencyCode CHAR(3) Currency that is associated with the item receipt

TransType INTEGER Specifies functional area, where the transaction is originated.

Values can be:

SQL value

AX value

0 Sales order   2 Production   3 Purchase order   4 Inventory Transaction  5 Profit/Loss transaction  6 Inventory transfer   7 Totaled   8 Production line   9 BOM line  

10 BOM main  11 Warehouse output order   12 Project   13 Inventory counting   14 Warehouse pallet transport  15 Quarantine order   20 Fixed assets   21 Transfer order shipment   22 Transfer order receive   23 Transfer order scrap  24 Sales quotation   

TransRefId CHAR(20) Identification of the reference transaction specified in the field TransType

InvoiceId CHAR(20) When an order or purchase is invoice-updated, the invoice number is saved here.

Prepared for Microsoft Corporation

Page 77 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

Voucher CHAR(20) Voucher number used in invoice updating or costing. The voucher number refers to transaction(s) created in General Ledger (LedgerTrans)

DateExpected DATE Date of the expected transaction

DateFinancial DATE Date of the financial transaction. That is the date on which the items are invoice-updated or cost accounted through production.

CostAmountPhysical REAL Floating physical inventory value of the inventory record, for example in connection with updating a packing slip. A physical cost amount that has not been financially updated in the General ledger is a floating value.

StatusReceipt INTEGER Current receipt status for receipt transactions. If the field is empty, the transaction is an issue.

SQL value

AX value

0 None1 Purchased  The purchase order is invoiced 2 Received  The purchase order is packing‐slip 

updated 3 Registered The item is registered. When setting 

up inventory model groups, you can indicate in the Registration requirements field that item receipts must be registered upon physical updating. 

4 Arrived  The item is registered in a shipment. 5 Ordered  The purchase order is created. 6 Quotation

receipt The sales quotation with a negative quantity has been sent to the customer for approval.  The sales quotation is not yet a credit note. 

PackingSlipId CHAR(20) When an item is picked or received on a packing slip in the Sales or Purchase modules, the packing slip number is saved here.

VoucherPhysical CHAR(20) Voucher numbers used when posting floating items, that is packing slip updated items. The voucher number refers to transactions created in Ledger.

CostAmountAdjustment REAL Any cost adjustment, for example, an adjustment from a closing of inventory.

Direction INTEGER Indicates whether the transaction is a receipt or an issue

SQL value

AX value

0 None1 Receipt   2 Issue   

DateStatus DATE Date associated with the transaction's status.

Prepared for Microsoft Corporation

Page 78 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

CostAmountStd REAL Transaction's standard cost price converted to the cost value. All adjustments are taken into account

DateClosed DATE Date on which the transaction was financially closed, that is when the full quantity was financially settled.

InventTransIdFather CHAR(20) Refers to the field InventTransId in the same table creating hierarchy. For example production lines are referring to the produced item transaction number

ItemRouteId CHAR(20) Route number of a specific sub-route. That is, the active sub-route was overridden on the BOM line. If the field is empty, the active sub-route is used.

ItemBomId CHAR(20) Bill of materials (BOM) number of a specific sub-BOM. That is the active sub-BOM was overridden on the bill of material. If the field is blank, the active sub-BOM is used.

ProjId CHAR(10) Identify the project that generated the inventory transaction. Reference to the project module

ProjCategoryId CHAR(10) Project category for the project used.

CustVendAC CHAR(20) The customer or vendor's account number, depending on the reference field type. Reference to the accounts receivables or accounts payables module

AssetId CHAR(20) Fixed asset number for the transaction. Reference to the fixed asset module

ProjAdjustRefId CHAR(20) Inventory transaction relation from InventTrans table to the project module transaction table ProjTransPosting.ProjAdjustRefId and ProjItemTrans.ProjAdjustRefId. In case of inventory cost adjustment this code links project related inventory module transactions with the relevant project module transaction.

AssetBookId CHAR(10) Fixed asset value module number for the transaction. Reference to the fixed asset module

InventRefTransId CHAR(20) Refers to the field InventTransId in the same table creating relation between inventory transactions belonging into the one and the same process flow. For example Quarantine order -> Purchase -> Sales transactions are all referring to the first transaction in the process flow, in our case Quarantine order

3.8.2 InventDim

Each inventory item described in InventTable can have several modifications and modification combinations. Modification types are warehouses, unique IDs, inventory batches, sizes, colors, detailed warehouse locations etc. Information about each of this property is not stored in transaction tables, but InventDim table has all possible inventory dimensions combination list. Unique ID from this table is used in inventory transaction tables to specify additional inventory properties defined with inventory dimensions.

For example, we calculate using table CustInvoiceTrans that company has sold 100 cars. Information that 60 of them are red and 40 are black is stored in InventDim, as each sales line refers to dimension combination ID where dimension value is either read or black.

Field name Data type Field description

InventDimId CHAR(20) Unique identification of inventory dimensions combination, also primary key

Prepared for Microsoft Corporation

Page 79 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

InventBachId CHAR(10) Batch number for the inventory dimension combination.

wMSLocationId CHAR(10) Warehouse location ID for the inventory dimension combination.

wMSPalletId CHAR(10) Warehouse pallet ID for the inventory dimension combination.

InventSerialId CHAR(10) Inventory serial number ID for the inventory dimension combination.

InventLocationId CHAR(10) Warehouse ID for the inventory dimension combination.

ConfigId CHAR(10) Inventory Configuration ID for the inventory dimension combination.

InventSizeId CHAR(10) Inventory size ID for the inventory dimension combination.

InventColorId CHAR(10) Inventory color ID for the inventory dimension combination.

3.8.3 InventSum

The table contains aggregated data calculated based on InventTrans and InventDim. In this table current item stock level can be found specified also by different dimension types. Also current calculations for reservations, orders, inventory picking etc. are stored in this table. The table is used for current inventory reporting purposes. When historical inventory level should be calculated, then transactions from InventTrans should be combined with the information from InventSum.

Field name Data type Field description

ItemId CHAR(20) Item identification number. Relation to InventTable

InbentDimId CHAR(20) Identification of inventory dimensions. Each dimension combination has unique code in table InventDim

PostedQty REAL Financially entered quantity.

PostedValue REAL Total inventory value of the financial updates for the item that was posted in the General ledger module.

The value is negative if items that have only been physically received in inventory have already been sold or invoice-updated. The field appears when you total Financial cost amount for all transactions that have a status of Purchased or Sold at the warehouse.

ReserverdPhysical REAL Total quantity of the item that was physically reserved for the inventory dimension

The field appears when you total all issue transactions with the status Physical reserved. Items that are physically reserved can always be picked and delivered from inventory.

An item is physically reserved if it is marked against a sales order, production, or a project. The item is in inventory, but it is marked to indicate that it is reserved.

ReservOrdered REAL Total quantity of the item that is reserved on ordered receipts for the inventory dimension. An amount appears in the field, when you total all issue transactions with the status Ordered reserved. Items that are reserved as ordered are not physically available in inventory and, therefore, cannot be directly picked and delivered

Prepared for Microsoft Corporation

Page 80 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

from inventory.

AvailPhysical REAL Physically available inventory in the stock in stock keeping units

PhysicalValue REAL Physically available inventory in the stock in company currency

3.8.4 InventTable

The table is central inventory register for Dynamics AX solution. Table contains different inventory specific setup parameters. Lines from this table can be used in dimensional analyses as inventory dimensions.

Field name Data type Field description

ItemId CHAR(20) A unique user-defined code that is assigned when items are created.

ItemGroup CHAR(10) The item group that this item belongs to. All items are assigned to an item group when they are created.

Item groups are used with ledger transactions and can be used as printing criteria.

ItemType INTEGER The category, or type, that this item belongs to. An item can be one of three types:

SQL value

AX value

0 Item  These are purchased items that do not require processing to be sold or used in production. 

1 BOM  Bill Of Material – used in production 2 Service Item numbers of the Service type are 

used, for example, for hourly services. 

ABCTieUp INTEGER The item's ABC code for cost attachment to inventory.

ABCRevenue INTEGER The item's ABC code for sales.

ABCValue INTEGER The item's ABC code for inventory value.

ABCContributionMargin INTEGER The item's ABC code for marginal income.

3.8.5 InventTableModule

The table contains some inventory setup information what is not recorded into the InventTable. This table contains three lines per each line in InventTable. Such a structure is used because several properties for the item must be specified for the three different procedures: Purchase, Warehousing and Sales (for example price, unit of measure etc.). When it is need to import some data to InventTable, also three lines with different module type values should be imported to InventTabkeModule per each InventTable record, otherwise imported lines are not even displayed in inventory register.

Field name Data type Field description

ItemId CHAR(20) Item identification number. Relation to InventTable

ModuleType INTEGER Identifies what module data current row is containing.

Prepared for Microsoft Corporation

Page 81 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

Values are:

SQL value

AX value

0 Inventory Data used for warehouse statistics and operations 

1 Purchase  Data used for purchase statistics and operations 

2 Sales Data used for sales statistics and operations 

UnitId CHAR(10) The stock keeping unit for purchase, inventory (inventory journal and production), and sales.

Price REAL Price in this field for the number of units entered in the PriceUnit field. Enter values for these fields in the Purchase order, Cost, and Sales order sections.

PriceUnit CHAR(10) Enter the number of units for which the Price applies.

Markup REAL A miscellaneous charge is a fixed sum added to the price. This is only applied to the Items table, compared to purchase, production, and sales.

LineDisc REAL Each item number can be associated with a line discount group that is used to calculate discounts when you create orders and purchases.

Quantity REAL In the Purchase order section, enter the default quantity in the purchase package. That is, the quantity of the item number in stock keeping units that is proposed as a default for purchases and requirement calculations. This is a multiple of the purchase quantity.

Same logics is in warehousing and sales quantity fields

Blocked INTEGER Field has value 1 if the item is blocked for purchase, warehousing or Sale transactions

DeliveryTime INTEGER The standard delivery, lead, or acquisition time for items. The times entered here are default times if times are not specified elsewhere. This function is typically used by companies that need simple lead times.

InventoryLocation CHAR(10) Item's default warehouse or placement in the Purchase order, Inventory, and Sales order sections.

3.8.6 CustTable

Central client register table. Lots of fields for statistic and setup purposes are created in this table. For detailed description about this table please see chapter 3.6.1.4

3.8.7 VendTable

Central client register table. Lots of fields for statistic and setup purposes are created in this table. For detailed description about this table please see chapter 3.7.1.4

Prepared for Microsoft Corporation

Page 82 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.8.8 BOMTable

Table, where standard bill of material setup is defined. Data is used in production.

3.8.9 RouteTable

Table, where standard production route setup is defined. Data is used in advanced production module.

3.8.10 ProjTable

For table description please see p. 3.11.1.2

3.8.11 ProjCategory

For table description please see p. 3.11.1.9

3.8.12 ProjCategoryGroup

For table description please see p. 3.11.1.10

3.9 Production General data model Microsoft Dynamics AX production module is flexible and powerful system to handle different production types. Main tables of production module are described in data diagram. Production module is closely integrated with inventory, warehouse management, sales, purchase and ledger modules. Main dimension tables are ProdTable and WrkCtrTable but module has a lot of other dimension tables.

Main transaction tables are ProdRouteTrans and InventTrans (not described here). Production module has also several tables what are used for capacity and materials planning and production cost estimation. These tables are ProdBOM, ProdRoute and ProdRouteJob.

Active capacity reservations are kept in table WrkCtrCapRes.

Production transactions summary (from estimation and production feedback) are saved in table ProdCalcTrans.

Production module has also a lot of journals what are used for entering production materials cost and rote consumption, these tables are not described in this data model.

Figure 13

Prepared for Microsoft Corporation

Page 83 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

DIAGRAM FROM OTHER FILE

3.9.1 ProdTable

This is table where all production orders are listed. A production order describes a continuous production sequence, which, through a number of connected work operations and raw materials, generates a quantity of manufactured items.

Field name Data type Field description

ProdId STRING(20) Displays the production number. This is a unique identification of the production order. When new production orders are created, the number is either allocated automatically or entered manually.

ItemId STRING(20) Displays a unique identification of the item that is to be produced. This field cannot be changed. The item to be produced is defined when production is set up.

Name STRING(140) The name of the production

ProdGroupId STRING(10) Production group that production is attached to.

Prepared for Microsoft Corporation

Page 84 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

Each production can be attached to a production group. The production group can control posting of item consumption, items in process, and work center consumption and work centers in process.

The group can also be used as a limit in reports. You can select a group from the created production groups.

If you want to use productions groups without any accounting consequences, you should use production pools instead.

ProdStatus ENUM Production status

Shows exactly where the production order is in the overall production cycle. The production status is automatically updated every time that update or scheduling is run on a production order.

The typical life cycle of a production order begins with the start of the production process when the order is first created. The order is automatically assigned the Created status at this point.

Status updates for subsequent phases include: Estimated, Planned, Released, Started, Reported as finished, and Ended.

SQL value

AX value Description

0 Created Status of the production order when it is first created.

1 CostEstimated Status of the production order after running a material and cost estimation.

2 Scheduled Status after running operation or job scheduling.

3 Released Status when production order is scheduled and has been released to production.

4 StartedUp Status of the production order when production starts.

5 ReportedFinished Status of the production order when production is finished and ready for final action.

7 Completed Status of the production order after final costs has been applied, the item is complete, and the order is no longer

Prepared for Microsoft Corporation

Page 85 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

active.

ProdPrio INTEGER Production priority. Higher numbers have higher priority. Priority is used in production planning for sorting.

ProdLocked ENUM Is the production locked for rescheduling?

NO / YES

ProdType ENUM Production type

SQL value

AX value Description

0 Standard The production has been created without a specific attachment to an order, another production or vendor, or a planned order.

3 Vendor The production is produced by a vendor and the production order is attached to another production. You can find a reference to the production order through the InventRefType and the InventRefId fields.

SchedStatus ENUM Scheduling status of the production

SQL value

AX value Description

0 None

1 OperationScheduled The least detailed of the two types of scheduling available in the production system. Operations scheduling is frequently used when you want a rough estimate of the duration of the production process.

2 JobScheduled The most detailed of the two scheduling types available in the production system

SchedDate DATE Last scheduled date.

QtySched REAL Displays the scheduled production quantity

Prepared for Microsoft Corporation

Page 86 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

QtyStUp REAL Displays the start quantity. The start quantity is updated automatically with the quantity that is started.

DlvDate DATE Displays the desired delivery or finish date for the production. You can use the delivery date in the production's operations or job scheduling, where the scheduling can be selected backward from delivery date. If you perform operations scheduling or job scheduling for a production order that has automatic creation of underproductions defined in the bill of material, the delivery date for the underproductions is automatically set to the date when the items will be used in the production. The underproduction will then have operations scheduled backward from delivery date.

If a production is created directly from a sales order, the Delivery is automatically transferred back to the Ship date of the order line.

StUpDate DATE Displays the latest date on which the start of a production order occurred.

FinishedDate DATE The latest date on which the production order was reported as finished.

SchedStart DATE The scheduled start date.

SchedEnd DATE The scheduled end date.

Height REAL The measurement conversion factor for the height dimension.

Width REAL The factor for the measurement dimension width.

Depth REAL The measurement conversion factor for the depth dimension.

Density REAL The measurement conversion factor for the density dimension.

QtyCalc REAL Displays the quantity that is used as basis for cost estimating. This quantity can differ from the quantity that has been planned, started, or reported as finished.

RealDate DATE Date that the production status was updated to Ended.

Reservation ENUM Specifies how the component items, identified by the BOM lines, should be handled in terms of automatic reservation. The value is proposed on the BOM lines but can be changed individually for each line. The reservation is made the first time a production order is cost estimated.

SQL value

AX value Description

0 None No Reservations.

1 Estimation Reservation is made during production estimation.

2 Scheduling Reservation is made during scheduling.

3 Start Reservation is made during production startup.

Prepared for Microsoft Corporation

Page 87 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

ProdPostingType ENUM Shows how the production order is to be posted in the ledger, for both items and work in process, in addition to the costing of the production order. The field can be corrected for productions if the Status is lower than Reported as finished

SQL value

AX value Description

0 ItemWrkCtr The posting of item consumption is as specified in the itemgroups. Work center consumption posting is based on the value in the Work centers and work centre groups.

1 ItemCategory The posting of item consumption is as specified in the item groups. Work center consumption posting is based on the value in the Cost category.

2 ProdGroup Item consumption and work center consumption are posted exclusively by the value in the Production group.

InventTransId STRING(20) Displays the number of the lot to which the production is attached. The field cannot be edited. This field connects production table to inventory transactions.

Dimension STRING(10) You can define department, cost center and purpose on a production order. If production order dimensions exist, they are automatically transferred to the route. However, if the production order dimension fields are left blank, dimensions will default from the work center used

Dimension2_ STRING(10) You can define department, cost center and purpose on a production order. If production order dimensions exist, they are automatically transferred to the route. However, if the production order dimension fields are left blank, dimensions will default from the work center used.

Dimension3_ STRING(10) You can define department, cost center and purpose on a production order. If production order dimensions exist, they are automatically transferred to the route. However, if the production order dimension fields are left blank, dimensions will default from the work center used

InventRefType ENUM Displays connections to other modules, including the item reference type of the production. If the production is created directly to an order line, the Sales order is displayed. If the production is created for a purchase or a project, the Purchase order or Project is displayed. If there is a reference to another production, the Production is displayed. You cannot correct this field.

Prepared for Microsoft Corporation

Page 88 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

SQL value

AX value Description

0 None

1 Sales Sales order

2 Purch Purchase order

3 Production Production

4 ProdLine Production line

5 InventJournal Inventory Journal

6 CRMQuotation CRM Quotation

7 InventTransfer Transfer order

InventRefId STRING(20) Displays the number of the sales order, purchase order, or production from which the production is derived. If there are no connections, the field is blank. You cannot correct this field.

InventRefTransId STRING(20) Displays the numbers of the reference lot and the item lot to which the production belongs. The item to be produced goes into inventory and from there into the lot that is specified here. It is not relevant that the item does not physically reach the inventory.

CollectRefLevel INTEGER When this field is marked, references to subordinate levels are also estimated. Therefore a change can affect the attached references. Subordinate levels indicate derived productions. This means that their level number is higher than that of the current production.

CollectRefProdId STRING(20) If the production is included directly in another production, this field displays the number of the main production. The level of this production in the production hierarchy is displayed in the Reference level field. If no references exist, the current production number is displayed. If the production has a connection to another production, the field displays the level of the production relative to the main production. For example, if the level of the main production is 0, the derived productions are at level 1, and the productions derived from them are at level 2, and so on. If no references to other productions exist, the value is 0.

BOMDate DATE Controls the BOM version that is active for the item when the production order is created. You can define which lines are to be copied from the current bill of materials version through this date.

Prepared for Microsoft Corporation

Page 89 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

BackorderStatus ENUM Backorder status for the production.

SQL value

AX value Description

0 None

1 Release Material consumption

2 Route Route consumption

3 Receipt Report as finished

5 Completed Ended

ProdPoolId STRING(10) Production pools are used to group productions with similar characteristics, for example the type of item to be produced or the person who created the production orders.

ProfitSet ENUM Displays the profit setting that has been used or that will probably be used to calculate a sales price for the production order The price is calculated when estimating and cost accounting.

SQL value

AX value Description

0 Standard

1 Profit1

2 Profit2

3 Profit3

RouteJobs ENUM Have route jobs been generated for the production?

YES / NO

CheckRoute ENUM Test route?

YES / NO

PropertyId STRING(10) Code for the item characteristics.

RemainInventPhysical REAL Quantity not yet reported as finished in inventory units.

BOMId STRING(20) Indicates which bill of material has been used as the basis for the production order. There may be several versions of a bill of material item, but for each production order there is always only one bill of material that is current and used as the basis for the production order.

RouteId STRING(20) Route used when creating production

ReqPlanIdSched STRING(10) Identification of the plan.

ReqPOId STRING(20) This field, together with the ReqPlanIdSched field, contains the reference system for the master scheduling proposal.

If the production was derived from master planning, the field will contain the number of the planned order that generated the

Prepared for Microsoft Corporation

Page 90 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

production.

If the field is blank, no reference exists for the planned order. The field cannot be edited.

RefLookUp ENUM Code used for auto-search.

SQL value

AX value Description

0 Production

1 Sales

LatestSchedDirection ENUM Scheduling direction last used

SQL value

AX value Description

0 None

1 Forward

2 Backward

LatestSchedDate DATE Last scheduling date.

InventDimId STRING(20) Reference to inventory dimensions combination.

SchedToTime TIME Last scheduled to time.

SchedFromTime TIME Last scheduled from time.

LatestSchedTime TIME Scheduling time last used

DlvTime TIME Delivery time

ProdOrigId STRING(20) The original production that the current split production is based on.

GanttColorId INTEGER This color is used in the Gantt chart if it is defined in the setup of colors in the Gantt chart.

PBAId STRING(20)

Prepared for Microsoft Corporation

Page 91 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.9.2 ProdCalcTrans

This is table where production order cost estimations and real production costs are recorded. This is useful table if you want to create are production cost reporting.

Field name Data type Field description

CollectRefProdId STRING(20)Identification of the highest level production that the line refers to.

CollectRefLevel INTEGER Level at which the line is included in the calculation.

LineNum REAL Line number.

CalcType ENUM Calculation type

SQL value

AX value Description

0 Production Production or sub-production

1 Item Item consumption

2 BOM BOM consumption

3 Service Service item

4 Setup Setup time in route

5 Process Process time in route

6 Qty Quantity registered in route

IdRefTableId INTEGER Table id calculation is connected to (Production table or BOM calculations table)

IdRefRecId INT64 Record id calculation is connected to.

ProdId STRING(20) Identification of the production that the line refers to.

BOM ENUM Selection indicates that the line is bill of materials (BOM) consumption.

YES / NO

CostGroupId STRING(10)Identification of the cost group.

Qty REAL Quantity that the cost price, sales price, and consumption are specified in and calculated for in connection with estimation.

CostAmount REAL Lines estimated quantity-dependent cost amount in number of inventory units.

CostMarkup REAL Line's quantity-independent cost miscellaneous charges.

SalesAmount REAL Line's estimated quantity-dependent sales amount in number of inventory units.

SalesMarkup REAL Lines estimated quantity-independent sales-amount miscellaneous charges.

TransDate DATE Date of the calculation.

Prepared for Microsoft Corporation

Page 92 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

Key1 STRING(20) Identification of item or work center

Key2 STRING(10) Consumption unit.

Key3 STRING(20) Identification of the operation

Key4 STRING(20) Identification of dimensions for the item.

ConsumpVariable REAL The material and time consumption that the program calculates when you update a production order to the estimation stage. The program calculates expected material consumption based on the item and expected time consumption based on the operation.

ConsumpConstant REAL Run-independent consumption of the line in number of inventory units

RealQty REAL Cost-accounted quantity reported as finished

RealConsump REAL The material and time consumption that is registered against the production order. Material consumption for the item is registered automatically when you post the picking list journal. Time consumption for the operation is registered automatically when you post the route card or job card journals.

This field is not updated for a top level production order line until the production status is updated to end. When inventory transactions are financially updated for the production order, the field is updated with the realized consumption quantity.

RealCostAmount REAL The cost that the program calculates based on realized consumption and the cost price. The item's cost price is from the reference transaction, if it is marked. Otherwise, it is from the item's on-hand record. The cost price for the job is from the Route card or Job card journal.

RealCostAdjustment REAL Adjustment of cost amount.

Production ENUM Is the line a production receipt?

YES / NO

OprNum INTEGER Number for determining sequence in routes

DerivedReference ENUM Module and number referred to

SQL value

AX value Description

0 None None

1 Sales Sales order

2 Purch Purchase order

3 Production Production

4 ProdLine Production line

5 InventJournal Inventory journal

6 CRMQuotation CRM quotation

7 InventTransfer Transfer order

Prepared for Microsoft Corporation

Page 93 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

DerivedRefNum STRING(20) Reference number.

Key4InventDimId STRING(20)

VendId STRING(20) Customer or vendor account number

ConsumpType ENUM Is consumption variable or constant?

SQL value

AX value Description

0 Variable Variable

1 Constant Constant

DEL_SumConsump ENUM Is the record summarized to find a price agreement for all levels?

YES / NO

PriceDiscQty REAL

CostPriceModelUsed ENUM The cost price model that has been used for price calculation.

SQL value

AX value Description

0 CostPrice Item cost price

1 PurchPrice Item purchase price

2 PriceDisc Trade agreement

3 OnhandPrice Inventory price

4 None None

CalcGroupId STRING(10)

Prepared for Microsoft Corporation

Page 94 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.9.3 ProdBOM

This is table where items which will be used for production order are recorded.

The production BOM is a list of the materials used in production. The materials are described with item number and consumption, as well as a range of other data used for processing in the production system.

Production BOMs are based on Bills of material from the base data, as the production BOM is generated in connection with Production creation as a copy of a bill of material from base data. In that way, it is the bill of material for the item being produced in production, which is copied to the production BOM. The only exception is if the item has no bill of materials, and no BOM number was given upon its creation. In that case, the production BOM will be blank.

Field name Data type Field description

ProdId STRING(20) This field displays the production number of the production to which the bill of material line belongs.

LineNum REAL Line number.

ProdLineType ENUM Type determining how the line is administered. The bill of materials lines can be of several Line type, each with its own function.

SQL value

AX value Description

0 Item Used on bill of materials lines where there are raw materials that are to be picked in inventory or the item is a service.

1 Phantom Is used if items of type BOM are to be exploded in this production bill of materials. When a bill of material is exploded, it creates the raw materials and operations created as base data on the current bill of materials item number. Explosion is carried out in connection with estimate. You will find more information on estimate in Estimation.

2 Production If you wish to create for the bill of material lines item number an underproduction, Production is used. Item number in the bill of material line must be of type BOM. The underproduction is created when an estimate is executed for the current Production order. You will

Prepared for Microsoft Corporation

Page 95 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

find more information in Estimation. Quantity for the underproduction is automatically reserved and marked for the current production.

3 Vendor If you in the production sequence use subcontractor work for which you want to create a purchase order automatically, use type Vendor. If item number in the bill of material line that gets the type Vendor, is of type BOM, an underproduction is created when the current production is first estimated. The underproduction has the type Vendor and the items that are on the bill of material are created for the underproduction as bill of materials lines. In bill of materials lines with the type Vendor, you must either specify a code that refers to an operation in the production route of the type Vendor, or specify a vendor directly in the BOM line.

BOMConsump ENUM Is This field specifies whether the estimate concerns a Variable or Constant amount/quantity. Variable consumption means that the units used in the finished product are proportional with the Quantity for the production order. The consumption is calculated as follows:

Quantity (for the production order) * (in the bill of material)

Constant consumption is used in defining a fixed amount/quantity for the production items, such as start-up costs. Consumption is calculated as follows:

Consumption = Quantity (in BOM).

SQL value

AX value Description

0 Variable Variable

1 Constant Constant

ItemId STRING(20) Specify in this field unique identification of the item to be consumed in the production. The item number must already

Prepared for Microsoft Corporation

Page 96 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

exist in the items table, and the can be Item, BOM, or Service.

You can select item numbers from the list of existing item numbers. You can also enter the item number manually, in which case the system verifies that the item number exists in the items table. At the same time, you fill in the Item name field. The same item number can figure in the production's BOM several times.

BOMQty REAL Specify here the Quantity units of the item figuring in 1 piece of the finished item. If there is a gain, rather than a loss, of the current item, specify a negative Quantity.

Dim1 REAL This field displays the calculation factor for Height that is used in the calculation of raw materials consumption, if this is proportional with the measurements defined in the Production order You can change the field until the production order is assigned the status 'Reported as finished'. After a change you must cost estimate the production order again in order to incorporate the changes.

Dim2 REAL This field displays the calculation factor for Width that is used to calculate raw materials consumption, if this is proportional with the measurements defined in the Production order You can change the field until the production order is assigned the status 'Reported as finished'.

Dim3 REAL This field displays the calculation factor for Depth that is to be used in the calculation of raw materials consumption, if this is proportional with the measurements defined in the Production order This field can be changed until the production order is assigned a status of Reported as finished.

Dim4 REAL This field displays the calculation factor for Density to be used in the calculation of raw materials consumption, if this is proportional with the measurements defined in the Production order This field can be changed until the production order is assigned a status of Reported as finished.

Dim5 REAL This field displays the calculation factor for Constant to be used in the calculation of raw materials consumption, if this is proportional with the measurements defined in the Production order This field can be changed until the production order is assigned a status of Reported as finished.

Prepared for Microsoft Corporation

Page 97 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

RoundUp ENUM This field allows you to round or cost estimated quantity to RoundUpQty. Use rounding if the raw materials are always used in fixed quantities.

SQL value

AX value Description

0 No Do not use rounding.

1 Qty This ensures that will always be rounded.

2 MeasureConfig Round using Measurement if raw material is available only with predefined dimensions. If you need to take the above into account when calculating the consumption, use rounding to Measurement and set RoundUpQty to 5. The rounding is calculated by first determining the sales quantity on the basis of the measurement dimensions and then determining the number of times the measurement dimension figure can be included in RoundUpQty The sales quantity is then rounded down to 0 (zero) decimals. Now you can estimate the quantity by calculating how many multiples of the value in field RoundUpQty is to be used in order to produce a given quantity.

3 Consumption When you use Rounding-up Consumption the calculated estimated quantity is always rounded so that it can be divided equally with the value of RoundUpQty Rounding-up to Consumption is used when the total consumption of a raw material only can be carried out using a pre-defined quantity and the remainder is then regarded as loss.

RoundUpQty REAL Multiples quantity for rounding.

Position STRING(30) This field defines the Position of the bill of material line. This field can contain an alphanumeric string of up to 10 characters.

Prepared for Microsoft Corporation

Page 98 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

OprNum INTEGER This field defines where this item is used in the production sequence. If you do not define Oper. No. on the bill of material line, the item is pushed to the first operation to be executed after Route.

QtyBOMCalc REAL Estimated consumption in BOM unit

RemainBOMPhysical REAL This field displays the consumption that needs to be released to the production in the inventory unit with regard to the estimated quantity.

RemainBOMFinancial REAL This field displays the consumption that is released to the production in the bill of materials unit, but has not yet been included in the cost accounting.

QtyInventCalc REAL Cost estimated quantity/amount of item to be included in the production defined in the inventory unit. The consumption is calculated when Estimation is executed. In the case of variable consumption, the following formula is used in calculating the consumption: Quantity (in Production order) * (in the bill of material) = Consumption is determines whether the consumption is Variable or Constant

ProdFlushingPrincip REAL Indicates when automatic BOM consumption is reported (overrides setting on the item).

SQL value

AX value Description

0 Blank Blank

2 Start Start

3 Finish Finish

1 Manual Manual

Reservation ENUM When should autoreservation be performed?

SQL value

AX value Description

0 None Manual

1 Estimation Estimation

2 Scheduling Scheduling

3 Start Start

InventTransId STRING(20) This field shows the old id and refers to the current inventory transactions attached to the bill of material line.

RawMaterialDate DATE Scheduled date for material consumption

RemainInventPhysical REAL Quantity not yet released in the inventory unit

Dimension STRING(10) Financial dimension.

Prepared for Microsoft Corporation

Page 99 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

Dimension2_ STRING(10) Financial dimension.

Dimension3_ STRING(10) Financial dimension.

InventRefType ENUM Module and number Reference type indicates the relation to other modules.

The reference to, for example, a purchase line is structured in such a way that the Reference type is Purchase, the Reference number is the purchase number of the current purchase, and the Reference lot is the lot number of a specific purchase line under the current purchase. If the line in the production BOM generated a purchase, you will be able to see the reference to that purchase directly from the generated reference.

A blank field means that there are no attachments to objects in other modules. Editing in the field is not permitted.

SQL value

AX value Description

0 None

1 Sales Sales order

2 Purch Purchase order

3 Production Production

4 ProdLine Production line

5 InventJournal Inventory Journal

6 CRMQuotation CRM Quotation

7 InventTransfer Transfer order

InventRefId STRING(20) Reference number displays any references to sales, purchases, production or production lines. The field is dependent on the InventRefType .

Together with and , the field comprises the complete reference to the object to which the production line refers.

The reference to, for example, a purchase line is structured in such a way that the Reference type is Purchase, the Reference number is the purchase number of the current purchase, and the Reference lot is the lot number of a specific purchase line in the current purchase. If the line in the production BOM generates a purchase, you will be able to see the reference to that purchase directly from the reference generated.

If the field is blank, there are no attachments to objects in other modules. No editing is permitted in the field.

InventRefTransId STRING(20) Reference inventory transaction id.

Prepared for Microsoft Corporation

Page 100 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

VendId STRING(20) For lines with Vendor define a vendor number that purchase orders should be created for. If you leave this field blank, the vendor will be obtained through the work center on the attached operation.

UnitId STRING(10) Unit in which consumption is specified.

BackorderStatus ENUM Back order status indicates what remains to be carried out for a specific BOM line. The back order status is related to the production's back order status

SQL value

AX value Description

0 None

1 Release Materials remain to be delivered to production in relation to the cost-estimated consumption.

2 Route Production remains to be reported as finished or the quantity reported as finished is smaller than the quantity started.

3 Receipt The production order remains to be cost-accounted. All materials have been delivered; all operations, reported as finished; and the quantity, reported as finished.

5 Completed Cost-accounting was run as an end job. You can no longer record in production or edit directly in production. The production status cannot be set back. A production should be cost-accounted as an end job when you no longer expect there to be additional feedback that is associated with the production. The prices used in cost-accounting are calculated via inventory closing.

Calculation ENUM This field allows you to define whether the bill of material line should affect the estimating. When the field is marked for calculation, the line is included in estimating. Estimating calculates the expected cost price and sales price.

YES / NO

QtyInventStUp REAL Quantity started in the inventory unit.

Prepared for Microsoft Corporation

Page 101 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

QtyBOMStUp REAL Quantity in the process in the bill of material unit

BOMId STRING(20) Reference to BOM id what was used when line was created.

Formula ENUM Formula used for calculating consumption.

SQL value

AX value Description

0 Formula0 Standard

1 Formula1 Height * Constant

2 Formula2 Height * Width * Constant

3 Formula3 Height * Width * Depth * Constant

5 Formula4 (Height * Width * Depth/Density) * Constant

BOMRefRecId INT64 Reference record id.

BOMQtySerie REAL Here you specify the number of units to which the value in BOMQty applies.

ItemRouteId STRING(20) Route number for specific sub-route. If blank active are used.

ItemBomId STRING(20) BOM number for specific sub-BOM. If blank active are used.

InventDimId STRING(20) Reference to inventory dimensions combination.

ReqPOId STRING(20) Reference to master planning table.

ReqPlanIdSched STRING(10) Reference to master planning plan id.

RawMaterialTime TIME Scheduled time of material consumption

ScrapVar REAL Variable scrap percentage (must be specified in percent)

ScrapConst REAL Constant scrap in BOM unit

ConstantReleased ENUM Has constant consumption been released?

YES / NO

EndConsump ENUM Picking list journal has been posted with end field checked

YES / NO

EndSchedConsump ENUM EndSchedConsump

YES / NO

3.9.4 ProdRoute Route can be defined as a series of interdependent work processes that are structured in such a manner that they describe the work procedures involved in the production of one or more items produced by the company, including the work centers and processes through which the item passes.

Production routes are based on Routes from base data, as the production route is generated in connection

Prepared for Microsoft Corporation

Page 102 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

with Production creation as a copy of a route from base data. Thus, it is the route for the item for which a production order is being created that is copied to the production route. The only exception is if the item has no route and no route number was given for the item upon its creation. In that case, the production route is blank.

The production route is an independent element where you are free to edit, insert, or delete information without it affecting a corresponding route in the base data.

Field name Data type Field description

ProdId STRING(20)Displays operations in the selected Production that can be changed or updated.

OprNum INTEGER Define the operation number, which is an alphanumeric string of up to ten characters.

The operation number defines the sequence for the operation that the production should go through. When you create a new production route, 10 is automatically suggested as the first operation number. Subsequent operation numbers will be suggested as having increments of 10. You can change them manually. If simultaneous operations are to be created, the operations must be created with the same operation number. Do this when several work centers are to be used simultaneously. The relationship between simultaneous operations is defined in Priority. The next operation to be executed is defined in the Next field. If the operation is the last operation, Next is defined as zero.

Level INTEGER

OprNumNext INTEGER Displays the next operation number in the route network. It shows which Operation follows the current Operation. The last Operation in the route network is defined as 0 (zero).

OprId STRING(10) Displays the operation in the production route that uses Group or the attached Work center. You can define a unique identification for the operation that is to be included in the production route and choose the operation in the drop-down list. This displays a list of all created operations. You can also enter the operation manually.

Operations cannot be created with the same Oper. No. and which use the same work center. An operation cannot be included in the route more than once.

WrkCtrId STRING(10) Identify the work center or work center group to be used for the operation.

TaskGroupId STRING(10) Specify a task group for searching for alternative work centers. The field is used together with Job requirement of the scheduling system when you search for alternative work centers. Alternative work centers are sought when a conflict arises concerning the work center specified for the operation. Conflicts occur when there is insufficient capacity in the time frame being scheduled for.

QueueTimeBefore REAL Displays the waiting time for Operation. Queue time before is always positive. This time is scheduled according to the Gregorian calendar and can be used with subcontractor work.

SetupTime REAL If selected, the setup time for clearing the work center is included in the estimate. Setup time shows the fixed time that is used to clear a work center. The time is scheduled on the basis of the calendar of the defined work center. It is not dependant on the production quantity. Similarly, a capacity loading of the work center time is carried out in connection with scheduling.

Prepared for Microsoft Corporation

Page 103 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

ProcessTime REAL Process time is calculated for the cost estimation. Therefore, the field indicates the estimated process time in hours for the operation.

ProcessPerQty REAL Select to calculate the quantity from the scheduled production quantity.

TranspTime REAL Displays the time it takes to transfer the items to the next location. Transit time is scheduled on the basis of the calendar of the defined work center. No capacity loading is carried out for the work center in connection with scheduling.

QueueTimeAfter REAL Displays the waiting time for Operation. This time is scheduled according to the Gregorian calendar and can be used with subcontractor work.

OverlapQty REAL Displays the minimum time that must be used for production before overlap is allowed.

ErrorPct REAL Displays the Scrap percentage for the operation. Scrap percentage defines the expected overuse for the operation. This field must contain a positive value. Overuse is included both in the estimate of material consumption and in the work center consumption for the current operation.

AccError REAL Displays the accumulated Scrap percentage for an Operation.

ToHours REAL Displays a conversion factor for the times that are defined in the route. The conversion converts hours to hundredths of an hour.

TransferBatch REAL

SetUpCategoryId STRING(20)Displays the Setup category for the Operation. The cost amount is calculated on the basis of the setup time defined in Operation * the rate for setup time retrieved from the setup type.

ProcessCategoryId STRING(10)Displays Run time category for the Operation. The cost amount is calculated as the process time set for the route * Scrap percentage for the route * the rate for operator time.

OprFinished ENUM Reported as finished

YES / NO

FormulaFactor1 REAL If the finished product has a Formula defined for the calculation of material consumption, you can enter the factor that is to be used in the Formula.

RouteType ENUM Select whether the operation will be completed with an external vendor (Supplier) or at an internal work center (Standard). During setup the field is filled in with the value for Route type transaction type from the Operation, being referred to.

SQL value

AX value Description

0 Standard Standard

1 Vendor Vendor

Prepared for Microsoft Corporation

Page 104 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

BackorderStatus ENUM Indicates what remains to be carried out for a specific operation. The back order status is related to the production's back order status

SQL value

AX value Description

0 None None

1 Release Material consumption

2 Route Route consumption

3 Receipt Report as finished

5 Completed Ended

PropertyId STRING(10) Specify the Property needed for the operation at the given Work center. Properties are defined in the Properties form. During creation, the field is filled in with the value for Property from the Operation being referred to.

RouteGroupId STRING(10) Specify the Routing group that is to control the operation. The route groups control how the operation is handled in connection with calculation, scheduling, job management, and reporting.

QtyCategoryId STRING(10) Specify the cost category for the quantity. Use cost category to specify a quantity-dependent cost for the operation.

FromDate DATE Displays the scheduled start date for the operation. The start date is calculated in connection with operations scheduling or jobs scheduling.

FromTime TIME Displays the job scheduled start time for the operation. The start time is calculated in connection with jobs scheduling.

ToDate DATE Displays the scheduled end date for the operation. The end date is calculated in connection with operations scheduling or jobs scheduling.

ToTime TIME Displays the scheduled job end time for the operation. The end time is calculated in connection with jobs scheduling.

CalcQty REAL Estimated quantity.

CalcSetUp REAL Estimated setup hour in number of hours

CalcProc REAL Estimated process consumption in hours

WrkCtrTaskDemand REAL Lowest requirement when choosing an alternative work center

OprPriority ENUM Priority is used in controlling simultaneous operations. Simultaneous operations are characterized by the fact that they appropriate several work centers at the same time. This is done by giving the same Oper. No. to all operations that are to be executed simultaneously.

The priority determines which operation is the primary one. The primary operation should be the operation loading the work center that is regarded as the bottleneck for simultaneous operations. A bottleneck work center is not defined in any special way in the system, because individual routes and productions determine which work centers form the bottleneck. A work center regarded as a bottleneck on one route, and

Prepared for Microsoft Corporation

Page 105 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

therefore defined as primary for simultaneous operations on that route, can be secondary on another route. If the operation is not primary, the times from the primary operation are used to schedule the secondary operation. This means that the times do not have to be specified for secondary operations. If there are no parallel operations for an Oper. No., the operation should be created with the priority of primary.

SQL value

AX value Description

0 Primary Primary

1 Secondary1 Secondary 1

2 Secondary2 Secondary 2

3 Secondary3 Secondary 3

4 Secondary4 Secondary 4

5 Secondary5 Secondary 5

WorkCtrLoadPct REAL Maximum capacity, displayed as a percentage, the work center can be loaded with.

WorkCtrNumOf REAL The number of work centers to be drawn on if a work center group is specified in Work center. The field always reads 1 if a work center is specified in Work center.

Dimension STRING(10) Financial dimension.

Dimension2_ STRING(10) Financial dimension.

Dimension3_ STRING(10) Financial dimension.

Formula ENUM Method used to calculate the consumption for the line

SQL value

AX value Description

0 Formula0 Standard

1 Formula1 Capacity

RouteOprRefRecId INT64 Reference to other route line.

LinkType ENUM Attachment type to next job.

SQL value

AX value Description

0 None None

1 Soft Soft

2 Hard Hard

OprStartedUp ENUM Is the operation started?

Prepared for Microsoft Corporation

Page 106 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

YES / NO

ExecutedProcess REAL Current total processing percent for process.

ExecutedSetup REAL Current total processing percent for setup.

ConstantReleased ENUM Indicates whether the constant consumption has been released.

YES / NO

JobIdProcess STRING(20) Process job ID

JobIdSetup STRING(20) Set up job ID

JobPayType ENUM Hourly rate / Piecework rate

Pay type on jobs that delimit this item.

SQL value

AX value Description

0 Empty All

1 Hours Hourly rate

2 PieceRate Piecework rate

3.9.5 ProdRouteJob

These jobs are generated when user runs scheduling, which is run after operations-scheduling on productions that use the operations-scheduling function. Job scheduling is the detailed scheduling of capacity; it divides operations into their individual task times or jobs. This division is used to increase the accuracy of the detailed schedule by monitoring the individual tasks.

Field name Data type Field description

ProdId STRING(20) Production to which job is connected.

OprNum INTEGER Displays the Oper. No. for the connected production route.

NumType INTEGER

JobType ENUM Displays the job type, which describes the type of work that is to be carried out.

SQL value

AX value Description

0 QueueBefore Waiting time before the operation can be started.

1 Setup Fixed time used for clearing a work center before the operation is started.

2 Process Time used for the execution of the operation.

Prepared for Microsoft Corporation

Page 107 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3 Overlap Operations scheduled to start before the previous one is finished.

4 Transport Time that it takes to transfer the items to the next location, which can be the next work center, the production route or stock.

5 QueueAfter The time the items must wait after the operation is finished and before the next operation can start.

Link ENUM Link specifies the link that the job was created with. A link tells how the current job is tied to the subsequent job.

SQL value

AX value Description

0 None There is no link to the next job.

1 SS Job must start at the same time the next job starts.

2 FF Job must end at the same time the next job ends.

3 FS Job must end at the same time the next job starts

4 SF Job must start at the same time the next job ends.

Times are precisely the same only when the link type is Hard. When the link type is Soft, there may be a time gap between the two jobs. In other words, the next job can start later than the link specifies.

LinkType ENUM This field indicates the attachment type.

SQL value

AX value Description

0 None

1 Soft Indicates that the job may be placed later than what the attachment defines.

2 Hard Indicates that the following job must be placed as what the attachment defines.

OprPriority ENUM Displays the priority for the production route. Priority can be primary or secondary 1-5.

Prepared for Microsoft Corporation

Page 108 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

SQL value

AX value Description

0 Primary Primary

1 Secondary1 Secondary 1

2 Secondary2 Secondary 2

3 Secondary3 Secondary 3

4 Secondary4 Secondary 4

5 Secondary5 Secondary 5

SchedCancelled ENUM If the current job is canceled with regard to the schedule, the field is selected.

YES / NO

JobControl ENUM Indicates whether records can be made for jobs through job recording.

YES / NO

WrkCtrId STRING(10) This field indicates which Work center will execute the job. Work center is selected from the work center defined on the production route.

FromDate DATE Indicates the scheduled start date for the job. The date is determined in connection with operations scheduling and jobs scheduling.

FromTime TIME Displays the scheduled start time for the job. The time is determined in connection with jobs scheduling.

ToDate DATE Displays the scheduled end date for the job. The date is determined in connection with operations scheduling and jobs scheduling.

ToTime TIME Specifies the scheduled ending time for the job.

Prepared for Microsoft Corporation

Page 109 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

JobStatus ENUM Current job status

SQL value

AX value Description

0 Coming Coming (Displayed until the job is started.)

1 Waiting Waiting

2 Stopped Interrupted

3 Started Started

4 Completed Ended (Displayed when the operation or production is reported as finished. The job status can be changed to Ended via the job journal, route journal, or reporting-as-finished.)

Locked ENUM If this field is selected, the job has been locked against rescheduling. Therefore, the job cannot be moved when a new jobs scheduling or job planning is carried out. You can use locking against rescheduling especially with regard to express items, which have high requirements on fixed delivery times.

YES / NO

PropertyId STRING(10) Displays the work center property that is required for the execution of the job on this Work center. If you leave this field blank, it indicates that the job requires no special properties of the work center.

ExecutedPct REAL Displays the progress of the production in the form of a percentage. The field is updated every time a recording is carried out on the job. Recordings can take place when the route journal or job journal is posted to the ledger.

JobId STRING(20) Unique identification of job

RealizedStartDate DATE Displays the actual start date for the job. The start date is updated for the first time a recording is made on the job. Recordings can occur when the route journal or job journal is posted to the ledger.

RealizedStartTime TIME Displays the actual start time for the job. The start date is first updated when a recording is made on the job. Recordings can occur when the route journal or job journal is posted to the ledger.

RealizedEndDate DATE Actual end date for the job. This field is updated when the job is registered as finished. Jobs can be finished when the route journal or job journal is posted to the ledger.

RealizedEndTime TIME Displays the actual end time for the job. It is updated when the job is registered as finished. Jobs can be finished when the route journal or job journal is posted to the ledger.

Prepared for Microsoft Corporation

Page 110 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

NumSecondary INTEGER Secondary job number.

NumPrimary INTEGER Primary job number.

SchedTimeHours REAL Scheduled time.

CalcTimeHours REAL Calculated time.

JobFinished ENUM Is the job finished?

YES / NO

JobPayType ENUM Hourly rate / Piecework rate

Pay type on jobs that delimit this item.

SQL value

AX value Description

0 Empty All

1 Hours Hourly rate

2 PieceRate Piecework rate

3.9.6 ProdRouteTrans

This is table that includes production route realized transactions and detailed information. Each time a line from a route sheet or job sheet journal is posted, a route transaction is created.

Field name Data type Field description

ProdId STRING(20) Production to which route transaction is connected.

OprNum INTEGER Displays the operation number to which the posting is attached. The operation number, along with the production number and the primary/secondary fields, forms a unique identifier for the operation.

JobId STRING(20)Displays the unique job number (the identifier of the job attached to the route transaction).

JobType ENUM Displays the job type for the transaction.

SQL value

AX value Description

0 QueueBefore Queue before

1 Setup Setup

2 Process Process

3 Overlap Overlap

4 Transport Transport

5 Queue after Queue after

Prepared for Microsoft Corporation

Page 111 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

WrkCtrGroupId STRING(10)Indicates which work center group has had feedback.

WrkCtrId STRING(10)Indicates which specific work center has had feedback.

Hours REAL Displays the number of feedback hours in the current record.

Time displays in hundredths of an hour. Therefore, 1.75 equals one hour 45 minutes.

HourPrice REAL Displays the cost of the time consumed in feedback. The price is defined in the operation's cost category.

QtyGood REAL Quantity of items reported as finished in route transaction without reported faults. This means items that are regarded as being without fault at the time of recording. Also known as good quantity.

QtyError REAL Quantity of items with errors in the current record.

QtyCause ENUM If the current route record contains feedback on the error quantity, it displays here.

SQL value

AX value Description

0 None

1 Material Material

2 Machine Machine

3 OperatingStaff Operator

CategoryId STRING(10)Indicates which cost category has had feedback. The cost category is related to the consumption type in the Type field. The price that is used in calculating the route record is controlled by this type. You can also use the type to control posting.

QtyPrice REAL Displays the price for the quantity type. The price is attached to the cost category in Category.

EmplId STRING(10) Employee to whom the record is attached.

OprFinished ENUM Indicates whether the operation to which the route record belongs is finished.

YES / NO

DateCalc DATE Displays the date when the calculation was posted to the ledger, if the production is cost accounted.

VoucherWIP STRING(20) Displays the voucher number for WIP posts in the ledger.

DateWIP DATE Displays the date when the WIP was posted to the ledger. WIP is automatically posted when journals are posted.

Dimension STRING(10) Financial dimension.

Dimension2_ STRING(10) Financial dimension.

Dimension3_ STRING(10) Financial dimension.

Calculated ENUM If this check box is selected, the transaction is cost accounted. If it is cleared is cleared, the transaction is not included in the cost accounting carried out for the production. If this is the case, this transaction does not affect the value with which the item is received in inventory.

Prepared for Microsoft Corporation

Page 112 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

YES / NO

OprPriority ENUM Indicates whether the route transaction belongs to a primary or secondary work center. In simultaneous operations, the primary work center is used to specify which operation is to be the controlling one in the scheduling. Secondary operations with the same operation number are then scheduled simultaneously with the primary one. This is defined in the route of a single production. The production number of the route transaction is displayed in the Production field.

SQL value

AX value Description

0 Primary

1 Secondary1 Secondary 1

2 Secondary2 Secondary 2

3 Secondary3 Secondary 3

4 Secondary4 Secondary 4

5 Secondary5 Secondary 5

FromTime TIME Displays the starting time from which the time consumed for this route transaction is registered. Together with End time, this field shows the time period used for working on this job at the point of this recording. This field may be left blank.

ToTime TIME Displays the time until which the time consumed for this route transaction is registered. Together with Start time, this field displays the time period used for working on this job at the point of this recording. This field may be left blank.

JobFinished ENUM Indicates whether the job to which the route transaction belongs is finished. If the field is cleared, the job has not been reported as finished by this recording.

YES / NO

ExecutedPct REAL Displays an approximation of an operation's progress at the time of feedback.

If half of the operation has been carried out, the value is 50%.

Amount REAL Displays the total amount of route transactions posted to the ledger. This is calculated as number of hours multiplied by the hourly rate or quantity multiplied by the quantity price.

OprId STRING(10)Displays the operation that has been carried out at this route transaction.

TransType ENUM Route transaction type

SQL value

AX value Description

0 Time Displayed when the transaction is a time record.

1 Qty Displayed when the transaction is a quantity record.

Prepared for Microsoft Corporation

Page 113 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

VoucherCalc STRING(20) Indicates which voucher series has been used at cost accounting posting of issues from the work center. Work center issue is the value that the route transaction has on the basis of the WIP transactions posted earlier. The transaction can later be settled with salary payments in the ledger.

AccountWIPValuation STRING(20)Receipt account used when posting WIP to the ledger.

AccountWIPIssue STRING(20)Indicates which account number has been used when posting WIP issues to the ledger. WIP issue is the value that is used by the work centers at this route transaction. Therefore, you can see in the ledger which value has been issued from the work centers. Offset accounting is carried out to the account defined in the WIP account field.

AccountCalcIssueOffset STRING(20)Displays the account number that has been used as an offset account at cost accounting posting of issues from the work center. The work center issue is posted using the value entered in the amount field. The offset account contains the value that is added to the company accounts in the form of finished products. You can see in the ledger what value the work centers have had with regard to a production. The account number is determined by the way production has been set up on the Production orders form and in Ledger. The account number is specified on the basis of this setup, either using the cost category, work center, or production group.

AccountCalcIssue STRING(20)Displays the account number that has been used for posting cost accounting after work center issue. The WIP transactions have been posted earlier. Therefore, you can see in the ledger what value the work centers have had with regard to this route transaction. The transaction is settled later with salary payments in the ledger. The account number depends on the setup of the production on the Production orders form and in Ledger. The account number is determined by this setup, either using the cost category, work center, or production group.

PostingWIPValuation ENUM Transaction type is a specification of the type of transaction.

SQL value

AX value Description

0 None

1 ExchRateGain Exchange rate profit

2 ExchRateLoss Exchange rate loss

3 InterCompany Intercompany accounting

4 Tax Sales tax

5 VATRoundOff Sales tax rounding

6 Allocation Allocation

7 InvestmentDuty Investment tax

8 Liquidity Liquidity

9 MSTDiffSecond Penny difference in secondary currency

Prepared for Microsoft Corporation

Page 114 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

10 ErrorAccount Error account

11 MSTDiff Penny difference in default currency

12 YearResult Year-end result

13 Closing Close

14 LedgerJournal Ledger journal

15 CashDiscount Cash discount

16 ConsolidateDiffBalance Balance account for consolidation differences

17 PaymentFee Payment fee

18 TaxReport Sales tax reporting

19 TransferOpeningClosing Transfer of closing and opening balance

20 Bank Bank

21 ConversionProfit Conversion profit

22 ConversionLoss Conversion loss

23 TaxWithhold Withholding tax

31 CustBalance Customer balance

32 CustRevenue Customer revenue

33 CustInterest Customer interest

34 CustCashDisc Customer cash discount

35 CostCollectionLetterFee Customer collection letter fee

36 CustInterestFee Customer interest fee

37 CustInvoiceDisc Customer invoice discount

38 CustPayment Customer payment

39 CustReimbursement Reimbursement

40 CustSettlement Customer settlement

41 VendBalance Vendor balance

42 VendPurchLedger Vendor incoming

Prepared for Microsoft Corporation

Page 115 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

43 VendOffsetAccount Vendor offset account

44 VendInterest Vendor interest

45 VendCashDisc Vendor cash discount

46 VendPayment Vendor disbursement

47 VendInvoiceDisc Vendor invoice discount

48 VendSettlement Vendor settlement

51 SalesRevenue Sales order revenue

52

53

54

55

56

57

58

59

60

61

62

63

64

65

206 SalesPackingslipTax Sales, packing slip tax

71 PurchConsump Purchase, consumption

PostingWIPIssue ENUM Enum Type as previous

PostingCalcIssueOffset ENUM Enum Type as previous

PostingCalcIssue ENUM Enum Type as previous

Cancelled ENUM Cancelled

YES / NO

Prepared for Microsoft Corporation

Page 116 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.9.7 WrkCtrTable This is table that includes resources for manufacturing called work centers. Work centers with similar functions in the production process are usually assigned to the same work center group. The parameters for the group are the default parameters for each work center in this group. This eliminates the need to define parameters for each work center individually.

Work center groups are used to manage capacity in the company's production system. The company's work centers are divided into 2 levels, i.e., and Work center. Group is primarily used in operations scheduling and is therefore a superior level of capacity management.

Work center groups can be of the : Vendor ,Human resources Machine or Tool.

If the jobs/operations are carried out by an external work center (sub supplier), then when the Supplier is selected, no capacity reservation will be made for machine capacity, although the planned time for the supplier will be calculated as a production time in connection with scheduling. It is possible to schedule operations for both the work center group and the work center. However, work centers must always be associated with a , and the work center group must be associated with at least one Work center. If the operation in the production route is associated with a Group, then the capacities of all underlying work centers will be included in operations scheduling. Not until job scheduling with the optimum in the chosen Group is selected.

Field name Data type Field description

WrkCtrGroupId STRING(10) Identification of the work center group.

WrkCtrId STRING(10) Work center or work center group to be assigned.

Name STRING(140)Work center name.

WrkCtrType ENUM Work center type, machine, personnel, tool or sub supplier.

SQL value

AX value Description

0 Vendor Select this type when the group consists of external work centers, for example subcontractor. The type enables you to generate purchases for subcontractors on the basis of BOM lines / production lines.

1 Personnel Select this type when the work center group consists of one or more persons. You should only create Personnel if you want to job- schedule for individual employees or groups of people. For both the operation and the

Prepared for Microsoft Corporation

Page 117 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

work center, you can specify a number of operators as standard, and you can follow the work center consumption for the operator time in the operator profile. Normally you schedule for work center type Personnel if the personnel capacity is limited.

2 Machine Select this type when the work center group consists of machines.

3 Tool Select this type if the work center group consists of tools.

WrkCtrNumOf REAL Number of work centers included in the group

EffectivityPct REAL Specified here is the efficiency percentage for the work center group in the WrkCtrGroupId dialog or for the work center in the WrkCtrId dialog. This reduces or increases the time required by an individual job.

OperationSchedPct REAL Max. percent of daily capacity to be operations scheduled per production

Capacity REAL This field shows in capacity units the work center's capacity per hour. You then specify in the CapUnit field which unit the capacity is expressed in.

CapUnit ENUM Unit the capacity is measured in

SQL value

AX value Description

0 None

1 StrokesHour Strokes/hour

2 MeterHour Meters/hour

3 KgHour Lbs./hour

4 FormHour Data/hour

VendId STRING(20) When subcontractors are used in the production sequence, you must select in WrkCtrId a work center of type Sub supplier In connection with the scheduling of the production no loading of the capacity on work centers of type Sub supplier is carried out.

AccountWrkCtrIssue STRING(20) Ledger account for work center consumption.

AccountWIPValuation STRING(20) Receipt account for work center consumption in process

Created DATE Work center setup or creation date

Prepared for Microsoft Corporation

Page 118 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

QueueTimeBefore REAL This field shows the time to wait before the operation can be started. The value in the field must be positive. You set up the field in the route group, where you can determine whether queue time should be scheduled and which calendar to use. Queue time can be used for sub supplier work, for example.

SetupTime REAL The , which must be positive, is the fixed time to be used for preparing a work center. Whether the time should be scheduled, and whether capacity should be reserved or the time should respect the working-time calendar depends on the route group.

ProcessTime REAL Run time shows the time it takes to produce the process quantity. If you did not specify a conversion factor in the ToHours field for the route operation or the ToHours field for the work center, then Run time is filled in automatically with hours with two decimals. If you entered a value in ToHours for the route operation, then the ToHours for the work center will be overridden. ProcessPerQty must be positive. For a description of conversion to other units of time, see ToHours. The time is scheduled in relation to the operation's TaskGroupId.

ProcessPerQty REAL Number of items that can be produced in the given ProcessTime. Process qty. must be greater than 0 (zero).

TranspTime REAL Transit time shows the time it takes to move items between two work centers or from the last operation to inventory. How TranspTime is used depends on the setup for the operation's route group. The transport time must be positive.

The field value is transferred to the route operation when you select the work center.

QueueTimeAfter REAL Queue time after is the time that the items have to wait after the operation is finished before the next operation can start. The field must be positive. The value in the field will depend on the setup for the route group in ProcessTime and can follow the Gregorian calendar or the current working-time calendar. For example, you could use the field to dry items before the start of the next operation.

TransferBatch REAL The overlap quantity is used to calculate the overlap time. The field value must be positive. Overlap time can be defined as the minimum production time before overlap may occur. Overlap time is scheduled according to the calendar and is calculated in the following manner:

ProcessTime * (1 + Accumulated scrap pct) * TransferBatch / ProcessPerQty

The setup for the route group will determine the choice of calendar. Accumulated scrap pct is the accumulated scrap percentage in the production process. If TransferBatch is 0 (zero) or greater than the quantity for the production, then the overlap time will be 0 (zero).

ToHours REAL Conversion factor to hours. (Factor X Time) = Time in hours.

ErrorPct REAL Scrap percentage shows the expected extra consumption for the operation. The extra consumption is included in the

Prepared for Microsoft Corporation

Page 119 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

calculation of both the material consumption and the work center consumption for the current operation. The field must be positive. Value is summarized from the Accumulated field for the current route. Accumulated is used in the calculation of extra consumption of materials and work center time for the individual operations in the route. The formula for the calculation is as follows: is Accumulated for the next operation number * 100 / (100 - ErrorPct)

SetUpCategoryId STRING(10) Cost category proposal for setup time

ProcessCategoryId STRING(10) Cost category proposal for run time

Dimension STRING(10) Financial dimension.

Dimension2_ STRING(10) Financial dimension.

Dimension3_ STRING(10) Financial dimension.

IsGroup ENUM Work centre is work centre group.

YES / NO

AccountWIPIssue STRING(20) Issues account for work center consumption in process.

EmplId STRING(10) Employee referred to

CalendarId STRING(10) Work centre work calendar.

CapLimited ENUM This field allows you to select whether the capacity is limited or unlimited. If this field is selected, the capacity will be limited. With limited capacity, operations or jobs are scheduled on the basis that it is not possible to engage more capacity than what is available on the work center group or work center. With unlimited capacity, already reserved capacity on a work center group or work center is not taken into account, which renders subsequent reservations without meaning.

TaskGroupId STRING(10) Task group for searching for alternatives

WrkCtrTaskDemand REAL In this field you can specify a minimum requirement for searching for alternative work centers.

PropertyLimited ENUM Does the work center operate with limited properties?

YES / NO

Exclusive ENUM Are job reservations exclusive from start to finish?

YES / NO

QtyCategoryId STRING(10) Cost category proposal for quantity

RouteGroupId STRING(10) Proposal for routing group

AccountWrkCtrIssueOffset STRING(20) Account used to debit work in process in connection with costing.

3.9.8 WrkCtrCapRes Table is used to reserve capacity on the particular Work center or Work center group. Capacity is the percentage of company resources available for production. Scheduling is possible in different versions.

Prepared for Microsoft Corporation

Page 120 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

Field name Data type Field description

LoadType ENUM Load type, capacity for reservation

SQL value

AX value Description

0 Blank

1 Blank1

2 OperationSched Reservation made based on a production order with the status operations scheduled or an operations scheduled production order that is subsequently started.

3 JobSched Reservation made based on a production order with the status job scheduled or a job scheduled production order that is subsequently started.

4 Deletemarked Used when scheduling has been aborted, in which case you can return to the starting point.

TransDate DATE Work center reservation date.

ReqPlanId STRING(10)If the reservation was made based on master scheduling, then the requirement version that reserved the capacity is shown here. You can work with several scheduling versions, which allows you to compare them.

PropertyId STRING(10) Scheduled or reserved property

JobId STRING(20) Dispatch job that reserved the capacity.

JobType ENUM Job type of the route job

SQL value

AX value Description

0 QueueBefore Queue before

1 Setup Setup

2 Process Process

3 Overlap Overlap

4 Transport Transport

5 QueueAfter Queue after

Locked ENUM By selecting Locked you are no longer able to reschedule or

Prepared for Microsoft Corporation

Page 121 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

change the reservation. This function can be used for rush jobs or other important productions that need to be finished on time. This way you ensure that the production is not rescheduled. You can lock productions in the Production table.

YES / NO

OprNum INTEGER Operation number that reserved the capacity

RefId STRING(20)Number of the reference that created the reservation.

RefType ENUM Reference type that generated the reservation

SQL value

AX value Description

0 Blank

1 Production Reservation generated based on a production order that has at least been operations scheduled.

2 PlannedOrder Reservation generated based on Planned order.

3 Project Reservation generated based on a Projects.

WrkCtrLoadPct REAL Load shows the percentage of the maximum capacity reserved. This percentage depends on the Efficiency in percentage field in the working-time calendar, the Efficiency percentage field for the work center, and the Load field for the production route.

WrkCtrGroupId STRING(10)Identification of the work center group.

WrkCtrId STRING(10)Identification of the work center.

WrkCtrSec REAL Seconds those are either reserved or available.

OprPriority ENUM Cause of error attached to the error quantity

SQL value

AX value Description

0 Primary

1 Secondary1 Secondary 1

2 Secondary2 Secondary 2

3 Secondary3 Secondary 3

4 Secondary4 Secondary 4

5 Secondary5 Secondary 5

EndTime TIME The end time can either be the expected ending time of a production order with the status Job scheduled or the ending time for available capacity. The value of reservations with the load type Operations scheduled or the reference type Planned

Prepared for Microsoft Corporation

Page 122 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

order is 0. Therefore, for operations scheduled production orders and planned production orders that are not yet firm, you are only able to read the reservation in hours. Consequently, the time for execution of the production is not established.

StartTime TIME The starting time can either be the expected starting time of production orders with the status Job scheduled or the starting time for available capacity. The value of reservations with the load type Operations scheduled or the reference type Planned order is 0. Therefore, for operations scheduled production orders and planned production orders that are not yet firm, you are only able to read the reservation in hours.

IntvQr INTEGER Quarter of the date.

IntvMth INTEGER Month of the date.

IntvWk INTEGER Week of the date.

3.10 Bank transactions data structure Data structure for the banking transactions in Dynamics AX is pretty simple. Three tables are linked to each other with one-to-many relations. Below the content of these tables are described in more detail.

Figure 14

3.10.1.1 BankAccountTrans

The transaction table, where all bank module transactions are stored. This table is linked with LedgerTable and bank transactions in BankAccounTrans and LedgerTrans table should mach together.

Field name Data type Field description

Prepared for Microsoft Corporation

Page 123 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.10.1.2 BankAccountTable

In this table all different bank accounts are stored what are used for money transfer. There is defined how bank transactions are transferred to general ledger LedgerTrans table.

Field name Data type Field description

3.10.1.3 BankGroup

Table contains list of different banks what company uses in its everyday business.

Field name Data type Field description

3.11 Project transactions data structure Project transactions data structure has several tables in the data model map. In central position there is ProjTransPosting table, which consolidates all different project module transactions into the one table. There five different project transaction types and each of them have its own register (ProjEmplTrans, ProjOnAccountTrans, ProjRevenueTrans, ProjCostTrans, ProjItemTrans). These five transaction tables contain more specific information depending on the transaction type and these tables are synchronizing their content with the ProjTransPosting central table. ProjTable is central register for projects, where also different project parameters are stored.

In the data model there are also other central registers linked to the transactions, like employees (EmplTable), inventory (InventTable), chart of accounts (LegerTable) etc.

Figure 15

Prepared for Microsoft Corporation

Page 124 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.11.1.1 ProjTransPosting

The central table for the project related transactions. There are five different project transaction types in the project module: inventory transactions, employee transactions (work hours), cost transactions, revenue transactions and on account transactions. All these transaction types have their own transaction register that also synchronizes data with the ProjTransPosting table.

Field name Data type Field description

LedgerTransDate DATE Date of the transaction in ledger

ProjId CHAR(10) The project to which the transaction is attached.

Voucher CHAR(20) Transaction voucher number in general ledger LedgerTrans

TransId CHAR(20) Project module centric transaction number. Ties together many tabels also from outside the project module.

ProjTransDate DATE Project date when the transaction was posted to the project.

Subscription INTEGER Specifies, if the transaction is related with accruals (for example revenue accruals in fixed price projects)

Dimension CHAR(10) Analytical Dimension no. 1 value

Dimension2_ CHAR(10) Analytical Dimension no. 2 value

DImansion3_ CHAR(10) Analytical Dimension no. 3 value

ProjTransType INTEGER Displays the project transaction type – from which project

Prepared for Microsoft Corporation

Page 125 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

accounting journal the transaction in originated. Options are:

SQL value

AX value Description

1 Revenue Transaction is created from project module revenue journal

2 Hour Transaction is created from project module hour journal

3 Cost Transaction is created from project module cost journal

4 Item Transaction is created from project module item journal

5 OnAccount Transaction is created from project module on account register related with Fixed Price projects

6 WIP Transaction is created during Work In Progress calculation

AmountMst REAL Transaction amount in the default company currency. Can be positive or negative value, represents debit or credit transaction in GL transaction table LedgerTrans

Account CHAR(20) General ledger account used while posting the transaction in GL

PostingType INTEGER Posting specific type identifies what process in project module created the transaction.

Values can be following:

SQL value

AX value

121 ProjCost 

122 ProjPayrollAllocation 

123 ProjWIPCostvalue

124 ProjOffsetAccountItem

125 ProjStatusAccountItem 

126 ProjTurnover 

127 ProjOnAccount 

128 ProjSalesvalue

129 ProjSalesvalueOffset 

130 ProjAccruedTurnoverProd 

131 ProjWIPProduction 

132 ProJAccruedTurnoverProfit 

133 ProjWIPProfit

134 ProjNeverLedger 

135 ProjAccruedCost 

136 ProjWIPCost 

137 ProjAccruedRevenueOnAccount 

138 ProjWIPInvoicedOnAccount 

Prepared for Microsoft Corporation

Page 126 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

139 ProjNoLedger 

207 ProjAccruedRevenueSubscription 

208 ProjWIPSubscription 

costSales INTEGER Specifies whether transaction is sales or cost related.

Values:

SQL value

AX value

0 None

1 Cost

2 Sales

InventTransId CHAR(20) Identification of inventory transaction in central inventory transactions table InventTrans.

ProiTransosting.InventTransId = InventTrans.InventTransId

Only inventory related project module transactions are related with inventory module. In case there is no relation, ProiTransosting.InvenTransId is empty.

ProjAdjustRef CHAR(20) Inventory transaction relation to the inventory module transaction table InventTrans.ProjAdjustRefId. In case of inventory cost adjustment this code links project related inventory module transactions with the relevant project module transaction.

EmplId CHAR(20) The employee attached to the transaction.

CategoryId CHAR(10) The project category to which the transaction is attached.

Qty REAL View the quantity associated with the transaction, if any.

Elimination INTEGER Identified if the transaction is created during fixed price project elimination process.

No/Yes

ProjType INTEGER Specifies the project type related with the transaction:

SQL value

AX value

0 Time & Material project

1 Fixed price project

2 Investment project

3 Cost accounting project

4 Internal project

5 Time consumption project

3.11.1.2 ProjTable

The table is central project register for Dynamics AX solution. The table contains different project specific

Prepared for Microsoft Corporation

Page 127 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

setup parameters. In this table also project hierarchy is stored. Lines from this table can be used in dimensional analyses as inventory dimensions.

Field name Data type Field description

ProjGroupId STRING(10) The project group that the current project is going to be part of

ProjId STRING(10) The project number, unique identifier

Name STRING(60) A free text name for the project

Created DATE Project creation date. This date is automatically inserted when the project is created

StartDate DATE Project start date

EndDate DATE Project end date

CustAccount STRING(20) Customer account, if any, related to the project.

Dimension STRING(10) Analytical Dimension no. 1 value

Dimension2_ STRING(10) Analytical Dimension no. 2 value

Dimension3_ STRING(10) Analytical Dimension no. 3 value

ResponsibleSales STRING(10) Sales employee in charge of the project.

ProjInvoiceProjId STRING(10) Reference to the invoice project. The invoice project determines the invoice and payment conditions of a project.

DlvCounty STRING(10) Shows the county for the address.

DlvCountryReguionId STRING(10) Unique identification of the country/region.

DlvState STRING(10) Shows the state for the address.

Responsible STRING(10) The person in charge of the project.

ParentId STRING(10) Shows the parent project of a child project, if any. If the current project is at the top level, the field is empty.

SortingId STRING(10) Additional parameter for project description.

SortingId2_ STRING(10) Additional parameter for project description.

SortingId3_ STRING(10) Additional parameter for project description.

Status INTEGER The status of the current project. Values can be:

SQL value

AX value Description

0 Created Initial stage.

1 Estimated Manually activated. This stage normally signifies that project estimation has been conducted.

2 Scheduled Automatically activated on scheduling hour consumption.

3 In process Manually activated. This stage normally signifies start of the project.

4 Completed Manually activated.

Prepared for Microsoft Corporation

Page 128 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

WIPProject STRING(10) The estimate project reference is the reference for posting estimates. Any project in the project hierarchy can be specified as an estimate project. Filed is relevant only in fixed price projects.

Type INTEGER The project's type. Values can be:

SQL value

AX value

0 Time and material

1 Fixed price

2 Investment

3 Cost

4 Internal

5 Time

ResponsibleFinancial STRING(10) The person who is financially responsible for the project (project controller).

Template INTEGER This field is selected if the current project should be applied as a template for projects set up with the Copy project wizard.

No/Yes

3.11.1.3 ProjEmplTrans

The Table is specific transaction register for the project employee transactions. ProjEmplTrans specialty is the employee work hours registration for project accounting purposes. All transaction from this register are synchronized also to ProjTransPosting table (central project transaction register)

Field name Data type Field description

ProjId CHAR(10) Project to which the transaction is attached. Reference to the ProjTable

EmplId CHAR(10) Employee to whom the transaction is attached.

CathegoryId CHAR(10) Project category that is attached to the transaction.

LinePropertyId CHAR(10) Line property that is attached to the transaction.

TransDate DATE Date the transaction was posted to the project.

Txt CHAR(60) Text entered into the Transaction text field when the journal is posted

Qty REAL Number of hours that are attached to the transaction.

CostPrice REAL Cost price per hour of the current category.

SalesPrice REAL Sales-price per hour of the current category. This price includes any additional costs and miscellaneous charges.

LedgerTsatusCost INTEGER Current placement in ledger that is balance sheet, profit and loss, or posted, but not financially updated in the ledger.

Prepared for Microsoft Corporation

Page 129 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

SQL value

AX value Description

0 No ledger No posting on ledger accounts when hours are posted from journals. Upon invoicing hours are debited to the cost account and credited to the payroll allocation account. This option is optional on time and material projects and internal projects.

1 Balance Hours are debited to the cost value account and credited to the payroll allocation account when the journal is posted. Optional for internal projects and time and material projects.

2 Profit and loss

Costs of hours are debited to the cost account and credited to the payroll allocation account when the journal is posted. This option is mandatory on fixed-price projects, investment projects, and cost projects. When this option is selected, revenue can be accrued on the hour transaction.

3 Never ledger

No posting on ledger accounts when hours are posted from journals. This option is mandatory on Time projects and optional on time and material projects and internal projects. When this option is selected, revenue can be accrued on the hour transaction. Hour transactions are never posted to Ledger accounts, on journal posting (Post costs), or upon invoicing. Therefore, ledger transactions are not created.

Dimension CHAR(10) Analytical Dimension no. 1 value

Dimension2_ CHAR(10) Analytical Dimension no. 2 value

Dimension3_ CHAR(10) Analytical Dimension no. 3 value

TransId CHAR(20) Transaction identifier in project module

CurrencyId CHAR(3) Currency for invoicing of a transaction.

ActivityId CHAR(10) Identification of project activity.

LedgersalesAmount REAL Sales amount posted to the ledger

WIPPeriod DATE Specifies which WIP period the transaction is attached to.

VoucherJournal CHAR(20) Voucher number of the voucher attached to the journal.

FromTime TIME Start time that was entered for a transaction.

ToTime TIME End time that was entered for a transaction.

TransStatus INTEGER Status of the transaction.

Prepared for Microsoft Corporation

Page 130 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

SQL value

AX value

0 No status

1 Registered

2 Posted

3 Invoice proposal

4 Invoiced

5 Marked credit note

6 Credit note proposal

7 Estimated

8 Eliminated

9 Adjusted

3.11.1.4 ProjOnAccTrans

The Table is specific transaction register for the project on account (prepayment) transactions. ProjOnAccTrans specialty is payment registration accordingly to agreed payment schedule for project accounting purposes. All transaction from this register are synchronized also to ProjTransPosting table (central project transaction register)

Field name Data type Field description

ProjId CHAR(10) Project to which the transaction is attached. Reference to the ProjTable

TransDate DATE Date the transaction was posted to the project.

Description CHAR(60) Text entered into the Transaction text field when the journal is posted

Amount REAL The amount that the customer is invoiced.

OffsetTransaction INTEGER This check box indicates that the current transaction line is an offset transaction.

If the current project is a fixed-price project, this check box is left blank because no offset transactions are entered for fixed-price projects.

For a time-and-material project, on the other hand, this check box is left blank on the line where the on-account amount is entered. On the following lines the offset transactions are entered with a negative sign, and for these lines this check box is selected.

TransId CHAR(20) Transaction identifier in project module

Currency CHAR(3) Currency in which the project is invoiced.

WIPPeriod DATE Specifies which WIP period the transaction is attached to..

LedgersalesAmount REAL Sales amount posted to the ledger

TransStatus INTEGER Status of the transaction.

Prepared for Microsoft Corporation

Page 131 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

SQL value

AX value

0 No status

1 Registered

2 Posted

3 Invoice proposal

4 Invoiced

5 Marked credit note

6 Credit note proposal

7 Estimated

8 Eliminated

9 Adjusted

Dimension CHAR(10) Analytical Dimension no. 1 value

Dimension2_ CHAR(10) Analytical Dimension no. 2 value

Dimension3_ CHAR(10) Analytical Dimension no. 3 value

3.11.1.5 ProjRevenueTrans

The Table is specific transaction register for the project revenue transactions. ProjRevenueTrans specialty is the project revenue transactions registration for project accounting purposes. All transaction from this register are synchronized also to ProjTransPosting table (central project transaction register)

Field name Data type Field description

ProjId CHAR(10) Project to which the transaction is attached. Reference to the ProjTable

CathegoryId CHAR(10) Project category that is attached to the transaction.

TransDate DATE Date the transaction was posted to the project.

Txt CHAR(60) Text entered into the Transaction text field when the journal is posted

SalesPrice REAL Sales-price of the current category. This price includes any additional costs and miscellaneous charges.

Dimension CHAR(10) Analytical Dimension no. 1 value

Dimension2_ CHAR(10) Analytical Dimension no. 2 value

Dimension3_ CHAR(10) Analytical Dimension no. 3 value

LedgerSalePosted INTEGER This check box is selected if revenue from a transaction of type Fee has been accrued.

If revenue has been accrued on a project, it will be charged to the WIP sales value account and placed as credit on the accrued revenue sales value account.

Prepared for Microsoft Corporation

Page 132 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

No/Yes

CurrencyId CHAR(3) Currency for invoicing of a transaction.

TransId CHAR(20) Transaction identifier in project module

LedgerSalesAmount REAL Sales amount posted to the ledger

VoucherJournal CHAR(20) Voucher number of the voucher attached to the journal.

LinePropertyId CHAR(10) Line property that is attached to the transaction.

Price REAL Shows the amount invoiced to the customer.

Qty REAL Quantity attached to the transaction.

EmplId CHAR(10) Employee to whom the transaction is attached.

WIPPeriod DATE Specifies which WIP period the transaction is attached to.

WIPType INTEGER Specifies optional project WIP types.

Possible values:

SQL value

AX value

0 Accrued revenue

1 Accrued revenue – Production

2 Accrued revenue – Profit

3 Cost

ControlVersion INTEGER Specifies version number for the WIP calculation period for the current transaction (WIP calculations per period may be cancelled and recalculated)

ControlId CHAR10 Identification of cost template

Origin INTEGER Shows whether the transaction was generated from a journal transaction, an estimate or a subscription.

Values:

SQL value

AX value

0 Journal

1 Estimate

2 Services module subscription

TransStatus INTEGER Status of the transaction.

SQL value

AX value

0 No status

1 Registered

2 Posted

Prepared for Microsoft Corporation

Page 133 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3 Invoice proposal

4 Invoiced

5 Marked credit note

6 Credit note proposal

7 Estimated

8 Eliminated

9 Adjusted

3.11.1.6 ProjCostTrans

The Table is specific transaction register for the project cost transactions. ProjCostTrans specialty is the cost transaction registration (not inventory or work hour related costs, like subcontracting, consultancy etc.) for project accounting purposes. All transaction from this register are synchronized also to ProjTransPosting table (central project transaction register)

Field name Data type Field description

ProjId CHAR(10) Project to which the transaction is attached. Reference to the ProjTable

CathegoryId CHAR(10) Project category that is attached to the transaction.

LinePropertyId CHAR(10) Line property that is attached to the transaction.

TransDate DATE Date the transaction was posted to the project.

Txt CHAR(60) Text entered into the Transaction text field when the journal is posted

Qty REAL Number of hours that are attached to the transaction.

CostPrice REAL Cost price per hour of the current category.

SalesPrice REAL Sales-price per hour of the current category. This price includes any additional costs and miscellaneous charges.

LedgerTsatusCost INTEGER Current placement in ledger that is balance sheet, profit and loss, or posted, but not financially updated in the ledger.

SQL value

AX value Description

0 No ledger No posting on ledger accounts when hours are posted from journals. Upon invoicing hours are debited to the cost account and credited to the payroll allocation account. This option is optional on time and material projects and internal projects.

1 Balance Hours are debited to the cost value account and credited to the payroll allocation account when the journal is posted. Optional for internal projects and time and material projects.

Prepared for Microsoft Corporation

Page 134 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

2 Profit and loss

Costs of hours are debited to the cost account and credited to the payroll allocation account when the journal is posted. This option is mandatory on fixed-price projects, investment projects, and cost projects. When this option is selected, revenue can be accrued on the hour transaction.

3 Never ledger

No posting on ledger accounts when hours are posted from journals. This option is mandatory on Time projects and optional on time and material projects and internal projects. When this option is selected, revenue can be accrued on the hour transaction. Hour transactions are never posted to Ledger accounts, on journal posting (Post costs), or upon invoicing. Therefore, ledger transactions are not created.

Dimension CHAR(10) Analytical Dimension no. 1 value

Dimension2_ CHAR(10) Analytical Dimension no. 2 value

Dimension3_ CHAR(10) Analytical Dimension no. 3 value

LedgerSalesPosted INTEGER Specifies if the transaction is posted to the general ledger or no

No/Yes field

TransId CHAR(20) Transaction identifier in project module

CurrencyId CHAR(3) Currency for invoicing of a transaction (sales currency).

LedgersalesAmount REAL Sales amount posted to the ledger

WIPPeriod DATE Specifies which WIP period the transaction is attached to.

CostPriceCurrency REAL Amount in currency

CurrencyIdCost CHAR(3) Current currency code that was used for entering the expense.

VoucherJournal CHAR(20) Voucher number of the voucher attached to the journal.

CostAmountLedger REAL Cost amount posted to the ledger in the company currency

EmplId CHAR(10) Employee to whom the transaction is attached.

Origin INTEGER Shows whether the transaction was generated from a journal transaction, an estimate or a subscription.

Values:

SQL value

AX value

0 Journal

1 Estimate

2 Services module subscription

Prepared for Microsoft Corporation

Page 135 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

TransStatus INTEGER Status of the transaction.

SQL value

AX value

0 No status

1 Registered

2 Posted

3 Invoice proposal

4 Invoiced

5 Marked credit note

6 Credit note proposal

7 Estimated

8 Eliminated

9 Adjusted

3.11.1.7 ProjItemTrans

The Table is specific transaction register for the project inventory transactions. ProjItemTrans specialty is the inventory transactions registration for project accounting purposes. All transaction from this register are synchronized also to ProjTransPosting table (central project transaction register)

Field name Data type Field description

ProjId CHAR(10) Project to which the transaction is attached. Reference to the ProjTable

CathegoryId CHAR(10) Project category that is attached to the transaction.

LinePropertyId CHAR(10) Line property that is attached to the transaction.

TransDate DATE Date the transaction was posted to the project.

Txt CHAR(60) Text entered into the Transaction text field when the journal is posted

Qty REAL Number of items that are attached to the transaction.

SalesPrice REAL Item sale sprice

Dimension CHAR(10) Analytical Dimension no. 1 value

Dimension2_ CHAR(10) Analytical Dimension no. 2 value

Dimension3_ CHAR(10) Analytical Dimension no. 3 value

LedgerSalesPosted INTEGER Specifies if the transaction is posted to the general ledger or no

No/Yes field

InventTransId CHAR(20) Transaction identifier in inventory module

CurrencyId CHAR(3) Currency for invoicing of a transaction (sales currency).

Prepared for Microsoft Corporation

Page 136 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

LedgersalesAmount REAL Sales amount posted to the ledger

ItemId CHAR(20) Inventory item number attached to the transaction.

PackingSlipId CHAR(20) Identification of the packing slip.

VoucherPackingSlip CHAR(20) Packing slip voucher number in the ledger.

ProjTransId CHAR(20) Transaction identifier in project module

ItenType INTEGER Specifies available project/item transaction types, in which modules inventory transaction is created.

Values can be:

SQL value

AX value

0 Item requirements (Project)

1 Sales order

2 Item journal

3 Purchase order

SalesInvoiceId CHAR(20) Identification of the invoice.

InventDimId CHAR(20) Foreign key to the table InventDim. Each InventDimId contains unique dimension combination

ProjAdjustRefId CHAR(20) Inventory transaction relation from InventTrans table to the project module transaction table ProjTransPosting.ProjAdjustRefId and ProjItemTrans.ProjAdjustRefId. In case of inventory cost adjustment this code links project related inventory module transactions with the relevant project module transaction.

LedgerAccount CHAR(20) Ledger account for posting lines to a specific sales account.

SalesUnit CHAR(20) Shows the unit of the item that was consumed, for example, gallons of paint or meters of cable.

LineAmount REAL Sales amount of the line (incl. discount).

TransStatus INTEGER Status of the transaction.

SQL value

AX value

0 No status

1 Registered

2 Posted

3 Invoice proposal

4 Invoiced

5 Marked credit note

6 Credit note proposal

7 Estimated

Prepared for Microsoft Corporation

Page 137 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

8 Eliminated

9 Adjusted

3.11.1.8 InventTable

For the table description please see p. 3.8.1.4

3.11.1.9 ProjCategory

The ProjCategory table is register that contains different cost categories, which can be used for different project transactions in transaction tables (ProjEmplTrans, ProjRevenueTrans, ProjCostTrans, ProjItemTrans). Project cost categories are useful for analyses purposes and also they are used while setting up project transactions posting rules to the general ledger transactions.

Field name Data type Field description

CategoryId The unique name for the category.

Name Descriptive name for the category, no more than 30 characters long.

CategoryGroupId A category group for the specific category.

CategoryType The transaction type of the category is inherited from the transaction type of the category group.

Values can be:

SQL value

AX value

0 None

1 Fee

2 Hour

3 Expense

4 Item

3.11.1.10 ProjCategoryGroup

Project categories defined in ProjCategory table must belong to the project category group that groups together project categories that are similar to each other. It means that categories have two level hierarchies for reporting purposes.

Field name Data type Field description

CategoryId The unique name for the category.

Name Descriptive name for the category, no more than 30 characters long.

Prepared for Microsoft Corporation

Page 138 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

CategoryType One of the five predefined transaction types, depending on what transactions are going to be posted on the category group.

Values can be:

SQL value

AX value

0 None

1 Fee

2 Hour

3 Expense

4 Item

3.11.1.11 LedgerTable

For the table description please see p. 3.1.1

3.11.1.12 EmplTable

The table is central register for the company employees.

Field name Data type Field description

EmplId CHAR(10) Employee ID code.

Name CHAR(60) The name of an employee

Dimension CHAR(10) Analytical Dimension no. 1 value

Dimension2_ CHAR(10) Analytical Dimension no. 2 value

Dimension3_ CHAR(10) Analytical Dimension no. 3 value

Status INTEGER Employee's status:

SQL value

AX value

0 None

1 Employed

2 Terminated

3.11.1.13 Dimensions

For the table description please see p. 3.1.2

Prepared for Microsoft Corporation

Page 139 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.12 Project forecast data structure Project forecast data structure has several tables in the data model map. In central position there is ProjTransBudget table, which consolidates all different project module forecast transactions into the one table. There five different project forecast transaction types and each of them has its own register (ProjForecastEmpl, ProjForecastOnAccount, ProjForecastRevenue, ProjForecastCost, ForecastSales). These five transaction tables have more specific information regarding its specification ant they are synchronizing its content to the ProjTransBudget table. ProjTable is central register for projects, where also different project parameters are stored.

In case there is need to compare actual project costs with the project forecast, then comparison between ProjTransPosting and ProjTransBudget should be done

In the data model there are also other central registers linked to the transactions, like employees (EmplTable), inventory (InventTable), chart of accounts (LegerTable) etc.

Figure 16

3.12.1.1 ProjTransBudget

The central table for the project related forecast transactions. There are five different project forecast transaction types in the project module: inventory transactions, employee transactions (work hours), cost transactions, revenue transactions and on account transactions. All these transaction types have their own transaction register that also synchronizes itself with the ProjTransBudget table.

Field name Data type Field description

LedgerTransDate DATE Date of the transaction

Prepared for Microsoft Corporation

Page 140 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

ProjId CHAR(10) The project to which the transaction is attached.

Voucher CHAR(20) Transaction voucher number in general ledger LedgerTrans

TransId CHAR(20) Project module centric transaction number. Ties together many tabels also from outside the project module.

ProjTransDate DATE Project date when the transaction was posted to the project.

Dimension CHAR(10) Analytical Dimension no. 1 value

Dimension2_ CHAR(10) Analytical Dimension no. 2 value

DImansion3_ CHAR(10) Analytical Dimension no. 3 value

ProjTransType INTEGER Displays the project transaction type – from which project accounting journal the transaction in originated. Options are:

SQL value

AX value Description

1 Revenue Transaction is created from project module revenue journal

2 Hour Transaction is created from project module hour journal

3 Cost Transaction is created from project module cost journal

4 Item Transaction is created from project module item journal

5 OnAccount Transaction is created from project module on account register related with Fixed Price projects

6 WIP Transaction is created during Work In Progress calculation

AmountMst REAL Transaction amount in the default company currency. Can be positive or negative value, represents debit or credit transaction in GL transaction table LedgerTrans

Account CHAR(20) General ledger account used while posting the transaction in GL budget

PostingType INTEGER Posting specific type identifies what process in project module created the transaction.

Values can be following:

SQL value

AX value

121 ProjCost

122 ProjPayrollAllocation 

123 ProjWIPCostvalue 

124 ProjOffsetAccountItem 

125 ProjStatusAccountItem

126 ProjTurnover 

Prepared for Microsoft Corporation

Page 141 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

127 ProjOnAccount 

128 ProjSalesvalue 

129 ProjSalesvalueOffset 

130 ProjAccruedTurnoverProd 

131 ProjWIPProduction 

132 ProJAccruedTurnoverProfit 

133 ProjWIPProfit 

134 ProjNeverLedger

135 ProjAccruedCost 

136 ProjWIPCost 

137 ProjAccruedRevenueOnAccount 

138 ProjWIPInvoicedOnAccount 

139 ProjNoLedger

207 ProjAccruedRevenueSubscription 

208 ProjWIPSubscription 

costSales INTEGER Specifies whether transaction is sales or cost related.

Values:

SQL value

AX value

0 None

1 Cost

2 Sales

EmplId CHAR(20) The employee attached to the transaction.

CategoryId CHAR(10) The project category to which the transaction is attached.

Qty REAL View the quantity associated with the transaction, if any.

Elimination INTEGER Identified if the transaction is created during fixed price project elimination process.

No/Yes

ProjType INTEGER Specifies the project type related with the transaction:

SQL value

AX value

0 Time & Material project

1 Fixed price project

2 Investment project

3 Cost accounting project

4 Internal project

5 Time consumption project

ModelId CHAR(10) The budget model for the record.

Prepared for Microsoft Corporation

Page 142 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.12.1.2 ProjTable

For the table description please see p. 3.10.1.2

3.12.1.3 ProjForecastEmpl

The Table is specific forecast transaction register for the project employee forecast. ProjForecastEmpl specialty is the employee work hours forecasting for project budgeting purposes.

Field name Data type Field description

ProjId CHAR(10) Project to which the transaction is attached. Reference to the ProjTable

EmplId CHAR(10) Employee to whom the transaction is attached.

CathegoryId CHAR(10) Project category that is attached to the transaction.

LinePropertyId CHAR(10) Line property that is attached to the transaction.

Qty REAL Number of hours that are attached to the transaction.

CostPrice REAL Cost price per hour of the current category.

SalesPrice REAL Sales-price per hour of the current category. This price includes any additional costs and miscellaneous charges.

Dimension CHAR(10) Analytical Dimension no. 1 value

Dimension2_ CHAR(10) Analytical Dimension no. 2 value

Dimension3_ CHAR(10) Analytical Dimension no. 3 value

ModelId CHAR(10) The budget model for the record.

Txt CHAR(60) Text entered into the Transaction text field when the forecast is created

CurrencyId CHAR(3) Currency for invoicing of a transaction.

Active INTEGER Field is selected if the transaction is included in the budget

No/Yes

SchedToDate DATE End date calculated for the current activity.

SchedFromDate DATE Start date calculated for the current activity.

SchedWrkCtrId CHAR(10) Work center to be used for the task.

ActivityId CHAR(10) Activity for which you want to create a forecast.

Activities are specific tasks to be performed on a specific project. Thus activities are always project-specific

TransId CHAR(20) Transaction identifier in project module

SalesPaymDate DATE Expected payment date of the revenue

CostPaymDate DATE Expected payment date of the cost

Prepared for Microsoft Corporation

Page 143 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

InvoiceDate DATE The forecasted invoice date. The invoice date calculated for forecast transactions depends on the invoice frequency defined on the invoice project.

EliminationDate DATE The elimination date. When the forecast is created, the elimination date is set to the end date of the project. If the project has no end date, the project date will be applied. Applies to fixed-price projects and investment projects.

ExchRate Currency exchange rate to the company currency

JobId Unique identification of production jobs. Jobs are generated by the scheduling system and form the highest level of detail for the elements of an operation.

3.12.1.4 ProjForecastOnAcc

The Table is specific forecast transaction register for the project on account (prepayment) forecast. ProjForecastOnAcc specialty is payment forecasting for project accounting purposes.

Field name Data type Field description

ProjId CHAR(10) Project to which the transaction is attached. Reference to the ProjTable

SalesPrice REAL The amount that the customer is invoiced.

Dimension CHAR(10) Analytical Dimension no. 1 value

Dimension2_ CHAR(10) Analytical Dimension no. 2 value

Dimension3_ CHAR(10) Analytical Dimension no. 3 value

ModelId CHAR(10) The budget model for the record.

Currency CHAR(3) Currency in which the project is invoiced.

Txt CHAR(60) Text entered into the Transaction text field when the journal is posted

TransDate DATE Date the transaction was posted to the project.

TransId CHAR(20) Transaction identifier in project module

SalesPaymDate DATE Expected payment date of the revenue

InvoiceDate DATE The forecasted invoice date. The invoice date calculated for forecast transactions depends on the invoice frequency defined on the invoice project.

EliminationDate DATE The elimination date. When the forecast is created, the elimination date is set to the end date of the project. If the project has no end date, the project date will be applied. Applies to fixed-price projects and investment projects.

3.12.1.5 ProjForecastRevenue

The Table is specific forecast transaction register for the project revenue forecasts. ProjRevenueTrans specialty is the project revenue forecasting for project accounting purposes.

Prepared for Microsoft Corporation

Page 144 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

The table contains two types of lines, ones for setup purposes and others for reporting and analyses purposes. Transactions from this register are synchronized also to ProjTransBudget table (central project forecast transaction register)

Field name Data type Field description

ProjId CHAR(10) Project to which the transaction is attached. Reference to the ProjTable

CathegoryId CHAR(10) Project category that is attached to the transaction.

SalesPrice REAL Sales-price of the current category. This price includes any additional costs and miscellaneous charges.

Dimension CHAR(10) Analytical Dimension no. 1 value

Dimension2_ CHAR(10) Analytical Dimension no. 2 value

Dimension3_ CHAR(10) Analytical Dimension no. 3 value

ModelId CHAR(10) The budget model for the record.

CurrencyId CHAR(3) Currency for invoicing of a transaction.

PeriodAllocateId CHAR(10) Allocation key, if any, according to which transaction is allocated (used in setup type rows)

FreqCode Units are measured in Days, Months, or Years to define how frequently current budget transaction is generated

SQL value

AX value

0 Day

1 Month

2 Year

ExpandId INTEGER Reference to the setyp type transaction based on what current transactions are created (exploded). Value is 0 if there is no explosion.

Freq How many units of code is the jump per transaction (related with FreqCode field?

Report INTEGER Field is defining if the record is setup type budget line or reporting type budget line.

SQL value

AX value Description

0 No Transaction is setup type budgeting line

1 Yes Transaction is reporting type budgeting line

Active INTEGER Marked if the amount should be included in the current budget. By default, the field is marked as active when a budget line is created.

SQL value

AX value Description

Prepared for Microsoft Corporation

Page 145 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

0 No Inactive

1 Yes Active

Txt CHAR(60) Text entered into the Transaction text field to describe the forecast line

Stop INTEGER Indicates whether the current budget transactions should be excluded from allocations during simulations.

SQL value

AX value Description

0 No Not stopped

1 Yes Stopped

EndDate DATE Last date of the posting period for this periodic transaction. Used in setup lines.

StartDate DATE Date from which the budget amount will be in effect.

AllocateMethod CHAR(10) Methods for allocating the forecast transaction:

SQL value

AX value Description

0 None No allocation takes place. Budget line is reporting type budget transaction.

1 Period Quantity with the number of units defined in the field FreqCode. This method is used if forecast with the same quantity per period.

2 Key The forecast is allocated according to the period allocation key specified in the field Key. This method is used if seasonal variation should be taken into account.

CovStatus INTEGER Status of cash flow forecast for the current transaction.

LinePropertyId CHAR(10) Line property that is attached to the transaction.

TransId CHAR(20) Transaction identifier in project module

SalesPaymDate DATE Expected payment date of the revenue

InvoiceDate DATE The forecasted invoice date. The invoice date calculated for forecast transactions depends on the invoice frequency defined on the invoice project.

3.12.1.6 ProjForecastCost

The Table is specific forecast transaction register for the project cost forecasts. ProjCostTrans specialty is the cost transaction forecasting (non-inventory or work hour related costs but costs like subcontracting, consultancy etc.) for project accounting purposes.

The table contains two types of lines, ones for setup purposes and others for reporting and analyses purposes. Transactions from this register are synchronized also to ProjTransBudget table (central project

Prepared for Microsoft Corporation

Page 146 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

forecast transaction register)

Field name Data type Field description

ProjId CHAR(10) Project to which the transaction is attached. Reference to the ProjTable

CathegoryId CHAR(10) Project category that is attached to the transaction.

LinePropertyId CHAR(10) Line property that is attached to the transaction.

EndDate DATE Last date of the posting period for this periodic transaction. Used in setup lines.

Qty REAL Number of hours that are attached to the transaction.

CostPrice REAL Cost price per hour of the current category.

SalesPrice REAL Sales-price per hour of the current category. This price includes any additional costs and miscellaneous charges.

Dimension CHAR(10) Analytical Dimension no. 1 value

Dimension2_ CHAR(10) Analytical Dimension no. 2 value

Dimension3_ CHAR(10) Analytical Dimension no. 3 value

ModelId CHAR(10) The budget model for the record.

CurrencyId CHAR(3) Currency for invoicing of a transaction (sales currency).

PeriodAllocateId CHAR(10) Allocation key, if any, according to which transaction is allocated (used in setup type rows)

FreqCode Units are measured in Days, Months, or Years to define how frequently current budget transaction is generated

SQL value

AX value

0 Day

1 Month

2 Year

Freq How many units of code is the jump per transaction (related with FreqCode field?

ExpandId INTEGER Reference to the setyp type transaction based on what current transactions are created (exploded). Value is 0 if there is no explosion.

Report INTEGER Field is defining if the record is setup type budget line or reporting type budget line.

SQL value

AX value Description

0 No Transaction is setup type budgeting line

1 Yes Transaction is reporting type budgeting line

Prepared for Microsoft Corporation

Page 147 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

Active INTEGER Marked if the amount should be included in the current budget. By default, the field is marked as active when a budget line is created.

SQL value

AX value Description

0 No Inactive

1 Yes Active

Txt CHAR(60) Text entered into the Transaction text field to describe the forecast line

Stop INTEGER Indicates whether the current budget transactions should be excluded from allocations during simulations.

SQL value

AX value Description

0 No Not stopped

1 Yes Stopped

StartDate DATE Date from which the budget amount will be in effect.

AllocateMethod CHAR(10) Methods for allocating the forecast transaction:

SQL value

AX value Description

0 None No allocation takes place. Budget line is reporting type budget transaction.

1 Period Quantity with the number of units defined in the field FreqCode. This method is used if forecast with the same quantity per period.

2 Key The forecast is allocated according to the period allocation key specified in the field Key. This method is used if seasonal variation should be taken into account.

CovStatus INTEGER Status of cash flow forecast for the current transaction.

ProjAllocateId CHAR(10) Allocation rules for project cost allocation

TransId CHAR(20) Transaction identifier in project module

SalesPaymDate DATE Expected payment date of the revenue

CostPaymDate DATE Expected payment date of the cost

InvoiceDate DATE The forecasted invoice date. The invoice date calculated for forecast transactions depends on the invoice frequency defined on the invoice project.

EliminationDate DATE The elimination date. When the forecast is created, the elimination date is set to the end date of the project. If the project has no end date, the project date will be applied. Applies to fixed-price projects and investment projects.

Prepared for Microsoft Corporation

Page 148 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

ExchRate Currency exchange rate to the company currency

3.12.1.7 ForecastSales

The Table is forecast transaction register for the project inventory forecast. ForecastSales specialty is the inventory forecast transactions registration. The table differs from other project forecast transaction tables as it is part of master planning module. It means that project module uses some of the master planning functionality in order to register the project specific item forecast.

The table contains two types of lines, ones for setup purposes and others for reporting and analyses purposes. Project related transactions from this register are synchronized also to ProjTransPosting table (central project transaction register)

Field name Data type Field description

ItemId CHAR(20) Inventory item number attached to the transaction.

StartDate DATE Date from which the budget amount will be in effect.

EndDate DATE Last date of the posting period for this periodic transaction. Used in setup lines.

FreqCode Units are measured in Days, Months, or Years to define how frequently current budget transaction is generated

SQL value

AX value

0 Day

1 Month

2 Year

Active INTEGER Marked if the amount should be included in the current budget. By default, the field is marked as active when a budget line is created.

SQL value

AX value Description

0 No Inactive

1 Yes Active

InventQty REAL Transaction quantity expressed in the item's inventory unit.

SalesPrice REAL Item sale sprice

DiscPercent REAL Item discount expressed in percentage.

Comment CHAR(60) Text entered into the Transaction text field to describe the forecast line

Dimension CHAR(10) Analytical Dimension no. 1 value

Dimension2_ CHAR(10) Analytical Dimension no. 2 value

Dimension3_ CHAR(10) Analytical Dimension no. 3 value

Prepared for Microsoft Corporation

Page 149 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

CustGroupId CHAR(10) Customer group id from accounts payable module.

ItemGroupId CHAR(10) Inventory group id from inventory module.

CustAccountId CHAR(20) Customer code from accounts payable module.

KeyId CHAR(10) Allocation key, if any, according to which transaction is allocated (used in setup type rows)

CurrencyId CHAR(3) Currency for invoicing of a transaction (sales currency).

ExpandId INTEGER Reference to the setyp type transaction based on what current transactions are created (exploded). Value is 0 if there is no explosion.

Report INTEGER Field is defining if the record is setup type budget line or reporting type budget line.

SQL value

AX value Description

0 No Transaction is setup type budgeting line

1 Yes Transaction is reporting type budgeting line

SalesQty REAL Transaction quantity that is in the given sales unit.

SalesUnitId CHAR(10) Unit that the item is sold in.

SalesMarkup REAL Lines estimated quantity-independent sales-amount miscellaneous charges.

DiscAmount REAL Line discount amount in forecast currency.

PriceUnit CHAR(10) Enter the number of units for which the Price applies.

CostPrice REAL Inventory estimated cost price

Cov INTEGER If checked, the forecast transaction is allocated to Ledger. The field cannot be edited for reporting transactions

ItemAllocateId CHAR(10) Item allocation key that is used in inventory forecast allocation.

Freq How many units of code is the jump per transaction (related with FreqCode field?

Amount REAL Amount (gross amount less any discounts) that the forecast transaction contributes to the forecast.

ModelId CHAR(10) The budget model for the record.

AllocateMethod CHAR(10) Methods for allocating the forecast transaction:

SQL value

AX value Description

0 None No allocation takes place. Budget line is reporting type budget transaction.

1 Period Quantity with the number of units defined

Prepared for Microsoft Corporation

Page 150 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

in the field FreqCode. This method is used if forecast with the same quantity per period.

2 Key The forecast is allocated according to the period allocation key specified in the field Key. This method is used if seasonal variation should be taken into account.

ProjId CHAR(10) Project to which the transaction is attached. Reference to the ProjTable

ProjCathegoryId CHAR(10) Project category that is attached to the transaction.

ProjLinePropertyId CHAR(10) Line property that is attached to the transaction.

ProjTransId CHAR(20) Transaction identifier in project module

ProjForecastSalesPaymDate DATE Expected payment date of the revenue

ProjForecastInvoiceDate DATE The forecasted invoice date. The invoice date calculated for forecast transactions depends on the invoice frequency defined on the invoice project.

ProjForecastEliminationDate DATE The elimination date. When the forecast is created, the elimination date is set to the end date of the project. If the project has no end date, the project date will be applied. Applies to fixed-price projects and investment projects.

3.12.1.8 InventTable

For the table description please see p. 3.8.1.4

3.12.1.9 ProjCategory

For the table description please see p. 3.10.1.9

3.12.1.10 ProjCategoryGroup

For the table description please see p. 3.10.1.9

3.12.1.11 LedgerTable

For the table description please see p. 3.1.1

3.12.1.12 EmplTable

For the table description please see p. 3.11.1.12

Prepared for Microsoft Corporation

Page 151 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

3.12.1.13 Dimensions

For the table description please see p. 3.1.2

3.12.1.14 ForecastModel

For the table description please see p. 3.4.5

Prepared for Microsoft Corporation

Page 152 Documentation, Dynamics AX 4.0 data model overview, Version .1 Draft Prepared by Fred Viidul "AX40datamodel.doc" last modified on 24 Sep. 08, Rev 3

4 REFERENCES