Пожалуйста, сначала прочитайте статью полностью и только потом приступайте к выполнению шагов!

Для того, чтобы скопировать программу страхования Витакарты из одной базы данных в другую нужно проделать следующие действия:

1. Выполнить скрипт – Warranty_Program_ExportToSQL_SP. Он добавит хранимую процедуру, которая на основе выбранной программы страхования сформирует XML-документ.

Содержимое скрипта приведено ниже:

Перейти к статье »

Для того, чтобы на основе какой-либо сущности сделать экспорт объекта этой сущности в SQL-скрипт (для быстрого переноса элемента в другую БД), в Витакарте предусмотрен следующий механизм:

Заходим в “Администрирование”-“Дополнительные команды пользовательского интерфейса”, добавляем новую команду. В поле “Наименование” вводим название вновь создаваемого действия, оно будет выводиться в меню на той сущности, для которой создаётся действие. В поле “Команда” выбираем “Действие”. В поле “Отображать на сущности” выбираем TEMPLATE_FIELD. В поле хранимая процедура прописываем spx_TEMPLATE_FIELD_ExportToSql. Затем добавляем два параметра. Все данные для заполнения видны на скриншотах:

Добавляем первый параметр

Перейти к статье »

Пример скрипта с отображением результата запроса в виде XML:

Скачать пример SQL-скрипта ResultToXML

После добавления нового ЛПУ с кодом ЛПУ, который уже есть у какого-то другого ЛПУ в базе данных и если у этого ЛПУ есть настройки (запись в LPU_SETTINGS), то при попытке перезапуска службы она уже не запустится и в системном логе событий появится ошибка:

Решением проблемы будет, только исправление этого кода напрямую в БД.

К счастью, можно эту проблему предусмотреть и не допустить. В программе “Витакарта” есть возможность добавить своеобразный триггер (действия при изменении объектов), который будет срабатывать каждый раз при изменении, добавлении или удалении объекта сущности. Этот триггер в свою очередь будет запускать хранимую процедуру, которая будет проверять есть ли в базе данных уже  ЛПУ с таким кодом и если ЛПУ с таким кодом есть, то пользователю отобразится ошибка и запись в базу данных произведена не будет.

Перейти к статье »

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

Но, иногда, возникает необходимость для всех пользователей в каком-то списке, в программе, например, добавить столбец. Если пользователей много, то, отдельно, каждому пользователю это делать трудозатратно. Есть возможность сбросить контексты всех пользователе и установить для них по умолчанию контекст какого-то одного пользователя. Мы с вами рассмотрим это на примере добавления столбца “Номер”, в списке исследований при просмотре амбулаторной карты, для всех пользователей.

Перейти к статье »

В лексеме “Параметр” реализована возможность настройки валидации и фильтра, используя текстовое представление лексем. Другими словами, теперь появилась возможность проверять значения, которые запрашиваются у пользователя через лексему “Параметр”.

Пример простой валидации, которая, при формировании отчёта, запрещает указывать дату рождения больше 01.01.2010 года:

Перейти к статье »

RabbitMQ (черновик)

Posted: 27th Январь 2018 by lis in RabbitMQ

Чтобы проверить работает ли RabbitMQ нужно в командной строке ввести команду:

Если в результате выполнения команды ничего не отобразится, то значит порт 5672 служба RabbitMQ не слушает, нужно проверить запущена ли сама служба.

При работе с электронными больничными выходит ошибка:

Перейти к статье »

В начале скрипта дописываем begin tran, как на следующем примере:

Перейти к статье »

Иногда, при открытии XML-файлов в текстовом редакторе, содержимое отображается в одну строку, что не удобно для просмотра структуры документа.

Пример:

Перейти к статье »