Друзья, такое дело. Создал деталь с редактируемым реестром с двумя полями, справочное - [Страна] и текстовое [Комментарий].
Потом решил ее апгрейднуть до детали с множественным выбором. Дописал миксин и методы, которые в статье на академии.
Так вот. Я добавляю страны, пытаюсь сразу же внести в одну запись комментарий по определенной стране, но деталь немного "ломается". После обновления страницы все работает корректно, но если пытаюсь внести комментарий сразу же после добавления стран, то что-то не фурычит...
Нравится
Alex, опишите, пожалуйста, подробнее деталь: какой конкретно тип данных у колонки "Комментарий" (какой длины текст). Также какие колонки в объекте, по которому строится деталь.
Еще очень помог бы скриншот консоли во время того, как добавляется комментарий сразу после добавления страны, и деталь ломается.
Одеяненко Юлия,
Там 3 поля, [Контрагент], [Страна], [Комментарий]
Одеяненко Юлия,
А вот скопировал полностью, а то не скрине плохо видно. Как только становлюсь курсором в поле "Комментарий" -
Uncaught TypeError: Cannot read property 'apply' of undefined
at i.callModelMethod (all-combined.js:632)
at i.<anonymous> (all-combined.js:627)
at i.fire (all-combined.js:1)
at i.continueFireEvent (all-combined.js:1)
at i.fireEventArgs (all-combined.js:1)
at i.fireEvent (all-combined.js:1)
at i.changeValue (all-combined.js:1838)
at i.setValue (all-combined.js:1838)
at i.setControlPropertyValue (all-combined.js:625)
at i.setControlInitialValue (all-combined.js:624)
callModelMethod @ all-combined.js:632
(anonymous) @ all-combined.js:627
fire @ all-combined.js:1
continueFireEvent @ all-combined.js:1
fireEventArgs @ all-combined.js:1
fireEvent @ all-combined.js:1
changeValue @ all-combined.js:1838
setValue @ all-combined.js:1838
setControlPropertyValue @ all-combined.js:625
setControlInitialValue @ all-combined.js:624
(anonymous) @ all-combined.js:621
Terrasoft.each @ all-combined.js:260
bind @ all-combined.js:621
bind @ all-combined.js:1305
(anonymous) @ all-combined.js:1329
each @ all-combined.js:1
bindItems @ all-combined.js:1329
bind @ all-combined.js:1329
(anonymous) @ all-combined.js:1329
each @ all-combined.js:1
bindItems @ all-combined.js:1329
bind @ all-combined.js:1329
(anonymous) @ all-combined.js:1329
each @ all-combined.js:1
bindItems @ all-combined.js:1329
bind @ all-combined.js:1329
(anonymous) @ ConfigurationGrid.js?hash=50bf895bc4ad4a7e901cd0780be229b6:612
Terrasoft.each @ all-combined.js:260
renderRowControls @ ConfigurationGrid.js?hash=50bf895bc4ad4a7e901cd0780be229b6:607
addRowControls @ ConfigurationGrid.js?hash=50bf895bc4ad4a7e901cd0780be229b6:96
activateRow @ ConfigurationGrid.js?hash=50bf895bc4ad4a7e901cd0780be229b6:84
setActiveRow @ ConfigurationGrid.js?hash=50bf895bc4ad4a7e901cd0780be229b6:635
onGridClick @ all-combined.js:1887
callParent @ all-combined.js:1
onGridClick @ ConfigurationGrid.js?hash=50bf895bc4ad4a7e901cd0780be229b6:511
(anonymous) @ VM850:6
k @ all-combined.js:1
core-base.js:656 user: Охрончук Алексей/7143f917-c81d-4f98-a35b-94ccb205a576
file: https://025837-crm-bundle.bpmonline.com/core/21d606e7a67e821666ee6eb571…
line: 632
column: 174
message: Uncaught TypeError: Cannot read property 'apply' of undefined
date: Mon Feb 26 2018 11:19:12 GMT+0200 (Финляндия (зима))
stack: TypeError: Cannot read property 'apply' of undefined
at i.callModelMethod (https://025837-crm-bundle.bpmonline.com/core/21d606e7a67e821666ee6eb571…)
at i.<anonymous> (https://025837-crm-bundle.bpmonline.com/core/21d606e7a67e821666ee6eb571…)
at i.fire (https://025837-crm-bundle.bpmonline.com/core/21d606e7a67e821666ee6eb571…)
at i.continueFireEvent (https://025837-crm-bundle.bpmonline.com/core/21d606e7a67e821666ee6eb571…)
at i.fireEventArgs (https://025837-crm-bundle.bpmonline.com/core/21d606e7a67e821666ee6eb571…)
at i.fireEvent (https://025837-crm-bundle.bpmonline.com/core/21d606e7a67e821666ee6eb571…)
at i.changeValue (https://025837-crm-bundle.bpmonline.com/core/21d606e7a67e821666ee6eb571…)
at i.setValue (https://025837-crm-bundle.bpmonline.com/core/21d606e7a67e821666ee6eb571…)
at i.setControlPropertyValue (https://025837-crm-bundle.bpmonline.com/core/21d606e7a67e821666ee6eb571…)
at i.setControlInitialValue (https://025837-crm-bundle.bpmonline.com/core/21d606e7a67e821666ee6eb571…)
Alex Zaslavsky пишет:
А вот скопировал полностью, а то не скрине плохо видно. Как только становлюсь курсором в поле "Комментарий"
а теперь по пунктам.
1) Не стоит разбрасываться адресом вашей системы (я зашёл под супервизором, проставил себе права и вуаля, я в вашей системе)
2) Одним getMultiSelectLookupConfig вроде как не отделаешься, ибо при вставке записи система "дозагружает" запись в реестр, а надо this.reloadGridData(). Можно переопределить handleAfterInserted или loadAddedRecords.
3) Про название детали я тактично промолчу....
Немного подумав - раз есть доступ, подправлю сам. теперь деталь работает
Варфоломеев Данила,
Ну, это демка, я просто практиковался, поэтому так разбрасываюсь скринами)) Спасибо за помощь, Данила, уже в который раз :)
Я на скрине название заменил, просто в субботу ночью пытался с этим разобраться, уже злой был)
Варфоломеев Данила. Підкажіть, будь ласка, як вирішили дану проблему.
Сухацький Роман Вікторович,
я думаю, что вряд ли Данила понимает мову :) Но я думаю, что он не будет против, если я поделюсь методом, который он дописал в мою схему.
loadAddedRecords: function(collection) { this.reloadGridData(); }