|
8.2 Передать функцию в функцию (аля с++ код) | ☑ | ||
---|---|---|---|---|
0
miner
28.02.13
✎
17:34
|
Народ подскажите как в 1с делаются конструкции наподобие
Функция фу( лоло()) КонецФункции Я имею ввиду не в буквальном смысле, а именно результат. Те например нужно обойти дерево и вызвать для каждой строки определенную фукнцию, для каждого обхода разную. И чтобы не плодить лишнего кода, хотелось бы что-нибудь этакое с подвыподвертом! |
|||
1
ДенисЧ
28.02.13
✎
17:36
|
лямбду в 1с хочешь? :-)
|
|||
2
acsent
28.02.13
✎
17:36
|
только через выполнить, но это не тру
|
|||
3
acsent
28.02.13
✎
17:37
|
ибо у выполнить нет отладки
|
|||
4
le_
28.02.13
✎
17:37
|
Вычислить() можно попробовать использовать...
|
|||
5
miner
28.02.13
✎
17:40
|
(1) типа лямбды, да, но пойдет и простой трюк.
Просто зад..ся уже одни и те же конструкции писать. |
|||
6
Reset
28.02.13
✎
17:40
|
Функция фу(ЧёВыполнить)
Выполнить(ЧёВыполнить); КонецФункции Фукция А1() // тут есть отладка КонецФункции Фукция А2() // КонецФункции Для й=1 по 2 цикл фу("А"+й+"()"); КонецЦикла; |
|||
7
ДенисЧ
28.02.13
✎
17:40
|
(5) тогда через Выполнить()...
|
|||
8
Reset
28.02.13
✎
17:41
|
+(6) Но реально как-то редко такое требовалось
|
|||
9
Serginio1
28.02.13
✎
17:42
|
Можно использовать внешние отчеты и передавть ссылку на созданный внешний отчет. В теле которого должна быть функция определенного названия.
|
|||
10
miner
28.02.13
✎
17:42
|
(6) сча попробуем!
|
|||
11
Serginio1
28.02.13
✎
17:43
|
(9) Правда это ближе к интерфейсам и утиннную типизацию.
|
|||
12
miner
28.02.13
✎
17:47
|
сори за флейм, но нахуа было придумывать этот корявый язык. Вместо этого поставляли бы свой 1с с нормальным высокоуровневым языком в виде интерфейсов. К которым можно было накручивать все чего угодно.
|
|||
13
miner
28.02.13
✎
17:48
|
(12) можно не считать вопросом и не отвечать на него это просто выражение эмоций
|
|||
14
ДенисЧ
28.02.13
✎
17:48
|
(12) 1с - для бухгалтеров. А не для гиков-программистов.
|
|||
15
ДенисЧ
28.02.13
✎
17:48
|
А вообще - тут рекламировали питонную ВК...
Бери и пользуйся. Или не пользуйся 1с |
|||
16
HeroShima
28.02.13
✎
18:03
|
(0) таки кейс
|
|||
17
zladenuw
28.02.13
✎
18:04
|
(15) а где реклама ?
|
|||
18
HeroShima
28.02.13
✎
18:09
|
(17) в моих темах. только тихо...
|
|||
19
mikecool
28.02.13
✎
18:21
|
а вот самое главное - нафига такой изврат?
|
|||
20
mikecool
28.02.13
✎
18:22
|
минер(наверное как сапер) ошибается только раз в жизни )))
|
|||
21
ILM
гуру
28.02.13
✎
20:37
|
Функция НамберУан(Параметр = НамберТу())
Возврат ЧёТеНадо; // Чё ты хошь КонецФункции Проверьте? |
|||
22
Тролль главный
28.02.13
✎
20:38
|
наваяй кучу своих обработок (можно внешних) с единым интерфейсом и используй
|
|||
23
Тролль главный
28.02.13
✎
20:40
|
+(22) я бы и в C++ так бы стал делать, через паттерн команда, реализованного классами
|
|||
24
GANR
28.02.13
✎
20:42
|
(0) Отличная альтернатива
Выполнить(ТвойКодВызоваПроцедурыСПараметрами); ТвояПеременная = Вычислить(ТвойКодВызоваФункцииСПараметрами) |
|||
25
Defender aka LINN
28.02.13
✎
21:44
|
(0) А... Нахера?
|
|||
26
Тролль главный
28.02.13
✎
21:52
|
(25) функторы удобны
|
|||
27
Defender aka LINN
28.02.13
✎
22:05
|
(26) Хто, простите?
|
|||
28
mikecool
28.02.13
✎
22:10
|
(21) параметр по умолчанию только значение примитивного типа мб
|
|||
29
Defender aka LINN
28.02.13
✎
22:12
|
(21) "Параметр = НамберТу()" - вполне себе булево
|
|||
30
mikecool
28.02.13
✎
22:14
|
(29) пробовал както Параметр = Справочники.Номенклатура.ПустаяСсылка() - кажись обматерило
|
|||
31
Defender aka LINN
28.02.13
✎
22:15
|
(30) В объявлении - обматерит. В вызове - нет
|
|||
32
mikecool
28.02.13
✎
22:16
|
(31) дык речь то про объявление и ведем
|
|||
33
Defender aka LINN
28.02.13
✎
22:19
|
аааа... А то я сижу и не догоняю, что тут все хотят :)
Один фиг - баловство это все |
|||
34
orefkov
28.02.13
✎
22:35
|
Переходите на 7ку, там это реализовано.
Если очень надо, могу забацать ВК, правда только под винду и с веб-клиентом не знаю, получиться ли. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |