Гармонизация — способ привязки пользовательских номенклатурных позиций к
номенклатурным позициям РЛС®.
Пользовательская номенклатурная позиция может быть описана произвольно,
но желательно максимально полно.
Например, при запросе "Контрактубекс" подаем на вход метода гармонизации
номенклатурный метод inventory_brief с
параметром pos:
/api/inventory_brief?pos=Контрактубекс
В ответ система присылает две позиции:
<ArrayOfBrief_inventory xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<brief_inventory>
<packing_id>21139</packing_id>
<desc_id>48387</desc_id>
<prep_id>6853</prep_id>
<prep_short>КОНТРАКТУБЕКС гель д/наружн. прим.</prep_short>
<prep_full>КОНТРАКТУБЕКС гель для наружного применения</prep_full>
<packing_short>туб. алюм. 50 г - пач. картон.</packing_short>
<packing_full>туба алюминиевая 50 г - пачка картонная</packing_full>
<barcode>4008491309783, 4046222309787</barcode>
<firms_id>1020</firms_id>
<firms>Мерц Фарма ГмбХ и Ко. КГаА (Германия)</firms>
<as_id>681</as_id>
<as_name_rus>Аллантоин + Гепарин натрия + Лука репчатого луковиц экстракт</as_name_rus>
<reg_id>7322</reg_id>
<reg_status_id>2</reg_status_id>
<registration>П N015096/01 (16.07.2010) - Мерц Фарма ГмбХ и Ко. КГаА (Германия) - действует</registration>
<ntfr_id>4</ntfr_id>
<ntfr_name>Лекарственные средства</ntfr_name>
<lifetime_text>4 года</lifetime_text>
<lifetime_month>48.00</lifetime_month>
<sc_short>Сух., t не выше 25 °C</sc_short>
<sc_text>В сухом месте, при температуре не выше 25 °C</sc_text>
<actdate>2020-01-13T00:00:00</actdate>
<weight>180</weight>
<dosage_form_id>60</dosage_form_id>
<dosage_form_full_name>гель для наружного применения</dosage_form_full_name>
</brief_inventory>
<brief_inventory>
<packing_id>21138</packing_id>
<desc_id>48387</desc_id>
<prep_id>6853</prep_id>
<prep_short>КОНТРАКТУБЕКС гель д/наружн. прим.</prep_short>
<prep_full>КОНТРАКТУБЕКС гель для наружного применения</prep_full>
<packing_short>туб. алюм. 20 г - пач. картон.</packing_short>
<packing_full>туба алюминиевая 20 г - пачка картонная</packing_full>
<barcode>4008491309790, 4046222309794</barcode>
<firms_id>1020</firms_id>
<firms>Мерц Фарма ГмбХ и Ко. КГаА (Германия)</firms>
<as_id>681</as_id>
<as_name_rus>Аллантоин + Гепарин натрия + Лука репчатого луковиц экстракт</as_name_rus>
<reg_id>7322</reg_id>
<reg_status_id>2</reg_status_id>
<registration>П N015096/01 (16.07.2010) - Мерц Фарма ГмбХ и Ко. КГаА (Германия) - действует</registration>
<ntfr_id>4</ntfr_id>
<ntfr_name>Лекарственные средства</ntfr_name>
<lifetime_text>4 года</lifetime_text>
<lifetime_month>48.00</lifetime_month>
<sc_short>Сух., t не выше 25 °C</sc_short>
<sc_text>В сухом месте, при температуре не выше 25 °C</sc_text>
<actdate>2020-01-13T00:00:00</actdate>
<weight>180</weight>
<picname>193.gif</picname>
<dosage_form_id>60</dosage_form_id>
<dosage_form_full_name>гель для наружного применения</dosage_form_full_name>
</brief_inventory>
</ArrayOfBrief_inventory>
В каждой позиции указан вес релевантности <weight>180</weight>.
Если указать более точный входной запрос, например "Контрактубекс 50
г":
/api/inventory_brief?pos=Контрактубекс_50г
То система также вернет две позиции, но позиция <packing_id>21139</packing_id>
будет иметь вес
<weight>230</weight>, т.к.
дополнительно совпадет объем тубы,
а позиция <packing_id>21138</packing_id>
только <weight>180</weight>. Таким
образом, выбрав из предложенных вариантов первый, мы получим более
точное совпадение.
Из этих номенклатурных позиций РЛС можно получить полезный атрибут <desc_id>48387</desc_id>,
с которым можно обратиться в метод получения текста описания:
/api/library_solid_description?desc_id=48387.
Таким образом, подписчик должен создать программу, которая:
1) последовательно запись за записью передает пользовательскую
номенклатурную строку в метод гармонизации с параметром
pos (и firm, если есть) — api/inventory_brief?pos=...&firm=...;
2) автоматически выбирает из результирующих записей первый, самый
подходящий вариант или предоставляет эксперту возможность выбрать
вариант из предложенных;
3) сохраняет в собственной базе данных в специальных таблицах
соответствие польз_номен_ID <->
packing_id и польз_номен_ID <->
desc_id.
Для обращения к системе будут использованы коды РЛС® Авроры из
этих таблиц соответствий. Таким образом, подписчик проводит гармонизацию
при помощи поискового метода Авроры и результаты гармонизации
сохраняются только у подписчика.
Если не хочется заниматься с номенклатурой РЛС®, а также
учитывая, что не каждая номенклатурная позиция РЛС® имеет
ссылку на описание/инструкцию, то методом
/api/library_solid_description
(БЕЗ ПАРАМЕТРОВ!) можно получить полный список доступных через сервис
описаний со ссылками desc_id. Затем необходимо привязать этот список к
пользовательской номенклатуре самостоятельно, например, просматривая два
списка.