|
Итератор для значения не определен..? 🠗 (Волшебник 14.08.2017 10:16) | ☑ | ||
---|---|---|---|---|
0
AlexMee
14.08.17
✎
10:07
|
Запрос.УстановитьПараметр("ДатаОтчета",ОбщегоНазначенияЗК.ПолучитьРабочуюДату());
Запрос.УстановитьПараметр("Состояние",Перечисления.СостоянияРаботникаОрганизации.ОтпускЕжегодный); СтрокаДанных = Запрос.Выполнить().Выбрать().Следующий(); Для Каждого СтрокаДанных из Запрос.Ссылка цикл Если СтрокаДанных.Выгружать Тогда Лист.Cells(1, 1).Value = СтрокаДанных.НазваниеРеквизита; Колонка = Колонка + 1; КонецЕсли; КонецЦикла; Для Каждого СтрокаДанных из Запрос цикл Если СтрокаДанных.Выгружать Тогда Лист.Cells(1, Колонка).Value = СтрокаДанных.НазваниеРеквизита; Колонка = Колонка + 1; КонецЕсли; КонецЦикла; СтрокаЛиста = 2; Пока Запрос.Следующий() Цикл Колонка = 1; Для каждого СтрокаДанных из Запрос цикл Если СтрокаДанных.Выгружать Тогда Попытка // Установить значение в строке и колонке Если ТипЗнч(Запрос[СтрокаДанных.НазваниеРеквизита])=Тип("Число") Тогда // Установить формат для типа Число Лист.Cells(СтрокаЛиста, Колонка).NumberFormat = "0,00"; Лист.Cells(СтрокаЛиста, Колонка).Value = Формат(Запрос[СтрокаДанных.НазваниеРеквизита],"ЧГ=0"); иначе // Для всех других типов установим формат "Текстовый" Лист.Cells(СтрокаЛиста, Колонка).NumberFormat = "@"; Лист.Cells(СтрокаЛиста, Колонка).Value = Формат(Запрос[СтрокаДанных.НазваниеРеквизита]); КонецЕсли; исключение // в случае ошибки вывести номер строки и колонки Сообщить("Ошибка установки значения для: " + Запрос[СтрокаДанных.НазваниеРеквизита]); Сообщить("Стр: " +СтрокаЛиста+ " Кол: " + Колонка+ " Рек: " + СтрокаДанных.НазваниеРеквизита); КонецПопытки; Колонка = Колонка + 1; КонецЕсли; КонецЦикла; СтрокаЛиста = СтрокаЛиста + 1; Состояние("Экспорт из 1С в Excel " + СтрокаЛиста); КонецЦикла; // Сохраним созданную книгу в файл xls Книга.SaveAs(имяФайла); // Обязательно закроем соединение с COM объектом для освобождения памяти ТекстДок.Quit(); ТекстДок.Записать(ФайлВыгрузки.ПолноеИмя,"windows-1251"); КонецПроцедуры Ругается на СтрокаДанных, хелп!) |
|||
1
Lexey_
14.08.17
✎
10:08
|
(0) на на эту дичь не ругается? "из Запрос.Ссылка цикл"
|
|||
2
Волшебник
модератор
14.08.17
✎
10:09
|
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл ... КонецЦикла; |
|||
3
AlexMee
14.08.17
✎
10:09
|
да! ссылка убрал..
|
|||
4
Ёпрст
14.08.17
✎
10:09
|
(0)
// СтрокаДанных = Запрос.Выполнить().Выбрать().Следующий(); // Для Каждого СтрокаДанных из Запрос.Ссылка цикл СтрокаДанных= Запрос.Выполнить().Выбрать(); Пока СтрокаДанных.Следующий() Цикл Если СтрокаДанных.Выгружать Тогда |
|||
5
Ёпрст
14.08.17
✎
10:10
|
+4
вот этот мусор Пока Запрос.Следующий() Цикл Колонка = 1; Для каждого СтрокаДанных из Запрос цикл тоже выкинь из кода |
|||
6
AlexMee
14.08.17
✎
10:12
|
погодь, пробую..
|
|||
7
AlexMee
14.08.17
✎
10:15
|
СтрокаДанных.Выгружать
ругается на Выгружать |
|||
8
AlexMee
14.08.17
✎
10:24
|
{(1)}: Поле объекта не обнаружено (Выгружать)
|
|||
9
Волшебник
модератор
14.08.17
✎
10:29
|
(8) Программирование — это точная наука, а не гадание на кофейной гуще. Вы должны чётко понимать тип объекта, к которому обращаетесь, а также его состав: свойства и методы.
|
|||
10
AlexMee
14.08.17
✎
14:00
|
не серчайте на мою лень) сам все сделал..
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |