# The Art Of Nav – NAV 5.00SP1 Stats

Today I made some statistics about NAV 5.00SP1 tables. I know that the stats have no purpose, but you can see on them how complex the system is. It can help to someone, who just want to know, how much is something used in standard etc. There are the tables:

Tab 1) Field relations by type:

 Relation Type Count AVERAGE 5 COUNT 109 EXIST 135 LOOKUP 291 MAX 9 MIN 14 SUM 415 -SUM 70 TABLEREL 5468 -EXIST 1 Grand Total 6517

A you can see, there is 6517 relations between fields (TableRel, SUM, Lookup etc.) or tables (Exist, Count). Of course, most of them are table relations and SUM flowfields.

Tab 2) Field data types:

 Data type Count Code 6377 Decimal 2984 Text 2310 Integer 1603 Boolean 1452 Option 1279 Date 1025 Time 127 DateFormula 101 DateTime 57 BLOB 48 GUID 17 RecordID 6 Duration 2 TableFilter 1 BigInteger 1 Grand Total 17390

From this table you see that most used data type is Code – of course, because most of relations are made through some code and the code fields are used everywhere... :-) Second is Decimal – yes, we are working with ERP which counts money, inventory...

Tab 3) Field data types including length:

 Filed type and length Count Code10 3387 Decimal 2984 Code20 2871 Integer 1603 Boolean 1452 Option 1279 Date 1025 Text50 973 Text30 672 Text80 253 Text250 188 Time 127 DateFormula 101 Text20 87 DateTime 57 BLOB 48 Text10 39 Code30 35 Code3 21 Text100 20 Code250 19 Code50 17 Code100 17 GUID 17 Text65 16 Text64 8 Text38 7 Text200 6 Text249 6 RecordID224 6 Text5 6 Code80 5 Text119 4 Text70 3 Text99 2 Text90 2 Text19 2 Text150 2 Text199 2 Code130 2 Duration 2 BigInteger 1 Text7 1 Text127 1 Text3 1 Text14 1 Text151 1 Text63 1 Code2 1 Text131 1 Text220 1 Code98 1 Code1 1 TableFilter 1 Text118 1 Text149 1 Text31 1 Text32 1 Grand Total 17390

Most used is Code with length 10 – all basic lists are referred by this data type. But newer the longer fields are used (Code 20), which have enough space for possible longer codes. I personally when I create new table, I use the Code 20 to precede possible problems with additional extension of the field in future. Very interesting are field length at the end of the table like Text118, Code1, Text63... ;-)

Tab 4) Overall stats:

 Tables 918 Fields 17390 Fields per table (Avg) 18,94 Average count of relations per table 7,099 Percentage of fields referring other fields 37,47% Max fields in table 176 (Tab 39 - Purchase Line) 175 (Tab 27 - Item) Max table relations per table (All) 93 (Tab 18 - Customer) Max table relations per table (Table Rel) 66 (Tab 81 - Gen. Journal Line) Max table relations per table (FlowFields) 63 (Tab 18 - Customer) Most referred table 266 (Tab 349 - Dimension Value) 258 (Tab 308 - No. Series) 235 (Tab 15 - G/L Account)

I think that the last table doesn't need any explanation. In average, if you change some field's length, there is more than 1:2 chances that you need to change length of another field which refer to the first field.

I hope, that you made better picture of the complexity of whole Microsoft Dynamics NAV system. May be that you now understand, why the people around this system needs long time to gather enough experiences to understand the system. It is why the NAV is so great product, because regardless this complexity, it is easy to change and develop additional parts. Do not forget that these stats are just for the basic version of the system. If you add all addons which customer needs for his work, these stats can go much higher...

I want to congratulate to all consultants and developers, which are able to understand the system, which knows, how it works, and which are able to correctly do their every-day work with this huge amount of information. May be that this stats will help customers to understands, why sometimes there are some bugs in the system, why some things needs more time to think them out than making them.

We will see how these stats will change with new versions.

• Nicely done. Thx.

• It is easy:

Excel + Pivot Tables over Field table + AllObj table + my objects for Table relations (see mibuso download section for The Big Picture Of Nav) + calc

• Very interesting.  How did you create these stats?

• All Code3 are used in fields "On Hold". Code1 is used in table 5719 field 3 - "Nonstock Item Setup"."No. Format Separator".

Text3 is in 2000000045 - "Windows Language"."Abbreviated Name". It seems that there is no problem with these fields...

• Interesting stats ;-)

I get a very bad feeling when I see Code3 / Text3 field definitions because NAV will crash if you try to access a Code/Text field which length is less than 5 with RecordRef / FieldRef.