Переключение на Главную Страницу Страницы: [1] 2 3  ОтправитьПечать
Очень популярная тема (более 25 ответов) В какой класс закинуть методы ВыполнитьХХХ(Конт,.) (число прочтений - 12564 )
artbear
1c++ developer
1c++ moderator
Отсутствует


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

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
В какой класс закинуть методы ВыполнитьХХХ(Конт,.)
09. Ноября 2006 :: 09:13
Печать  
Народ, как думаете, в какой класс лучше закинуть методы
ВыполнитьПроцедуру(Конт, ИмяПроцедуры, СписокАргументов)
ВыполнитьФункцию(Конт, ИмяПроцедуры, СписокАргументов)

?

Уверен, что эти методы будут удобны в качестве универсальных механизмов.
Сделаю на базе ФормЕкс с разрешения Алексея.

ИМХО эти методы органично вписываются в 1С++

PS возможно, что удастся организовать и другой вызов с неопределенным числом аргументов типа
ВыполнитьПроцедуру(Конт, ИмяПроцедуры, Парам1, ..., ПарамХ)
хотя это намного сложнее Улыбка

Жду предложений.
Мое видение - или класс Система (не очень удобно), или класс Перехватчик (имхо лучший вариант)
  

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


I Love YaBB 2!

Сообщений: 896
Зарегистрирован: 20. Мая 2006
Re: В какой класс закинуть методы ВыполнитьХХХ(Кон
Ответ #1 - 09. Ноября 2006 :: 09:17
Печать  
Ну, наверное в перехватчик.
Хотя вроде же есть Делегат для этих целей.
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


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

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: В какой класс закинуть методы ВыполнитьХХХ(Кон
Ответ #2 - 09. Ноября 2006 :: 09:22
Печать  
Ага, про Делегат и ВыполняемыйМодуль я вообще забыл Улыбка
ИМХО у Делегата немного не та задача, а вот ВыполняемыйМодуль как подойдет, т.е. новые методы логично впишутся в этот класс Улыбка

Спасибо, Александр, за то, что подтолкнул к правильной мысли Улыбка
  

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


I Hate Fat YaBB 2!

Сообщений: 862
Зарегистрирован: 24. Мая 2006
Re: В какой класс закинуть методы ВыполнитьХХХ(Кон
Ответ #3 - 09. Ноября 2006 :: 09:23
Печать  
Честно говоря, не вижу смысла в этих методах. Это не ООП подход. Пусть эти методы будут в ФормЕкс.

В качестве вызова процедуры/функции по имени считаю, что достаточно Делегата, согласен с Орфковым. А еще можно использовать ВыполняемыйМодуль. Так что вариантов достаточно.
  
Наверх
 
IP записан
 
DrACe
1c++ donor
1c++ power user
Отсутствует


1С++ любитель

Сообщений: 447
Местоположение: г. Новосибирск
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: В какой класс закинуть методы ВыполнитьХХХ(Кон
Ответ #4 - 09. Ноября 2006 :: 09:26
Печать  
ОФФ ностальжи:

новое - хорошо забытое старое?..

функционал ФормЕкса покоя не дает - может зря его так лихо отрезали?..

PS у меня, например, до сих пор 2.0.3.1 - тестировать разделенный вариант так и не нашел времени...
Озадачен
  
Наверх
 
IP записан
 
sedmin
1c++ developer
Отсутствует


I Hate Fat YaBB 2!

Сообщений: 862
Зарегистрирован: 24. Мая 2006
Re: В какой класс закинуть методы ВыполнитьХХХ(Кон
Ответ #5 - 09. Ноября 2006 :: 09:29
Печать  
DrACe писал(а) 09. Ноября 2006 :: 09:26:
функционал ФормЕкса покоя не дает - может зря его так лихо отрезали?..


Зря - не зря, с этим уже ничего не поделаешь.

Знаешь, есть такая песня у Пугачевой:
Цитата:
Фарш невозможно провернуть назад...

Улыбка
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


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

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: В какой класс закинуть методы ВыполнитьХХХ(Кон
Ответ #6 - 09. Ноября 2006 :: 09:29
Печать  
Прошу ОФФ обсуждать в курилке Улыбка
Здесь прошу говорить по предложенной теме.

ЗЫ я свои аргументы для ввода в 1С++ привел - мне лично это часто требуется.
Надоело на каждый подобный чих создавать ВыполняемыйМодуль, писать простой и тупой текст модуля, компилить и т.д.
Когда можно подобный код сразу же включить в ВМ Улыбка
  

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



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: В какой класс закинуть методы ВыполнитьХХХ(Кон
Ответ #7 - 09. Ноября 2006 :: 09:44
Печать  
Что-то я не понял.
А как же чудесная фича функционала TurboBl?
Код
Выбрать все
Конт.МояПроцедураКонтекста();
Конт.МояПеременная=ЧегоНибудь;
 


Это остается?
  
Наверх
ICQ  
IP записан
 
sedmin
1c++ developer
Отсутствует


I Hate Fat YaBB 2!

Сообщений: 862
Зарегистрирован: 24. Мая 2006
Re: В какой класс закинуть методы ВыполнитьХХХ(Кон
Ответ #8 - 09. Ноября 2006 :: 10:04
Печать  
artbear писал(а) 09. Ноября 2006 :: 09:29:
Когда можно подобный код сразу же включить в ВМ Улыбка


Так напиши наследника от ВМ и пользуй его как хочешь.

Не вижу смысла в этих методах. Если они кому-то понадобились, значить пора задуматься о Палыче.

Ой, я хотел сказать о дизайне.  Улыбка
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


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

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: В какой класс закинуть методы ВыполнитьХХХ(Кон
Ответ #9 - 09. Ноября 2006 :: 10:55
Печать  
vip писал(а) 09. Ноября 2006 :: 09:44:
А как же чудесная фича функционала TurboBl?
Код
Выбрать все
Конт.МояПроцедураКонтекста();
Конт.МояПеременная=ЧегоНибудь;
 


Это остается?

Да, конечно, остается.
Но, к сожалению, это не универсальный метод Печаль
  

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



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: В какой класс закинуть методы ВыполнитьХХХ(Кон
Ответ #10 - 09. Ноября 2006 :: 11:05
Печать  
Цитата:
Но, к сожалению, это не универсальный метод

Поясни, пожалуйста.
  
Наверх
ICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


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

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: В какой класс закинуть методы ВыполнитьХХХ(Кон
Ответ #11 - 09. Ноября 2006 :: 11:06
Печать  
sedmin писал(а) 09. Ноября 2006 :: 10:04:
[quote author=artbear link=1163063627/0#6 date=1163064599]
Так напиши наследника от ВМ и пользуй его как хочешь.

Ой, я хотел сказать о дизайне.  Улыбка

Понимаешь, ты работаешь с собственной конфигурацией, можешь растить ее как тебе угодно, строить дизайн и менять его самостоятельно.

1) Мне же приходится много работать с типовыми конфами, где так сильно не развернешься, т.к. возможны трудности при обновлении типовых конф. Печаль
Поэтому мне нужны универсальные методы, которые позволяют делать многие вещи, не меняя код конфигурации.
Здесь годится многое - ФормЕкс (менять формы и меню на лету), новая ВК RWidgets(меню и интерфейсы), классы 1С++ (ну тут сам понимаешь), перехватчик 1С++ и т.д. и т.п.

2) также использую тесты Фанктесты для проверки изменения закрытых периодов с помощью типовых отчетов - здесь также удобна универсальность при помощи 1С++ и ФормЕкс
И хочется еще больше усилить Фанктест в этой части - т.е. чтобы не нужно было прописывать спец.код в нужном отчете, а достаточно было установить условия по заполнению отчета и указать, какую кнопку нажимать или какую процедуру/функцию выполнять Улыбка

ИМХО для этого очень удобно Улыбка

3) Понятно, что класс-наследник сделать просто.
Но зачем каждому пользователю 1С++ этим заниматься, когда это достаточно просто и легко вставить в 1С++.

Например, метод ЯвляетсяОбъектом также легко сделать в классе, однако же в 1С++ он намного естественнее смотрится Улыбка
  

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



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: В какой класс закинуть методы ВыполнитьХХХ(Кон
Ответ #12 - 09. Ноября 2006 :: 11:14
Печать  
vip писал(а) 09. Ноября 2006 :: 11:05:
Цитата:
Но, к сожалению, это не универсальный метод

Поясни, пожалуйста.

Ну например, когда ты заранее не знаешь имя процедуры\ф-ии контекста
  
Наверх
 
IP записан
 
fez
Forum Administrator
1c++ power user
Отсутствует


I wanted to cry, but the
tears wouldn't come

Сообщений: 2712
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: В какой класс закинуть методы ВыполнитьХХХ(Кон
Ответ #13 - 09. Ноября 2006 :: 11:15
Печать  
vip писал(а) 09. Ноября 2006 :: 11:05:
Цитата:
Но, к сожалению, это не универсальный метод

Поясни, пожалуйста.

Он имеет в виду, что в его варианте он может указать имя процедуры внутри строковой переменной.
  
Наверх
www  
IP записан
 
vip
1c++ power user
Отсутствует



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: В какой класс закинуть методы ВыполнитьХХХ(Кон
Ответ #14 - 09. Ноября 2006 :: 11:17
Печать  
fez писал(а) 09. Ноября 2006 :: 11:15:
vip писал(а) 09. Ноября 2006 :: 11:05:
Цитата:
Но, к сожалению, это не универсальный метод

Поясни, пожалуйста.

Он имеет в виду, что в его варианте он может указать имя процедуры внутри строковой переменной.

Ага. Вот теперь понятно. Спасибо.
Да, это было бы здорово.
  
Наверх
ICQ  
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 3 
ОтправитьПечать