Навигация:  МОДУЛЬ "УЧЕТ УСЛУГ" > ФИНАНСОВЫЕ ДОКУМЕНТЫ > Талоны >

Пересчет талонов

Предыдущая страницаВернуться в начало главыСледующая страница

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

·цена на услугу;

·тип цены в наборе услуг;

·тип цены в медицинской программе;

·скидка в договоре.

Пересчет не осуществляется для следующих услуг:

·услуги, цены которых были отредактированы вручную и значение поля Свободная цена в таблице Оказанные услуги для которых равно "Да";

·услуги талонов, по которым был сгенерирован счет;

·услуги, проведенные по медицинским программам, в которые эти услуги не входили (на момент проведения).

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

Подбор прикрепления осуществляется по следующему алгоритму:

1.если услуга была проведена за счет пациента и найдено одно возможное прикрепление, услуга проводится по нему (без дополнительных сообщений);

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

3.если услуга была проведена по прикреплению и найдено одно возможное прикрепление, услуга проводится по найденному прикреплению (без дополнительных сообщений);

4.если услуга была проведена по прикреплению и не найдено ни одного возможного прикрепления, услуга проводится за счет пациента (без дополнительных сообщений);

5.если услуга была проведена по прикреплению и найдено более одного возможного прикрепления, среди которых то, по которому она была проведена,  услуга проводится по этому же прикреплению (без дополнительных сообщений);

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

Пересчет талонов запускается следующим образом:

 

1.выполнить команду меню Услуги / Талоны и с помощью фильтра отобрать талоны, которые следует пересчитать;

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

215

3.в меню кнопки Операции с талонами выбрать один из пунктов: Пересчитать талоны или Пересчитать талоны и подобрать прикрепления;

4.подтвердить вопрос о пересчете отобранных талонов.

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

·обработать ситуацию — открыть проблемный талон на редактирование и произвести необходимые изменения;

·отложить — обработать ситуацию после пересчета всех талонов;

·прервать — прервать процедуру пересчета талонов.

Пример использования пересчета талонов

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

Чтобы исправить цены в талонах, требуется выполнить следующие действия:

1)исправить дату начала действия цен услуг;

2)выполнить пересчет талонов.

Первый пункт – изменение дат начала действия цен услуг – можно выполнить следующим скриптом:

disable trigger all on FM_BILLDET

GO

 

declare @BILL_DATE_START datetime

declare @BILL_DATE_END datetime

 

set @BILL_DATE_START = '2011-01-01 00:00:00.000'

set @BILL_DATE_END = '2011-02-01 00:00:00.000'

 

update FM_BILLDET

set FM_BILLDET.PRICE = FM_SERVPRICE.PRICE

from FM_BILLDET FM_BILLDET

inner join FM_BILL FM_BILL

 on FM_BILLDET.FM_BILL_ID = FM_BILL.FM_BILL_ID

inner join FM_SERVPRICE FM_SERVPRICE

 on FM_BILLDET.FM_SERV_ID = FM_SERVPRICE.FM_SERV_ID and

    FM_BILLDET.FM_PRICETYPE_ID = FM_SERVPRICE.FM_PRICETYPE_ID and

    FM_BILLDET.FM_DEVISE_ID = FM_SERVPRICE.FM_DEVISE_ID and

    FM_SERVPRICE.DATE_FROM =

                 (select max (FM_SERVPRICE_SUB.DATE_FROM)

                  from FM_SERVPRICE FM_SERVPRICE_SUB

                  where FM_SERVPRICE_SUB.DATE_FROM < FM_BILL.BILL_DATE and

                            FM_BILLDET.FM_SERV_ID = FM_SERVPRICE_SUB.FM_SERV_ID and

                            FM_BILLDET.FM_PRICETYPE_ID = FM_SERVPRICE_SUB.FM_PRICETYPE_ID and

                            FM_BILLDET.FM_DEVISE_ID = FM_SERVPRICE_SUB.FM_DEVISE_ID)

where FM_BILL.BILL_DATE between @BILL_DATE_START and @BILL_DATE_END

   -- and FM_BILL.MEDECINS1_ID in (360, 361)                -- Врач талона

   and FM_BILL.FM_DEP_ID in (15)                                        -- Подразделение талона

 

GO

 

enable trigger all on FM_BILLDET

GO

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

Далее соответствующие талоны отбираются с помощью фильтра в окне списка талонов и для них выполняется операция пересчета.