Запрос GetRefList позволяет получить полный перечень названий всех справочников, их версии и количество записей в них.

Запрос при необходимости так же может:

  • Отфильтровать по имени свойства
  • Отфильтровать по значению свойства.

Описание

Необязательные параметры запроса

WithMacroProp

Параметр позволяет отображать генерируемые (расширенные) свойства.

0Не выводить генерируемые (расширенные) свойства (по умолчанию)
1Выводить генерируемые (расширенные) свойства

MacroPropExtra

Параметр позволяет отображать ДОПОЛНИТЕЛЬНЫЕ генерируемые (расширенные) свойства, которые не являются обычной частью элемента, а как правило относятся к одному из других свойств.

Примером таких свойств является GlobalTradeItemNumbers, для которого генерируются подполя с ресторанами, в которых можно указывать GTIN для каждого ресторана индивидуально. Для этих подполей на сервере генерируются дополнительные поля, которые называются по маске RESTAURANTS-IDENT(GTIN) (в XML отображаются как RESTAURANTS-IDENT_GTIN_).

0Не выводить дополнительные генерируемые (расширенные) свойства (по умолчанию)
1Выводить дополнительные  генерируемые (расширенные) свойства

WithChildItems

Параметр позволяет выводить дочерние элементы у выводимых элементов

0Без дочерних элементов
1Только иерархия внутри справочника в разделе RIChildItems коллекции
2

Дочерние элементы в разделе items только из других справочников

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

OnlyActive

Параметр позволяет убрать из ответа неактивные элементы

0Выводить все элементы
1Выводить только активные элементы

RefItemIdent / RefItemGUID

Параметры позволяют в ответе вернуть только один элемент справочника, а не весь справочник. В качестве значения параметра передается идентификатор / guid элемента.

Если в справочнике не будет найден элемент с переданным идентификатором/guid, то в ответе будет возвращена ошибка.

PropMask

Параметр позволяет выводить в ответе только нужные тэги/атрибуты.

При заполненном RefItemIdent или RefItemGUID относится к элементу, иначе к коллекции.

Обрабатываемые значения:

*Все свойства
items.(...)Элементы коллекции, например "{Name}" – только имена элементов
{...}То же, что Items.(...)
RIChildItems.(...)Дочерние элементы, используется при выставленном WithChildItems=1
RIChildItems.Type()Только дочерние элементы заданного типа Type. Например, "RIChildItems.TEmployee(Ident,Name)"
!Исключение свойства из ответа. RIChildItems.(!AltName) – дочерние элементы со всеми свойствами кроме AltName
:Для указания конкретного типа (доменного класса) в списках свойств, например, для указания некоторых свойств только для комбо блюд: "TRK7MenuItemCombo:ComboDiscount"

Paging

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

Можно запросить часть справочника с помощью следующих параметров:

Offset

Смещение возвращаемого окна от начала. По умолчанию 0 — вернуть с первого элемента (с начала). Если значение больше или равно количеству элементов, то вернётся пустой список.

ItemCount

Количество элементов, которое надо вернуть. По умолчанию 0 — вернуть всё.

MaxRunMs

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

Примеры

Запрос данных справочника: базовый

Базовый запрос без указания дополнительных параметров возвращает все свойства всех элементов в коллекции.

Запрос

<?xml version="1.0" encoding="utf-8"?>
<RK7Query>
	<RK7CMD CMD="GetRefData" RefName="RATECLASSES"/>
</RK7Query>
XML

Ответ

<?xml version="1.0" encoding="utf-8"?>
<RK7QueryResult ServerVersion="7.6.5.171" XmlVersion="247" NetName="WM-03-REPS-000" Status="Ok" CMD="GetRefData" ErrorText="" DateTime="2020-04-08T14:04:36" WorkTime="0" Processed="1">
	<RK7Reference DataVersion="78" ClassName="TRateClasses" Name="RATECLASSES" MinIdent="1" MaxIdent="0" ViewRight="0" UpdateRight="40" ChildRight="40" DeleteRight="40" XMLExport="true" XMLMask="*">
		<Items>
			<Item Ident="1" ItemIdent="1" SourceIdent="0" GUIDString="{C7F1B51B-1C26-453B-8E36-277604B7F031}" AssignChildsOnServer="false" ActiveHierarchy="true" Name="Национальный" AltName="National" Code="1" MainParentIdent="0" Status="rsActive" Rate="10000" ISOCode="">
				<Childs ClassName="tChildCollection"/>
			</Item>
			<Item Ident="10026" ItemIdent="10026" SourceIdent="0" GUIDString="{4D845AF9-E0AE-44E0-9A7D-01385835ECB4}" AssignChildsOnServer="false" ActiveHierarchy="true" Name="Рубли" AltName="Rubles" Code="810" MainParentIdent="0" Status="rsActive" Rate="10000" ISOCode="">
				<Childs ClassName="tChildCollection"/>
			</Item>
			<Item Ident="10027" ItemIdent="10027" SourceIdent="0" GUIDString="{B7841D09-911E-4B67-8306-A89825423DF1}" AssignChildsOnServer="false" ActiveHierarchy="true" Name="Доллары США" AltName="Dollars USA" Code="100" MainParentIdent="0" Status="rsActive" Rate="300000" ISOCode="">
				<Childs ClassName="tChildCollection"/>
			</Item>
			<Item Ident="10028" ItemIdent="10028" SourceIdent="0" GUIDString="{0139E7C7-5C6C-4646-B167-0DDB1B632805}" AssignChildsOnServer="false" ActiveHierarchy="true" Name="Евро" AltName="Euro" Code="10028" MainParentIdent="0" Status="rsActive" Rate="350000" ISOCode="">
				<Childs ClassName="tChildCollection"/>
			</Item>
		</Items>
	</RK7Reference>
</RK7QueryResult>
XML

Запрос данных справочника: фильтр по списку свойств

Атрибут PropMask позволяет запросить только необходимые свойства (в данном случае Code / Name / AltName).

Запрос

<?xml version="1.0" encoding="utf-8"?>
<RK7Query>
    <RK7CMD CMD="GetRefData" RefName="Currencies" PropMask="items.(Code,Name,AltName)"/>
</RK7Query>
XML

Ответ

<?xml version="1.0" encoding="utf-8"?>
<RK7QueryResult ServerVersion="7.6.5.171" XmlVersion="247" NetName="WM-03-REPS-000" Status="Ok" CMD="GetRefData" ErrorText="" DateTime="2020-04-08T14:21:27" WorkTime="0" Processed="1">
    <RK7Reference DataVersion="517" ClassName="TCurrencies">
        <Items>
            <Item Ident="1" Code="1" Name="Рубли" AltName="Russian Rubles"/>
            <Item Ident="2" Code="2" Name="Евро" AltName="Euro"/>
            <Item Ident="3" Code="3" Name="Доллар США" AltName="Dollar USA"/>
            <Item Ident="4" Code="4" Name="Кредитная карта" AltName="VISA"/>
            <Item Ident="5" Code="5" Name="Кредитная карта Доставка" AltName="MasterCard"/>
            <Item Ident="6" Code="6" Name="Кредитка ООО Арбат" AltName="American Express"/>
            <Item Ident="7" Code="7" Name="Кредитка ИП Пашин" AltName="Diners Club"/>
            <Item Ident="8" Code="8" Name="Euro Cirrus Maestro" AltName="Euro Cirrus Maestro"/>
            <Item Ident="9" Code="9" Name="JCB" AltName="JCB"/>
            <Item Ident="10" Code="2" Name="CRM Корпор.питание" AltName="PDS payment"/>
            <Item Ident="11" Code="11" Name="Персонал" AltName="Cashless"/>
            <Item Ident="12" Code="12" Name="Закрытие на номер" AltName="Hotel Card"/>
            <Item Ident="13" Code="13" Name="Карта Plazius" AltName="Plazius Card"/>
            <Item Ident="14" Code="14" Name="Бонусы Plazius" AltName="Plazius Bonus"/>
            <Item Ident="15" Code="15" Name="Карта Plazius (предоплата)" AltName="Plazius Card (prepayment)"/>
            <Item Ident="16" Code="16" Name="Бонусы Plazius (предоплата)" AltName="Plazius Bonus (prepayment)"/>
            <Item Ident="17" Code="200017" Name="Зачёт аванса" AltName="Use Of Advance"/>
            <Item Ident="18" Code="200018" Name="Фискальный зачёт аванса (валюта)" AltName="Fiscal Use Of Advance"/>
            <Item Ident="19" Code="96" Name="Скидка Plazius" AltName="Plazius Discount"/>
            <Item Ident="20" Code="18" Name="МИР" AltName="MIR"/>
            <Item Ident="21" Code="21" Name="Скидка Plazius (предоплата) 2ФР" AltName="Plazius Discount (prepayment) 2FR"/>
            <Item Ident="22" Code="22" Name="Карта Plazius (предоплата) 2ФР" AltName="Plazius Card (prepayment) 2FR"/>
            <Item Ident="23" Code="23" Name="Бонусы Plazius (предоплата) 2ФР" AltName="Plazius Bonus (prepayment) 2FR"/>
            <Item Ident="24" Code="24" Name="Карта Plazius 2ФР" AltName="Plazius Card 2FR"/>
            <Item Ident="25" Code="200019" Name="Зачёт аванса 2ФР" AltName="Use Of Advance 2FR"/>
            <Item Ident="26" Code="200020" Name="Фискальный зачёт аванса 2ФР" AltName="Fiscal Use Of Advance 2FR"/>
            <Item Ident="1001975" Code="121" Name="Представительские расходы" AltName=""/>
            <Item Ident="1001976" Code="97" Name="Комплименты гостям" AltName=""/>
            <Item Ident="1001977" Code="98" Name="Бракераж" AltName=""/>
            <Item Ident="1002106" Code="99" Name="CRM Администрация УК" AltName=""/>
            <Item Ident="1002618" Code="100" Name="CRM Пит.персонала" AltName=""/>
            <Item Ident="1002806" Code="101" Name="БАНКЕТ (безнал)" AltName=""/>
            <Item Ident="1002910" Code="102" Name="Рубли Доставка" AltName=""/>
            <Item Ident="1003199" Code="103" Name="ЛАММА карта лояльности" AltName=""/>
            <Item Ident="1003895" Code="104" Name="FoodCards" AltName=""/>
            <Item Ident="1003896" Code="104" Name="Food" AltName=""/>
            <Item Ident="1008962" Code="105" Name="Кальян" AltName=""/>
            <Item Ident="1009519" Code="106" Name="CRM Администрация УК (Чайхона)" AltName=""/>
            <Item Ident="1009522" Code="107" Name="CRM Личные средства*" AltName=""/>
            <Item Ident="1009525" Code="108" Name="CRM Бонусы за пополнение" AltName=""/>
            <Item Ident="1010126" Code="109" Name="Деливери" AltName=""/>
            <Item Ident="1011853" Code="110" Name="Кредитная карта*" AltName=""/>
            <Item Ident="1012951" Code="111" Name="ОБЕДРУ" AltName=""/>
            <Item Ident="1012956" Code="112" Name="Оплата бонусами" AltName=""/>
            <Item Ident="1012969" Code="113" Name="FoodCard" AltName=""/>
            <Item Ident="1013095" Code="114" Name="Рубли*" AltName="Russian Rubles"/>
            <Item Ident="1013112" Code="110" Name="UDS" AltName=""/>
            <Item Ident="1013114" Code="10" Name="UDS Валюта" AltName=""/>
            <Item Ident="1013126" Code="110" Name="КРЕДИТКА Б\А" AltName=""/>
            <Item Ident="1013128" Code="17" Name="КРЕДИТКА Б\А" AltName=""/>
            <Item Ident="1013236" Code="18" Name="тест" AltName=""/>
            <Item Ident="1013237" Code="110" Name="КРЕДИТКА Б\А2" AltName=""/>
            <Item Ident="1013424" Code="115" Name="LAMA" AltName=""/>
            <Item Ident="1013439" Code="116" Name="ЛАМА" AltName=""/>
            <Item Ident="1013440" Code="115" Name="Лама" AltName=""/>
            <Item Ident="1013443" Code="103" Name="Лама" AltName=""/>
            <Item Ident="1013537" Code="116" Name="Тугрики" AltName=""/>
        </Items>
    </RK7Reference>
</RK7QueryResult>
XML

Запрос данных справочника: один элемент

Атрибут RefItemGUID позволяет запросить данные конкретного элемента из коллекции по его GUID.

Запрос

<?xml version="1.0" encoding="utf-8"?>
<RK7Query>
    <RK7CMD CMD="GetRefData" RefName="LinkedSystemsTypes" RefItemGUID="{DAAEA3F9-37DA-40DC-AFC6-2CF9B45FE10D}"/>
</RK7Query>
XML

Ответ

<?xml version="1.0" encoding="utf-8"?><RK7QueryResult ServerVersion="7.6.5.180" XmlVersion="247" NetName="OA-01-REPS-000" Status="Ok" CMD="GetRefData" ErrorText="" DateTime="2020-04-21T10:42:15" WorkTime="0" Processed="1">
    <RK7Reference BlobNames="CONFIGSCHEME" DataVersion="188">
        <Items>
            <Item Ident="6" ItemIdent="6" SourceIdent="0" GUIDString="{DAAEA3F9-37DA-40DC-AFC6-2CF9B45FE10D}" AssignChildsOnServer="false" ActiveHierarchy="true" Name="Ингредиенты блюда" AltName="Dish ingredients" Code="6" MainParentIdent="0" Status="rsActive" Parent="0" UCSPreset="pmUCS" LicenseKind="0" isTemplate="0" FilePath=".\rkpluginSHDetail.exe"/>
        </Items>
    </RK7Reference>
</RK7QueryResult>
XML

Запрос одного элемента справочника с дочерними элементами

Запрос

<?xml version="1.0" encoding="UTF-8"?>
<RK7Query>
    <RK7CMD CMD="GetRefData" RefName="Selectors" WithChildItems="3" RefItemIdent="231011"/>
</RK7Query>
XML

Ответ

<?xml version="1.0" encoding="utf-8"?>
<RK7QueryResult ServerVersion="7.6.5.185" XmlVersion="247" NetName="NAS_765_SRV" Status="Ok" CMD="GetRefData" ErrorText="" DateTime="2020-04-27T10:17:29" WorkTime="0" Processed="1">
    <RK7Reference BlobNames="FORM" DataVersion="3796">
        <Items>
            <Item Ident="231011" ItemIdent="231011" SourceIdent="0" GUIDString="{80661BC5-D884-49EE-A587-FAF267873410}" AssignChildsOnServer="false" ActiveHierarchy="true" Code="231011" Name="Селектор "Готовить позже"" AltName="Prepare later Selector" MainParentIdent="232011" Status="rsActive" VisualType_Image="0" VisualType_BColor="-16777007" VisualType_TextColor="-16777015" VisualType_Flags="bsPictureTop" SelectorGroup="232011" GoToOperation="413" Parameter="0" RefParameter="0" PageNum="0" Form="[Layout]" UCSPreset="pmUCS" FormWidth="349" FormHeight="768" Flags="[sfForm]" LargeImagePath="" AlphabeticalSort="false" ButtonTypeSort="false" ItemCodeSort="false" FormFlag="true" DefaultBehavior="false" AutoTranslate="false" RightLvl="0">
                <RIChildItems>
                    <TSelectorDetail ItemIdent="230550" SourceIdent="0" GUIDString="{CB40DD43-2648-4464-BBC1-F79AF9139301}" AssignChildsOnServer="false" TradeObject="toFuncKey" ObjectSifr="210266" refCollName="FUNCTIONKEYS" Flags="[]" OrderNum="43283" Selector="231011" PlacedOnForm="false" Ident="230550"/>
                    <TSelectorDetail ItemIdent="230551" SourceIdent="0" GUIDString="{BBE05C99-ACBE-44EF-A6F8-2DA857E63BAA}" AssignChildsOnServer="false" TradeObject="toFuncKey" ObjectSifr="210359" refCollName="FUNCTIONKEYS" Flags="[]" OrderNum="43303" Selector="231011" PlacedOnForm="false" Ident="230551"/>
                    <TSelectorDetail ItemIdent="230552" SourceIdent="0" GUIDString="{803ED150-467E-4FB5-B770-BF9D3735EA05}" AssignChildsOnServer="false" TradeObject="toFuncKey" ObjectSifr="210263" refCollName="FUNCTIONKEYS" Flags="[]" OrderNum="43323" Selector="231011" PlacedOnForm="false" Ident="230552"/>
                    <TSelectorDetail ItemIdent="230553" SourceIdent="0" GUIDString="{2D03FBB7-8115-4F11-9869-8285AA9B383C}" AssignChildsOnServer="false" TradeObject="toFuncKey" ObjectSifr="210269" refCollName="FUNCTIONKEYS" Flags="[]" OrderNum="43343" Selector="231011" PlacedOnForm="false" Ident="230553"/>
                    <TSelectorDetail ItemIdent="230554" SourceIdent="0" GUIDString="{09F9A928-15D4-4E55-BA56-95D272D6E620}" AssignChildsOnServer="false" TradeObject="toFuncKey" ObjectSifr="210270" refCollName="FUNCTIONKEYS" Flags="[]" OrderNum="43363" Selector="231011" PlacedOnForm="false" Ident="230554"/>
                    <TSelectorDetail ItemIdent="230555" SourceIdent="0" GUIDString="{9B30372A-97E4-4183-8FBF-A779FBBAFA48}" AssignChildsOnServer="false" TradeObject="toFuncKey" ObjectSifr="210268" refCollName="FUNCTIONKEYS" Flags="[]" OrderNum="43383" Selector="231011" PlacedOnForm="false" Ident="230555"/>
                    <TSelectorDetail ItemIdent="230556" SourceIdent="0" GUIDString="{78F31BE4-F511-4CDD-B283-266005239697}" AssignChildsOnServer="false" TradeObject="toFuncKey" ObjectSifr="210260" refCollName="FUNCTIONKEYS" Flags="[]" OrderNum="43403" Selector="231011" PlacedOnForm="false" Ident="230556"/>
                </RIChildItems>
            </Item>
        </Items>
    </RK7Reference>
</RK7QueryResult>
XML

Запрос группы селекторов с заданным guid и перечнем необходимых полей

Запрос

<?xml version="1.0" encoding="UTF-8"?>
<RK7Query>
    <RK7CMD CMD="GetRefData" RefName="SelectorGroups" RefItemGUID="{7CB21801-1111-43DE-AF72-0037F53E3777}" PropMask="Ident, GuidString, Status, Name"/>
</RK7Query>
XML

Ответ

<?xml version="1.0" encoding="utf-8"?>
<RK7QueryResult ServerVersion="7.6.5.185" XmlVersion="247" NetName="NAS_765_SRV" Status="Ok" CMD="GetRefData" ErrorText="" DateTime="2020-04-27T11:37:41" WorkTime="0" Processed="1">
    <RK7Reference DataVersion="1716">
        <Items>
            <Item Ident="1001348" GUIDString="{7CB21801-1111-43DE-AF72-0037F53E3777}" Name="Новое меню" Status="rsActive"/>
        </Items>
    </RK7Reference>
</RK7QueryResult>
XML