Имя: Пароль:
1C
1С v8
Для каждой строки табличной части своя функция. Как.
0 DirecTwiX
 
25.04.13
23:49
Нужно привязать к каждой строке табчасти свою функцию. В голове два пока варианта:
1) Хранить в строке константу, а в функции будет куча ЕСЛИ. Выглядит некрасиво, статично
2) В каждой строке хранить названия процедуры и обрабатывать через ВЫПОЛНИТЬ. Красиво, но почему-то страшно =) Стоит ли тут чего-нибудь опасаться?
Или может какой-нибудь другой способ?
1 Живой Ископаемый
 
25.04.13
23:52
Что делает функция? Точно тч а не тп?
2 NcSteel
 
25.04.13
23:53
(0) Посмотри как справочник спецификации организован, там есть формулы
3 Asmody
 
25.04.13
23:54
Для каждой нужной функции создать по обработке с одним методом Выполнить(). В ТЧ хранить название обработки. Вызывать так:
Обработки[ИмяОбработки].Создать().Выполнить();
4 DirecTwiX
 
26.04.13
00:05
(1) Тп.
(2) Посмотрю, спасибо
(3) Это и так обработка) Рядом с ней ещё штук пять таскать?)
5 Torquader
 
26.04.13
01:20
(4) Тогда в обработке определить функции для строк вида ФункцияСтроки1 ... ФункцияСтрокиN и вызывать просто через выполнить("ФункцияСтроки"+Строка(НомерСтроки)+"();");
6 DirecTwiX
 
26.04.13
02:29
(3) (5)  вы же стебётесь??)
7 Torquader
 
26.04.13
03:00
(6) Понимаешь, в 1С есть оператор "выполнить" который может выполнять любой код - при желании, можно в невидимое поле той же таблицы сложить код, который выполнять этим оператором.
Просто основной вопрос - зачем ?
У тебя строк в табличном поле фиксировано - они разные - а колонки тебе не мешают ? они же одинаковые.
8 DirecTwiX
 
26.04.13
11:27
(7) Про Выполнить я и спрашивал в (0)
Про строки и колонки ничего не понял)
Буду хранить в е колонке имя процедуры, как и планировал в(0), и обрабатывать через Выполнить