вот Job чтобы проверить наличие битых EDT - шок
X++:
static void findErrorRalations_SeveralRelation(Args _args)
{
Int i;
QtyInteger qtyLines;
DictType dictType;
DictTable relatedDictTable;
DictRelation dictTypeRelation;
TableId relatedTableId;
FieldId relatedFieldId;
UtilElements utilElements;
;
while select utilElements
where utilElements.parentId == 0
//&& utilElements.name == 'AssetSortingId'
&& utilElements.recordType == UtilElementType::ExtendedType {
//---------------------------------------------------------------->
dictType = new DictType(extendedTypeName2Id_RU(utilElements.name));//'PriceTagTaskId'));
while (dictType) {
dictTypeRelation = dictType.relationObject();
if (dictTypeRelation == null) {
break;
}
qtyLines = dictTypeRelation.lines();
for (i=1; i<=qtyLines; i++) {
if (dictTypeRelation) {
relatedTableId = dictTypeRelation.table();
relatedFieldId = dictTypeRelation.lineExternTableValue(i);
relateddictTable = new DictTable(relatedTableId);
if (relatedTableId == 0 || relatedFieldId == 0 || relateddictTable == null) {
info(utilElements.name);
continue;
}
else {
continue;
}
}
else {
dictType = null;
break;
}
}
dictType = null;
}
}
}