Имя: Пароль:
1C
1С v8
Почему не работает такой код
0 espanol
 
18.07.12
12:47
&НаСервере
Функция ЦветаАвтомобилей()
   
   СтруктураЦветов = Новый Структура;
   Выборка         = Справочники.Цвета.Выбрать();
   Пока Выборка.Следующий() Цикл
       Если ЗначениеЗаполнено(Выборка.Артикул) Тогда
           Если ЗначениеЗаполнено(Выборка.Красный) И ЗначениеЗаполнено(Выборка.Синий) И ЗначениеЗаполнено(Выборка.Зеленый) Тогда
               СтруктураЦветов.Вставить(СокрЛП(Выборка.Артикул), СокрЛП(Выборка.Красный) + "," + СокрЛП(Выборка.Синий) + "," + СокрЛП(Выборка.Зеленый));
           КонецЕсли;
       КонецЕсли;
   КонецЦикла;
   
   Возврат СтруктураЦветов;
КонецФункции

СокрЛП(Выборка.Артикул) = "1К"
1 espanol
 
18.07.12
12:47
{Документ.ЗаказНаАвтомобиль.Форма.ФормаСпискаУправляемая.Форма(112)}: Ошибка при вызове метода контекста (Вставить)
               СтруктураЦветов.Вставить(СокрЛП(Выборка.Артикул), СокрЛП(Выборка.Красный) + "," + СокрЛП(Выборка.Синий) + "," + СокрЛП(Выборка.Зеленый));
по причине:
Задано неправильное имя атрибута структуры
2 Fragster
 
гуру
18.07.12
12:47
Правила для имени атрибута структуры такие же, как и для переменных в 1с. юзай соответствие, если сильно надо.
3 acsent
 
18.07.12
12:48
1К - неправильное имя атрибута структуры
4 Fragster
 
гуру
18.07.12
12:48
или "_"+СокрЛП(Выборка.Артикул), но тогда если там "-" какой-нить в имени будет 0 тоже упадет
5 Steel_Wheel
 
18.07.12
12:53
СокрЛП(Выборка.Артикул) = "1К"

Что это за жесть?
6 Cashtane
 
18.07.12
13:48
Уважаемый, вы мой. Поменяйте "СтруктураЦветов = Новый Структура;" на "СтруктураЦветов = Новый Соответствие;" И будет счастье. Ну а про Структуры почитайте поподробнее.
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс