addAllReferences static method
Добавить в вписок все ссылочные типа объекта типа type Если среди полей будет табличная часть, ее ссылочные поля также будут добавлены в список через имяТаблицы.имяПоля
Implementation
static List<String> addAllReferences(Type type, {List<String> exceptFields = const []}) {
List<String> loadReference = [];
var allFields = NsgDataClient.client.getFieldList(type);
for (var field in allFields.fields.values) {
if (exceptFields.contains(field.name)) {
continue;
}
if ((field is NsgDataReferenceField || field is NsgDataReferenceListField) && field.name != NsgDataItem.nameOwnerId) {
loadReference.add(field.name);
}
if (field is NsgDataReferenceListField) {
var tableRefereces = addAllReferences(field.referentElementType);
for (var item in tableRefereces) {
loadReference.add(field.name + '.' + item);
}
}
}
return loadReference;
}