Переключение на Главную Страницу Страницы: [1] 2 3  ОтправитьПечать
Очень популярная тема (более 25 ответов) Вызов ОбработкаЯчейкиТаблицы для таблицы из класса (число прочтений - 11969 )
jbond
Full Member
***
Отсутствует


1С++ Programmer

Сообщений: 140
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Вызов ОбработкаЯчейкиТаблицы для таблицы из класса
28. Сентября 2006 :: 05:50
Печать  
В ЕРТ-реализации класса с таблицей-шаблоном формирую таблицу

Рез = Таб.ИсходнаяТаблица("АктСверкиДень",Сам.ПолучитьПуть());

и т.п.

Можно ли обработать вызов
ОбработкаЯчейкиТаблицы(Значение, ФлагСтандОбраб, Таблица, Адрес)
в самом классе?
  
Наверх
 
IP записан
 
jbond
Full Member
***
Отсутствует


1С++ Programmer

Сообщений: 140
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Вызов ОбработкаЯчейкиТаблицы для таблицы из кл
Ответ #1 - 28. Сентября 2006 :: 06:02
Печать  
Вроде бы обработчик ОбработкаЯчейкиТаблицы, расположенный в классе, в котором создавалась таблица не вызывается.
Все-таки прийдется эту процедуру в глобальный модуль засунуть?
А как потом различать таблицы?

А перенаправление сделать реально?
  
Наверх
 
IP записан
 
jbond
Full Member
***
Отсутствует


1С++ Programmer

Сообщений: 140
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Вызов ОбработкаЯчейкиТаблицы для таблицы из кл
Ответ #2 - 28. Сентября 2006 :: 06:34
Печать  
У кого-нибудь есть идеи по этому поводу?
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Вызов ОбработкаЯчейкиТаблицы для таблицы из кл
Ответ #3 - 28. Сентября 2006 :: 06:40
Печать  
Интересная тема, но идей пока нету Печаль
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
jbond
Full Member
***
Отсутствует


1С++ Programmer

Сообщений: 140
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Вызов ОбработкаЯчейкиТаблицы для таблицы из кл
Ответ #4 - 28. Сентября 2006 :: 06:49
Печать  
Самое главное - функцию класса можно вызвать (в моем конкретном случае это выход - выводить детализацию по несовпадающим строкам)

Зы. Эх если бы Таб.ИсходнаяТаблица умела указывать на путь в котором нужно искать предпределенные процедуры....

А общее решение - перенос в глобальник + как различать таблицы?
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Вызов ОбработкаЯчейкиТаблицы для таблицы из кл
Ответ #5 - 28. Сентября 2006 :: 06:57
Печать  
Ты можешь сделать так
создать менеджер событий, создать событие по обработке
подписать нужный класс на событие
в глоб.обработчике ячеек таблицы вызывать событие
и класс получает управление.

НО что делать: если форма, из которой вызвана таблица уже закрыта? как класс найти  или получить его данные?
имхо только через расшифровку

ЗЫ имхо этот рекомендованный нормальный путь
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Вызов ОбработкаЯчейкиТаблицы для таблицы из кл
Ответ #6 - 28. Сентября 2006 :: 07:00
Печать  
Добавление - можешь реализовать сериализацию класса в строку !!
Т.е при создании таблицы класс сериализуешь, полученную строку закидываешь в расшифровку, далее глоб. обработчик открывает расшифровку, получает класс из строки и передает ему управление Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Вызов ОбработкаЯчейкиТаблицы для таблицы из кл
Ответ #7 - 28. Сентября 2006 :: 07:01
Печать  
artbear писал(а) 28. Сентября 2006 :: 06:40:
Интересная тема, но идей пока нету Печаль


Обалдеть, как быстро 2 неплохих варианта нарисовались Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
jbond
Full Member
***
Отсутствует


1С++ Programmer

Сообщений: 140
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Вызов ОбработкаЯчейкиТаблицы для таблицы из кл
Ответ #8 - 28. Сентября 2006 :: 07:09
Печать  
OK. Но я пошел по другому пути - автоматом вызываю расшифровку, там где она имеет смысл.

Зы. А в багзиллу стоит добавлять этот Feature Request? Это ближе к чему: FormEx или 1С++ 2.5?
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Вызов ОбработкаЯчейкиТаблицы для таблицы из кл
Ответ #9 - 28. Сентября 2006 :: 07:20
Печать  
1. А как ты решаешь проблему с работой над таблицей, когда форма, создавшая таблицу, уже закрыта?

ЗЫ можешь добавить в багзиллу. только поставь раздел ФормЕкс - имхо туда ближе Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
jbond
Full Member
***
Отсутствует


1С++ Programmer

Сообщений: 140
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Вызов ОбработкаЯчейкиТаблицы для таблицы из кл
Ответ #10 - 28. Сентября 2006 :: 07:38
Печать  
artbear писал(а) 28. Сентября 2006 :: 07:20:
1. А как ты решаешь проблему с работой над таблицей, когда форма, создавшая таблицу, уже закрыта?


Вообще-то хороший вопросец...
Ведь стандартная обработка работает только при открытой форме...
  
Наверх
 
IP записан
 
sedmin
1c++ developer
Отсутствует


I Hate Fat YaBB 2!

Сообщений: 862
Зарегистрирован: 24. Мая 2006
Re: Вызов ОбработкаЯчейкиТаблицы для таблицы из кл
Ответ #11 - 28. Сентября 2006 :: 20:06
Печать  
По идее открытая таблица - это тоже какой-то там контекст. Не зря таблица выдается методом Сервис::АктивныйКонтекст().

И, по идее, его можно подписать на события этого контекста. Было бы замечательно, если бы таким образом объект с набором данных (например, режимов формирования таблицы) можно было бы привязать к произвольной таблице, и он бы выполнял все действия, необходимые этой таблице.

Правда, останется проблемка - где должна храниться ссылка на этог объект, и когда уничтожать этот объект? Хотя, наверное, и это можно решить, если обрабатывать событие контекста таблицы ПриЗакрытии().
  
Наверх
 
IP записан
 
sedmin
1c++ developer
Отсутствует


I Hate Fat YaBB 2!

Сообщений: 862
Зарегистрирован: 24. Мая 2006
Re: Вызов ОбработкаЯчейкиТаблицы для таблицы из кл
Ответ #12 - 28. Сентября 2006 :: 20:07
Печать  
Круто. Тут то и начинается настоящий ООП!

(Вот размечтался!)  Очень довольный
  
Наверх
 
IP записан
 
sedmin
1c++ developer
Отсутствует


I Hate Fat YaBB 2!

Сообщений: 862
Зарегистрирован: 24. Мая 2006
Re: Вызов ОбработкаЯчейкиТаблицы для таблицы из кл
Ответ #13 - 28. Сентября 2006 :: 20:30
Печать  
artbear писал(а) 28. Сентября 2006 :: 07:00:
далее глоб. обработчик открывает расшифровку, получает класс из строки и передает ему управление Улыбка


Объект (не класс) - это не только ценный код, но и три-четыре, этих, реквизита.
  
Наверх
 
IP записан
 
АЛьФ
FormEx developer
1c++ developer
Отсутствует



Сообщений: 1537
Местоположение: Санкт-Петербург
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Вызов ОбработкаЯчейкиТаблицы для таблицы из кл
Ответ #14 - 29. Сентября 2006 :: 05:36
Печать  
sedmin писал(а) 28. Сентября 2006 :: 20:06:
По идее открытая таблица - это тоже какой-то там контекст. Не зря таблица выдается методом Сервис::АктивныйКонтекст().

И, по идее, его можно подписать на события этого контекста. Было бы замечательно, если бы таким образом объект с набором данных (например, режимов формирования таблицы) можно было бы привязать к произвольной таблице, и он бы выполнял все действия, необходимые этой таблице.

Правда, останется проблемка - где должна храниться ссылка на этог объект, и когда уничтожать этот объект? Хотя, наверное, и это можно решить, если обрабатывать событие контекста таблицы ПриЗакрытии().

Не совсем верные размышления. Для получения Таблицы методом Сервис::АктивныйКонтекст() в нем реализовано куча дополнительного кода. И контекст этот совсем не то, что групповой контекст. Хотя, наверное, можно как-то извратиться и проделать все это. Но совсем не тривиальная задача получается.
  

FormEx developer
Наверх
www  
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 3 
ОтправитьПечать