Не вижу обработчиков событий нажатия кнопок воркспейса wnd_OfferingDetailTreeArea.
Понадобилось добавить кнопку "Установить скидку на все продукты в счете" в воркспейс "Продукт" (wnd_OfferingDetailTreeArea) детали раздела "Счета". Решил изучить как обрабатываются события нажатий на другие кнопки воркспейса wnd_OfferingDetailTreeArea. Однако, я не нашёл ни одного привязанного к кнопкам обработчика. Кроме того, оказалось, что в "Невизуальных коммпонентах" к dlData не привязан никакой датасет.
Пожалуйста, объясните, как это всё работает? Где обработчики? Откуда подгружаются данные и куда они выгружаются при работе, если к воркспейсу не привязан датасет?
Где мне впредь искать ответы на данные вопросы? Неужели придётся каждый раз обращаться по таким вопросам на community или в тех. поддержку? Должно же это быть где-то расписано?
Нравится
Во-первых, wnd_OfferingsDetailTreeArea.
Обработчики там должны быть, странно. В скрипте wnd_OfferingsDetailTreeAreaScript вижу:
function btnAddRootOnClick(Control) { AddRootData(); } function btnAddChildOnClick(Control) { AddChildData(); } function btnCopyOnClick(Control) { CopyData(); } function btnEditOnClick(Control) { EditData(); }
Датасет не привязан, поскольку эта деталь может быть в разных разделах и привязывается программно при открытии раздела.
"Зверев Александр" написал:Датасет не привязан, поскольку эта деталь может быть в разных разделах и привязывается программно при открытии раздела.
Если точнее, Датасет привязывается в скрипте Воркспейса Счетов:
if (pcDetails.ActivePage.Name == pgOfferingsDetail.Name) { SetAttribute(wndOfferingsDetail.Window, 'WorkspaceDataset', BaseWorkspace.GridDataset) SetAttribute(wndOfferingsDetail.Window, 'DateFieldName', 'InvoiceDate'); SetAttribute(wndOfferingsDetail.Window, 'AccountFieldName', 'CustomerID'); RefreshCommonDetail(BaseWorkspace, wndOfferingsDetail, 'InvoiceID', 'InvoiceID', 'ds_OfferingInInvoice'); }
В RefreshCommonDetail 5-ым параметром передается USI датасета, который хотите в данном случаи привязать.
Действительно, у меня обработчики не были подцеплины только в тестовой базе, видимо раньше когда-то напортачил, теперь подцепил. В действующей - всё ок.
Всем спасибо!