|
Значение не является значением объектного типа | ☑ | ||
---|---|---|---|---|
0
SeregaMW
26.06.12
✎
10:02
|
Из одной ТЗ выбираю нужные строки и хочу в цикле записать их в другую ТЗ, На строку "Cтр.Номенклатура = строка.Номенклатура;" ругается.
Причем если я в начале не объявляю переменную Стр, то дальше он ругается мол переменная не определенна. тип обоих строк "Строка" Помогите разобраться в чем проблема. Стр = ""; ПараметрыОтбора = Новый Структура; ПараметрыОтбора.Вставить("Ячейка", ЭлементыФормы.Ячейки.Значение); НайденныеСтроки = НоменТЗ.НайтиСтроки(ПараметрыОтбора); ТЗП = Новый ТаблицаЗначений; ТЗП.Колонки.Добавить("ИдТовара"); ТЗП.Колонки.Добавить("КоличествоПлан"); ТЗП.Колонки.Добавить("КоличествоФакт"); ТЗП.Колонки.Добавить("Номенклатура",Новый ОписаниеТипов("Строка")); ТЗП.Колонки.Добавить("НоменклатураКод"); ТЗП.Колонки.Добавить("НоменклатураМаркаНаименование"); ТЗП.Колонки.Добавить("Номер"); ТЗП.Колонки.Добавить("Ссылка"); ТЗП.Колонки.Добавить("Ячейка"); ТЗП.Колонки.Добавить("Я"); Для каждого строка из НайденныеСтроки Цикл Если (Строка.Номенклатура =NULL) или (Строка.Номенклатура =Неопределено) или (Строка.Номенклатура ="") тогда продолжить; КонецЕсли; Стр = ТЗП.Добавить(); Cтр.Номенклатура = строка.Номенклатура; Стр.ИдТовара = строка.ИдТовара; Стр.КоличествоПлан = строка.КоличествоПлан; Стр.КоличествоФакт = строка.КоличествоФакт; Стр.НоменклатураКод = строка.НоменклатураКод; Стр.НоменклатураМаркаНаименование = строка.НоменклатураМаркаНаименование; Стр.Номер = строка.Номер; Стр.Ссылка = строка.Ссылка; Стр.Ячейка = строка.Ячейка; КонецЦикла; |
|||
1
SeregaMW
26.06.12
✎
10:04
|
(0)Причем проблема только с строкой стр.Номенклатура если ее удалить все работает корректно
|
|||
2
aleks-id
26.06.12
✎
10:05
|
делай запросом
|
|||
3
Ненавижу 1С
гуру
26.06.12
✎
10:05
|
Стр = ТЗП.Добавить();
Cтр.Номенклатура = строка.Номенклатура; Все ли буквы С в русской раскладке набраны? |
|||
4
aleks-id
26.06.12
✎
10:06
|
а за использование зарезервированных слов в качестве названий переменных я убивал в детстве из рогатки.
|
|||
5
фросия
26.06.12
✎
10:06
|
а "строка" - не зарезервированное слово?
|
|||
6
Ненавижу 1С
гуру
26.06.12
✎
10:07
|
(4) Строка незарезевированное слово в 8.х
|
|||
7
aleks-id
26.06.12
✎
10:08
|
(6) ну хорошо. за использование зарезервированных имен процедур и функций в качестве переменных ;)
|
|||
8
Ненавижу 1С
гуру
26.06.12
✎
10:10
|
(7) зарезервированных имен процедур - это что за заверь?
я знаю именно понятие wiki:Зарезервированное_слово |
|||
9
SeregaMW
26.06.12
✎
10:11
|
Причем если убираю объявление колонки Номенклатура тогда 1С не требует объявлять Стр = "";
Мне кажется что в этом и зарыта ошибка. |
|||
10
SeregaMW
26.06.12
✎
10:13
|
Если пишу так
// Cтр=""; Если ПустаяСтрока(ЭлементыФормы.Ячейки.Значение)=Ложь тогда ПараметрыОтбора = Новый Структура; ПараметрыОтбора.Вставить("Ячейка", ЭлементыФормы.Ячейки.Значение); НайденныеСтроки = НоменТЗ.НайтиСтроки(ПараметрыОтбора); ТЗП = Новый ТаблицаЗначений; ТЗП.Колонки.Добавить("ИдТовара"); ТЗП.Колонки.Добавить("КоличествоПлан"); ТЗП.Колонки.Добавить("КоличествоФакт"); ТЗП.Колонки.Добавить("Номенклатура",Новый ОписаниеТипов("Строка")); ТЗП.Колонки.Добавить("НоменклатураКод"); ТЗП.Колонки.Добавить("НоменклатураМаркаНаименование"); ТЗП.Колонки.Добавить("Номер"); ТЗП.Колонки.Добавить("Ссылка"); ТЗП.Колонки.Добавить("Ячейка"); Для каждого строка1 из НайденныеСтроки Цикл Если (Строка1.Номенклатура =NULL) или (Строка1.Номенклатура =Неопределено) или (Строка1.Номенклатура ="") тогда продолжить; КонецЕсли; Стр = ТЗП.Добавить(); // Cтр.Номенклатура = строка1.Номенклатура; Стр.ИдТовара = строка1.ИдТовара; Стр.КоличествоПлан = строка1.КоличествоПлан; Стр.КоличествоФакт = строка1.КоличествоФакт; Стр.НоменклатураКод = строка1.НоменклатураКод; Стр.НоменклатураМаркаНаименование = строка1.НоменклатураМаркаНаименование; Стр.Номер = строка1.Номер; Стр.Ссылка = строка1.Ссылка; Стр.Ячейка = строка1.Ячейка; КонецЦикла; КонецЕсли; Ошибка {Форма.ФормаОтчета.Форма(133,2)}: Переменная не определена (Cтр) |
|||
11
aleks-id
26.06.12
✎
10:14
|
(8) не тупи
|
|||
12
ssh2006
26.06.12
✎
10:16
|
(0) В (0) у тебя две Стр. Одна начинается с С в латинской раскладке
|
|||
13
Ненавижу 1С
гуру
26.06.12
✎
10:16
|
(10) что скажешь на (3)?
(11) сам не тупи |
|||
14
ssh2006
26.06.12
✎
10:18
|
Здесь с русской С - Стр = ""
Здесь с латинской - Cтр.Номенклатура = строка.Номенклатура; |
|||
15
SeregaMW
26.06.12
✎
10:18
|
(12) Ты прав! Спасибо!
(10) Всегда прокатывало слово строка, но на всякий изменил на строка1 |
|||
16
Ненавижу 1С
гуру
26.06.12
✎
10:20
|
(15) какой же ты п и д о р а с! я же написал это в (3)
|
|||
17
ssh2006
26.06.12
✎
10:20
|
))))
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |