Импорт данных

Материал из GB wiki
Перейти к: навигация, поиск

Работа с инструментом «Импорт данных».

Инструмент «Импорт данных» - мощная вещь для массового апдейта старых или вставки новых объектов. Этот инструмент можно активировать путем выбора пункта «Импорт данных» из меню по правой кнопке на любых объектах ГБ, лежащих на ланчпаде или из контрольной панели. В основном используется импорт партнеров, товаров, сертификатов, цен, а также документов. Для того, чтобы импортировать цены, нужно вытащить на ланчпад любую цену из редактора цен (который открывается по команде "открыть прайс-лист").

В окне "импорт" включаются все свойства объекта, которые вы хотите установить - обычно это следующие поля: Id, Name, Node, ItemType, SubType, а также Heap.XXXX

Для импорта штрих-кода для товаров (если на карточке ШК ещё не было, т.е. это будет первый ШК) нужно в окне "импорт открыть свойства таблицы и добавить новое поле:

Поле: AddBarCode0
Дать имя: V
Тип: fmName
Длина: 20
Подпись: ШК-0
Выражение: AddBarCode0

После этого сохранить настройку таблицы. Поле со штрих-кодом из файла нужно будет сопоставить с этим новым полем "ШК-0".

После того, как появилось окно "импорт", нужно скопировать исходные данные в буфер (например, из Excel), а в окне импорта выбрать из контекстного меню "вставить из буфера".

Затем будет задан вопрос "использовать первую строку для обозначения полей?"

После этого появится окно для сопоставления полей из исходных данных. Для нужных полей ГБ нужно выбрать поле-источник, либо ввести формулу. Импорт данных.png

Формула может быть как простой - содержать константу - так и сложной, с условиями, состоящей из нескольких полей и т.п. Если в формуле нужно использовать поле из исходных данных - нужно писать его имя - например, UPPERCASE(Field1)

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

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

Name (название)

Node (папка) - содержит код папки. Если импортируются папки первого уровня - то можно указать значение 1 для товаров и 0 для других справочников. Если вместо кодов в исходных данных содержатся имена - то можно попытаться найти коды по имени при помощи функции GB_FINDOBJECT. Первый параметр этой функции - тип объекта (0-партнеры, 1-товары, 17-сертификаты).

ItemType (порядок) - 0 для папок, 1 для записей

SubType - для обычных товаров 1, для партнеров равен коду папки первого уровня, в которую вставляются партнеры

Внимание! Хиповые поля должны называться в таблице не Id.Heap.@Address, а Heap.@Address, то есть слово Id писать нельзя.

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

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

Импорт данных2.png