Фильтр в карточке звонка

Здравствуйте,
Есть карточка звонка, в которой нужно вывести грид Проблем, отфильтровав его по HouseID (кастомный раздел), который нужно получить по ContactID (который есть в карточке звонка), по дате начала/дате завершения.

Т.е. нужно получить HouseID по ContactID , по HouseID получить ProblemID.
Как это можно реализовать?
Спасибо.

Нравится

1 комментарий

Добрый день, Ринат!
Я сделал так (на примере грида контактов в карточке контрагента. Контакты, у которых в поле контрагент указан текущий):
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).

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