Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
11 Дек 2017, 03:32
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: 8.2 выгрузить счет в xml  (Прочитано 10430 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Chuchi

  • ***
  • Сообщений: 133
  • РЕПУТАЦИЯ: 4
  • КПД: 3%
  • Регистрация: 2011-03-24
  • Сайт: 
  • Профессия: Ученик 1С
Благодаря одной из тем формума нашла как выгружать документы в xml и все отлично если бы я не стала выгружать такой параметр из счета как ОРГАНИЗАЦИЯ
Процедура ВыгрузкаНажатие(Элемент)
ЗаписьXML=Новый ЗаписьXML;
    ЗаписьXML.ОткрытьФайл("c:\document.xml");
    ЗаписьXML.ЗаписатьНачалоЭлемента("Главный");
    //Счет на оплату выбрать за период
Выборка = Документы.СчетНаОплатуПокупателю.Выбрать (ДатаС, КонецДня(ДатаПо));
    Пока Выборка.Следующий () Цикл
        ЗаписьXML.ЗаписатьНачалоЭлемента("Документ");
        ЗаписатьXML(ЗаписьXML, Выборка.ПолучитьОбъект());
        ЗаписьXML.ЗаписатьКонецЭлемента();
    КонецЦикла;
//Выбрать соответствующего счету контрагента
Запрос = Новый Запрос();
Запрос.Текст =
"ВЫБРАТЬ различные
| Контрагент из Документ.СчетНаОплатуПокупателю где Ссылка.Дата между &ДатаС и &ДатаПО  ";
Запрос.УстановитьПараметр("ДатаС", НачалоДня(ДатаС));
Запрос.УстановитьПараметр("ДатаПо", КонецДня(ДатаПо));
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий () Цикл
ОбработкаПрерыванияПользователя();
ЗаписьXML.ЗаписатьНачалоЭлемента("ГруппаОбъектов");
ЗаписьXML.ЗаписатьНачалоЭлемента("Справочник");
ЗаписатьXML(ЗаписьXML, Выборка.Контрагент.ПолучитьОбъект());
ЗаписьXML.ЗаписатьКонецЭлемента();
ЗаписьXML.ЗаписатьКонецЭлемента();
КонецЦикла;
///////////////////////////////////////////////////////////
//Выбрать соответствующую счету организацию///
        ///////////////////////////////////////////////////////////
Запрос2 = Новый Запрос();
Запрос2.Текст =
"ВЫБРАТЬ различные
| Организация из Документ.СчетНаОплатуПокупателю где Ссылка.Дата между &ДатаС и &ДатаПО  ";
Запрос2.УстановитьПараметр("ДатаС", НачалоДня(ДатаС));
Запрос2.УстановитьПараметр("ДатаПо", КонецДня(ДатаПо));
Выборка2 = Запрос2.Выполнить().Выбрать();
Пока Выборка2.Следующий () Цикл
ОбработкаПрерыванияПользователя();
ЗаписьXML.ЗаписатьНачалоЭлемента("ГруппаОбъектов");
ЗаписьXML.ЗаписатьНачалоЭлемента("Справочник");
ЗаписатьXML(ЗаписьXML, Выборка.Организация.ПолучитьОбъект());
ЗаписьXML.ЗаписатьКонецЭлемента();
ЗаписьXML.ЗаписатьКонецЭлемента();
КонецЦикла;
Загрузку тоже брала с форума, она безукаризненно работает пока не подключаю вот этот блок с организацией
Процедура ЗагрузкаНажатие(Элемент)
ДанныеXML = Новый ЧтениеXML;
ДанныеXML.ОткрытьФайл("c:\document.xml");
Пока ДанныеXML.Прочитать() Цикл
ОбработкаПрерыванияПользователя();
Если ВозможностьЧтенияXML(ДанныеXML) Тогда
НовыйОбъект = ПрочитатьXML(ДанныеXML);
НовыйОбъект.ОбменДанными.Загрузка=Истина;
НовыйОбъект.Записать();
КонецЕсли;
КонецЦикла;
ДанныеXML.Закрыть();
Сообщить("Загружено");
КонецПроцедуры
и начинается проблема
{Форма.Форма.Форма(116)}: Ошибка при вызове метода контекста (ОткрытьФайл)
   ДанныеXML.ОткрытьФайл("c:\document.xml");
по причине:

по причине:
Ошибка совместного доступа к файлу 'c:\document.xml'


отладчиком посмотрела на выборке организации пишет ошибка чтения значения
что делать?


Оффлайн has

  • Модератор
  • *****
  • Сообщений: 1308
  • РЕПУТАЦИЯ: 285
  • КПД: 22%
  • Регистрация: 2011-01-28
  • Сайт: 
  • Профессия: Программист 1С
 ДанныеXML.Закрыть();
А ЗаписьXML наверное тоже надо закрывать? Может выгрузку сделали, файл не закрыли.

Оффлайн Chuchi

  • ***
  • Сообщений: 133
  • РЕПУТАЦИЯ: 4
  • КПД: 3%
  • Регистрация: 2011-03-24
  • Сайт: 
  • Профессия: Ученик 1С
у  меня они закрываются просто код выгрузки не скопировала целиком, там после всех полей
   ЗаписьXML.ЗаписатьКонецЭлемента();
   ЗаписьXML.Закрыть();
    Сообщить("Выгружено");   
   

Оффлайн has

  • Модератор
  • *****
  • Сообщений: 1308
  • РЕПУТАЦИЯ: 285
  • КПД: 22%
  • Регистрация: 2011-01-28
  • Сайт: 
  • Профессия: Программист 1С
Запрос не правильный скорей всего, попробуй так
 "ВЫБРАТЬ различные 
    | СчетНаОплатуПокупателю.Организация из Документ.СчетНаОплатуПокупателю КАК СчетНаОплатуПокупателю где СчетНаОплатуПокупателю.Дата между &ДатаС и &ДатаПО  ";

Оффлайн Chuchi

  • ***
  • Сообщений: 133
  • РЕПУТАЦИЯ: 4
  • КПД: 3%
  • Регистрация: 2011-03-24
  • Сайт: 
  • Профессия: Ученик 1С
все равно на загрузке ругается(

Оффлайн has

  • Модератор
  • *****
  • Сообщений: 1308
  • РЕПУТАЦИЯ: 285
  • КПД: 22%
  • Регистрация: 2011-01-28
  • Сайт: 
  • Профессия: Программист 1С
Ну попробуй загрузить другой файл. Либо скопируй этот, либо создай новый.

Оффлайн Chuchi

  • ***
  • Сообщений: 133
  • РЕПУТАЦИЯ: 4
  • КПД: 3%
  • Регистрация: 2011-03-24
  • Сайт: 
  • Профессия: Ученик 1С
Оказывается проблема была из за дополнительного реквизита в выгружаемой базе, в базе приемнике его не было поэтому загрузить не получалось (
Вопрос закрыт


Теги:
 


* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
160 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
55 Сообщений
alex0402
46 Сообщений
andron81_81
44 Сообщений
AIFrame
35 Сообщений
MuI_I_Ika MuI_I_Ika
33 Сообщений
BuhRust
27 Сообщений
Golickoff Golickoff
27 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

  • Точка Гостей: 159
  • Точка Скрытых: 0
  • Точка Пользователей: 0

Нет пользователей онлайн.

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal