Top.Mail.Ru
Настройка СЭМД-beta для ВИМИС Санкт-Петербурга: АкиНео, Онко, Профилактика – три подсистемы в одной инструкции — ADMINMED.ru

Настройка СЭМД-beta для ВИМИС Санкт-Петербурга: АкиНео, Онко, Профилактика – три подсистемы в одной инструкции

Коллеги, привет! Мы уже разобрали по отдельности настройку выгрузки протоколов в ВИМИС АкиНео и ВИМИС Онко. Теперь в руки попал третий комплект – ВИМИС Профилактика. Оказалось, что все три подсистемы используют один и тот же базовый CDA-шаблон «Прием (осмотр) врача-специалиста» (код 341, идентификатор формата 159), но отличаются справочниками диагнозов, набором полей и некоторыми техническими нюансами. Чтобы не плодить три отдельные статьи, я собрал всё в одну – сравнил, обобщил и выделил ключевые различия. Поехали.


Что такое ВИМИС АкиНео, Онко и Профилактика

Это региональные подсистемы Санкт-Петербурга:

  • ВИМИС АкиНео – для протоколов акушеров-гинекологов (наблюдение беременности, гинекологические заболевания).
  • ВИМИС Онко – для протоколов онкологов (злокачественные новообразования, диспансерное наблюдение).
  • ВИМИС Профилактика – для протоколов профилактических осмотров (диспансеризация, профилактические консультации).

Все три принимают СЭМД-beta на базе документа «Прием (осмотр) врача-специалиста» (код 341) с идентификатором формата CDA 159. Базовая структура XML-шаблона одинаковая, но в каждой подсистеме свои требования к справочникам диагнозов и составу заполняемых секций.


Что общего у всех трёх подсистем

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

1. Тип действия

  • Код для отчётов – обязательно OtherDocuments.
  • Идентификатор документа – настраивается через счётчик (раздел «Настройки – Счётчики»). Создайте отдельный счётчик для каждого типа действия (или один на все, но лучше разные).
  • Связь с номенклатурной услугой – на вкладке «Основная информация» выберите соответствующую услугу (приём акушера-гинеколога, онколога или врача по профилактике). Услуга должна иметь идентификацию по справочнику 1.2.643.5.1.13.13.11.1070.

2. Идентификация типа действия (обязательная для всех)

На вкладке «Идентификация» добавьте запись:

  • Внешняя система1.2.643.2.69.1.1.1.195.Cda
  • Код159

Это ключ, по которому система понимает, что формируется СЭМД-beta.

3. Свойства и секции CDA

Для каждого типа действия создайте свойства, заполнив параметр «Секция CDA» по таблице. Вот перечень секций, которые есть во всех трёх шаблонах (обязательные отмечены «1»):

Назначение секцииКод секции CDAОбязат-тьТип свойства
ЖалобыCOMPLAINTS0Text
Анамнез заболеванияANAM1Text (можно несколько)
Анамнез жизниANAMZ1Text (можно несколько)
Эпидемиологический анамнезEPIDANAM0Text
Пульс (1/мин)PULSE0Integer
АД систолическоеPRESSURES0Integer
АД диастолическоеPRESSURED0Integer
Температура тела (°C)TEMP0Double
Сатурация (%)SATURATION0Integer
Общее состояние пациентаCONDIT1Справочник (OID 1.2.643.5.1.13.13.11.1006)
Данные осмотраOBJECT1Text (можно несколько)
Оценка сознанияCONSCIOUS0Справочник (OID 1.2.643.5.1.13.13.11.1531)
Дата установления диагнозаDIAGDATE1Date
Клинический диагноз (текст)DIAGN1Text
РекомендацииRECOM0Text
ЗаключениеCONCL1Text (можно несколько)

4. Региональный идентификатор пациента (общий для всех)

Все три подсистемы требуют формирования регионального идентификатора пациента через clientGlobalIdNetrika. Убедитесь, что:

  • Ревизия ИЭМК не ниже 28080.
  • В глобальных настройках есть запись ExtendedMseUrl со значением http://${dbServerName}/extendedmse/api.
  • В основном шаблоне печати добавлены строки:
  {: from library.Utils import forceString}
  {: clientGlobalIdNetrika = readUrl("http://"+forceString(dbServerName)+"/extendedmse/api?fromtemplate=1&clientid="+forceString(client.id), timeout=50)}
  • В конфиге ИЭМК прописаны gDefaultMpiUrl и gMpiToken.

5. Проверки в основном шаблоне печати (общие для всех)

В шаблон PDF-протокола добавьте следующие проверки (они идентичны для всех трёх подсистем):

Дата выдачи документа:

{if: not client.document.date}
{: from PyQt4.QtGui import QMessageBox as mb}
{mb.critical(None, u'Проверка заполнения данных', u'ВНИМАНИЕ!\n\n' + u'Не заполнена дата выдачи документа, удостоверяющего личность пациента.\n', mb.Ok, mb.Ok)}
{exit(0)}
{end:}

СНИЛС:

{if: not client.SNILS}
{: from PyQt4.QtGui import QMessageBox as mb}
{mb.critical(None, u'Проверка заполнения данных', u'ВНИМАНИЕ!\n\n' + u'Не заполнен СНИЛС пациента.\n', mb.Ok, mb.Ok)}
{exit(0)}
{end:}

Полис ОМС:

{if: not client.compulsoryPolicy.number}
{: from PyQt4.QtGui import QMessageBox as mb}
{mb.critical(None, u'Проверка заполнения данных', u'ВНИМАНИЕ!\n\n' + u'Не заполнены данные о полисе ОМС пациента.\n', mb.Ok, mb.Ok)}
{exit(0)}
{end:}

Адрес фактического проживания:

{if: not client.locAddress}
{: from PyQt4.QtGui import QMessageBox as mb}
{mb.critical(None, u'Проверка заполнения данных', u'ВНИМАНИЕ!\n\n' + u'Не заполнен адрес проживания пациента.\n', mb.Ok, mb.Ok)}
{exit(0)}
{end:}

6. Подключение XML-шаблона

В основном шаблоне печати добавьте строку:

  • Для АкиНео: {: addSupplement('xml', formatByTemplate('VIMIS_AkiNeo', 'CDA')) }
  • Для Онко: {: addSupplement('xml', formatByTemplate('VIMIS_ONKO', 'CDA')) }
  • Для Профилактики: {: addSupplement('xml', formatByTemplate('VIMIS_prof', 'CDA')) }

Названия шаблонов должны точно соответствовать тем, что загружены в МИС.


Таблица различий между подсистемами

А теперь самое интересное – чем они отличаются. Свёл в таблицу для наглядности.

ПараметрВИМИС АкиНеоВИМИС ОнкоВИМИС Профилактика
Справочник диагнозов (OID)1.2.643.2.69.1.1.1.1651.2.643.2.69.1.1.1.1671.2.643.2.69.1.1.1.229
Дополнительная идентификация типа действияне требуется1.2.643.5.1.13.13.11.1463 (тип консультации)1.2.643.5.1.13.13.99.2.797 (тип консультации)
Секция «План лечения»нетнетесть (код PLAN)
Часовой пояс в effectiveTime / low / high+0300+0400+0400
Тип документируемого события (код)11 (Диспансерное наблюдение)29 (Приём врача-специалиста)29 (Приём врача-специалиста)
Настройка типа события (код ЕГИСЗ)общий для амбулаторного приёмаобщий для амбулаторного приёмаобщий для амбулаторного приёма

Разберём каждый пункт подробнее.

Справочник диагнозов

Это самый критичный момент. Если диагноз будет выставлен не из того справочника, CDA не пройдёт валидацию. Убедитесь, что:

  • В случае обслуживания (обращении) для акушера-гинеколога используется справочник с OID 1.2.643.2.69.1.1.1.165.
  • Для онколога – 1.2.643.2.69.1.1.1.167.
  • Для профилактических осмотров – 1.2.643.2.69.1.1.1.229.

Если в вашей МИС диагнозы по умолчанию берутся из другого справочника, создайте отдельные типы событий для каждого профиля и привяжите к ним нужные справочники диагнозов.

Дополнительная идентификация типа действия

  • АкиНео – обходится без неё (тип консультации определяется по специальности врача).
  • Онко – требуется идентификация по OID 1.2.643.5.1.13.13.11.1463 (код) и 1.2.643.5.1.13.13.11.1463* (наименование). Укажите код, соответствующий онкологической консультации (например, 28).
  • Профилактика – требуется идентификация по OID 1.2.643.5.1.13.13.99.2.797. Здесь указывается тип консультации из справочника типов консультаций.

Секция «План лечения»

В шаблоне Профилактики есть дополнительная секция с кодом PLAN (в инструкции она называется «План лечения»). В XML-шаблоне она не вынесена в текст, но в свойствах типа действия для Профилактики нужно добавить свойство с секцией PLAN типа Text. В АкиНео и Онко этой секции нет.

Часовой пояс

Обратите внимание на effectiveTime и low/high в <serviceEvent>:

  • В АкиНео везде стоит +0300 (московское время).
  • В Онко и Профилактике – +0400 (самарское время, которое иногда используют в СПб для каких-то подсистем).

Если ваш регион работает по московскому времени, а в шаблоне Онко или Профилактики стоит +0400, нужно исправить в XML-шаблоне на +0300. Либо согласовать с МИАЦ, какой пояс они ждут. Я рекомендую проверить актуальные требования – в разных версиях шаблонов могло меняться.

Тип документируемого события

  • В АкиНео код 11 – «Диспансерное наблюдение».
  • В Онко и Профилактике код 29 – «Прием (осмотр) врача-специалиста».

Это логично: акушер-гинеколог ведёт диспансерное наблюдение беременных, а онколог и врач по профилактике проводят разовые приёмы.


Пошаговая инструкция (с учётом различий)

Шаг 1. Создайте три типа действия (или скопируйте существующие)

Названия, например:

  • Прием (осмотр) акушера-гинеколога (ВИМИС АкиНео)
  • Прием (осмотр) врача-онколога (ВИМИС Онко)
  • Прием (осмотр) профилактический (ВИМИС Профилактика)

Шаг 2. Для каждого типа действия

  • Установите код для отчётов OtherDocuments.
  • Настройте идентификатор документа через счётчик.
  • На вкладке «Идентификация» добавьте запись 1.2.643.2.69.1.1.1.195.Cda159.
  • Для Онко добавьте вторую идентификацию: 1.2.643.5.1.13.13.11.1463 (укажите код онкологической консультации) и 1.2.643.5.1.13.13.11.1463* (наименование).
  • Для Профилактики добавьте вторую идентификацию: 1.2.643.5.1.13.13.99.2.797 (код типа консультации).
  • На вкладке «Основная информация» выберите соответствующую номенклатурную услугу (убедитесь, что у неё есть идентификация по 1070).
  • Создайте свойства с секциями CDA по общей таблице.
  • Для Профилактики дополнительно создайте свойство с секцией PLAN (тип Text).

Шаг 3. Настройте типы событий (обращения)

Для каждого профиля может потребоваться отдельный тип события с разными справочниками диагнозов. Убедитесь, что:

  • В типе события для акушерства-гинекологии диагнозы берутся из справочника 1.2.643.2.69.1.1.1.165.
  • Для онкологии – из 1.2.643.2.69.1.1.1.167.
  • Для профилактики – из 1.2.643.2.69.1.1.1.229.

Также у типа события должен быть заполнен «Код ЕГИСЗ» (обычно код амбулаторного приёма, уточните в МИАЦ).

Шаг 4. Настройте идентификации (общие)

  • Организация – MDR308.
  • Должность врача – 1.2.643.5.1.13.13.11.1002.
  • Номенклатурная услуга – 1.2.643.5.1.13.13.11.1070.

Шаг 5. Проверьте региональный идентификатор пациента

Убедитесь, что выполнены все условия из раздела «Общее» (ревизия ИЭМК, глобальные настройки, конфиг ИЭМК). Иначе в XML вместо clientGlobalIdNetrika будет пустота.

Шаг 6. Добавьте проверки в основной шаблон печати

Скопируйте блоки проверок из статьи в ваш PDF-шаблон (тот, который открывается по кнопке «Печать»). Они одинаковы для всех трёх подсистем.

Шаг 7. Подключите XML-шаблоны

В основном шаблоне печати добавьте строки addSupplement для каждого типа действия (или создайте отдельные PDF-шаблоны под каждую подсистему). Убедитесь, что имена шаблонов XML совпадают с загруженными.

Шаг 8. Протестируйте

Создайте тестовый случай обслуживания для каждого профиля, заполните все обязательные поля, нажмите «Печать». Если проверки пройдут – сформируется PDF и XML. Откройте XML и проверьте:

  • Диагноз – из нужного справочника.
  • Часовой пояс – правильный.
  • Идентификатор пациента – не пустой.
  • Секция PLAN (для Профилактики) – заполнена, если вы её добавили.

Частые ошибки и как их избежать

  1. Диагноз из другого справочника – самая частая причина отказа в валидации. Создайте отдельные типы событий и жёстко привяжите к ним нужные справочники.
  2. Пустой clientGlobalIdNetrika – проверьте настройки ИЭМК и глобальные настройки.
  3. Неправильный часовой пояс – сверьте с требованиями МИАЦ. Если нужно +0300, а в шаблоне +0400 – исправьте в XML.
  4. Отсутствует идентификация типа действия – для Онко и Профилактики требуются дополнительные идентификации, не забудьте их добавить.
  5. Не заполнены обязательные проверки – без даты выдачи документа, СНИЛС, полиса или адреса CDA не сформируется. Обучите врачей заполнять эти поля.

Заключение

Настройка трёх ВИМИС-подсистем – задача объёмная, но вполне решаемая. Благодаря единой базе CDA-шаблона вы можете скопировать тип действия и внести в него небольшие изменения: поменять справочник диагнозов, добавить идентификацию, а для Профилактики – ещё и секцию «План лечения».

Главное – не перепутайте, какой справочник к какой подсистеме относится. И не забудьте про проверки в основном шаблоне печати – они спасут от массы ошибок.

Если у вас остались вопросы – пишите, постараюсь помочь. Удачи с интеграцией

Добавить комментарий

© 2026 ADMINMED.ru

Login





Loading...

Top.Mail.Ru
👁 0
  Яндекс.Метрика