Имя: Пароль:
1C
1С v8
использование кода в пользовательском режиме
0 Stim
 
08.02.12
11:26
вот задумался - а почему в типовых почти нигде не используется возможность сохранить код в режиме пользователя и использовать его? Пока только что-то похожее есть при формировании формулы вида начисления в ЗУП.
например, был бы РС с измерениями типа ОбъектМД, выполняемаяПроцедура, привилигированныйРежим, текст.И можно было включить свой код по проверке, например, прав пользователя, или какое-то ограничение по датам отгрузки(УТ) в  обработку проведения дока без_изменения_типовой_конфигурации

в типовой будет, например:

ОбработкаПроведения(отказ, Режим)
ТекстДополнительногоКода = ПолучитьТекстДополнительногоКода("обработкаПроведения","РеализацияТоваровУслуг");
Отказ = Выполнить(ТекстДополнительногоКода);

как-то так.


плюсы - не надо снимать типовую с изменения, обновлять можно автоматом. отладка опять же проще - изменил-проверил. не надо выгонять пользователей и обновлять демонически. При должном желании (и умении) бухгалтер или ответственное может править этот код.
ну и естественно, проверка и выполнение кода в попытке.
1 Ненавижу 1С
 
гуру
08.02.12
11:28
(0) ага, видел такое, там вся бизнес-логика хранится в справочниках, тормоза постоянные...
2 Гефест
 
08.02.12
11:28
Фиксинизм какой-то...
3 Ненавижу 1С
 
гуру
08.02.12
11:30
проблема в чем? исполняемый код 1С не машинный код - интерпретатор с промежуточного байт-кода
теперь для Выполнить потребуется еще вначале перевести некий текст в байт-код, а его оттранслировать
4 Stim
 
08.02.12
11:33
(3) а в чем проблема? десяток строк кода интерпретируются быстро
5 le_
 
08.02.12
11:33
Выполнить(), кстати, разве возвращает что-то?..
6 pumbaEO
 
08.02.12
11:35
Почитай еще про контекст выполнения, где он выполняется на клиенте, на сервере. Смотрит ли на директивы...
7 proger2011
 
08.02.12
11:36
Пля.. это такой гемор при разработке и отладке... На.... На....
8 Scooter
 
08.02.12
11:40
(0)небезопасно
9 Ненавижу 1С
 
гуру
08.02.12
11:41
(4) да ни в чем собственно, просто видел, что описал в (1)
10 Serg_1960
 
08.02.12
11:44
(0) "Если очень хочется, но нельзя, - значит можно"(с)
11 acsent
 
08.02.12
11:48
(0) в чем проблема написать этот же код в конфигураторе?
12 Ksandr
 
08.02.12
11:49
(6) не смотрит :)

#Если <ВСЕГДА ЛОЖЬ> Тогда

Для этого нужно писать свои функции общих модулях для определения контекста
13 acsent
 
08.02.12
11:50
(10) эх такую поговорку и так неправильно сказать
14 Stim
 
08.02.12
11:51
(11) проблема в дальнейшем обновлении
15 pumbaEO
 
08.02.12
11:55
(14) Это как раз не проблема, главное сделать выгрузку кода в файлы, а там уже svn, bzr, git разберется, че менял.
16 Serg_1960
 
08.02.12
11:56
(13) Это "адаптированный по месту" вариант :)
Расшифрую:
С "точки зрения" платформы и конфигурации - так сделать можно, но... ммм... методологически - неверно. Хотя,не отрицаю, - удобно в некоторых случаях.
17 Stim
 
08.02.12
11:56
(15) если конфа не изменена, то обновить может и бухгалтер. без всяких выгрузок кода
18 pumbaEO
 
08.02.12
11:57
Я имею ввиду ваш справочник Кода для ВЫПОЛНИТЬ.