CREATEDATASET — различия между версиями

Материал из GB wiki
Перейти к: навигация, поиск
Строка 14: Строка 14:
 
  CreateDataSet(`dsTo`,`dsFrom`)
 
  CreateDataSet(`dsTo`,`dsFrom`)
 
Создание датасета с описанием структуры в виде строки:
 
Создание датасета с описанием структуры в виде строки:
  CREATEDATASET('PParams','Node,I="0"<nowiki>|</nowiki>IStocks,S="4353;6659"<nowiki>|</nowiki>IOnDate,D="01.01.2001"')<br/>
+
  CREATEDATASET('PParams','Node,I="0"<nowiki>|</nowiki>IStocks,S="4353;6659"<nowiki>|</nowiki>IOnDate,D="01.01.2001"')
 
Создание датасета с описанием в виде ассоциативного массива:
 
Создание датасета с описанием в виде ассоциативного массива:
 
  CREATEDATASET('PParams',['Node,I':'0','IStocks,S':'4353;6659','IOnDate,D':'01.01.2001'])
 
  CREATEDATASET('PParams',['Node,I':'0','IStocks,S':'4353;6659','IOnDate,D':'01.01.2001'])

Версия 12:36, 21 сентября 2021

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

Синтаксис

CREATEDATASET(Имя датасета,Описание структуры и значений)

Аргументы

Имя датасета
строка, определяющая имя создаваемого датасета.
Описание структуры и значений
строка, определяющая структуру датасета и значения его полей. Каждое поле описывается в виде: Имя поля,Тип,сущность,подпись="Значение". Описания полей между собой разделяются символом "|". Типы полей обозначаются буквами: I,F,D,S,B
Начиная с версии ГБ 1.7.1.12 описание полей и значений можно передавать в виде ассоциативного массива:['Имя поля,Тип':'Значение','Имя поля,Тип':'Значение'].
Если в данном параметре указать имя другого датасета, то его данные будут скопированы в датасет, заданный в первом параметре, причём вычисляемые поля станут обычными (пригодится для передачи полей в процедуры)

Тип результата

Нет

Примеры

Копирование датасета dsFrom в dsTo с преобразованием вычмсляемых полей в обычные:

CreateDataSet(`dsTo`,`dsFrom`)

Создание датасета с описанием структуры в виде строки:

CREATEDATASET('PParams','Node,I="0"|IStocks,S="4353;6659"|IOnDate,D="01.01.2001"')

Создание датасета с описанием в виде ассоциативного массива:

CREATEDATASET('PParams',['Node,I':'0','IStocks,S':'4353;6659','IOnDate,D':'01.01.2001'])

Замечания

  • Если эта функция используется в добавленной колонке, то вместо символа ";" нужно использовать функцию Char(59).
  • Замечание: Строку, описывающую датасет, можно легко получить, запустив ГБ с ключом –packetlog (-packetlogfile) и выполнив нужный отчет. Параметры процедуры пишутся в лог в таком же формате.