Небольшой джобик для автоматического сравнения слоев.
Просто часто приходиться все перетаскивать на cus... 
Нужны не все элементы, поэтому использован switch.
	PHP код:
	
		
			
static void AutoUSR_CUSCompare(Args _args)
{
    SysCompare      sysCompare;
    TreeNode        treeNode  = new TreeNode();
    TreeNode        treeNode1 = new TreeNode();
    xInfo           xInfo     = new xInfo();
    boolean         res;
    UtilElements    elements;
    ;
    sysCompare = new sysCompare(true);
    while select elements
        where elements.utilLevel    == UtilEntryLevel::usr
    {
        treeNode    = xInfo.rootNode();
        switch (elements.recordType)
        {
            case UtilElementType::Table             :
                treeNode    = treeNode.AOTfindChild("Data Dictionary");
                treeNode    = treeNode.AOTfindChild("Tables");
                break;
            case UtilElementType::TableMap          :
                treeNode    = treeNode.AOTfindChild("Data Dictionary");
                treeNode    = treeNode.AOTfindChild("Maps");
                break;
            case UtilElementType::TableCollection   :
                treeNode    = treeNode.AOTfindChild("Data Dictionary");
                treeNode    = treeNode.AOTfindChild("Table Collections");
                break;
            case UtilElementType::ExtendedType      :
                treeNode    = treeNode.AOTfindChild("Data Dictionary");
                treeNode    = treeNode.AOTfindChild("Extended Data Types");
                break;
            case UtilElementType::Enum              :
                treeNode    = treeNode.AOTfindChild("Data Dictionary");
                treeNode    = treeNode.AOTfindChild("Base Enums");
                break;
            case UtilElementType::Class             :
                treeNode    = treeNode.AOTfindChild("Classes");
                break;
            case UtilElementType::Form              :
                treeNode    = treeNode.AOTfindChild("Forms");
                break;
            case UtilElementType::Report            :
                treeNode    = treeNode.AOTfindChild("Reports");
                break;
            default                                 :
                continue;
        }
        treeNode = treeNode.AOTfindChild(elements.name);
        if (! treeNode)
        {
            info(strfmt("Узел %1 не найден!",elements.name));
            continue;
        }
        treeNode1 = treeNode.getNodeInLayer(UtilEntryLevel::cus, false);
        if (! treeNode1)
        {
            info(strfmt("Элемент :%1 не найден в cus слое!",elements.name));
            continue;
        }
        res = sysCompare.compareTreenodes(treeNode, treeNode1);
        if (! res)
            info(strfmt("Элемент :%1 различается в слоях!",treeNode.toString()));
//        else
//            info(strfmt("Элемент :%1 идентичен!",treeNode.toString()));
    }
} 
		
	
 Элементарно и довольно просто.
Удачи!
С Уважением,
Георгий