Публикации. Публикации Как сделать выгрузку из программы 1с

Довольно часто у пользователей возникает необходимость сохранить данные из 1С 8.3 в файл, к примеру, pdf, Word, Excel и прочие форматы. Например, отправить по электронной почте другому человеку отчет, сделать расчеты в Excel. К сожалению, не все пользователи знают, что выгрузить такие данные из 1С очень просто самостоятельно без посторонней помощи.

Не редко создается необходимость выгрузить список каких – либо данных из табличной части документа, формы списка, журнала документов и т. п. Такие задачи часто единичны, и нецелесообразно привлекать специалиста для написания отчета.

Например, вам нужно получить всю номенклатуру с видом «Материалы» при этом нужны только колонки «Номенклатура» и «Единица».

В том случае, когда необходимо выгрузить данные с их фильтрацией, первым делом, необходимо настроить список в меню «Ещё» табличной части.

В появившемся окне из левой части (доступные поля) необходимо выбрать те, по которым вы будете делать отбор (в данном случае «Вид номенклатуры»). В правой части окна устанавливаются значения параметров отбора. При этом вид сравнения не ограничивается одним лишь равенством.

После того, как был установлен обор, в форме списка справочника «Номенклатура» будут отображаться лишь те позиции, которые подходят под заданное условие.

Следующим шагом будет вывод данного списка в табличный документ.

В меню «Еще» выберите пункт «Вывести список».

Если вам нужно вывести не все колонки, как в нашем примере, то установите «галочки» только на тех, которые необходимы.

В итоге вы получаете, по сути, отчет, который можем сохранить в любой доступный формат. Как это сделать будет рассмотрено ниже. Подобным образом можно выгружать табличные части документов и справочников, данные из журналов документов, форм списков и не только.

Выгрузка отчетов и печатных форм из 1С

Любой отчет, печатную форму, табличный документ (например, который мы получили в нашем примере) в 1С 8.3 можно выгрузить во внешний файл в два клика.

На верхней панели программы находится кнопка сохранения во внешний файл (интерфейс «Такси»). Она будет активна на любых отчетах и печатных формах, где доступно сохранение.

Выгрузка базы данных 1С целиком

Данный способ необходим в тех случаях, когда базу данных 1С нужно выгрузить целиком, например, для создания тестовой копии.

Зайдите в нужную информационную базу в режиме конфигуратора.

В меню «Администрирование» выберите пункт «Выгрузить информационную базу».

Укажите при необходимости другое имя файла и путь для сохранения.

Полученный файл выгружаемых данных с расширением *.dt в дальнейшем очень легко загрузить. Для этого в режиме конфигуратора в меню «Администрирование» выберите пункт «Загрузить информационную базу» и откройте полученный ранее файл *.dt.

В некоторых конфигурациях имеется типовой функционал для обмена данными (например, выгрузка из конфигурации Зарплата и управление персоналом в Бухгалтерию предприятия или из Управления торговлей в Бухгалтерию предприятия, из Зарплата и кадры государственного учреждения в Бухгалтерию государственных учреждений и т.п.).

В случае, если конфигурации разные, приходится создавать правила переноса в конфигурации 1С: Конвертация данных. Также некоторые данные можно загрузить из табличного документа Excel, с помощью обработки .

Для переноса данных между идентичными конфигурациями существует обработка . Для корректной работы обработки база, в которую загружаются данные, должна быть того же релиза, что и база выгруженных данных.

Данная обработка поставляется в составе конфигурации 1С: Конвертация данных 2, а также скачать ее можно с сайта 1С или с диска ИТС.

Это универсальная обработка, которая подходит для любых конфигураций, с ее помощью можно произвести полную или частичную выгрузку данных в формате xml и соответственно загрузить их в другую информационную базу. Примером использования может быть выгрузка и загрузка справочников, обмен данными (выгрузка и загрузка документов) между конфигурациями, выгрузка для восстановления информации при сбое информационной базы.

Рассмотрим принцип работы данной обработки.

Выгрузка данных из 1С 8.3 в xml

Откроем обработку в базе Источнике, т.е. информационной базе, откуда будем выгружать наши данные: меню .

Откроется обработка, в которой необходимо произвести настройку выгрузки.

Данные объектов выгрузки отображены в таблице, где надо отметить, что будем выгружать. При этом у каждого поля стоит отметка Выгружать при необходимости . Это означает, что если выгружаемый объект связан с другими объектами, то при анализе объекта выгрузки программа 1С 8.3 (кнопка ) покажет связанные объекты. При необходимости выгрузки их нужно будет также отметить.

Например, при выгрузке справочника Номенклатура можно загрузить Единицы измерения . При выгрузке справочника Контрагенты или Организации можно выгрузить Банковские счета и Договора . Если их не выгрузить, то при загрузке этих данных не будет, а при переносе документов эти поля окажутся пустыми и в этих полях вместо данных будет надпись <Объект не найден> .

Предусмотрено два варианта выгрузки данных из 1С 8.3 в xml — на клиентский компьютер и в файл на сервере. При установленном переключателе выгрузить данные На клиентский компьютер выгрузка начинается сразу, при выборе варианта В файл на сервере можем указать место выгрузки.

При выгрузке можно установить галочку выгружать в формате FastInfoSet . Данный формат использует альтернативный синтаксис отображения xml-данных, обеспечивает меньший объем файлов и более высокую скорость обработки, чем скорость обработки данных, записанных в обычном xml-формате. Файл этого формата имеет расширение .fi или .finf.

Для примера, в новую созданную базу 1С 8.3 выгрузим справочники Организации , Контрагенты и Номенклатура .

Отметив в списке необходимые для выгрузки объекты, нажимаем кнопку Определить данные, выгружаемые по ссылке и галочками программа 1С 8.3 отметит связанные объекты и при необходимости их также нужно пометить для выгрузки, поэтому отметим также справочники Договоры Контрагентов , Банки и Банковские счета . Затем только нажимаем кнопку Выгрузить . После формирования файла программа спросит, что делать с подготовленным файлом: Открыть или Сохранить .

Загрузка данных из xml файла в базу 1С 8.3

Откроем информационную базу-приемник, т.е. базу 1С 8.3, куда будем загружать наши данные.

В том случае, если планируется загрузить данные в рабочую базу (не пустую) необходимо выполнить перед загрузкой.

Открываем обработку (меню Файл — Открыть ) и нажимаем кнопку Загрузить данные .

В открывшемся окне выбираем наш ранее сохраненный файл, нажимаем кнопку Открыть и ждем окончания загрузки данных из файла.

Протокол используется штатной процедурой обмена коммерческими данными между системой "1С:Предприятие", с одной стороны, и системой управления сайтом, с другой стороны.

Функционально обмен делится на два блока:

Первый блок обеспечивает публикацию на сайте каталога номенклатурных позиций и данных. Второй блок необходим для передачи с сайта в систему "1С:Предприятие" информации о заказах интернет-магазина, и дальнейшую синхронизацию статусов и параметров заказов.

В обоих случаях инициатором обмена выступает система "1С:Предприятие". Обмен электронными документами осуществляется в соответствии с правилами и форматами, описанными в стандарте .

При инициализации взаимодействия устанавливается HTTP соединение. Система "1С:Предприятие" запрашивает у сайта необходимые параметры, такие, как максимальный объем пакета, поддержка сжатия и др.. На основании этих данных система 1С:Предприятие формирует XML сообщения и передает их на сайт.

Выгрузка на сайт

Данные для публикации на сайте выгружаются одним пакетом.

A. Начало сеанса


http://<сайт>/<путь> /1c_exchange.php?type=catalog&mode=checkauth.

  • слово "success" ;
  • имя Cookie;
  • значение Cookie.

Примечание.

B. Запрос параметров от сайта

1. zip=yes
или
zip=no

2. file_limit=<число> , где <число>

C. Выгрузка на сайт файлов обмена

Затем "1С:Предприятие" запросами с параметрами вида
http://<сайт>/<путь> /1c_exchange.php?type=catalog&mode=file&filename=<имя файла>
выгружает на сайт файлы обмена в формате CommerceML 2, посылая содержимое файла или его части в виде POST.

В случае успешной записи файла система управления сайтом выдает строку "success ".

D. Пошаговая загрузка данных

На последнем шаге по запросу из "1С:Предприятия" производится пошаговая загрузка данных по запросу с параметрами вида http://<сайт>/<путь> /1c_exchange.php?type=catalog&mode=import&filename=<имя файла>

Во время загрузки система управления сайтом может отвечать в одном из следующих вариантов.

1. Если в первой строке содержится слово "progress " - это означает необходимость послать тот же запрос еще раз. В этом случае во второй строке будет возвращен текущий статус обработки, объем загруженных данных, статус импорта и т.д.

2. Если в ответ передается строка со словом "success ", то это будет означать сообщение об успешном окончании обработки файла.

Примечание.

Примеры файлов выгрузки

Обмен информацией о заказах

Заказы, оформленные на сайте, загружаются в систему "1С:Предприятие".

Последовательность действий при работе с заказом

1. Заказ оформляется на сайте

2. При передаче в систему "1С:Предприятие" в заказе устанавливается категория "Заказ с сайта".
При формировании заказа в системе "1С:Предприятие" записываются номер и дата заказа, с которыми он оформлен на сайте. Поиск контрагента осуществляется по ИНН или наименованию, в зависимости от указанных настроек.

3. При загрузке заказа производится поиск договора с контрагентом. Договор ищется среди существующих договоров с клиентом, с признаком ведения взаиморасчетов по заказам (по указанной в настройках загрузки Организации). Если не находится ни один договор, то создается новый.

4. При загрузке заказа загружаются все его свойства, переданные с сайта. Свойства ищутся в системе "1С:Предприятие" по наименованию. Если с таким наименованием свойства нет, то заводится новое свойство со значениями типа строка или число.

5. Заказ может модифицироваться в системе "1С:Предприятие", при этом его изменения будут выгружаться на сайт

6. Если заказ оплачивается или отгружается в системе "1С:Предприятие", то состояния заказа по оплате и по отгрузке выгружаются на сайт только при полном выполнении операции (полной оплате и полной отгрузке). До этого момента заказ считается не оплаченным и не отгруженным.

7. При попытке в системе "1С:Предприятие" изменить заказ, по которому произведена оплата или отгрузка, заказ на сайт не загрузится как измененный. При этом пользователь получит об этом сообщение.

8. После каждой выгрузка заказа на сайт, на стороне сайта определяются значения его категорий (ссылка на категории). Эти значения устанавливаются в системе "1С:Предприятие" так, как они присвоены заказу на сайте

A. Начало сеанса

Выгрузка данных начинается с того, что система "1С:Предприятие" отправляет http-запрос следующего вида:
http://<сайт>/<путь> /1c_exchange.php?type=sale&mode=checkauth.

В ответ система управления сайтом передает системе «1С:Предприятие» три строки (используется разделитель строк "\n"):

  • слово "success" ;
  • имя Cookie;
  • значение Cookie.

Примечание. Все последующие запросы к системе управления сайтом со стороны "1С:Предприятия" содержат в заголовке запроса имя и значение Cookie.

B. Уточнение параметров сеанса

В ответ система управления сайтом передает две строки:

1. zip=yes , если сервер поддерживает обмен в zip-формате - в этом случае на следующем шаге файлы должны быть упакованы в zip-формате
или
zip=no - в этом случае на следующем шаге файлы не упаковываются и передаются каждый по отдельности.

2. file_limit=<число> , где <число> - максимально допустимый размер файла в байтах для передачи за один запрос. Если системе "1С:Предприятие" понадобится передать файл большего размера, его следует разделить на фрагменты.

C. Получение файла обмена с сайта

Затем на сайт отправляется запрос вида
http://<сайт>/<путь> /1c_exchange.php?type=sale&mode=query.

Сайт передает сведения о заказах в формате . В случае успешного получения и записи заказов "1С:Предприятие" передает на сайт запрос вида
http://<сайт>/<путь> /1c_exchange.php?type=sale&mode=success

D. Отправка файла обмена на сайт

Затем система "1С:Предприятие" отправляет на сайт запрос вида
http://<сайт>/<путь> /1c_exchange.php?type=sale&mode=file&filename=<имя файла>
,
который загружает на сервер файл обмена, посылая содержимое файла в виде POST.

В случае успешной записи файла система управления сайтом передает строку со словом "success ". Дополнительно на следующих строчках могут содержаться замечания по загрузке.

Примечание. Если в ходе какого-либо запроса произошла ошибка, то в первой строке ответа системы управления сайтом будет содержаться слово "failure", а в следующих строках - описание ошибки, произошедшей в процессе обработки запроса.
Если произошла необрабатываемая ошибка уровня ядра продукта или sql-запроса, то будет возвращен html-код.

Примеры файлов обмена информацией

Представленный протокол используется для интеграции системы "1С:Предприятие" с системами

В данной статье мы рассмотрим с Вами две очень важные темы, первая это , а вторая это конечно же выгрузка данных из 1с в excel . Необходимо отметить, что эти темы интересны двум основным аудиториям пользователей, ими являются:

  • Пользователи системы 1С Предприятие
  • Программисты 1С

Пользователи 1С как правило хотят заказать например перенос данных из excel в 1с в соответствии со своими определенными требованиями к переносу, в то время как программисты 1С скорее ищут какие-то разъяснения или примеры кода. Исходя из этих соображений мы решили разделить информацию приведенную в данной статье на две части для пользователей и программистов 1С.

1С загрузка из Excel и выгрузка из 1С в Excel глазами рядового пользователя 1С

Очень часто получается так, что на предприятии или в какой-нибудь фирме например, имеется документация, которая хранится на компьютере в файлах Excel. И часто у пользователей возникает вопрос, а как же выгрузить или загрузить данные из Excel в 1С . Конечно же без знания программирования здесь не обойтись, поэтому если Вы являетесь простым пользователем то Вам нужно заказать услуги 1с у нас, ведь абсолютно любой наш программист 1с всегда Вас выслушает, подберет специально разработанное решение именно для вас, и обязательно Вам поможет.

Почему нет универсальной обработки по загрузке данных из Excel в 1С?

Давайте ответим на этот вопрос и рассмотрим его основные моменты:

  1. У каждого пользователя есть различные файлы Excel, данные из которых он хочет перенести в 1С, конечно же эти файлы имеют разные количество строк и столбцов, а также несут разную смысловую нагрузку.
  2. Каждый пользователь работает с отдельной конфигурацией, т.е. конфигурации могут быть различными, то что работает в одной конфигурации, в другой конфигурации без модернизации работать не будет.
  3. Данные из Excel должны переноситься в различные объекты,соответственно нужен разный код, ведь у каждого пользователя свои требования.

Именно по этим причинам нельзя создать универсальную обработку по загрузке данных из Excel в 1С .

Как происходит загрузка и выгрузка данных из Excel в 1С на примере реальной разработки

Теперь давайте разберем в общих чертах как происходит загрузка и выгрузка данных из Excel в 1С , и как вообще это все будет выглядеть в готовом решении?. Пример реальной индивидуальной разработки, а также исходный Excel файл представлены ниже.


В этой обработке сначала нужно выбрать файл Excel, затем нажать на кнопку «Выполнить», после чего в табличную часть загрузятся нужные данные из Excel. Теперь все что осталось сделать пользователю это нажать кнопку «Перенести в бух», после чего данные будут перенесены из Excel в 1С .

Выгрузка данных из 1С в Excel происходит примерно также, только тут сложность написания обработки зависит от того какие именно данные должны выгружаться из объекта. Например у нас есть справочник «Номенклатура» и мы хотим выгрузить наименование самой номенклатуры и единицу измерения данной номенклатуры, хотя у самой номенклатуры может быть намного больше реквизитов, такие как, вид номенклатуры, тип номенклатуры, наименование полное и т.д.

Мне нужна обработка по загрузке и/или выгрузке данных из Excel, что мне делать?

Все что Вам нужно сделать это поднять трубку и позвонить нам. После этого наши специалисты выполнят все необходимые действия чтобы вы получили именно то, что Вам требуется. Если Вам нужно выполнить срочное обновление 1с то звоните нам, мы рады помочь каждому нашему клиенту!

Загрузка и выгрузка данных из Excel в 1С глазами рядового программиста 1С

Чуть выше мы дали много полезной информации для пользователей 1С, теперь же пришло время проговорить о технических моментах написания кода, а также привести информацию для программистов 1С которая им будет очень полезна при написании кода. Рассмотрим основные часто используемые функции для работы с Excel.

Начнем мы с того как подключить Excel к 1С, делается это посредством COM-объекта. Для того чтобы этот код работал нормально Excel должен быть установлен на компьютере, в противном случае ничего работать не будет:


После того как мы подключили Excel нам нужно открыть необходимый документ из которого будет осуществляться перенос:

Теперь нам необходимо выбрать лист книги эксель, на рисунке выше мы видим как выбирается лист под определенным номером. Номер листа хранится в переменной «Номер листа»:

Мы можем узнать количество листов книги эксель с помощью поля "Count":

Чтобы получить имя листа под определенным номером, нужно написать подобную строчку:

После того как мы закончили все действия по работе с самим экселем процесс нужно закрыть. Закрываем его, иначе будет висеть:

Пример функции которая загружает отдельные ячейки из Excel в 1С

Мы с Вами рассмотрели основные процедуры и функции с которыми сталкивается каждый программист 1С при написании обработки по загрузки данных из Excel в 1С. Теперь давайте познакомимся более детально с функцией которая считывает отдельные ячейки эксель файла.


Мы думаем, что никаких дополнительных разъяснений по данному коду приводить не нужно, так как все эти функции детально рассматривались выше.

Пример функции которая загружает все данные из Excel в табличную часть 1С

Мы рассмотрели функцию которая выводит на экран отдельные ячейки экселя. А как быть если нам требуется выгрузить весь лист экселя сразу и обходить его последовательно? Здесь нам пригодится код который приводится ниже:


Пример функции которая выгружает данные из 1С в Excel

Выше мы с вами разобрали много всего интересного, но мы не касались такой темы как выгрузка данных из 1С в Excel. На самом деле принцип работы тут в абсолютности почти такой же, за исключением того, что мы программно создаем новый файл эксель, и программно его записываем. Ну а для того чтобы записать значение в ячейку вы как уже наверное догадались нужно поставить выражение Лист.Cells(x, y) в левую часть. Пример выгрузки данных из 1С в Excel представлен ниже:


Перенос информации между базами данных является одной из задач их поддержки и администрирования. Для его эффективного выполнения в автоматизированных комплексах 1С создаются обработки. Они значительно облегчают рутинную работу, ускоряют процессы выгрузки-загрузки информации и одновременно реализуют контроль ее корректности. Выгрузка из 1с в xml позволяет создавать файл с содержимым любого объекта настроенной конфигурации, и использовать его, когда необходима выгрузка данных в идентичную конфигурацию.

Инструменты для создания выгрузки

Для экспорта информации, содержащейся в базах данных, главным образом используется формат xml. Для 1С разработано множество обработок (например, ВыгрузкаЗагрузкаДанныхxml82 epf), при помощи которых возможно выводить в файл и загружать данные. При этом пользователь должен получать файл определенной структуры, который позволяет загружать хранящуюся в нем информацию в родную базу данных или переносить ее в другое место. При создании выгрузки следует соблюдать следующие правила:

  • Сохранить созданные файлы до момента полного восстановления и окончания процедур проверки корректности перенесенной информации;
  • В случае использования обработки как инструмента резервного копирования создавать для копий данных отдельные подпапки и вести журнал их учета для быстрого поиска.

Поставляемая в программе поддержки пользователей 1С , которую можно найти на сайте или дисках ИТС, является великолепным средством для экспорта и импорта информации. Пользователь компьютера может выгрузить как всю базу, так и ее отдельные объекты, при этом кроме собственно экспорта производятся различные операции по проверке информации, помогающие избавиться от критических ошибок в данных.Обработка 1с выгрузка в xml работает в двух режимах:

  • Выгрузка. Создает файл, содержащий выгружаемые объекты, определяемые пользователем;
  • Загрузка. Производит чтение экспортируемого ранее файла и записывает находящиеся в нем сведения в информационную базу.

Обработка позволяет произвести контроль объектов на недопустимые символы, а также включает в себя функцию экспорта информации с ограничениями.

Выгрузка может использоваться не только при обмене информацией между базами 1С. С ее помощью можно обеспечить интеграцию различных комплексов, например, 1С и системы Парус. Универсальность формата XML позволяет создавать программы для переноса информации практически для любых информационных банков. Обработка выгрузка и загрузка данных xml – важнейший инструмент обмена информацией.

Процесс выгрузки данных в xml

Рассмотрим, как выгрузить из 1с в xml в обычном режиме. После закачки обработки ВыгрузкаЗагрузкаДанныхxml.epf и ее открытия необходимо выполнить следующие шаги:

  • Отобрать объекты для экспорта;
  • Настроить необходимые фильтры, например, по периоду;
  • Определить месторасположение файла с информацией на дисковой подсистеме;
  • Запустить выгрузку объектов.

Необходимо помнить, что заголовочная часть формата файла выгрузки отличается от формата файла, используемого при выгрузке по планам обмена.

xml

Загрузка xml в 1с производится в базу-приемник с конфигурацией, идентичной базе-источнику. До того, как загрузить в 1с xml 1с необходимо открыть обработку в базе-приемнике. Затем нужно указать путь до выгруженного ранее файла и осуществить загрузку данных нажатием на кнопку «Загрузить данные».

При необходимости активируются флажки для загрузки данных в режиме обмена в распределенной информационной базе и игнорирования возникающих ошибок при загрузке объектов.

После этого необходимо проверить базы и убедиться, что все элементы загружены корректно, чтобы не получить их потери, например, если произошла ошибка в обработчике события после загрузки объекта.



Загрузка...
Top