Подтягивание полей из колонок объекта в карточку с Profile модулем.
9 августа 2017 09:38
Итак, допустим у нас есть своя страница, созданная через мастер. В ней есть поле контакт, к нему подтягивается значение поля Job через атрибуты:
Contact: {
lookupListConfig: {
columns: ["Job"]
}
}Далее мы настраиваем красивый модуль выбора контакта как это сделано в лиде. И вроде бы всё хорошо, но колонка Job не подтягивается. Как и любые другие колонки... Смотрим BaseProfileSchema, видим
getLookupConfig: function(config) {
var masterColumnInfo = this.get("MasterColumnInfo");
var lookupListConfig = masterColumnInfo.lookupListConfig;
var entitySchemaName = masterColumnInfo.referenceSchemaName || this.entitySchemaName;
var masterColumnName = this.get("masterColumnName");
var lookupConfig = {
entitySchemaName: entitySchemaName,
multiSelect: false,
columnName: masterColumnName,
hideActions: true,
lookupListConfig: lookupListConfig,
filters: this.getLookupQueryFilters(masterColumnName)
};
this.Ext.apply(lookupConfig, config);
return lookupConfig;
}и ужасаемся. Зачем в конфиг для лукапа кидать lookupListConfig - ума не приложу. Далее в LookupPage он не используется, фильтры из него не достаются.
Фиксится очень просто, перед Ext.apply прописываем
lookupConfig.columns = lookupListConfig ? lookupListConfig.columns : [];сохраняем, закрываем страницу, выходим из системы и идём пить чай. Одним багом стало меньше
Показать все комментарии
Войдите или зарегистрируйтесь, что бы комментировать