Здравствуйте,
Есть карточка звонка, в которой нужно вывести грид Проблем, отфильтровав его по HouseID (кастомный раздел), который нужно получить по ContactID (который есть в карточке звонка), по дате начала/дате завершения.
Т.е. нужно получить HouseID по ContactID , по HouseID получить ProblemID.
Как это можно реализовать?
Спасибо.
Нравится
Добрый день, Ринат!
Я сделал так (на примере грида контактов в карточке контрагента. Контакты, у которых в поле контрагент указан текущий):
1) Добавил страницу и контейнер окна в карточку Контрагента:
2) В Accounts\General\Main Grid\scr_AccountEdit добавил функцию иницииализации грида контактов:
function InitializeContacts() { AccountEdit.ContactsWindow = wndContacts.Window; var ContactsDataset = AccountEdit.ContactsWindow.ComponentsByName('dlData').Dataset; SetAttribute(AccountEdit.ContactsWindow, 'ParentItemID', dlData.Dataset.ValAsGuid('ID')); SetAttribute(AccountEdit.ContactsWindow, 'EditWindowUSI', 'wnd_ContactEdit'); SetAttribute(AccountEdit.ContactsWindow, 'WorkspaceDataset', dlData.Dataset); AccountEdit.ContactsWindow.Prepare(); SetAttribute(AccountEdit.ContactsWindow, 'ParentTypeFieldValue', dlData.Dataset.Values('AccountTypeID')); RefreshDetailData(dlData.Dataset, 'ID', ContactsDataset, 'AccountID'); }
3) Добавил вызов InitializeContacts(); в function wnd_AccountEditOnPrepare(Window);
В п.2 к датасету ContactsDataset можно применить дополнительные фильтрации по требующимся параметром
(по аналогии с HouseID (кастомный раздел), который нужно получить по ContactID).