Finding unused labels in Axapta
Here is a small job for finding labels, from a particular label file, that are not used in your whole application code. You need an updated cross reference to use the job. I assumed that you are familiar with label files.static void findUnXedLabels(SysOperationProgress _progress = null) { Label label = new Label('da');// The languageto use for finding the labels str 250 labelId = label.searchFirst(''); Map mapLabels = new Map(types::String, types::String); MapEnumerator mapEnumerator; ; setPrefix("Finding UnX'ed labels"); while (labelId) { if (label.moduleId(labelId) == "XYZ") // The particular label file { if ((select xRefNames index hint Name where xRefNames.Kind == xRefKind::Label && xRefNames.Name == labelId && xRefNames.TypeName == '').RecId == 0) { mapLabels.insert(labelId, label.extractString(labelId)); } } labelId = label.searchNext(); } // The maps is used to sort the lables mapEnumerator = mapLabels.getEnumerator(); while (mapEnumerator.moveNext()) { info (strFmt("%1 %2", mapEnumerator.currentKey(), mapEnumerator.currentValue())); } }
In standard AX you can run this check for all labelfiles and save the result to a file, by using the \Classes\SysApplCheck\findUnXedLabels method.
Thanks to Palle Agermark for the post....
http://palleagermark.blogspot.dk/2008/10/finding-unused-labels.html
-Harry
HI Palle,
ReplyDeleteI hope now its fine.......
Rgds
Harry