Сотрудникам крупных компаний нередко приходится работать с большим объемом данных. Информация может содержаться в файлах различного формата. Одной из часто используемых программ для работы с объемными данными является Excel.
Excel – это широко распространенная компьютерная программа, применяется для проведения расчетов, составления таблиц и диаграмм, вычисления простых и сложных функций. Нередко можно столкнуться с необходимостью загрузки из Excel в 1С данные таблиц, справочников, прайс-листов, списков и т. д.. В программах 1С имеется типовой механизм переноса данных из Excel в программу, но в каждой конфигурации функционал разный. В программе Бухгалтерия доступна возможность загрузки контрагентов из Excel, в 1С Управление торговлей доступна обработка для загрузки цен поставщика.
Рассмотрим более подробно работу типовой обработки по загрузке данных на примере Управление торговлей. Данным функционалом можно воспользоваться, открыв раздел «Закупки», в меню «Сервис», она носит наименование «Загрузка цен поставщика из файлов».
Форма обработки включает в себя следующую информацию:
1. Поле выбора даты (указывает, на какое время актуальна данная цена);
2. Поле выбора контрагента, которому принадлежит данный прайс-лист;
3. Кнопка для выбора типа устанавливаемых цен;
4. Табличную часть, которую можно заполнить загружаемыми данными.
После выбора контрагента (поставщика) в таблице станут доступны дополнительные колонки для каждого типа цен.
Когда необходимые нам колонки будут заполнены, следует нажать на кнопку «Далее» и перейти на следующую страницу.
После выполненных действий программа автоматически осуществляет поиск соответствий внутри базы данных и, в случае, если таковых не найдется, предложит варианты устранения ошибки. Внешний вид табличной части можно контролировать с помощью переключателя. Кроме того, пользователь может самостоятельно сопоставить элементы загружаемого файла имеющимся в базе данным.
Следующее нажатие на кнопку «Далее» открывает перед нами окно для дальнейшего выбора действий с загружаемыми ценами:
· Регистрировать все подряд;
· Регистрировать только те, которые изменились по сравнению с уже имеющимися в базе.
Также имеется поле для возможности заполнения комментария, который будет перенесен в документ.
В результате выполнения условий данной обработки мы получим следующее:
· В справочнике «Номенклатура поставщика» будет создан соответствующий элемент (если его не было);
· Ему будет сопоставлен элемент справочника «Номенклатура»;
· Будет создан и проведен документ «Установка цен номенклатуры» с указанием: поставщика, типа цен и даты фиксации данных.
Загрузка данных из табличного документа
Также для загрузки данных из Excel можно использовать универсальный механизм, доступный при наличии подписки на информационно-технологическое сопровождение (ИТС).
Типовая обработка «ЗагрузкаДанныхИзТабличногоДокумента.epf», находиться в разделе: «Технологическая поддержка» - «Методическая поддержка 1С:Предприятие8» - «Универсальные отчеты и обработки» - «Загрузка данных из табличного документа».Обработка от самой фирмы 1С является универсальной и позволяет загружать данные в любые конфигурации на платформе 1С Предприятие 8, в любые справочники, документы и реестры сведений. Рассмотрим работу данной обработки более подробно на примере.
После того как обработка открылась в 1С, можно приступать к работе с ней. В первую очередь нам нужно определиться, куда и что мы будем загружать, в нашем случае будет рассмотрена загрузка в справочник, вид справочника – номенклатура. В закладке «Табличный документ» нажимаем кнопку «Открыть файл», в появившемся окне выбора находим каталог, в котором у нас находиться файл с информацией в формате Excel, из которого мы планируем загружать данные в 1С. Данные загрузятся в обработку автоматически. При желании можно использовать простое копирование информации.
Обращаем внимание, что файл нужно сохранить в формате «Книга Excel 97 – 2003, то есть расширение должно быть именно xls (если мы загружаем из Excel). Другие обработка не видит.Обработка умеет загружать также файлы формата:
o mxl
o xls
o txt
o dbf
o любой другой формат, откуда можно скопировать данные
Вот так выглядит файл Excel с исходными данными, который мы будем загружать в справочник «Номенклатура»:
Теперь проверим, правильно ли мы заполнили наши данные. Для этого нажимаем кнопку «Контроль заполнения».
В случае если имеются ошибки, их необходимо устранить, для этого требуется зайти на закладку «Настройка».
Настройка загрузки
Рассмотрим подробнее вкладку «Настройка». На данной вкладке расположена табличная часть настройки выгружаемых данных. Каждая строка данной таблицы содержит настройку соответствующего реквизита. Для настройки доступны следующие параметры:
· «Пометка». Установленный флаг означает, что данный реквизит необходимо перегружать.
· «Представление реквизита».
· «Описание типов». Может принимать как один тип значения, так и несколько (составной тип данных).
· «Режим загрузки» бывает трех разновидностей:
o «Искать» — значение проставляется только если найдено.
o «Вычислять» — значение вычисляется на основании указанного выражения.
o «Устанавливать» — значение задается однозначно.
o «Значение по умолчанию». В том случае, если не найдено данных для подстановки в реквизит, устанавливается значение из данной настройки.
o «Условие связи / Выражение для значения» устанавливает поле, по которому будет совершен поиск. Для справочников более приоритетным является поиск по коду, так как зачастую он уникален. В случае, когда код неизвестен – можно оставить настройку по умолчанию и искать по наименованию. В таком случае в справочнике, где будет искаться реквизит не должно быть дублирующих строк.
Программа изначально не знает, по какому полю ей искать элемент справочника на случай, если он там уже есть. Поэтому ей его нужно указать. Например, ищем по коду, так как он, как правило, уникален. В колонке «Поле поиска» в строке «Код» ставим галочку. Теперь, если запись с таким кодом будет найдена, она будет заменена, иначе создана.
Важно! Если не указать поле поиска, то могут появиться дубли номенклатуры. Особенно после второй загрузки похожего файла!
Еще одно важное замечание. Колонки в файле должны располагаться строго в том же порядке, как и строки полей справочника.А в примере «Вид номенклатуры» находится в самом низу, а в файле после колонки «Комментарий». Для того, чтобы поднять строку «Вид номенклатуры» вверх, существуют синие стрелочки вверху формы. С помощью стрелки «Вверх» поднимаем нужную строку и ставим под «Комментарием».
Далее нажимаем на кнопку «Загрузить данные» и все проходит без ошибок, информация успешно загружена в 1С.
Но порой требуется загрузить такие документы или объекты, которые не предусмотрены типовой обработкой, встроенной в 1С, не реализованы в универсальных механизмах для ИТС. И в этом случае уже возникает необходимость в поиске индивидуального варианта решения данного вопроса. На примере можем продемонстрировать работу обработку по загрузке данных из Excel, разработанную специалистами нашей компании непосредственно под нужды заказчика.
Внешняя обработка Загрузка прайс-листов
Целью данной разработки было создание обработки с удобной функциональностью для загрузки прайса от поставщиков из Excel в 1С Управление торговлей, с возможностью сохранения настроек загружаемых колонок, выбором профилей загрузки автоматически в соответствии с названием файлов.
Начнем более подробное описание с открытия обработки.
Для того чтобы открыть обработку, необходимо перейти в «Закупки» - «Дополнительные обработки» и выбрать в открывшемся окне «Загрузка прайс-листов».
Перед загрузкой прайс-листа необходимо задать параметры его загрузки. Для этого необходимо перейти по ссылке «Параметры загрузки файлов» и создать новый элемент.
Рассмотрим процесс создания параметров загрузки файла на примере файла с наименованием Pricelist_АСТ ателика.xls.
1) Поле «Наименование» – произвольное наименование параметра загрузки файла.
2) «Имя файла содержит» - часть имени файла, по которой можно файл идентифицировать. Т.е. это часть, которая всегда содержится в имени файла прайс-листа данного поставщика.
3) «Поставщик» - контрагент, которому принадлежит загружаемый прайс-лист. Обязательное для заполнения поле.
4) «Пропускать строки с нулевой ценой» - если галка установлена, то при загрузке будут пропущены строки с товарами, в которых не указана либо равно 0 цена.
5) «Номер листа» - номер листа в загружаемом файле Excel (в большинстве случаев равен 1).
6) «Начальная строка» - номер первой строки, в которой указана номенклатурная позиция.
7) «Колонка артикул1» - номер п/п колонки, в которой содержится артикул. Если артикула нет, то указывается 0.
8) «Колонка наименование1» - номер п/п колонки, в которой содержится наименование номенклатуры.
9) «Колонка цена1» - номер п/п колонки, в которой содержится цена.
10) Колонки «артикул2», «наименование2» и «цена2» заполняются аналогично в случае, если в файле в одной строке содержится две номенклатурных позиции, как в нашем файле Pricelist_АСТ ателика.xls
11) «Группа для новой номенклатуры» - эта группа (папка) в справочнике Номенклатура, в которой будет создаваться новая номенклатура из файла. Рекомендуется для каждого поставщика создавать отдельную группу в группе «Номенклатура поставщиков».
12) «Вид номенклатуры» - вид создаваемой номенклатуры.
13) «Ставка НДС» - ставка НДС по умолчанию для создаваемой номенклатуры.
14) «Единица измерения» - единица измерения для создаваемой номенклатуры.
15) «Помечать на удаление отсутствующую в прайсе номенклатуру» - если галка установлена, то при загрузке номенклатуры в группе, указанной в поле «Группа для новой номенклатуры», будет помечена на удаление номенклатура, которой нет в текущем загружаемом прайс-листе.
После заполнения всех полей необходимо нажать кнопку «Записать и закрыть».
Вкладка «Загружаемые файлы»
Для загрузки прайс-листов необходимо указать каталог, в котором находятся файлы прайс-листов. После выбора каталога автоматически заполнится список загружаемых файлов и параметры их загрузки.
Если для какого-либо прайс-листа, который необходимо загрузить, автоматически не был подобран параметр загрузки (не заполнено значение в колонке «Параметры загрузки»), то его необходимо указать вручную, либо скорректировать значение поля «Имя файла содержит» в соответствующем элементе справочника «Параметры загрузки» (см. выше).
Далее, напротив тех прайс-листов, которые необходимо загрузить, нужно проставить галочки в колонке «Загружать». После чего нажать на кнопку «Прочитать файлы».
Вкладка «Ненайденная номенклатура»
После прочтения файлов на данной вкладке отображается список номенклатуры, для которой не была найдена соответствующая номенклатура из текущей базы 1С.
На данной вкладке доступны два действия:
1) Привязка существующей в базе номенклатуры к номенклатуре поставщика. Для этого в колонке «Номенклатура» необходимо указать соответствующую номенклатурную позицию.
После этого в базе будет сохранено соответствие между связкой Артикул+Наименование номенклатуры поставщика с номенклатурой из базы и строка будет перемещена на вкладку «Загруженная номенклатура».
2) Создание новой номенклатуры. Для этого необходимо установить галочки в колонке «Создавать» напротив необходимых позиций и нажать кнопку «Создать номенклатуру». Также возможно уставить галочки во всех строках или снять их во всех строках (см. скриншот ниже). После создания номенклатуры строки будут перемещены на вкладку «Загруженная номенклатура».
Вкладка «Загруженная номенклатура»
На данной вкладке отображается список номенклатуры, для которой было найдена соответствующая номенклатура из текущей базы 1С. Доступна функция привязки номенклатуры аналогично вкладке «Ненайденная номенклатура».
Также на вкладке доступна функция загрузки цен (создание документа «Установка цен номенклатуры»). Для этого необходимо указать вид загружаемых цен и нажать кнопку «Создать документ «Установка цен номенклатуры»».