|
v7: ТабличноеПоле - Где взять мануалы? | ☑ | ||
---|---|---|---|---|
0
Zhuravlik
16.11.12
✎
22:48
|
Добрый вечер. Вот здесь - http://www.1cpp.ru/docum/icpp/html/TableField.html#headerselection
Почему-то нет описания событий "ПриНачалеРедактирования" (нашел здесь http://erp-volga.com/hare/forum/index-tred-201-73.html ), и "ПриВыбореЗаголовка" (нашел здесь Табличное поле (1с++) ). В документации к классу вообще никаких событий не описано, только одно "ПриФормированииКонтекстногоМеню". Подскажите, есть ли вообще где-нибудь полный источник инфы про этот элемент? А то тыркаюсь с ним уже второй день, в основном перепиливанием чужих обработок, и просмотром классов. Мне вот надо отловить событие ПриОкончанииРедактированияСтроки - я чисто интуитивно так его назвал, уже полчаса ищу это в нете, не могу найти. |
|||
1
ADirks
16.11.12
✎
23:12
|
Ты чего хочешь, прямое редактирование значений в ячейке ТП? Этого в доке к сожалению нет. Читай тут http://www.1cpp.ru/forum/YaBB.pl?num=1202765199
ну и тупой кусок кода, может чего подскажет Процедура ПриРедактированииЗначения(Стр, Колонка, Регион, Значение) Экспорт Сам = Сам(Контекст); Если НайтиСтрокуТЗ(тзРедактируемыеКолонки, "Имя", Колонка.Имя) = 1 Тогда Если тзРедактируемыеКолонки.Неотрицательный = 1 Тогда Если ТипЗначения(Значение) = 1 Тогда Если Значение < 0 Тогда Значение = 0; КонецЕсли; КонецЕсли; КонецЕсли; КонецЕсли; Если Сам.ЕстьКоллБэкМетод(ИмяКнопки+"ПроверитьРедактируемоеЗначение") = 1 Тогда оСервис = СоздатьОбъект("Сервис"); сзАрг = СоздатьОбъект("СписокЗначений"); сзАрг.ДобавитьЗначение(Стр); сзАрг.ДобавитьЗначение(Колонка); сзАрг.ДобавитьЗначение(Регион); сзАрг.ДобавитьЗначение(Значение); фРезультат = 0; оСервис.ВыполнитьФункцию(Сам.КонтекстФормы(), ИмяКнопки+"ПроверитьРедактируемоеЗначение", сзАрг, фРезультат); Если фРезультат <> 1 Тогда Возврат; КонецЕсли; Значение = сзАрг.ПолучитьЗначение(4); КонецЕсли; тзДанные.УстановитьЗначение(стр, Колонка.Имя, Значение); фДанныеИзменены = 1; Сам.ОбновитьСтроки(); КонецПроцедуры Функция РедактироватьЗначение(нСтр, Колонка, ТипРегиона = 3, ТипОбластиЯчейки = 0) Сам = Сам(Контекст); Если НайтиСтрокуТЗ(тзРедактируемыеКолонки, "Имя", Колонка.Имя) = 0 Тогда Возврат 0; КонецЕсли; Значение = Сам.Получить(Колонка.Имя); Сам.РедактироватьЗначение(нСтр, Колонка, ТипРегиона, Значение, тзРедактируемыеКолонки.Длина, тзРедактируемыеКолонки.Точность, тзРедактируемыеКолонки.ИмяПоляВвода, тзРедактируемыеКолонки.Флаги ); Если тзРедактируемыеКолонки.ВыборГруппы = 1 Тогда Атр = Сам.КонтекстФормы().Форма.ПолучитьАтрибут(тзРедактируемыеКолонки.ИмяПоляВвода); Атр.ВыборГруппы(1); КонецЕсли; Возврат 1; КонецФункции Процедура Выбор(нСтр, Колонка, ТипРегиона, ТипОбластиЯчейки) Экспорт Сам = Сам(Контекст); Если ПриВыбореФлажка(нСтр, Колонка, ТипРегиона) = 1 Тогда //При нажатии Enter на колонку флажков имитируем выбор флажка Возврат; ИначеЕсли РедактироватьЗначение(нСтр, Колонка, ТипРегиона, ТипОбластиЯчейки) = 1 Тогда Возврат; КонецЕсли; КонецПроцедуры ПриРедактированииЗначения() - событие ТП РедактироватьЗначение() - метод ТП (мы его немножко переопределили) |
|||
2
Zhuravlik
16.11.12
✎
23:16
|
(1) Да, это то, что надо. Спасибо.
|
|||
3
ADirks
16.11.12
✎
23:26
|
если что, могу наиболее актуальный (вроде бы) .chm скинуть, а то что-то не могу на 1cpp его найти
|
|||
4
Zhuravlik
16.11.12
✎
23:39
|
(3) Именно по поставщику? chm я по нему не находил, киньте на почту пожалуйста [email protected]
Заранее спасибо) Хотя я от него много не жду. |
|||
5
oslokot
17.11.12
✎
12:27
|
(1) +1 Подтверждаю, работает в реальных условиях.
Летит и не падает. Умеет работать с агрегатами. |
|||
6
ADirks
17.11.12
✎
13:54
|
(4) По поставщику конечно нет, имел в виду 1С++
На всякий случай отправил, там именно по ТП более-менее актуальное описание. |
|||
7
ADirks
17.11.12
✎
14:47
|
блин, ну я тормоз :)
вотжеж: http://www.1cpp.ru/forum/YaBB.pl?num=1303385763 |
|||
8
Zhuravlik
17.11.12
✎
19:25
|
(6) Спасибо)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |