|
Выгрузка для сайта в CSV формате. | ☑ | ||
---|---|---|---|---|
0
sapravka
11.03.14
✎
20:31
|
Здравствуйте.
Если что не так - прошу сильно не ругать. Делаю обработку в УТ 10.3 для выгрузки на сайт. Запросом выбрал необходимые параметры (которые отбираются по параметрам формы): В каждой строке столбцы: Наименование, артикул, склад и т.д. http://волгалаб.рф/1c/105.jpg В процедуре написал: Процедура КнопкаВыполнитьНажатие(Кнопка) Запрос = Новый Запрос; Запрос.Текст ="ВЫБРАТЬ | ТоварыОрганизаций.Номенклатура.Артикул КАК Артикул, | ТоварыОрганизаций.Количество КАК Количество, | ЦеныНоменклатурыСрезПоследних.Цена КАК Цена |ИЗ | РегистрНакопления.ТоварыОрганизаций КАК ТоварыОрганизаций | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних | ПО ТоварыОрганизаций.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура |ГДЕ | ЦеныНоменклатурыСрезПоследних.ТипЦен = &ТипЦен | И ТоварыОрганизаций.Период <= &Период"; Запрос.УстановитьПараметр("Период", НаДату); Запрос.УстановитьПараметр("ТипЦен", ТипЦен); Результат = Запрос.Выполнить(); ТаблицаЗначений = Результат.Выгрузить(); Разделитель = ";"; Текст = Новый ЗаписьТекста; Для каждого строки из ТаблицаЗначений Цикл ЗаписьТекста = строки.Артикул + Разделитель + строки.Количество + Разделитель + строки.Цена; КонецЦикла; ПолноеИмяФайла=Путь+ ".csv"; Текст = Новый ЗаписьТекста; Текст.Открыть(ПолноеИмяФайла,КодировкаТекста.ANSI); Текст.ЗаписатьСтроку(Текст); Текст.Закрыть(); Сообщить ("Записан файл "+ПолноеИмяФайла); КонецПроцедуры Но в файл выгружается только ЗаписьТекста, а необходимы дынные не выгружаются. Убедительно прошу, подскажите! |
|||
1
shuhard
11.03.14
✎
20:34
|
(0)[Убедительно прошу]
не убедил попробуй ещё раз |
|||
2
KarpovDeniska
11.03.14
✎
20:35
|
Текст.ЗаписатьСтроку(ЗаписьТекста );
|
|||
3
KarpovDeniska
11.03.14
✎
20:38
|
в цикл вставь
|
|||
4
sapravka
11.03.14
✎
20:39
|
(2) написал так:
Процедура КнопкаВыполнитьНажатие(Кнопка) Запрос = Новый Запрос; Запрос.Текст ="ВЫБРАТЬ | ТоварыОрганизаций.Номенклатура.Артикул КАК Артикул, | ТоварыОрганизаций.Количество КАК Количество, | ЦеныНоменклатурыСрезПоследних.Цена КАК Цена |ИЗ | РегистрНакопления.ТоварыОрганизаций КАК ТоварыОрганизаций | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних | ПО ТоварыОрганизаций.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура |ГДЕ | ЦеныНоменклатурыСрезПоследних.ТипЦен = &ТипЦен | И ТоварыОрганизаций.Период <= &Период"; Запрос.УстановитьПараметр("Период", НаДату); Запрос.УстановитьПараметр("ТипЦен", ТипЦен); Результат = Запрос.Выполнить(); ТаблицаЗначений = Результат.Выгрузить(); Разделитель = ";"; Текст = Новый ЗаписьТекста; Для каждого строки из ТаблицаЗначений Цикл ЗаписьТекста = строки.Артикул + Разделитель + строки.Количество + Разделитель + строки.Цена; КонецЦикла; ПолноеИмяФайла=Путь+ ".csv"; Текст = Новый ЗаписьТекста; Текст.Открыть(ПолноеИмяФайла,КодировкаТекста.ANSI); Текст.ЗаписатьСтроку(ЗаписьТекста ); Текст.Закрыть(); Сообщить ("Записан файл "+ПолноеИмяФайла); КонецПроцедуры Но теперь почему то заполнило (выгрузило) только одну строку, а другие не выгрузило |
|||
5
echo77
11.03.14
✎
20:40
|
Заменить:
Текст = Новый ЗаписьТекста; На: Текст = Новый ТекстовыйДокумент; |
|||
6
ДенисЧ
11.03.14
✎
20:40
|
Текст.ЗаписатьСтроку(Текст);
Мда... Это пять... |
|||
7
echo77
11.03.14
✎
20:40
|
(3) В цикле сделай, йопта :-)
|
|||
8
KarpovDeniska
11.03.14
✎
20:42
|
ПолноеИмяФайла=Путь+ ".csv";
Текст = Новый ЗаписьТекста(ПолноеИмяФайла,КодировкаТекста.ANSI); Для каждого строки из ТаблицаЗначений Цикл ЗаписьТекста = строки.Артикул + Разделитель + строки.Количество + Разделитель + строки.Цена; Текст.ЗаписатьСтроку(ЗаписьТекста ); КонецЦикла; Текст.Закрыть(); Сообщить ("Записан файл "+ПолноеИмяФайла); |
|||
9
sapravka
11.03.14
✎
20:48
|
8) Спасибо, заработало!!!
А разрешите еще один вопрос: Хотелось бы что бы последний открытый путь и название файла сохранялось при новом открытии, а не приходилось бы каждый раз выбирать путь и указывать имя файла!!! Для других параметров я написал: Процедура ПриОткрытии() НаДату = ТекущаяДата(); Склад = Справочники.Склады.НайтиПоКоду("000000001"); ТипЦен = Справочники.ТипыЦенНоменклатуры.НайтиПоКоду("000000003"); КонецПроцедуры А что для пути и имени файла необходимо прописать? |
|||
10
Михаил Козлов
11.03.14
✎
20:53
|
(9) Для формы обработки установите флаг "Сохранять значения" и "Восстанавливать при открытии" и укажите, какие значения сохранять.
|
|||
11
Aleksey
11.03.14
✎
20:53
|
Глобальный контекст.СохранитьЗначение (Global context.SaveValue)
Глобальный контекст (Global context) СохранитьЗначение (SaveValue) Синтаксис: СохранитьЗначение(<Имя>, <Значение>) Параметры: <Имя> (обязательный) Тип: Строка. Имя, с которым сохраняется значение, используется для идентификации сохраняемых значений. <Значение> (обязательный) Тип: Произвольный. Сохраняемое значение. Описание: Сохраняет значение для использования не только в текущем, но и в последующих сеансах работы с программой. Значение хранится индивидуально для каждой пары информационная база - пользователь. Например, можно сохранять значения по умолчанию, используемые данным пользователем. Доступность: Толстый клиент. Пример: СохранитьЗначение("СрокИсполненияЗаказа", СрокИсполнения); СохранитьЗначение("СкладПоУмолчанию", МестоХранения); |
|||
12
sapravka
11.03.14
✎
23:16
|
Когда жестко прописал - то открывает указанный путь:
Процедура ПриОткрытии() Путь = "C:\333\12345.csv"; КонецПроцедуры А вот когда для формы обработки установил флаг "Сохранять значения" и "Восстанавливать при открытии" а так же указал какие значения сохранять: http://волгалаб.рф/1c/106.jpg Почему то эти значения не сохраняются. А насчет СохранитьЗначение: Написал так: Процедура ПриОткрытии() СохранитьЗначение("Путь ", Путь); КонецПроцедуры Тоже не сохраняет ... Подскажите пожалуйста, как установить значение, что бы путь и имя файла сохранялся, а не надо его было жестко прописывать в обработке? |
|||
13
Злопчинский
11.03.14
✎
23:31
|
да блин.. можность платформы растет, в вопросы - не меняются...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |