вынос модуля из конфигуратора?

1. Глюкотрон 07.10.09 15:04 Сейчас в теме
Можно ли организовать возможность написания текстов модулей в 1с8 предприятии?
Чтобы пользователь мог добавлять процедуры и функции в некий модуль в пользовательском режиме, а потом к ним обращаться...
+
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Арчибальд 2707 07.10.09 15:07 Сейчас в теме
Это пока только на семерке :)
+
3. Глюкотрон 07.10.09 15:29 Сейчас в теме
а на семерке тогда как? через #ЗагрузитьИзФайла?
+
4. Арчибальд 2707 07.10.09 15:31 Сейчас в теме
Погуглить "openconf" и "1С++"
+
5. WKBAPKA 214 07.10.09 15:38 Сейчас в теме
мля, советчики. можно! нужно использовать метод процедуру Вычислить(). Посмотри в помощнике.
Для этого нужно написать некую процедурку в которую ты будешь передавать текст модуля и контекст, форма или элементы формы.
+
6. Душелов 4017 07.10.09 15:43 Сейчас в теме
(5) А может "Выполнить" ?

Выполнить (Execute)

Синтаксис:
Выполнить(<Строка>)

Параметры:
<Строка>
Строка, содержащая текст исполняемого кода.

Описание:
Позволяет выполнить фрагмент кода, который передается ему в качестве строкового значения.
+
7. Глюкотрон 07.10.09 15:43 Сейчас в теме
Спасибо! О как умно... :o Значит без внешних компанет не получится...
+
8. Душелов 4017 07.10.09 15:44 Сейчас в теме
(7) Что умно?
Без ВК не получится где? В 8-ке?
+
9. Глюкотрон 07.10.09 15:48 Сейчас в теме
Эту функцию я нашел... А если названия и значения моих параметров забиваются на форме? А если функция от функции?
+
10. Душелов 4017 07.10.09 15:50 Сейчас в теме
(9) В 8-ке и с ВК не получится.
+
11. Глюкотрон 07.10.09 15:59 Сейчас в теме
Я пробовал передавать значения параметров через структру. А в передаваемой строке заменял ИмяПараметра на Структура.ИмяПараметра (храню в ключе имя переменной, а в значении параметр).
А так чтобы сложнее чего нибудь придумать не получается...
+
12. Душелов 4017 07.10.09 16:15 Сейчас в теме
А к чему такие сложности?
+
13. Глюкотрон 07.10.09 16:27 Сейчас в теме
Иногда пользователям надо простые функции. Хотелось бы чтобы программист по минимуму писал им их.
Допустим расчет разных площадей и др мути...
Легко делается, чтобы человек задал нужные параметры, написал текст как считать.
А вот не получается, чтобы написал человек функцию, а потом ее использовать в другой функции.

Т.е. грубо, вроде этого: Произв(Число1,Число2)=Число1*Число2;
А потом СуммаПроизв(Число1,Число2,Число3,Число4)=Произв(Число1,Число2)+Произв(Число3,Число4);
+
14. Арчибальд 2707 07.10.09 16:36 Сейчас в теме
(13) Если нужно только это, то и ВК не надо. :)
Смотри сюда http://infostart.ru/public/18898/
+ Справочник с текстами функций (в статье была текстовая константа)
+
15. Глюкотрон 07.10.09 16:41 Сейчас в теме
Спасибо. Для простых задач пойдет, а сложные пусть не думают. МоЗоГ еще сломают...
+
16. artbear 1524 07.10.09 16:45 Сейчас в теме
В 8-ке нет возможностей задания текстов функций и процедур для выполнения через Выполнить :( - и очень большее подозрение, что и не будет никогда :(

В 77 есть - см. ВК 1С++ :)
+
17. Арчибальд 2707 07.10.09 16:51 Сейчас в теме
(16) Как я и пояснил во 2 и 4 комментах ;)
+
18. WKBAPKA 214 07.10.09 16:56 Сейчас в теме
сорри, выполнить
+
19. WKBAPKA 214 07.10.09 19:02 Сейчас в теме
значит так. сабж был простой, есть ли возможность в 8-ке писать тексты модулей... про процедуры и функции ничего не было...
даже через выполнить можно эмулировать вызовы процедур и функций, нужно только добиться передачи параметров. делать это можно через структуры. также через структуры и возвращать результат. тоже мне, проблему нашлы ;)
+
20. WKBAPKA 214 07.10.09 19:06 Сейчас в теме
у меня таким образом в КУБиКе обрабатываются события. Для каждого события можно определить свой собственный код, но также у каждого события могут быть свои параметры, эти параметры я передаю своей процедуре где вызывается Выполнить() в виде структуры, а потом эту структуру раскладываю и Выполнить() уже видит эти переменные.
+
21. Totoro 568 07.10.09 21:52 Сейчас в теме
(0) Хм. Все уже придумано до нас ... Подсистема "Инструменты разработчика" - "Алгоритмы". И успешно используется.
+
22. tsd 105 15.10.09 20:36 Сейчас в теме
(0),(13),(16) все это спокойно можно сделать, вот примеры
http://infostart.ru/public/18679/

http://infostart.ru/public/18742/
+
24. artbear 1524 16.10.09 16:51 Сейчас в теме
(22), (23) Народ, вы начальный пост и последующие посты хорошо прочитали??
Мы говорим о невозможности использования произвольного модуля с функциями и процедурами !!
Простой код, без функци и процедур, прекрасно выполняется.
+
25. anig99 2843 16.10.09 17:01 Сейчас в теме
(24) может это называется внешняя обработка?
+
26. WKBAPKA 214 16.10.09 18:44 Сейчас в теме
2(24): тут привели примеры, что можно реализовать процедуры и функции...
+
27. artbear 1524 17.10.09 08:58 Сейчас в теме
(26) В подсистеме ИР согласен, что можно на базе внешних обработок.
А в других не увидел подобного - может быть, плохо смотрел?
(25) Еще подумай над сабжем.
+
28. tsd 105 18.10.09 20:04 Сейчас в теме
(27) лучше ты поразмышляй. В (6) указали основной оператор через который работа идет, а дальше нужно голову включить и подумать как те или иные моменты обойти. Или, как всегда, пока кто-нибудь пример не налабает будем кричать, что неосуществимо?

Кстати, в (13) приведен пример функций, которые типа будут составлять пользователи самостоятельно. Примеры как это можно организовать я привел в (22).
Если разговор ведем про написание программистом целых модулей в режиме предприятия, то извините, смысла большого не вижу, хотя и это можно организовать :)
+
29. WKBAPKA 214 18.10.09 21:19 Сейчас в теме
2(28): не в (6) а в (5) я только с названием метода ошибся... ради справедливости
+
30. artbear 1524 19.10.09 17:28 Сейчас в теме
(28) Прежде чем говорить, тестируй и думай! Лично я так и делаю, прежде чем писать что-то.
Вот тебе простейший тест, опровергающий все тобой сказанное :)
Попробуй просто открыть приложенную обработку-тест
и выложи результат.
Народ, это принципиальное ограничение метода Выполнить, он принимает только тот код, в котором нет функций и процедур, тут просто не о чем спорить :)
Обход возможен только с помощью внешних обработок, о чем я и говорил ранее, в частности, в (27).
Прикрепленные файлы:
ВнешняяОбработка1.epf
+
31. WKBAPKA 214 19.10.09 18:46 Сейчас в теме
2(30): это мы знаем, но можно организовать процедуры и функции, только для этого нужно использовать справочник, типа как в инструментарии программиста, справочник "Алгоритмы".
+
23. WKBAPKA 214 15.10.09 21:57 Сейчас в теме
32. Abadonna 3959 20.10.09 06:06 Сейчас в теме
А что за проблема добавить новый общий модуль? (конфигурация редактируется с сохранением поддержки).
При обновлении этот модуль просто проигнорируется и останется каким он был. И вызывай из него какие хочешь процедуры. Лично я первым делом это в 8-ке сделал, ибо надо было ;)
+
Внимание! Тема сдана в архив

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот