А вот подскажите мне, уважаемые коллеги, как в коробочной версии задумано вот это поле использовать?
Это окно изменения реквизитов зарегистрированного справочника - стандартный интерфейс, меню- файл- справочники- настройка справочников- [выбираем любой]- изменить.
Интересно стало, если туда 'IsReadOnly', true добавить, по идее в вызываемом окне будет запрет редактирования и так далее? Дебаггером покопаться и отследить могу но это ж время, может известно уже все давно?
И безмерно благодарен буду за пример того, что можно туда вписать и в каком формате
Нравится
Формат добавления атрибутов в этом поле следующий:
<Название атрибута1>=<Значение атрибута1>;<Название атрибута2>=<Значение атрибута2>;...
Например:
DatasetUSI=ds_Account;EditWindowUSI=wnd_AccountEdit;RecordID={251FB9AC-C17E-4DF7-A0CB-D591FDB97462}
Необходимо обратить внимание, что в результате значения атрибутов будут строковыми. Поэтому в случае булевых атрибутов (Upd: если им необходимо установить значение false) значение вообще не нужно указывать:
HideButtonsFrame=;...
Также необходимо учитывать, что атрибуты устанавливаются для окна реестра.
Спасибо за подробное объяснение!
В принципе суть вопроса понял, попробовал добавить пару атрибутов - но не преуспел (пример первый - для окна реестра "Должности" справочника должностей назначаем атрибут HideButtonsFrame=; но при показе окна справочника по-прежнему все кнопки на месте; пример второй - пробовал передать произвольный атрибут test=test тому же окну - не сумел получить в окне опять же)
видимо передаются они в окно реестра только в определенной ситуации, а не всегда при показе окна
На какой версии Вы пробовали добавлять атрибуты?
Посмотрите в Вашей версии код открытия окна справочника. В версии 3.3.2 определение атрибутов происходит в функции ShowDictionaryWindow скрипта scr_WindowUtils:
if (Attributes != null) { var AttrAr = Attributes.split(';'); for (var i = 0; i < AttrAr.length; i++) { var NameValueAr = AttrAr[i].split('='); SetAttribute(GridAreaWindow, NameValueAr[0], NameValueAr[1]); } }
Проверьте также код действия DictionaryMenuItemOnExecute в скрипте scr_Main. В конце функции должны быть строки:
var Attributes = Dataset.ValAsStr('Attributes');
ShowDictionaryWindow(DatasetCode, GridAreaWindowCode, EditWindowCode,
Caption, Attributes);
"Александр Кудряшов" написал:для окна реестра "Должности" справочника должностей назначаем атрибут HideButtonsFrame=;
Что-то невнимательный я с утра... Кнопки и будут на месте, поскольку Вы фактически присваиваете этому атрибуту значение false. Для того, чтобы они спрятались, нужно его установить в true, то есть присвоить любое значение кроме пустой строки:
HideButtonsFrame=true;
Такая функция есть. Попробовал еще раз - получилось. Раньше пытался поймать атрибуты в окне выбора значения "Должности" из карточки Контакта, там просто оно другое:smile:
попробовал именно реестр самого справочника, вызванного через меню справочники - передается!
"Лабьяк Олег Игоревич" написал:Что-то невнимательный я с утра... Кнопки и будут на месте, поскольку Вы фактически присваиваете этому атрибуту значение false. Для того, чтобы они спрятались, нужно его установить в true, то есть присвоить любое значение кроме пустой строки:
Упс:redface: 8 утра однако было... вот и false присвоил...
Да я тоже не совсем однозначно объяснил... Прошу прощения.