|  | Передать ключом структуры Счетчик | ☑ | 
    
        | 0
    
        Baters   07.04.14✎ 19:48 | 
        Доброго времни суток.
Подскажите как можно передать в структуру в качестве ключа текущее значение счетчика....?
 
 Структура= Новый Структура();
 Ключище="Ключик";
 Для Счетчик=1 По 50  Цикл
 Структура.Вставить("Ключище"+Счетчик,"Значенице");
 КонецЦикла;
 Спасибо.
 |  | 
    
        | 1
    
        Михаил Козлов   07.04.14✎ 19:50 | 
        Можно не мудрить со структурой, а использовать соответствие: в качестве ключа можно использовать произвольное значение.     |  | 
    
        | 2
    
        Михаил Козлов   07.04.14✎ 19:51 | 
        Если "Ключище"+Счетчик - строка, которая может быть именем переменной, то и со структурой должно пройти.     |  | 
    
        | 3
    
        Baters   07.04.14✎ 20:01 | 
        Ошибка - Задано не верное имя атрибута.
И матюкается на метод вставить....
 Не могу разобраться почему.....
 
 Структура= Новый Структура();
 Для Счетчик=1 По 1000 Цикл
 КакоеЧисло=0;
 
 Для Счетчик1=1  по Счетчик  Цикл
 ВычеслениеЧисла=Счетчик%Счетчик1;
 Если ВычеслениеЧисла=0 Тогда
 
 КакоеЧисло=КакоеЧисло+1;
 КонецЕсли;
 КонецЦикла;
 
 Ключик="Число";
 ВидЧисла= ?(КакоеЧисло>2,"НеПпростое","Простое");
 Структура.Вставить("Число"+Счетчик, "ВидЧисла");
 
 КонецЦикла;
 |  | 
    
        | 4
    
        Михаил Козлов   07.04.14✎ 20:09 | 
        Посмотрите в отладчике "Число"+Счетчик: может быть неразрывный пробел. В общем "Число"+Счетчик должно быть допустимо в качестве имени переменной. 
Проще с Соответствие: Вставить(Счетчик, ВидЧисла). Кстати, в зачем Вы вставляете в качестве значения строку "ВидЧисла"?
 |  | 
    
        | 5
    
        Baters   07.04.14✎ 20:22 | 
        Посмотрел, нет там пробелов :-(
Соответствие проще, но мне для практики нужно именно со структурой поработать.
 
 >>Кстати, в зачем Вы вставляете в качестве значения строку "ВидЧисла"?
 Кавычки случайно остались, когда разбирался в причинах ошибки.
 
 Самое странное, то, что если идти пошагово, все работает....и структура наполняется ...
 Но при завершении цикла выскакивает ошибка...
 |  | 
    
        | 6
    
        Михаил Козлов   07.04.14✎ 20:39 | 
        1000 может дать недопустимый символ в имени из-за разделителя групп разрядов.     |  | 
    
        | 7
    
        vi0   07.04.14✎ 20:43 | 
        (3) для такого решение логично было бы использовать таблицу значений     |  | 
    
        | 8
    
        Baters   07.04.14✎ 20:54 | 
        Михаил, Вы совершенно правы.. в 1000 есть пробел....
Большое спасибо!!!
 |  | 
    
        | 9
    
        ДенисЧ   07.04.14✎ 20:56 | 
        (8) Там нет пробела :-))))))))))))     |  | 
    
        | 10
    
        Baters   07.04.14✎ 21:05 | 
        >>1000 может дать недопустимый символ в имени из-за разделителя групп разрядов.
 Як так нет пробела?
 А что тогда подразумевается под разделителем групп разрядов?
 |  | 
    
        | 11
    
        Defender aka LINN   07.04.14✎ 21:53 | 
        (10) Что в настройках задано на сервере. У нас как-то админы, сами того не зная, проучили любителей СтрЗаменить()     |  | 
    
        | 12
    
        ДенисЧ   07.04.14✎ 21:53 | 
        (10) Символы.НПП :-))     |  | 
    
        | 13
    
        Baters   07.04.14✎ 22:07 | 
        Сапасибо.     |  | 
        Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший