BaseGridArea
BaseTreeArea
Скрипты
Разработка

Не могу разобраться с TreeArea

Добрый день, коллеги!

Помогите разобраться с проблемой.

Создал древовидный грид. При попытке добавить в него запись, появляется ошибка "BaseGridArea' - определение отсутствует". Источник ошибки - функция AddRequiredValuesToDictionary скрипта scr_BaseTreeArea.

Что я делаю не так?

Нравится

7 комментариев

Есть идеи?

Здравствуйте, Николай!

Уточните, пожалуйста, есть ли в таблице, привязанной к реестру, поле родительской записи, и указано ли оно в настройках реестра?

111

Да, поле родительской записи есть, и в свойстве ParentDataFieldName оно указано.

[javascript]
if (Assigned(EditDataField)) {
EditFieldName = EditDataField.Name;
} else {
//Added for compatibility
EditDataField = Dataset.DataFields(NameFieldName);
if (Assigned(EditDataField)) {
EditFieldName = EditDataField.Name;
} else {
EditFieldName = BaseGridArea.TreeDataset.DataFields.Items(1).Name; // Вот на этой строке возникает ошибка
}
}
[/javascript]

С этим, вроде бы разобрался - в DataSet'e не было указано первичное поле для отображения. Указал поле Title. Ошибка пропала.

Но, зато появилась другая - уже на этапе сохранения новой записи в реестр: "Поле Title не активно" :(

Вот тут:

[javascript]
// scr_DB

function RefreshDataset(Dataset) {
CheckAssigned(Dataset, 'Dataset');
Dataset.Close();
Dataset.Open(); // Ошибка
}
[/javascript]

Николай, установите в сервисе запросе sq_ для данного реестра признак "всегда выбирать в запросе" для основного полоя отображения (Title)

Спасибо, получилось!

Показать все комментарии