Имя: Пароль:
1C
1С v8
Вызов процедуры по строке
0 ВопросБот
 
15.04.13
10:42
Так нельзя?:

ТекРеквизит = "КПП";
Если Не РегламентированныеДанныеКлиентСервер[ТекРеквизит + "СоответствуетТребованиям"](Выборка[ТекРеквизит], ТекстСообщения) Тогда    

К коллекциям же можно обращаться через []?
1 cw014
 
15.04.13
10:43
Можно, если ты указываешь корректный иттератор для коллекции
2 1Сергей
 
15.04.13
10:44
можно
3 ВопросБот
 
15.04.13
10:45
(1) под итератором ты понимаешь имя элемента коллекции?
4 ВопросБот
 
15.04.13
10:45
(2) чёт не фурыкает...
5 cw014
 
15.04.13
10:45
Под иттератором понимается значение иттерации коллекции
6 В тылу врага
 
15.04.13
10:45
(0) РегламентированныеДанныеКлиентСервер это что общий модуль?
нет, его методы не собраны в коллекцию
7 cw014
 
15.04.13
10:45
Ключ и Значение... Так вот по ключу идет обращение... Это и есть твой иттератор, который в цикле "Для Каждого" перебирается
8 cw014
 
15.04.13
10:46
(4) Если это общий модуль, то он не является коллекцией
9 cw014
 
15.04.13
10:46
(6) +1
10 Maxus43
 
15.04.13
10:47
юзай Выполнить() тогда
11 ВопросБот
 
15.04.13
10:47
(7) ты имеешь ввиду выборку? - там всё норм.
12 Maxus43
 
15.04.13
10:47
(11) он имеет ввиду РегламентированныеДанныеКлиентСервер[ТекРеквизит + "СоответствуетТребованиям"]
13 cw014
 
15.04.13
10:47
(10) Как вариант
14 cw014
 
15.04.13
10:48
Интересно, а как давно боты начали в 1С программить?
15 ВопросБот
 
15.04.13
10:49
{Форма.Форма.Форма(79,90)}: Ожидается ключевое слово 'Тогда' ('Then')
Если Не РегламентированныеДанныеКлиентСервер[""+ТекРеквизит + "СоответствуетТребованиям"]<<?>>(Выборка[ТекРеквизит], ТекстСообщения) Тогда
16 ВопросБот
 
15.04.13
10:50
(14) уже порядочно)
17 cw014
 
15.04.13
10:50
(15) Отойди от компьютера, бот. Пиши скрипты к играм, пожалуйста, на питоне
18 ВопросБот
 
15.04.13
10:51
(6) вот правильный ответ, видимо. Спасибо. Я считал, что если через точку - то можно считать коллекцией.
19 Maxus43
 
15.04.13
10:51
(15) нельзя так к процедурам обращаться. так только к коллекциям
20 cw014
 
15.04.13
10:51
(18) Если Не Выполнить("РегламентированныеДанныеКлиентСервер" + ТекРеквизит + "СоответствуетТребованиям(Выборка[ТекРеквизит], ТекстСообщения)") Тогда
21 ВопросБот
 
15.04.13
10:51
(17) видимо ты знаешь ответ на (6)?
22 cw014
 
15.04.13
10:52
"Я считал, что если через точку - то можно считать коллекцией." - оХГДЕЖ....


То есть значение с типом РезультатЗапроса - это коллекция? Я отстал от жизни, пристрелите меня... +_+
23 Maxus43
 
15.04.13
10:52
(18) при чем тут через точку или нет? почитай что такое коллекции в СП хотя бы, есть универсальные, есть специфические, для некоторых доступно обращение через []
24 cw014
 
15.04.13
10:56
(23) Через точку, через точку все, каждая буква через точку - вспоминаем легендарного S.T.A.L.K.E.R.
25 ВопросБот
 
15.04.13
11:00
(20) кстати неправильно
26 ВопросБот
 
15.04.13
11:09
чёт не работает:

Если Не Выполнить("РегламентированныеДанныеКлиентСервер." + ТекРеквизит + "СоответствуетТребованиям(Выборка."+ТекРеквизит+", ТекстСообщения)") Тогда

(20) В СП, кстати, про ВозвращаемоеЗначение для Выполнить - ни слова...
27 cw014
 
15.04.13
11:12
(26)
Я тебе идею дал, а не решение. А вот решение:
Результата = Ложь;
Выполнить("Результат = РегламентированныеДанныеКлиентСервер." + ТекРеквизит + "СоответствуетТребованиям(Выборка."+ТекРеквизит+", ТекстСообщения)");

Если Не Результат тогда...

И не будь копипастером
28 Infsams654
 
15.04.13
11:13
(26) если "РегламентированныеДанныеКлиентСервер." + ТекРеквизит - функция, то пиши так
ВозвращаемоеЗначение = Неопределено;
Выполнить("ВозвращаемоеЗначение = РегламентированныеДанныеКлиентСервер." + ТекРеквизит + "СоответствуетТребованиям(Выборка."+ТекРеквизит+", ТекстСообщения)");
Если Не ВозвращаемоеЗначение Тогда ...

ну и попытку на всякий случай надо бы
29 Infsams654
 
15.04.13
11:14
(27) опередил
30 ВопросБот
 
15.04.13
11:20
(27)(28) спасибо.
В (18) я что-то не то ляпнул, каюсь. Видимо, понедельник)
Закон Брукера: Даже маленькая практика стоит большой теории.