С полным описанием формата можно ознакомиться в документации "SetRetail10". Подробнее о формате Crystal можно узнать на сайте http://crystals.ru/ В данном разделе приведено описание особенностей загружаемых справочников и перечень расширений формата для более полного использования функционала Artix.
Формат Crystal в ПО Artix использует только кодировку UTF-8
.
Требования к продаже товаров
Визуальный контроль товара
Добавление перечня товаров требующих визуальное подтверждение. Целью может быть осмотр целостности и соответствия товара или снятие противокражных датчиков.
<goodsData> <goods_type> <product_type>VisualAuthEntity</product_type> </goods_type> <goods> <Code>2400338</Code> </goods> <goods> <Code>2400339</Code> </goods> <goods> <Code>2400340</Code> </goods> </goodsData>
Обязательный ввод количества
Добавление перечня товаров, требующих обязательный ввод количества. При покупке товара, который отпускается по нескольку штук, или весового товара, который взвешивается непосредственно на кассе, кассиру будет предложено ввести требуемое количество товара или выполнить взвешивание. Признак товара весовой или штучный задается единицей измерения товара.
<goodsData> <goods_type> <product_type>InputQuantEntity</product_type> </goods_type> <goods> <Code>2400338</Code> </goods> <goods> <Code>2400339</Code> </goods> <goods> <Code>2400340</Code> </goods> </goodsData>
Добавление карт
В формате Crystal могут быть загружены карты клиента:
<cards-catalog> <client deleted="false" guid="111" lastName="Иванов"> <internal-card-type deleted="false"> <internal-card deleted="false" numberField="123" discountpercent="5" amount="333" expirationDate="2014-02-24"> </internal-card> </internal-card-type> </client> </cards-catalog>
Загрузка алкогольной продукции
Для загрузки алкогольной продукции в формате Crystal справочник товаров необходимо дополнить полями:
Наименование | Тип данных | Возможные значения | Описание |
---|---|---|---|
excise | логический |
| Признак акцизной алкогольной продукции |
volume | строковый | Емкость акцизного товара |
<good marking-of-the-good="00118321"> <shop-indices>17</shop-indices> <name>Напиток ПОРТВЕЙН 7777 винный 14 % 0,7 л стекло</name> <bar-code code="4601351005681"> <count>1</count> <default-code>true</default-code> </bar-code> <excise>true</excise> <plugin-property key="alcoholic-content-percentage" value="14.000"/> <plugin-property key="volume" value="0.700"/> <product-type>ProductSpiritsEntity</product-type> <price-entry price="97.00"> <begin-date>2016-05-20T00:00:00.000</begin-date> <end-date>2061-05-07T23:59:59.000</end-date> <number>1</number> <department number="1"> <name>Отдел №1</name> </department> </price-entry> <vat>18.0</vat> <group id="2390"> <name>Вермуты аперитивы винные напитки мартини</name> <parent-group id="2391"> <name>Вино</name> <parent-group id="2389"> <name>Алкогольные напитки</name> <parent-group id="1714"> <name>ПРОДОВОЛЬСТВЕННЫЕ ТОВАРЫ</name> </parent-group> </parent-group> </parent-group> </group> <measure-type id="шт"> <name>шт</name> </measure-type> <delete-from-cash>false</delete-from-cash> <plugin-property key="precision" value="1"/> </good>
Загрузка табачной продукции
Для загрузки табачной продукции в формате Crystal справочник товаров необходимо дополнить полем:
Наименование | Тип данных | Возможные значения | Описание |
---|---|---|---|
marked | логический |
| Признак маркированной табачной продукции |
<good marking-of-the-good="00757112"> <shop-indices>5</shop-indices> <name>Сигареты ПЕТР 1 Эталон компакт премиум 100S</name> <bar-code code="4600439935643" marked="true"> <count>1</count> <default-code>true</default-code> </bar-code> <plugin-property key="mrc"> <plugin-property key="price" value="100.000"/> </plugin-property> <product-type>ProductPieceEntity</product-type> <price-entry price="100.00"> <begin-date>2019-11-12T00:00:00.000</begin-date> <end-date>2061-05-07T23:59:59.000</end-date> <number>1</number> <department number="1"> <name>Отдел №1</name> </department> </price-entry> <vat>0.0</vat> <measure-type id="шт"> <name>шт</name> </measure-type> <delete-from-cash>false</delete-from-cash> <plugin-property key="precision" value="1"/> </good>
Загрузка обувных товаров
Для загрузки обувных товаров в формате Crystal справочник товаров необходимо дополнить полями:
Наименование | Тип данных | Возможные значения | Описание | Примечания |
---|---|---|---|---|
marked | логический |
| Признак маркированного обувного товара | |
mark-type | строковый | FOOTWEAR | Тип маркировки: обувь | Работает в связке с marked = true |
<good marking-of-the-good="45045"> <shop-indices>1</shop-indices> <name>Сапоги кирзовые</name> <bar-code code="4600605050500" marked="true"> <count>1</count> <default-code>true</default-code> </bar-code> <mark-type>FOOTWEAR</mark-type> <product-type>ProductPieceEntity</product-type> <price-entry price="2800.80"> <begin-date>2011-07-23T00:00:00.000</begin-date> <end-date>2075-07-09T00:00:00.000</end-date> <number>1</number> <department number="1"> <name>Отдел №1</name> </department> </price-entry> <vat>0.0</vat> <measure-type id="шт"> <name>шт</name> </measure-type> <delete-from-cash>false</delete-from-cash> <plugin-property key="precision" value="1"/> </good>
Загрузка маркированных товаров
Для загрузки маркированных товаров в формате Crystal справочник товаров необходимо дополнить полями:
Наименование | Тип данных | Возможные значения | Описание | Примечания |
---|---|---|---|---|
marked | логический |
| Признак маркированного товара | |
mark-type | строковый | WHATEVER или любое другое, | Тип маркировки: маркированный товар | Работает в связке с marked = true |
<good marking-of-the-good="45099"> <shop-indices>1</shop-indices> <name>Сапоги кирзовые</name> <bar-code code="4650075190159_odin" marked="true"> <count>1</count> <default-code>true</default-code> </bar-code> <bar-code code="4650075190159_dwa" marked="false"> <count>1</count> <default-code>false</default-code> </bar-code> <mark-type>WHATEVER</mark-type> <product-type>ProductPieceEntity</product-type> <price-entry price="2800.80"> <begin-date>2011-07-23T00:00:00.000</begin-date> <end-date>2075-07-09T00:00:00.000</end-date> <number>1</number> <department number="1"> <name>Отдел №1</name> </department> </price-entry> <vat>0.0</vat> <group id="1"> <name>Кожа</name> </group> <measure-type id="шт"> <name>шт</name> </measure-type> <delete-from-cash>false</delete-from-cash> <plugin-property key="precision" value="1"/> </good>
Установка минимальной цены
При загрузке товара в формате crystal значение минимальной цены рассчитывается при загрузке товара в зависимости от разрешенной максимальной скидки на данный товар:
- размер скидки определяется тегом
MAX_DISCOUNT_PERCENT
, - минимальная цена определяется тегом
MIN_PRICE
.
Теги взаимодействуют следующим образом:
- Если тег
MAX_DISCOUNT_PERCENT
устанавливается в значение 0, то в переоценках товара минимальная цена устанавливается равной основной цене. Значение тегаMIN_PRICE
игнорируется. - Если тег
MAX_DISCOUNT_PERCENT
устанавливается в значение 100, то в переоценках товара устанавливается минимальная цена из тегаMIN_PRICE
. Если теги
MAX_DISCOUNT_PERCENT
принимает некоторое промежуточное значением между 0 и 100, то сравнивается минимальная цена, предоставляемая тегамиMAX_DISCOUNT_PERCENT
иMIN_PRICE
. В переоценки будет установлена минимальная цена с большим значением.ПримерПример 1
Загружается справочник с товаром, цена которого 37 рублей. В теге
MAX_DISCOUNT_PERCENT
установлена скидка 15%. В тегеMIN_PRICE
установлена минимальная цена 23 рубля. В БД для данного товара будет установлено значение минимальной цены по тегуMAX_DISCOUNT_PERCENT
. Минимальная цена будет равна 31,45 рубля.Пример 2
Загружается справочник с товаром, цена которого 37 рублей. В теге
MAX_DISCOUNT_PERCENT
установлена скидка 45%. В тегеMIN_PRICE
установлена минимальная цена 36 рублей. В БД для данного товара будет установлено значение минимальной цены по тегуMIN_PRICE
. Минимальная цена будет равна 36 рублей.
<goods-catalog> <good marking-of-the-good="00219784"> <shop-indices>1</shop-indices> <name>Бульон СКОРОВАР мясной 75 гр.</name> <bar-code code="4603994010145"> <count>4</count> <default-code>true</default-code> <price-entry price="17.00"> <begin-date>2013-11-20T10:00:00.000</begin-date> <end-date>2061-05-07T23:59:59.000</end-date> <number>1</number> <department number="3"> <name>1</name> </department> </price-entry> </bar-code> <product-type>ProductPieceEntity</product-type> <price-entry price="14.00"> <begin-date>2013-11-20T00:00:00.000</begin-date> <end-date>2061-05-07T23:59:59.000</end-date> <number>1</number> <department number="3"> <name>1</name> </department> </price-entry> <vat>18.0</vat> <measure-type id="шт"> <name>шт</name> </measure-type> <group id="111"> <name>Колбасы</name> <parent-group id="11"> <name>Колбасные изделия</name> <parent-group id="1"> <name>Продукты</name> </parent-group> </parent-group> </group> <delete-from-cash>false</delete-from-cash> <plugin-property key="precision" value="0.001"/> </good> <max-discount-restriction id="GOOD-840004" subject-type="GOOD" subject-code="00219784" type="MAX_DISCOUNT_PERCENT" value="0"> <since-date>2013-11-18T00:00:00.000</since-date> <till-date>2063-11-18T23:59:59.000</till-date> <since-time>00:00:00.000</since-time> <till-time>23:59:59.000</till-time> <deleted>false</deleted> <days-of-week>MO TU WE TH FR SA SU</days-of-week> </max-discount-restriction> <min-price-restriction id="GOOD-840004" subject-type="GOOD" subject-code="00219784" type="MIN_PRICE" value="5"> <since-date>2013-11-18T00:00:00.000</since-date> <till-date>2063-11-18T23:59:59.000</till-date> <since-time>00:00:00.000</since-time> <till-time>23:59:59.000</till-time> <deleted>false</deleted> <days-of-week>MO TU WE TH FR SA SU</days-of-week> </min-price-restriction> </goods-catalog>