Для того чтобы выгрузить данные из вашей локальной информационной базы и загрузить их в сервис, необходимо:
- Выгрузить данные из локальной информационной базы в файл.
- Создать в сервисе новое приложение, загрузив в него данные из этого файла.
Содержание
- Команда для выгрузки данных в сервис
- Порядок выгрузки данных из локальной информационной базы
- Создание приложения в сервисе с помощью файла выгрузки
- 7.1. Перенос данных с выгрузкой и загрузкой файла xml
- 7.2. Перенос данных из нетиповых конфигураций
- 7.3. Перенос из нескольких информационных баз
- Для новых конфигураций
- В старых конфигурациях
- Выгрузка данных из 1С в XML
- Загрузка справочника из XML
- Учебник по 1С Конвертации данных (редакция 2) Оптимизация
- Новые записи:
Команда для выгрузки данных в сервис
Чтобы выгрузить данные из локальной информационной базы, пользователь, имеющий право на ее администрирование, должен войти в нее и выполнить команду Выгрузить данные для перехода в сервис. Это выполняется с помощью команды меню:
- в большинстве приложений — команда Администрирование — Выгрузить данные для перехода в сервис;
- в приложении «1С:Управление нашей фирмой» — команда Компания — Администрирование — Переход между локальным и сервисным режимами работы — Выгрузить данные для перехода в сервис.
Порядок выгрузки данных из локальной информационной базы
Рассмотрим процесс выгрузки данных для перехода в сервис подробнее на примере приложения «1С:Бухгалтерия 8», ред. 3.0.
- Следует войти в локальную информационную базу, данные которой требуется перенести в сервис.
- Нужно убедиться, что в информационной базе не работают другие пользователи (в «1С:Бухгалтерии 8» список активных пользователей можно вывести командой меню Администрирование — Поддержка и обслуживание— Активные пользователи).
-
Выбрать команду Выгрузить данные для перехода в сервис (в «1С:Бухгалтерии 8» эта команда находится в разделе меню Администрирование):
-
Далее может быть выведено предупреждение о том, что выгрузка может занять продолжительное время. Следует нажать кнопку Продолжить.
-
Если в информационной базе работают другие пользователи, будет выведено сообщение об этом. Нужно попросить этих пользователей завершить работу и повторить попытку выгрузки данных для перехода в сервис.
-
Если в информационной базе не работают другие пользователи, начнется процесс выгрузки данных. При этом отображается окно, сообщающее о том, что выполняемое действие может быть длительным.
-
После того, как архив с данными приложения будет сформирован, будет выведен запрос Сохранить как.
В этом запросе следует:
- выбрать каталог для сохранения файла;
- задать имя сохраняемого файла (если предложенное по умолчанию имя не устраивает);
- нажать кнопку Сохранить.
Создание приложения в сервисе с помощью файла выгрузки
После создания файла выгрузки можно создать в сервисе новое приложение, загрузив в него данные из файла выгрузки. Как это делается, описано в статье .
Стоит следующая задача. В рабочей базе неведомым образом очистились данные реквизита НомерСчета у справочника БанковскиеСчета, необходимо восстановить данные. В копии эти данные имеются. Так что задача проста, выгрузить данные в XML из копии и загрузить эти данные в рабочую базу. Решил использовать ЗаписьXML и ЧтениеXML, так как решение задачи при помощи этих методов показалось мне самым быстрым способом.
Так как операция одноразовая, то путь к файлу можно было бы указать сразу в коде, но решил, что хорошо было бы выбирать файл, в который выгружать данные и файл, из которого эти данные, соответственно, загружать. И тут столкнулся с очевидной проблемой: выбираю файл на клиенте, на сервере этого файла нет. ЗаписьXML доступна на клиенте, но нельзя передать на сервер. Поэтому очевидное решение — надо использовать временное хранилище, куда помещать файл на клиенте, а на сервере из временного хранилища мы уже будет получать этот файл, заполнять его и снова помещать в хранилище, чтобы записать его на клиенте.
Выгрузка в XML:
Клиент: Выбрать файл — Поместить файл во временное хранилище
Сервер: Получить файл из временного хранилища — записать файл в каталог временных файлов — заполнить файл данными — поместить файл во временное хранилище- удалить файл из каталога временных файлов
Клиент: Получить файл из временного хранилище — записать файл
Загрузка из XML:
Клиент: Выбрать файл — Поместить файл во временное хранилище
Сервер: Получить файл из временного хранилища — записать файл в каталог временных файлов — загрузить данные — удалить файл из каталога временных файлов
&НаКлиенте Процедура ВыгрузитьСчета(Команда) //Открываем форму выбора каталога для сохранения файла ОписаниеОповещения = Новый ОписаниеОповещения(«ПослеВыбораКаталогаСохраненияФайла», ЭтаФорма); ОткрытьФорму(«ВнешняяОбработка._ГУОВ_ВыгрузкаЗагрузкаБанковскихСчетовXML.Форма.ФормаВыбораФайла», Новый Структура(«Направление», «Выгрузка»),ЭтаФорма,,ВариантОткрытияОкна.ОтдельноеОкно,, ОписаниеОповещения, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); КонецПроцедуры &НаСервереБезКонтекста Функция ВыгрузитьСчетаНаСервере(АдресХранилища, ИмяФайла) //Получаем из временного хранилища файл, который будем заполнять ДД = ПолучитьИзВременногоХранилища(АдресХранилища); //Запишем временный файл в каталог временных файлов Путь = КаталогВременныхФайлов(); ДД.Записать(Путь+ИмяФайла); Запрос = Новый Запрос; Запрос.Текст = «ВЫБРАТЬ | БанковскиеСчета.Ссылка, | БанковскиеСчета.НомерСчета, | БанковскиеСчета.Наименование |ИЗ | Справочник.БанковскиеСчета КАК БанковскиеСчета |ГДЕ | БанковскиеСчета.ЭтоГруппа | И НЕ БанковскиеСчета.ПометкаУдаления»; РезультатЗапроса = Запрос.Выполнить().Выгрузить(); ЗаписьXML = Новый ЗаписьXML; ЗаписьXML.ОткрытьФайл(Путь+ИмяФайла); ЗаписьXML.ЗаписатьОбъявлениеXML(); ЗаписьXML.ЗаписатьНачалоЭлемента(«Справочник»); Счетчик = 0; Для каждого Строка Из РезультатЗапроса Цикл Если ЗначениеЗаполнено(Строка.НомерСчета) Тогда ЗаписьXML.ЗаписатьНачалоЭлемента(«Элемент»); ЗаписьXML.ЗаписатьАтрибут(«Ссылка», ЗначениеВСтрокуВнутр(Строка.Ссылка)); ЗаписьXML.ЗаписатьАтрибут(«Наименование», Строка.Наименование); ЗаписьXML.ЗаписатьАтрибут(«НомерСчета», Строка.НомерСчета); ЗаписьXML.ЗаписатьКонецЭлемента(); Счетчик = Счетчик + 1; КонецЕсли; КонецЦикла; Сообщить(«» + Счетчик); ЗаписьXML.ЗаписатьКонецЭлемента(); ЗаписьXML.Закрыть(); //После заполнения файла помещаем его во временное хранилище ДвД = Новый ДвоичныеДанные(Путь+ИмяФайла); АдресВрХранилищца = ПоместитьВоВременноеХранилище(ДвД); УдалитьФайлы(Путь, ИмяФайла); Возврат АдресВрХранилищца; КонецФункции &НаКлиенте Процедура ЗагрузитьСчета(Команда) //Открываем форму выбора файла ОписаниеОповещения = Новый ОписаниеОповещения(«ПослеВыбораКаталогаСохраненияФайла», ЭтаФорма); ОткрытьФорму(«ВнешняяОбработка._ГУОВ_ВыгрузкаЗагрузкаБанковскихСчетовXML.Форма.ФормаВыбораФайла», Новый Структура(«Направление», «Загрузка»),ЭтаФорма,,ВариантОткрытияОкна.ОтдельноеОкно,, ОписаниеОповещения, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); КонецПроцедуры &НаСервереБезКонтекста Процедура ЗагрузитьСчетаНаСервере(АдресХранилища, ИмяФайла) //Получаем файл из хранилища и записываем его в каталог временных файлов ДД = ПолучитьИзВременногоХранилища(АдресХранилища); Путь = КаталогВременныхФайлов(); ДД.Записать(Путь+ИмяФайла); Чтение = Новый ЧтениеXML; Каталог = КаталогВременныхФайлов(); ИмяФайла = Путь+ИмяФайла; Чтение.ОткрытьФайл(ИмяФайла); Счетчик = 0; НачатьТранзакцию(); Пока Чтение.Прочитать() Цикл Если Чтение.Имя = «Элемент» Тогда Ссылка = ЗначениеИзСтрокиВнутр(Чтение.ПолучитьАтрибут(«Ссылка»)); НомерСчета = Чтение.ПолучитьАтрибут(«НомерСчета»); Наименование = Чтение.ПолучитьАтрибут(«Наименование»); Если ЗначениеЗаполнено(Ссылка.НомерСчета) Тогда Продолжить; КонецЕсли; Попытка СчетОбъект = Ссылка.ПолучитьОбъект(); СчетОбъект.НомерСчета = НомерСчета; СчетОбъект.Записать(); Счетчик = Счетчик + 1; Исключение Сообщить(«» + Наименование); КонецПопытки; КонецЕсли; КонецЦикла; ЗафиксироватьТранзакцию(); Чтение.Закрыть(); УдалитьФайлы(Путь, ИмяФайла); КонецПроцедуры // <Описание процедуры> // // Параметры: // ПараметрыОбработки — Структура — направление выгрузки и каталог либо файл // &НаКлиенте Процедура ПослеВыбораКаталогаСохраненияФайла(ПараметрыОбработки, Параметр2) Экспорт //Общая процедура обработки выбора для выгрузки/загрузки Если ПараметрыОбработки = Неопределено Тогда Возврат; КонецЕсли; Если ПараметрыОбработки.Направление = «Выгрузка» Тогда //Создание файла xml в выбранном каталоге ИмяФайла = «unloading.xml»; ПолноеИмяФайла = ПараметрыОбработки.КаталогФайл + «\» + ИмяФайла; ЗаписьXML = Новый ЗаписьXML; ЗаписьXML.ОткрытьФайл(ПолноеИмяФайла); ЗаписьXML.Закрыть(); Сообщить(«Создан файл выгрузки: » + ПолноеИмяФайла); //Помещаем файл во временное хранилище ДД = Новый ДвоичныеДанные(ПолноеИмяФайла); Адрес = ПоместитьВоВременноеХранилище(ДД); //На сервере осуществляем заполнение файла АдресХранилища = ВыгрузитьСчетаНаСервере(Адрес, ИмяФайла); //Получаем из хранилища заполненный файл и записываем его на клиентском компьютере ДвД = ПолучитьИзВременногоХранилища(АдресХранилища); ДвД.Записать(ПолноеИмяФайла); Иначе //Загружаем данные из xml ПолноеИмяФайла = ПараметрыОбработки.КаталогФайл; //Помещаем файл во временное хранилище ДД = Новый ДвоичныеДанные(ПолноеИмяФайла); Адрес = ПоместитьВоВременноеХранилище(ДД); //Обрабатываем файл на сервере ЗагрузитьСчетаНаСервере(Адрес, ПолноеИмяФайла); КонецЕсли; КонецПроцедуры // ПослеВыбораКаталогаСохраненияФайла()
1С:Предприятие 8.2 /
Установка 1С:Предприятие 8.2
В каких случаях нужна выгрузка данных из 1С 8.2? Наиболее частые случаи, встречающиеся на практике:
-
Создание резервной копии данных в 1С
-
Создание копии базы, хранящейся на сервере
-
Перенос данных с одного компьютера на другой
-
Сохранение данных для переустановки ОС.
Для выгрузки данных из 1С 8.2 необходимо выбрать свою базу данных и запустить программу в режиме Конфигуратор.
Выбираем в меню Администрирование команду » Выгрузить информационную базу «
Указываем как сохраним файл с выгрузкой – это может быть папка с резервными копиями, рабочий стол или флешка.
По окончанию процесса выгрузки отобразится соответствующие сообщение.
Для переноса данных на другой компьютер необходимо на нем выполнить загрузку данных.
Нас находят: как сохранить базу 1с 8 2 на флешку, как скопировать базу 1с 8 2 на флешку, как выгрузить базу 1с 8 2 на флешку, как выгрузить базу 1с на флешку, как скачать базу 1с на флешку, как скопировать базу 1с 8 на флешку, как сохранить 1с на флешку, как сохранить базу 1с 8 3 на флешку, как скопировать базу 1с на флешку, как скопировать базу 1с 8 3 на флешку
Фирма «1С» в первую очередь рекомендует использовать методику автоматического переноса данных непосредственно из исходной информационной базы (см. главу 2 «Перенос данных»), так как она обеспечивает корректный перенос учетных данных и сокращает время перехода на новую программу. Однако бывают ситуации, когда применить эту методику не представляется возможным, например, в случае существенного изменения исходной конфигурации. В таких случаях предлагается использовать другие способы переноса, которые рассматриваются в данной главе.
7.1. Перенос данных с выгрузкой и загрузкой файла xml
7.1.1. Выгрузка данных в файл
Выгрузку в файл рекомендуем применять только в случае, если перенос данных непосредственно из информационной базы невозможен.
Если необходимо выгрузить только часть данных исходной информационной базы, то воспользуйтесь последовательностью действий, описанной в следующем параграфе.
Перед выгрузкой необходимо проверить корректность данных исходной информационной базы. Порядок проверки описан в главе 1 «Проверка данных до переноса».
Рассмотрим выгрузку данных в файл на примере переноса данных из информационной базы 1С:Бухгалтерии 7.7. Порядок действий при других вариантах переноса не меняется.
Перенос данных выполняется поэтапно. Перед началом переноса убедитесь, что исходная информационная база закрыта и в ней не работают пользователи.
Этап 1. Резервное копирование
Выполним резервное копирование информационной базы конфигурации Бухгалтерский учет редакции 4.5.
Этап 2. Выгрузка данных
Запустим 1С:Бухгалтерию 7.7.
Перенос данных осуществляется с помощью файлов, которые находятся в подкаталоге ExtForms (1SBDBExtForms):
- V77Exp.ert – обработка выгрузки данных из конфигурации Бухгалтерский учет, редакция 4.5;
- Acc77_80.xml – правила конвертации данных, используемые обработкой V77Exp.ert.
Правила переноса исходной информационной базы должны быть актуальными на момент переноса. Актуальные правила всегда следует получать из 1С:Бухгалтерии 8. Для этого выполним следующие действия:
- Запустим 1С:Бухгалтерию 8.
- Откроем справочник Конвертация из информационных баз 1С:Предприятия 7.7 (меню Операции ‑ Справочники ‑ Конвертация из информационных баз 1С:Предприятия 7.7).
- Выберем конфигурацию исходной информационной базы.
- Нажмем кнопку Записать файлы конвертации на диск. Откроется дерево каталогов.
- В открывшемся дереве каталогов выберем подкаталог ExtForms (1SBDBExtForms) и в нем файл правил переноса Acc77_80. xml исходной информационной базы.
- Нажмем кнопку Open – файл правил переноса исходной информационной базы будет заменен на актуальный файл.
После обновления правил переноса можно приступать к выгрузке данных. Для этого необходимо воспользоваться помощником перехода. Нажмем кнопку Переход на 1С:Бухгалтерию 8 панели инструментов программы
Шаг 1. Начало работы с помощником
Нажмем кнопку О преимуществах 1С:Бухгалтерии 8, чтобы ознакомиться с преимуществами перехода.
Шаг 2. Проверка обновлений
Для проверки наличия обновлений нажмем кнопку Проверить наличие обновлений.
При наличии диска ИТС можно сразу обновить конфигурацию. Далее программу необходимо будет закрыть, при повторном запуске в режиме 1С:Предприятие работа с помощником продолжается с момента остановки.
Шаг 3. Настройка периода выгрузки
Выберем период выгрузки.
Для этого установим переключатель на одном из следующих значений:
- Остатки на начало года – если остатки переносятся на начало года;
- Остатки на начало года и обороты за период – если остатки переносятся в середине года.
В поле Период укажем период переноса. Например, если выгрузка формируется на 01.01.2009, то установим переключатель Остатки на начало года, в поле Период выберем – 2009 г.
Шаг 4. Адрес файла выгрузки
В поле Выгружаемые данные будут записаны в файл отображается расположение файла выгрузки.
Шаг 5. Выгрузка данных
Нажмем Выгрузить для выполнения выгрузки данных. В результате выгрузки будет создан файл в формате XML.
Рекомендуется установить флажок Сформировать оборотно-сальдовую ведомость. В этом случае после окончания выгрузки программа автоматически сформирует отчет Оборотно-сальдовая ведомость. Используйте отчет для проверки загруженных данных.
7.1.2. Неполная (частичная) выгрузка данных в файл
Под неполной (частичной) выгрузкой понимается перенос только ряда объектов информационной базы. Для этого нужно воспользоваться универсальной выгрузкой данных.
Откроем универсальную выгрузку (меню Сервис ‑ Дополнительные возможности).
В открывшемся окне выберем пункт Выгрузка данных для 1С:Бухгалтерии 8.
Далее необходимо заполнить параметры универсальной выгрузки данных.
Укажем параметры выгрузки:
- Имя файла правил – выберем файл правил конвертации данных;
- Имя файла данных – укажем файл, в который будут выгружены данные в формате .xml;
- Дата начала, Дата окончания – укажем период выгрузки. Если перенос осуществляется на начало года, то в поле Дата начала и Дата окончания необходимо указать одинаковую дату. Например, если перенос осуществляется на начало 2009 года, то нужно указать дату начала и дату окончания – 01.01.2009;
- Правила выгрузки данных – нажмем кнопку Загрузить правила обмена для заполнения табличной части Правила выгрузки данных. По тем разделам, по которым выгрузка не производится, снимем флажки. Например, если необходимо перенести только данные справочника Банковские счета и Банки, то установим флажки Банки и Банковские счета в табличной части Правила выгрузки данных.
Нажмем Выгрузить для выполнения выгрузки данных.
7.1.3. Загрузка данных из файла
Запустим 1С:Бухгалтерию 8.
Дополнительные настройки в информационной базе 1С:Бухгалтерии 8 не требуются. Настройки параметров учета для корректного переноса данных будут установлены в информационной базе по умолчанию.
Необходимо воспользоваться помощником перехода (меню Сервис – Перенос данных из информационных баз 1С:Предприятия 7.7).
Шаг 1. Выбор варианта загрузки данных
Выберем пункт Загрузить данные из файла.
Шаг 2. Выбор файла загрузки
Выберем в поле Путь к файлу данных файл загрузки.
После выбора файла в разделе Описание загружаемых данных отображается информация о конфигурации, номере релиза, организации, периоде и дате выгрузки данных из исходной информационной базы.
Нажмем кнопку Далее для выполнения загрузки.
Шаг 3. Загрузка
Загрузка данных и их проверка осуществляются автоматически.
- загрузка данных,
- проведение загруженных документов,
- проверка загруженных документов.
В поле Выполнение отображается индикатор выполнения загрузки в процентах. Ниже приводится наименование исходной информационной базы.
Внимание!
Если загрузка осуществляется в программный продукт базовой версии, то ИНН и КПП организации в 1С:Бухгалтерии 8 будут заменены на ИНН/КПП организации исходной информационной базы.
Шаг 4. Результат переноса
Если перенос данных прошел успешно, выводится строка: «Перенос прошел успешно!».
Если используется версия ПРОФ, можно сразу приступить к переносу информационной базы или данных из файла, нажав кнопку Продолжить.
Если требуется вернуться к началу и изменить вариант переноса данных, нужно нажать кнопку В начало.
Кнопка Завершить используется для закрытия формы.
Если используется базовая версия, перенос данных окончен, следует нажать кнопку Завершить для закрытия формы.
Если при переносе возникли ошибки, то по ссылке Информация о возникших ошибках открывается информационное сообщение об ошибке. После устранения ошибки нужно повторить перенос данных (кнопка Повторить).
7.2. Перенос данных из нетиповых конфигураций
В данном параграфе приводятся общие рекомендации для всех конфигураций.
Если в конфигурацию исходной информационной базы вносились изменения, то для корректного переноса данных следует воспользоваться следующей последовательностью действий:
1. Открыть конфигурацию Конвертация данных, которая размещена на диске ИТС.
2. В конфигурацию Конвертация данных загрузить типовые правила переноса данных исходной информационной базы.
3. Обновить описания конфигурации исходной информационной базы.
4. Вручную скорректировать данные конфигурации Конвертация данных в соответствии с изменениями, которые вносились в типовую конфигурацию.
Ознакомиться с подробной инструкцией о порядке работы с конфигурацией Конвертация данных можно на диске ИТС.
Если в план счетов исходной информационной базы 1С:Бухгалтерии 7.7, 1С:УСН 7.7 добавлены счета, субсчета, то данные по счетам и субсчетам автоматически не перенесутся. Для переноса данных по таким счетам добавим счета в План счетов 1С:Бухгалтерии 8. В этом случае остатки на начало года введем документом Ввод начальных остатков, обороты – документом Операция (бухгалтерский и налоговый учет).
7.3. Перенос из нескольких информационных баз
В 1С:Бухгалтерии 8 версии ПРОФ поддерживается возможность ведения учета нескольких организаций в одной информационной базе. При этом можно использовать общие справочники для всех организаций.
При переносе данных из нескольких информационных баз необходима синхронизация данных (элементы справочников не должны дублироваться).
Общие правила синхронизации:
- Структура (иерархия) справочников исходных информационных баз должна совпадать, т. е. количество уровней справочника и наименование папок каждого из уровней исходных информационных баз должны быть одинаковы.
- Перед выгрузкой данных обязательно нужно проверить реквизит Наименование справочников. Реквизит Наименование используется в качестве основного реквизита синхронизации для большинства справочников.
- В 1С:Бухгалтерии 8 у справочников есть реквизиты, которые в конфигурации на платформе 1С:Предприятия 7.7 отсутствуют. Однако эти данные необходимы для корректной синхронизации объектов. Для этого при переносе реквизиты заполняются некими предопределенными значениями (сведениями об информационной базе, источнике и типе выгружаемых данных) в зависимости от контекста выгружаемых данных. Например, при переносе элементов справочника Основные средства в поле Комментарий формируется ключевая строка, содержащая ИНН организации и инвентарный номер объекта.
При загрузке данных производится синхронизация справочников: проверяется, был ли ранее загружен элемент или необходимо добавить новый элемент. Проверка осуществляется путем сравнения реквизитов загружаемого элемента с реквизитами уже загруженного элемента. Реквизиты проверки (синхронизации) для справочников могут различаться. Реквизиты синхронизации для справочников при переносе из различных программ приведены в таблицах.
Универсальная обработка «Выгрузка и загрузка данных XML» производит полную или частичную выгрузку данных информационной базы в файл в формате XML. Впоследствии этот файл может быть загружен в информационную базу с помощью этой же обработки. Формат файла выгрузки отличается от формата файла, создаваемого при выгрузке по плану обмена, заголовочной частью.
Обработка может использоваться только в тех случаях, когда информационная база, в которой осуществлялась выгрузка данных, и та, в которой данные загружаются, являются однородными (конфигурации идентичны, данные могут различаться), либо все выгружаемые объекты практически полностью идентичны по составу и типам реквизитов и табличных частей, свойствам «ведущего» объекта метаданных и так далее.
Использование этой обработки возможно, например, для создания полной или частичной резервной копии данных, осуществления обмена данными между информационными базами, а также как вспомогательный инструмент при восстановлении сбойных информационных баз.
Обработка поддерживает выгрузку данных с возможностью задания отбора по периоду. Также реализована проверка объектов на наличие недопустимых символов при обмене через XML.
С уважением, Владимир Милькин (преподаватель школы 1С программистов и разработчик обновлятора).
Подписывайтесь и получайте новые статьи и обработки на почту (не чаще 1 раза в неделю).
Вступайте в мою группу ВКонтакте, Одноклассниках, Facebook или Google+ — самые последние обработки, исправления ошибок в 1С, всё выкладываю там в первую очередь.
Как помочь сайту: расскажите (кнопки поделиться ниже) о нём своим друзьям и коллегам. Сделайте это один раз и вы внесете существенный вклад в развитие сайта. На сайте нет рекламы, но чем больше людей им пользуются, тем больше сил у меня для его поддержки.
Нажмите одну из кнопок, чтобы поделиться:
Простой способ выгружать из информационной базы все данные по организации (или списку организаций) в другую базу.
В этом уроке научимся легко и просто выгружать из 1С данные по конкретной организации (или удалять). Для выполнения задачи воспользуемся функциональностью распределенных информационных баз.
Для новых конфигураций
В программах, работающих на управляемом интерфейсе (Бухгалтерия 3.0, Торговля 11, Зарплата 3.1 и т.п.) открываем синхронизацию данных:
Устанавливаем использование синхронизации и открываем настройки:
Создаем новую настройку с типом РИБ с фильтрами:
Указываем произвольный каталог обмена (произвольно, он нам все равно не понадобится):
Указываем префикс текущей базы и префикс базы-приемника (любые произвольные две буквы или цифры), потом открываем правила выгрузки данных:
Вот тут то мы и настраиваем отбор по нужной организации (дополнительно надо указать подразделения, по которым будут выгружаться данные):
В списке можем выбрать как одну, так и несколько организаций:
Если вам необходимо удалить из базы данные по какой-то организации, тогда необходимо выбрать все остальные организации, и в результате получится нужная вам база (рабочую базу подмените новой).
Видим, что описание настройки изменилось:
На следующем этапе программе предлагает создать начальный образ (именно это нам и нужно):
Обязательно указываем путь к будущей базе и жмем Создать начальный образ:
По окончании процесса появится такое сообщение:
Теперь в стартовое окно 1С добавляем файловую базу, указываем путь, в который сохранился начальный образ. Запускаем конфигурацию.
При открытии видим окно настройки распределенной информационной базы. Это нам не нужно, отменяем:
Затем скачиваем эту обработку, открываем ее в этой базе и нажимаем Выполнить:
Все, база готова к работе. В нее перенесены все справочники, а также документы по выбранной организации:
В исходной базе не забудьте отключить синхронизацию (если включили специально для этой задачи).
В старых конфигурациях
В конфигурациях 1С предыдущего поколнения, работающих на обычном интерфейсе (Бухгалтерия 2.0, ЗУП 2.5, Торговля 10.3) сначала открываем список планов обмена:
Выбираем вариант По организации:
Создаем новый узел плана обмена:
Указываем код, наименование и выбираем организацию (или несколько), данные по которой необходимо выгрузить:
После сохранения узла создаем начальный образ базы:
Указываем адрес базы:
По окончании процесса появится такое сообщение:
Новую базу также добавляем в стартовое окно 1С, запускаем ее и в ней выполняем эту обработку. Все, база готова к работе.
Наверное, каждый специалист по 1С сталкивался с ситуацией необходимости перенести данные из одной информационной базы в другую. В том случае, когда конфигурации разные, приходится писать правила конвертации данных. Данные правила создаются в конфигурации 1С «Конвертация данных».
Так же данные можно переносить при помощи . Во многих конфигурациях 1С 8.3 есть типовой функционал для настройки синхронизации данных между различными конфигурациями и бесшовная интеграция с 1С Документооборот.
Но когда данные необходимо перенести данные между абсолютно идентичными конфигурациями, можно упростить себе задачу и воспользоваться стандартной обработкой выгрузки и загрузки через XML. Обратите внимание, что такой способ, как и конвертация данных сопоставляет между собой объекты по уникальному идентификатору (GUID), а не по наименованию.
Скачать данную обработку можно на диске ИТС, либо по ссылкам:
Она является универсальной и подойдёт для любой конфигурации.
Рассмотрим пример выгрузки справочника «Номенклатура» из одной информационной базы 1С 8.3 Бухгалтерия 3.0 в другую. Обязательным условием будет отбор по родителю (группе) «Деревообработка».
Выгрузка данных из 1С в XML
Зайдите в ту информационную базу, откуда будут выгружаться данные (источник). Обязательно проверьте их, предусмотрев все возможные условия во избежание возникновения нежелательных последствий.
Откройте обработку выгрузки и загрузки данных XML (Ctrl+O).
Нас интересует вкладка «Выгрузка». Первым делом укажите имя файла, в который будут выгружены данные и путь для сохранения. В данном случае данные выгружаются «В файл на сервере».
В шапке обработки настраивается период, по которому будет осуществляться отбор. Так же, для периодических регистров можно указать способ применения отбора по периоду. В случае необходимости выгрузки движений вместе с документами, устанавливается соответствующий флаг. В данном случае мы перегружаем справочник, поэтому в шапке ничего настраивать не нужно.
Перейдем к выбору данных для выгрузки. В табличной части формы обработки отметьте флажками те объекты конфигурации, которые вам нужно перенести.
Колонка «Выгружать при необходимости» означает, необходимо ли перегружать данный объект, если на него ссылается реквизит перегружаемого нами справочника. Например, позиция перегружаемой вами номенклатуры имеет такую единицу измерения, которой нет в базе – приемнике. Если напротив справочника с единицами измерения будет установлен флаг в колонке «Выгружать при необходимости», создастся новая позиция. В противном случае в качестве значения реквизита будет надпись «» и его уникальный идентификатор.
В простом случае без отборов настройка перегрузки номенклатуры будет выглядеть следующим образом.
В данном примере нужно отобрать только ту номенклатуру, которая находится в папке «Деревообработка».
Аналогичная обработка для 8.2 позволяет в удобной форме устанавливать отборы для каждого объекта конфигурации. В 8.3, к сожалению, такого функционала нет. Одним из вариантов выхода в данной ситуации будет отбор необходимых позиций на вкладке «Дополнительные объекты для выгрузки».
Добавить объекты здесь можно как вручную (кнопка «Добавить»), так и запросом («Добавить запросом…»). При большом их количестве предпочтительнее второй вариант.
В данном случае запрос будет следующим. Заполните параметры, выполните запрос, проверив данные, и нажмите на кнопку «Выбрать результат».
После того, как вы указали все необходимые объекты и дополнительные элементы для выгрузки, нажмите на кнопку «Выгрузить данные». Они попадут в XML файл, имя и путь нахождения которого указывали ранее. Результаты данной операции отобразятся в сообщениях.
В данном примере необходимо было выгрузить только 3 позиции, но выгрузилось пять. Всё потому, что напротив справочника «Номенклатура» в колонке «Выгружать при необходимости» был установлен флаг. Вместе с нужными позициями перегрузились их родители.
Загрузка справочника из XML
После успешной выгрузки данных из конфигурации – источника в XML файл, откройте базу – приемник. Структура объектов и их реквизитов должны совпадать между собой. В данном случае перенос осуществляется между двумя типовыми конфигурациями 1С:Бухгалтерия 3.0.
Откройте обработку в базе – приемнике. Данная обработка используется как для выгрузки, так и для загрузки данных. Перейдите на вкладку «Загрузить» и укажите путь к XML файлу, в который ранее были выгружены данные. После этого нажмите на кнопку «Загрузить данные».
Результат загрузки отобразится в сообщениях. В нашем случае всё прошло успешно.
Справочник «Номенклатура» в базе – приемнике не был заполнен. Теперь в нем пять элементов: три номенклатурных позиции и две группы.
Последние изменение: 01.09.2015
Выберите уточнение:
Универсальный обмен данными предназначен для загрузки и выгрузки данных в файл в формате XML между разными конфигурациями 1С по настроенным правилам обмена.
Номенклатура, штрихкоды, основные средства и т.д. будут загружаться из стандартных конфигураций 1С в базу Клеверенс: Учет имущества, и наоборот, из базы Клеверенс: Учет имущества в рабочую базу клиентов будет выгружаться инвентаризация, номенклатура, подразделения и т.д.
Режим работы
Обработка имеет два режима работы:
На клиенте. При использовании этого режима файлы правил и загружаемых данных передаются с клиента на сервер, а файл выгружаемых данных передается с сервера на клиент. Пути к этим файлам, находящимся на клиенте, необходимо указывать в диалоговом окне непосредственно перед выполнением действия.
На сервере. В этом режиме файлы не передаются на клиент и пути к ним необходимо указывать на сервере.
Файл внешней обработки и файлы протоколов обмена всегда должны находиться на сервере вне зависимости от режима работы.
Выгрузка данных
Порядок выгрузки данных:
- выбираем правила обмена — указываем файл XML правил обмена, для каждой конфигурации 1С свои правила (постепенно будут добавляться в сборку Клеверенс: Учет имущества);
- читаем правила обмена;
- после прочтения заполнятся выгружаемые данные, можно указать, какие объекты будут выгружаться;
- выбираем файл XML (можно создать пустой файл — указываем название файла и он создастся автоматически), в который загрузятся данные или информационную базу приемник;
- выгружаем данные.
Выгрузка в файл обмена.
Указываем имя файла, в который будет осуществляться выгрузка данных. Результирующий файл с выгруженными данными может быть сжат.
Подключение и выгрузка данных в ИБ приемник.
Выбираем тип информационной базы:
- На данном компьютере или на компьютере в локальной сети;
- На сервере 1С:Предприятие.
Выбираем платформу 1С и каталог информационной базы для подключения.
На закладке «Выгружаемые данные» можно выбрать те типы объектов, которые должны выгружаться, настроить отборы для выборки объектов, либо указать узел обмена данными, для которого нужно выгружать данные.
На закладке «Параметры выгрузки» можно указать дополнительные параметры выгрузки данных.
На закладке «Комментарий» можно написать произвольный текст-комментарий, включаемый в файл обмена.
Для осуществления загрузки данных необходимо указать имя файла, из которого будет осуществляться загрузка данных, если при выгрузке вводился пароль для сжатия, то нужно указать его для распаковки.
- «Использовать транзакции» — возможность настроить загрузку данных в транзакции (транзакция — логически связанная, неделимая последовательность действий). Для этого необходимо установить флажок «Использовать транзакции» и указать количество элементов в одной транзакции при загрузке.
- «Загружать данные в режиме обмена» (ОбменДанными.Загрузка = Истина) – если флаг установлен, то загрузка объектов будет выполняться с установленным признаком загрузки. Это означает, что при записи объектов в базу данных будут отключены все платформенные и прикладные проверки. Исключение составляют документы, которые записываются в режиме проведения или отмены проведения. Проведение и отмена проведения документа выполняется всегда без установки режима загрузки, т.е. проверки будут выполняться.
- «Записывать в информационную базу только измененные объекты» – если флаг установлен, то производится запись только измененных объектов в информационную базу. Если объект изменен не был, то при загрузке из файла обмена он не будет перезаписан.
- «Объекты по ссылке загружать без пометки удаления».
- «Оптимизированная запись объектов» – если флаг установлен, то включается режим, который позволяет резко сократить количество обращений в информационной базе для записи объектов.
- «Записывать регистры наборами записей» – если флаг установлен, то включается режим, который позволяет записывать изменения в регистрах наборами записей, а не менеджерами записей.
- «Обрезать строки справа» – если флаг установлен, то при загрузке строк обрезаются пробелы справа.
- «Настройка автоматической загрузки данных» — позволяет настроить использование автоматической загрузки (использовать, не использовать, задать вопрос перед выполнением операции).
«Режим отладки обработчиков загрузки» рекомендуется использовать только разработчикам !
Дополнительные настройки
Закладка служит для детальной настройки выгрузки и загрузки данных.
- «Режим отладки» – флаг для задания режима отладки обмена. Если этот флаг установлен, то процесс обмена данными не будет остановлен при возникновении какой-либо ошибки. Обмен завершится до конца с выводом отладочных сообщений в файл протокола обмена. Этот режим рекомендуется использовать при отладке правил обмена.
- «Вывод информационных сообщений в окно сообщений» – если флаг установлен, то в окно сообщений будет выводиться протокол процесса обмена данными.
- «Количество обработанных объектов для обновления статуса» – параметр служит для определения количества обработанных элементов перед изменением строки состояние загрузки/выгрузки
- «Настройки выгрузки данных» – позволяют определить количество элементов обрабатываемых в одной транзакции при выгрузке данных, выгружать и обрабатывать только те объекты, на которые есть права доступа, настроить тип изменения регистрации для выгруженных объектов через планы обмена.
- «Использовать оптимизированный формат для обмена данными (V8 — V8, версия обработки не ниже 2.0.18)» – оптимизированный формат сообщения обмена предполагает наличие узла «ИнформацияОТипахДанных» в заголовке сообщения, в который выгружается информация о типах данных. Это позволяет ускорить процесс загрузки данных.
- «Использовать транзакции при выгрузке для планов обмена» – флаг определяет режим использования транзакций (транзакция — логически связанная, неделимая последовательность действий) при выгрузке данных при выборке изменений на узлах планов обмена. Если флаг установлен, то выгрузка данных будет выполняться в транзакции.
- «Количество элементов в транзакции» – определяет максимальное число элементов данных, которые помещаются в сообщение в рамках одной транзакции базы данных. Если значение параметра равно 0 (значение по умолчанию), то все данные помещаются в рамках одной транзакции. Такой режим является рекомендуемым, так как гарантирует согласованность данных, помещаемых в сообщение. Но при создании сообщения в многопользовательском режиме могут быть конфликты блокировок между транзакцией, в которой данные помещаются в сообщение, и транзакциями, выполняемыми другими пользователями. Для снижения вероятности возникновения таких конфликтов можно задать значение этого параметра, отличное от значения по умолчанию. Чем меньше значение параметра, тем меньше вероятность конфликта блокировок, но выше вероятность помещения в сообщение несогласованных данных.
- «Выгружать объекты на которые есть права доступа» – если флаг установлен, то выборка объектов информационной базы будет выполняться с учетом прав доступа текущего пользователя программы. Это предполагает использование литерала «РАЗРЕШЕННЫЕ» в тексте запроса для выборки данных.
- «Автоматически удалять недопустимые символы из строк для записи в XML» – если флаг установлен, то при записи данных в сообщение обмена недопустимые символы будут удалены. Символы проверяются на соответствие рекомендации XML 1.0.
- «Изменения регистрации для узлов обмена после выгрузки» – поле определяет режим работы с регистрацией изменений данных после завершения выгрузки данных.
Возможные значения:
Не удалять регистрацию – после выгрузки данных регистрация изменений на узле удалена не будет.
Полностью удалить регистрацию для узла обмена – после выгрузки данных регистрация изменений на узле будет полностью удалена.
Удалить регистрацию только для выгруженных метаданных – после выгрузки данных регистрация изменений на узле будет удалена только для объектов метаданных, которые были указаны к выгрузке. - «Протокол обмена» – позволяет настроить вывод информационных сообщений в окно сообщений, ведение и запись в отдельный файл протокола обмена.
- «Имя файла, протокола обмена» – имя файла для вывода протокола процесса обмена данными.
- «Протокол загрузки (для COM — соединения)» – имя файла для вывода протокола процесса обмена данными в базе-приемнике при обмене через COM-соединение. Важно: путь к файлу должен быть доступен с компьютера, на котором установлена база-приемник.
- «Дописывать данные в протокол обмена» – если флаг установлен, то содержимое файла протокола обмена сохраняется, если файл протокола уже существует.
- «Вывод в протокол информационных сообщений» – если флаг установлен, то в протокол обмена будут выводиться сообщения информативного характера, помимо сообщений об ошибках обмена.
- «Открывать файлы протоколов обмена после выполнения операций» – если флаг установлен, то после выполнения обмена данными файлы протоколов обмена будут автоматически открыты для просмотра.
Удаление данных
Закладка нужна только для разработчиков правил обмена. Позволяет удалять из информационной базы произвольные объекты.
Что такое ОбменДанными.Загрузка = Истина, как использовать ОбменДанными.Загрузка.
ОбменДанными.Загрузка — атрибут любого объекта в системе 1С предприятие. Он позволяет обозначить при записи объекта, что необходимо отключить любые проверки (в т.ч проверки на уровне платформы 1С). Сделано это было для того, чтобы избежать конфликтов при обмене данных.
Если Вы разрабатываете свою конфигурацию, во всех проверках правильности данных (например, процедура ПередЗаписью) необходимо первой строкой добавить такую строку:
Получите 267 видеоуроков по 1С бесплатно:
Это является хорошим тоном среди разработчиков 1С.
Контроль записи в стандартных обработках 1С
Если Вы когда-либо пользовались стандартными (например, Поиск и замена значений, Групповая обработка данных, Универсальный обмен данных и т.п), Вы наверное замечали настройку, которая называется обычно «Контроль записи». Эта настройка как раз отвечает за включение/выключение атрибута «ОбменДанными.Загрузка».
Как установить режим ОбменДанными Загрузка
Использовать этот атрибут очень удобно в программном коде, для отключения всех проверок. Например, данный атрибут необходим, если Вам нужно записать объект, но он имеет незаполненные обязательные реквизиты. Это можно также использовать как способ увеличить скорость массовой обработки данных — если Вы отключаете все проверки, система записывает объект быстрее.
Учебник по 1С Конвертации данных (редакция 2) Оптимизация
Правила Выгрузки данных
1. Порядок правил выгрузки данных
Рекомендуется располагать правила выгрузки данных в таком порядке, что бы ссылки зависимых объектов были снизу вверх. то есть самыми первыми должны располагаться правила выгрузки данных, объекты которых ни на кого не ссылаются, затем должны идти правила выгрузки объектов, ссылающихся на первую группу и т.д.
Пример: Нужно выгрузить два справочника Пользователи и Физические лица. Справочник Пользователи имеет реквизит Физ. лицо — ссылка на справочник Физические лица. То есть справочник Пользователи ссылается на справочник Физические лица. Рекомендуемая последовательность правил выгрузки в этом случае: Физические лица, пользователи.
2. Выбирать данные для выгрузки одним запросом
Если в правиле конвертации нет переноса табличных частей и движений, а так же в событиях перед выгрузкой нет прямых обращений к выгружаемому объекту, рекомендуется в правиле выгрузки данных использовать режим «Выбирать данные для выгрузки одним запросом». Этот режим позволит одним запросом получить все выгружаемые данные определенного типа, а не строить отдельные запросы для выгрузки каждого объекта.
Правила Конвертации объектов
3. Использовать быстрый поиск при загрузке
Этот режим выгрузки и загрузки рекомендуется использовать для тех правил конвертации объектов, которые выгружают ссылочные типы общее количество которых сравнительно небольшое (примерно до 1000 элементов), на которые имеется множество ссылок в других объектов.
Пример: Справочник Пользователи. Практически все документы имеют ссылку на этот справочник и количество элементов справочника не превосходит 1000.
4. Не выгружать объекты свойств по ссылкам
Режим позволяет для правила конвертации объектов не выгружать все элементы на которые есть ссылки. Если режим установлен, то при выгрузке будет выгружен сам объект и информация для поиска всех его ссылок, но полная информация о зависимых элементах выгружена не будет. Эта оптимизация может в несколько раз ускорить выгрузку и загрузку данных.
5. Не запоминать выгруженные объекты
Для правил конвертации не ссылочных объектов (регистров) нужно установить флажок «Не запоминать выгруженные объекты», так как ссылаться на строки регистра нельзя, поэтому нет и смысла запоминать те строки регистров, которые были выгружены. Для ссылочных объектов этот флажок, как правило, нужен, что бы оптимизировать повторное обращение для выгрузки одного и того же объекта.
6. Не делать общих обработчиков событий для всех объектов
Не рекомендуется использовать общие обработчики событий перед выгрузкой и загрузкой данных для всех объектов. Обработки выгрузки и загрузки не знают что будет выполняться в этих обработчиках поэтому некоторые оптимизации (например, при загрузке запись только измененных объектов) действовать не будут. Если есть необходимость использовать одни и те же алгоритмы обработки данных при выгрузке и загрузке, то рекомендуется создать новый Алгоритм, а в событиях у нужных объектов его вызывать.
Обработка «Универсальный обмен данными XML»
7. Использовать оптимизированный формат для обмена данными
8. Загружать данные в режиме обмена
Позволяет отказать от излишних проверок на этапе загрузки данных
9. Записывать только измененные объекты
Позволяет производить запись только измененных объектов в информационную базу. Если объект изменен не был, то при загрузке из файла обмена он не будет перезаписан.
10. Оптимизированная запись объектов
Режим позволяет резко сократить количество обращений в информационной базе для записи объектов.
11. Записывать регистры наборами записей
Режим позволяет записывать изменения в регистрах наборами записей, а не менеджерами записей.
12. Обмен данными через COM
Для обмена V8-V8, если информационные базы источника и приемника находятся внутри одной локальной сети, рекомендуется использовать обмен через COM — соединение. Нужно только что бы в конфигурации приемника присутствовала обработка Универсальный обмена данными.
С уважением, Владимир Милькин (преподаватель и разработчик