Загрузить из внешнего файла

Мария Кузнецова

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

Типовая загрузка из внешнего файла в 1С 8.3

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


Рис.1 Загрузка заказа из внешнего файла

В открывшемся окне видим одноименные столбцы: штрих-код, код, артикул, номенклатура, характеристика, количество, цена — необходимый набор данных для заполнения табличной части заказа товарами.


Рис.2 Заполнение необходимых для загрузки заказа данных

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

После поиска номенклатуры открывается следующее окно для проверки найденной информации.


Рис.3 Поиск номенклатуры и заполнение необходимых полей

Можно внести изменения или дозаполнить данные. Если все верно, то переносим данные в наш документ. Загруженные строки с номенклатурой добавляются в табличную часть документа.


Рис.4 Добавление загруженной из Excel информации в заказ

Обработка для загрузки данных из Excel

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

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

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

Созданную внешнюю обработку можно открывать из базы двумя способами:

  • Через меню «Файл- Открыть». Выбрать файл обработки, сохраненный на компьютере.


Рис.5 Открытие внешней обработки

  • Подключить во внешние обработки.

Подключить внешнюю обработку в базу нужно следующим образом. Заходим в раздел «НСИ и администрирование», нажимаем «Печатные формы, отчеты и обработки».


Рис.6 Загрузка внешней обработки

Идем в «Дополнительные отчеты и обработки», нажимаем «Создать».


Рис.7 Дополнительные отчеты и обработки

Загружаем файл внешней обработки (может выскочить окно с предупреждением не загружать файлы из внешних непроверенных источников).


Рис.8 Добавление внешней обработки

Нажимаем «Продолжить». Выбираем файл с компьютера. Автоматически заполняется наименование, дополнительная информация. Для открытия обработки потребуется нажать кнопку «Выполнить».


Рис.9 Добавление и выполнение внешней обработки

Загрузка файлов Excel

Для загрузки файлов определенного формата нужно создать внешнюю обработку: через меню «Файл-Новый» выбрать «Новая обработка».


Рис.10 Создание внешней обработки

В модуле формы обработки указывается подключение к Excel с помощью COM-соединения:


Рис.11 Ввод команд в модуле формы обработки

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

В настройках такой обработки прописываются столбцы экселя и соответствующие им столбцы обработки.

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

Можно воспользоваться готовыми универсальными обработками. В новых конфигурациях они уже есть и называются «Загрузка данных из внешнего источника». Главный недостаток заключается в том, что данные должны соответствовать полям в 1с, разнычные манипуляции с данными «на лету» невозможны. Т.е. проще говоря Вам нужно вначале подготовить файл для загрузки, а потом уже воспользоваться обработкой. Для разовой загрузки можно отформатировать файл, но если такие файлы загружаются в 1с с определенной периодичностью, то этот способ вряд ли подходит.

Читайте также:  База паролей майнкрафт 2018

Можно заказать обработку для загрузки данных из внешних источников у программиста 1С. Цены на подобные обработки невелики. От 1'500р за самую простую до 7'000р за достаточную сложную. Как правило достаточно прислать файл, который нужно загрузить и описать как его нужно грузить.

Рассмотрим оба способа подробнее.

Например в конфигурации 1с УНФ эту обработку можно найти тут.

Далее обработка подскажет что нужно делать

Если хочется обработку с еще более продвинутыми функциями, то можно скачать вот эту:

Как уже писалось выше цены на подобные обработки невелики. От 1'500р. Зато Вы получается полностью адаптивную под Вас загрузку данных.

Если данные необходимо грузить с заданной периодичностью, то можно настроить обработку так чтобы она сама получала данные с ftp-сервера или почты или другой СУБД(базы).

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

Можно Всё! Приведу лучше пример обработки, сделанной сегодня.

Обработка с заданной периодичностью забирает прайс листы с фтп сервера. Прайс-листы очень не маленькие.

Полей в них не много, но много условий у клиента для загрузки этих прайсов.

Техническое задание по загрузке прайсов своими словами:

    Должен быть произведен поиск по штрих коду
    Если штрих-код найден то обновляем данные номенклатуры и характеристики.

Если штрих-код не найден. Проверяем есть ли такая номенклатура (ищем уже по артикулу). Если есть то есть ли у нее характеристика с таким размером. Она может быть, просто для нее не проставлен штрих код, а может быть есть с таким размером но вставка камней другая. Если есть — проставляем штрих-код, если нет создаем новую характеристику. Характеристику не так просто создать. т.к. «размер» это доп реквизит и тип значений у него — список. Нужно вначале запросом найти доп реквизит, затем ссылку на значение доп реквизита а только потом можно заводить характеристику. Если номенклатуру по артикулу тоже не нашли то до создания характеристики создаем номенклатуру.

Для созданных номенклатур и характеристик проставляем штрихкоды, пишем рекомендуемую розничную цену и цену поставщика.

Списываем с остатков весь товар этого поставщика и приходуем товар, который есть в прайсе.

Загружаем картинку в 1с «фото номенклатуры» с фтп сервера — колонка «ссылка на фото»

  • Категории номенклатуры из прайса взять невозможно, поэтому используем стороннюю таблицу «тип — категория номенклатуры» для определения категории номенклатуры для вновь создаваемой номенклатуры.
  • Вот приблизительно такие требования. Попробуйте реализовать подобные требования с помощью стандартных обработок 🙂

    Клиенту в обработке выводится минимум кнопок и реквизитов для заполнения:


    При внедрении 1С, как учетной системы интернет-магазина, актуальна задача первоначальной загрузки товаров из внешних источников.

    Есть два типа таких источников:

    • Внешний файл (чаще всего таблица).
    • Сайт интернет-магазина.

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

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

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

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

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

    Как происходит процесс загрузки данных? Как избежать ошибок и не потратить бюджет впустую?

    Процесс загрузки данных из внешнего источника можно условно разделить на два этапа:

    • Подготовка файла к загрузке.
    • Непосредственная загрузка данных.
    Читайте также:  Драйвер для видеокарты amd radeon 5670

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

    Подготовка файла

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

    Обычно такой документ выглядит следующим образом

    Как до обращения к исполнителю избежать распространенных проблем и ошибок, проявляющихся на этапе эксплуатации системы? Итак, перед тем, как поднять трубку для звонка, задайте себе несколько простых вопросов.

    1. Достаточно ли информации в сформированном файле?


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

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

    2. Нет ли в файле избыточной информации?


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

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

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


    Такая ситуация наиболее характерна для случаев формирования файлов путем выгрузки из другой системы либо с интернет-сайта. Параметры разных товаров учитывались по-разному, поэтому в файле может быть 5−6 разных значений одного и того же параметра.

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

    Следующим шагом надо исключить дублирование строк документа. Благо в Excel это делается довольно просто. При этом надо четко понимать, что понимать под дублирующимися товарами: может быть, они совпадают по артикулам, но отличаются по цвету и т.п. Но обязательно надо исключить возможность передачи на загрузку файла, содержащего полностью совпадающие строки. Опытный специалист всегда проверит и предупредит заказчика о наличии дублей, другой же может не заметить этого. Результатом одной такой ошибки станет дублирование номенклатуры в учетной системе, что не позволит вам корректно вести складской учет, строить отчеты и т.д.

    3. Насколько разные товары находятся в одном файле?

    Во многих магазинах торгуют разными товарами. Скажем, интернет-магазин товаров для ремонта продает как обои, так и сопутствующие товары: обойный клей, валики и т.д. Они обладают разными свойствами. Именно вид номенклатуры определяет параметры товара, которыми он обладает.

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

    Читайте также:  Библиотеки для протеуса 8

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

    4. Сколько стоят мои товары?

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

    • Наличие в явном виде информации о единицах измерения и коэффициентах пересчета между ними указанной стоимости товара.

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

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

    5. Можно ли разделить реквизиты товаров и их характеристики?

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

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

    6. Понятна ли структура каталога номенклатуры?

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

    7. Корректно ли заданы остатки в разрезе складов?

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

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

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