MSMK Posted October 12, 2021 Share Posted October 12, 2021 Привет всем! Столкнулся с такой проблемой, после добавления фильтров на столбцы в гриде, падает ошибка Uncaught TypeError: this.dom is null Link to comment Share on other sites More sharing options...
Sherzod Posted October 12, 2021 Share Posted October 12, 2021 11 minutes ago, =GGG= said: Uncaught TypeError: this.dom is null Добрый день, 11 minutes ago, =GGG= said: после добавления фильтров на столбцы в гриде Можете уточнить? Link to comment Share on other sites More sharing options...
MSMK Posted October 12, 2021 Author Share Posted October 12, 2021 3 minutes ago, Sherzod said: Добрый день, Можете уточнить? сейчас попробую тестовый пример накидать Link to comment Share on other sites More sharing options...
MSMK Posted October 12, 2021 Author Share Posted October 12, 2021 6 minutes ago, Sherzod said: Добрый день, Можете уточнить? у Вас TeamViewer практикуется? Link to comment Share on other sites More sharing options...
Sherzod Posted October 12, 2021 Share Posted October 12, 2021 Just now, =GGG= said: у Вас TeamViewer практикуется? Да, но только не сейчас, чуть позже могу подключиться. Link to comment Share on other sites More sharing options...
x11 Posted January 26, 2022 Share Posted January 26, 2022 Прикол в том, что я использую динамическое создание фильтров вот код: procedure FillFilterComboboxes(dbg: TUniDBGrid; ComboFilterKeyDown: TComboFilterKeyDown; ComboTriggerEvent: TComboTriggerEvent; ParentFrame: TUniFrame = nil); Var aColumn: TUniDBGridColumn; aField: TField; begin if not Assigned(dbg.HiddenPanel) then begin KvxMessageBox.LogErrorMessage(constErrNoParentPanel, nil, 'FillFilterComboboxes(), dbg.name=' + dbg.Name); exit; end; for var I := 0 to pred(dbg.Columns.Count) do begin aColumn := dbg.Columns[i]; if aColumn.ActionColumn.Enabled then continue; // {$IFDEF DEBUG} // UniSession.Log(aColumn.FieldName); // UniSession.Log(aColumn.Field.FieldName); // {$ENDIF} aColumn.Sortable := true; aColumn.Filtering.Enabled := True; aField := dbg.DataSource.DataSet.FindField(aColumn.FieldName);// Column.Field не работает :( if not Assigned(aField) then begin KvxMessageBox.LogErrorMessage(constErrFieldNil + ', index = ' + i.ToString, nil, 'FillFilterComboboxes()'); Continue; end; case aField.DataType of ftSmallint, ftInteger, ftWord, ftFloat, ftCurrency, ftSingle, ftLargeint, ftExtended, ftLongWord, ftShortint, ftAutoInc: aColumn.Filtering.Editor := CreateAndFillFilterTitleCombo(dbg.HiddenPanel, ComboFilterKeyDown, nil, TTitleFilter.tfIntCombo, ParentFrame); ftDate, ftTime, ftDateTime: aColumn.Filtering.Editor := CreateAndFillFilterTitleCombo(dbg.HiddenPanel, ComboFilterKeyDown, comboTriggerEvent, TTitleFilter.tfDateCombo, ParentFrame); ftBoolean: aColumn.Filtering.Editor := CreateAndFillFilterTitleCombo(dbg.HiddenPanel, ComboFilterKeyDown, nil, TTitleFilter.tfBoolCombo, ParentFrame); ftString, ftMemo, ftFmtMemo, ftFixedChar, ftWideString, ftFixedWideChar, ftWideMemo: aColumn.Filtering.Editor := CreateAndFillFilterTitleCombo(dbg.HiddenPanel, ComboFilterKeyDown, nil, TTitleFilter.tfTxtEdit, ParentFrame);// comboFilterKeyDown end; (aColumn.Filtering.Editor as TUniControl).Name := dbg.HiddenPanel.name + '_comboFilter' + aColumn.FieldName; end;// for end; Так вот, если я отключаю эту процедуру, то ошибок нет. Прикол в том, что ошибки возникают не при создании сетки, не при уничтожении сетки или фрейма, а в самых непредсказуемых местах. Например, при переключении между вкладками uniPageControl. Ну т.е. когда фрейм/сетка получает или теряет фокус ввода. Может кто подскажет, где и как выявить название компонентов, события и т.д.? С чего начинать, как искать? Link to comment Share on other sites More sharing options...
x11 Posted February 6 Share Posted February 6 On 1/26/2022 at 4:15 PM, x11 said: Может кто подскажет, где и как выявить название компонентов, события и т.д.? С чего начинать, как искать? 😑 Link to comment Share on other sites More sharing options...
Sherzod Posted February 6 Share Posted February 6 Мне кажется Вам нужно обновиться до последней версии. Link to comment Share on other sites More sharing options...
x11 Posted February 6 Share Posted February 6 Максимум в кабинете доступна 1567. Лицензия закончилась. Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now