Импорт данных ID115 — различия между версиями

Материал из GB wiki
Перейти к: навигация, поиск
Строка 16: Строка 16:
  
 
===Примеры===
 
===Примеры===
=====Пример записи значения поля ''Heap.@Upakovshik'' в группу документов:=====
+
=====Пример записи значения поля ''Heap.@Upakovshik'' в группу документов=====
 
  '''CreateDataSet'''(
 
  '''CreateDataSet'''(
 
   `dsImp`,
 
   `dsImp`,

Версия 13:14, 17 октября 2016

Назначение команды

Команда ID115 (синоним – IMPORT) предназначена для импорта данных, для изменения значения полей в нескольких объектах и т.п.

Описание команды

Сопоставление с внешним справочником

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

  • ExtType - тип объекта во внешнем справочнике;
  • ExtId - код объекта во внешнем справочнике;
  • Depot - код удаленного отдела (т.е. владельца внешнего справочника).
Создание нового объекта

Для создания нового объекта в команду импорта данных нужно передавать "пустой" (null) код объекта, т.е.

Id = 1/0

Примеры

Пример записи значения поля Heap.@Upakovshik в группу документов
CreateDataSet(
  `dsImp`,
  [
    `DocId,I` : ``,
    `Up,I` : ``
  ]
),
<тут заполняем датасет dsImp кодами документов>,
ProcessCommand(
  11,
  [
    `SaveImmediate` : `Y`,
    `ImportDs` : `dsImp`,
    `ImportDsMap` : [
                      `Id` : `Id`,
                      `Heap.@Upakovshik` : `Up`
                    ]
  ],
  `IMPORT`
),
WaitForChildForms()
Пример импорта справочника партнёров
ProcessCommand(
  0,
  [
    `SaveImmediate` : `Y`,
    `ImportDs` : `dsTXT`,
    `ImportDsMap` : [
                      `Id` : `Id`,
                      `Node` : `IfEmpty(Id,11,Id.Node)`, <--для новых карточек папка 11, для существующих папку не меняем
                      `SubType` : 11,
                      `Name` : `fld3`,
                      `FullName` : `fld13`,
                      `Heap.@INN` : `fld1`,
                      `Heap.@Phone` : `fld5`,
                      `Heap.@Address` : `fld6`,
                      `ExtType` : `0`,
                      `ExtId` : `fld2`,
                      `Depot` : 209
                    ]
  ],
  `ID115`
),
WaitForChildForms()