Подскажите, пожалуйста, как правильно в деталях разместить справочник, никак не связанный с основным реестром?
Нравится
Принцип добавления аналогичен добавлению детали в раздел, только не будет прописываться логика инициализации и обновлению. Только не понятно, зачем нужна такая функциональность.
Может, автору темы надо деталь-развязку? Например, "города контрагента" для привязки независимого справочника "города" к разделу "контрагенты".
надо для того чтоб справочник был под рукой
вроде сделал как обычно, записи показывает
но ругается:
"ServiceTypeCode - есть nul или не является объектом"
при попытке создать или отредактировать запись
Ошибка возникает в результате того, что нет передачи информации о сервисе карточки редактирования. Чтобы решить задачу нужно:
1. Добавить в скрипт карточки рабочего пространства (например, scr_AccountsWorkspace) две функции:
function InitializeTestDetail() { AccountsWorkspace.TestWindow = wndTest.Window; SetAttribute(AccountsWorkspace.TestWindow,'DatasetUSI', 'ds_Job'); SetAttribute(AccountsWorkspace.TestWindow,'EditWindowUSI', 'wnd_JobEdit'); AccountsWorkspace.TestWindow.Prepare(); AccountsWorkspace.TestDataset = AccountsWorkspace.TestWindow.ComponentsByName('dlData').Dataset; }
Вместо 'ds_Job' следует указать датасет справочника, 'wnd_JobEdit' – сервис карточки редактирования справочника, wndTest – название окна детали в сервисе раздела.
function RefreshTestDetail() { if (AccountsWorkspace.InitializeDocumentsFlag !=true ) { InitializeTestDetail(); AccountsWorkspace.InitializeDocumentsFlag = true; } AccountsWorkspace.TestDataset.Open(); }
2. В функцию function RefreshDetails() добавить блок кода:
if (pcDetails.ActivePage.Name == pgTest.Name) { RefreshTestDetail(); } else
Где pgTest – название компонента Page добавленной детали в сервисе раздела.
Добрый день!
Подскажите, пожалуйста, в приведенном скрипте что такое AccountsWorkspace.TestDataset
и
AccountsWorkspace.TestWindow
и откуда их можно вытащить?