Перейти к основному содержимому

Скрипт 09_version_update

merge into mds_nterm_version_journal as cur
using (
select
0 as major, 7 as minor, 0 as patch, '' as suffix
, '12.01.2021' as released
, 'c486bb8f061568372244cbbbaf9c967c7a6242f5' as git_sha
, 'Расширены возможности классификатора `РЕГИЗ. МО`, добавлены индексы в таблицы' as description
from rdb$database
union
select
0 as major, 6 as minor, 1 as patch, '' as suffix
, '04.12.2020' as released
, 'b5847eedf18c3b1f9c7a8c5580289c6af7f01609' as git_sha
, '**Исправлен** недочет в логике загрузки доп. сведений об МО единым запросом (`mo_extra_info_loading = 3`)' as description
from rdb$database
union
select
0 as major, 6 as minor, 0 as patch, '' as suffix
, '04.12.2020' as released
, '4cf0769d0640ab10028a211c3fe7f7aabe19e343' as git_sha
, 'Добавлены настройки для контроля загрузки доп. сведений об МО' as description
from rdb$database
union
select
0 as major, 5 as minor, 4 as patch, '' as suffix
, '26.11.2020' as released
, 'bb880e7344fdd35f0180ca98e42d4f15db823729' as git_sha
, 'Добавлена поддержка псевдонима в качестве короткого наименования МО.' as description
from rdb$database
union
select
0 as major, 5 as minor, 3 as patch, '' as suffix
, '16.11.2020' as released
, 'ed442e95c0d71d42a608dc7ac52e6b8537b061a8' as git_sha
, 'Добавлено поле вывода нормализованного имени МО'
|| '(с аббревиатурами на месте длинных общеизвестных названий вроде'
|| '`Санкт-Петербургское государственное бюджетное учреждение`).' as description
from rdb$database
union
select
0 as major, 5 as minor, 2 as patch, '' as suffix
, '14.11.2020' as released
, '44fa93688570b05c021b5fa09f3381833d8dfa51' as git_sha
, 'Из скриптов `04_update_routines` и `all_without_indices` были исключены сторонние процедуры (`accessories`)'
|| ', дабы предотвратить перезапись более свежих версий этих процедур, уже имеющихся в целевой БД' as description
from rdb$database
union
select
0 as major, 5 as minor, 1 as patch, '' as suffix
, '13.11.2020' as released
, 'b9725b53f49ad69ec0f0dfc2034c8743db4aed76' as git_sha
, '**Исправлены** мелкие недочеты (пустой текст ошибки, возможные проблемы с кодировками)' as description
from rdb$database
union
select
0 as major, 5 as minor, 0 as patch, '' as suffix
, '11.11.2020' as released
, '484165301a14d8d1e49cccc28be3ac21f41494ae' as git_sha
, '**Исправлена** ошибки, улучшены классификаторы НСИ для МО (1.2.643.2.69.1.1.1.64) '
|| ' и для видов МП (1.2.643.2.69.1.1.1.52)' as description
from rdb$database
union
select
0 as major, 4 as minor, 1 as patch, '' as suffix
, '02.10.2020' as released
, '60ce9b7c60cb4a486ec7e4c08023326a48c56e7e' as git_sha
, '**Исправлена** ошибка при обработке справочника `РЕГИЗ. Составной профиль помощи` (`1.2.643.2.69.1.1.1.56`),'
|| ' а также добавлено поле `Родительский профиль` в данный справочник' as description
from rdb$database
union
select
0 as major, 4 as minor, 0 as patch, '' as suffix
, '30.09.2020' as released
, '06494655aa332dd0ed13913d4660a0257121d9b4' as git_sha
, 'Доработки и исправления, улучшенная логика работы со справочником МО, множественные связи' as description
from rdb$database
union
select
0 as major, 3 as minor, 1 as patch, '' as suffix
, '19.12.2019' as released
, 'db06377e3d57bd1952452327ce924baf021e73ff' as git_sha
, 'Исправлена неработоспособность обработчика справочника специальностей врачей (1.2.643.5.1.13.2.1.1.181)'
|| ' и добавлен контроль дат для справочника видов мед. помощи МИС (refid = -10002)' as description
from rdb$database
union
select
0 as major, 3 as minor, 0 as patch, '' as suffix
, '19.12.2019' as released
, '3133fec7056307d58655d40ffe5146e751b29d5d' as git_sha
, 'Справочник типов диагнозов сделан независимым (без DICINFO-копии), исправлены мелкие недочеты,'
|| ' улучшена работа со справочниками специальностей и МО' as description
from rdb$database
union
select
0 as major, 2 as minor, 1 as patch, '' as suffix
, '04.12.2019' as released
, '81ca0086bda8fb6836479679fdff6dc3ce62b457' as git_sha
, 'Исправлена проблема с отсутствием в сборке скрипта создания классификатора НСИ для справочника МО' as description
from rdb$database
union
select
0 as major, 2 as minor, 0 as patch, '' as suffix
, '03.12.2019' as released
, 'cef19c0e8a10895d7da6cd85995f14e38eeebed5' as git_sha
, 'Изменена логика работы со справочниками МО и СМО (теперь они не используют таблицу связей и коды пишутся в JPERSONS).' as description
from rdb$database
union
select
0 as major, 1 as minor, 0 as patch, '' as suffix
, '08.11.2019' as released
, '758dc0a1f965b17258a9f40e72488ab66a93f132' as git_sha
, 'Реализация справочников, необходимых в рамках интеграции с РЕГИЗ.УО (mplus/netrika.queue>)' as description
from rdb$database
) as upd
on cur.major = upd.major and cur.minor = upd.minor and cur.patch = upd.patch
when matched then update
set git_sha = upd.git_sha
, released = upd.released
, description = trim(upd.description)
, suffix = trim(upd.suffix)
when not matched then insert (major, minor, patch, released, deployed, git_sha, description, suffix)
values (upd.major, upd.minor, upd.patch, upd.released, 'now', upd.git_sha, trim(upd.description), trim(upd.suffix));

merge into mds_nterm_version_journal_det as cur
using (
select
0 as major, 7 as minor, 0 as patch
, trim(sha) as git_sha
, released
, trim(description) as description
from (
select 'c486bb8f061568372244cbbbaf9c967c7a6242f5' as sha
, '12.01.2021' as released
, 'Добавлены индексы в таблицы проекта (на поле `CODE` всех таблиц со справочниками)' as description
from rdb$database union
select 'ea1d67cc9840da07fef70291a551bcfacef3dfff' as sha
, '12.01.2021' as released
, 'Добавлены индексы в таблицы МИС (на пару `SECONDREFID,SECONDDICID` таблицы `DICINFODET` и на поле `SYNC_REFERENCE.REFCODE`)' as description
from rdb$database union
select '017a85b587bd2f44b409694121323a7cc04cd65f' as sha
, '23.12.2020' as released
, 'Справочник `РЕГИЗ. МО`. Добавлен расчет номера уровня подразделения в структуре МО при обработке загруженной версии' as description
from rdb$database union
select '82c3d7ab05edeefc9c8ddece9ae40025f77bce61' as sha
, '23.12.2020' as released
, 'Справочник `РЕГИЗ. МО`. Добавлено поле под номер уровня подразделения в структуре МО' as description
from rdb$database union
select '45cea737be99d7a66f3ce633c78521072c55d4c9' as sha
, '23.12.2020' as released
, 'Справочник `РЕГИЗ. МО`. Добавлена логика загрузки из РЕГИЗ значения `OID` (согласно ФРМО) для подразделения МО' as description
from rdb$database union
select '89ec06fa19b1e7c0960cc8ef4ec780ffc9270b3f' as sha
, '23.12.2020' as released
, 'Справочник `РЕГИЗ. МО`. Добавлено поле `OID` (согласно ФРМО) для подразделения МО' as description
from rdb$database union
select '99045806b5e6dbcd612baad923e2090825906cdf' as sha
, '16.12.2020' as released
, 'Справочник `РЕГИЗ. МО`. Добавлена возможность обработки лишь части МО из указанного списка' as description
from rdb$database
) union
select
0 as major, 6 as minor, 0 as patch
, trim(sha) as git_sha
, released
, trim(description) as description
from (
select '4cf0769d0640ab10028a211c3fe7f7aabe19e343' as sha
, '04.12.2020' as released
, 'Добавлены настройки для контроля загрузки доп. сведений об МО' as description
from rdb$database
) union
select
0 as major, 5 as minor, 0 as patch
, trim(sha) as git_sha
, released
, trim(description) as description
from (
select '484165301a14d8d1e49cccc28be3ac21f41494ae' as sha
, '11.11.2020' as released
, 'Добавлена поддержка множественных связей для видов мед. помощи (1.2.643.2.69.1.1.1.52) #52' as description
from rdb$database
union
select '60ed00b6b2fb8a8ace9237484b42534774dbe57a' as sha
, '07.10.2020' as released
, '**Исправлена** ошибка с недостаточным размером поля под наименования МО (1.2.643.2.69.1.1.1.64)' as description
from rdb$database
union
select '0388a8b7fec5821bbd0cd3f099b9d052f4721ea0' as sha
, '07.10.2020' as released
, '**Исправлена** ошибка, вызванная отсутствием в сборке скрипта настройки классиифкатора НСИ для причин аннулирования (1.2.643.2.69.1.1.1.60)' as description
from rdb$database
union
select '4de243d819d74b103b3d196e4f6fdfba54933ecc' as sha
, '11.11.2020' as released
, 'В классиифкатор НСИ для настройски связей МО (1.2.643.2.69.1.1.1.64) добавлена возможность настройски связи для подразделений МИС #51' as description
from rdb$database
) union
select
0 as major, 4 as minor, 0 as patch
, trim(sha) as git_sha
, released
, trim(description) as description
from (
select 'f6363ce81e98fa8651abc4a519e15f329c21123a' as sha
, '30.09.2020' as released
, 'Добавлен контроя даты окончания действия значения справочника в процедуре вывода актуальных значений `mds_nterm_refbook_values` (ранее выводила даже неактуальные)' as description
from rdb$database
union
select '8e05ce4fb0b8d583f47ee8ce7199c0d1c5be0ca9' as sha
, '30.09.2020' as released
, 'Добавлен вывод даты окончания действия значения справочника' as description
from rdb$database
union
select '29f2eee955dfeb82aa13bb1cdbf8a95745cb36c5' as sha
, '22.09.2020' as released
, 'Добавлена поддержка множественных связей с указанием связи по умолчани #48' as description
from rdb$database
union
select 'ca138b7d82d7871673a66056e0befc7da484cf25' as sha
, '17.08.2020' as released
, 'Добавлены запросы создания поля `RIR_GUID` в таблицах `JPERSONS` и `CASHREF`' as description
from rdb$database
union
select '9f943ba0f42b686ee4ce88a9d6b0a66c250a08ac' as sha
, '17.08.2020' as released
, 'Добавлена процедура формирования более детального и понятного текста ошибки преобразования значений (с кодами и названиями проблемных значений)' as description
from rdb$database
union
select '044309de4ab2eadb3778f0e5d3f3d591fd8ec2db' as sha
, '26.08.2020' as released
, 'Улучшена работа со справочником МО (1.2.643.2.69.1.1.1.64) #47: добавлены поля иерархии (родительское и головное МО), исправлены недочеты в логике' as description
from rdb$database
union
select 'adec03616fab6facd5798c9f3844a615e1d8f034' as sha
, '17.08.2020' as released
, 'Вывод информации о версии (`<version>`) в XML-блоке типа `Coding` сделан опциональным (и отключенным по умолчанию).' as description
from rdb$database
union
select '407d66417f681941b1c45dc088af86123dd8a05c' as sha
, '17.08.2020' as released
, 'Добавлен вывод OID справочника РЕГИЗ в результах работы процедуры кодирования XML-блока Coding' as description
from rdb$database
union
select '42699a9678317175da7686efa2cece24f91c34e3' as sha
, '17.08.2020' as released
, 'Добавлен вывод названия справочника РЕГИЗ в результах работы процедур кодирования/декодирования XML-блока Coding' as description
from rdb$database
union
select '14081a319384c109c93982effb73ac5856b8e612' as sha
, '17.08.2020' as released
, 'В процедуре преобразования значения МИС в значение РЕГИЗ в случая возникновения ошибки множественной связи больше выполняются остальные проверки' as description
from rdb$database
union
select 'a9798bf5b990ae0f8c5f994263f71f7b1021da9d' as sha
, '06.03.2020' as released
, 'Добавлено представление для вывода содержимого справочника МО (1.2.643.2.69.1.1.1.64) #46' as description
from rdb$database
union
select '9ca792d5c81e0e99c985cf42deb882e120b0a84e' as sha
, '21.01.2020' as released
, '**Исправлена** проблема обработки территории страхования СМО, когда код субъекта состоит из одной цифры' as description
from rdb$database
union
select '2c5cedfa361175cd2adda0133a38ee9ad159fbbf' as sha
, '10.01.2020' as released
, '**Исправлена** опечатка в названии поля связи составного профиля мед.помощи (1.2.643.2.69.1.1.1.56) в Классификаторе НСИ' as description
from rdb$database
) union
select
0 as major, 3 as minor, 0 as patch
, trim(sha) as git_sha
, released
, trim(description) as description
from (
select '3133fec7056307d58655d40ffe5146e751b29d5d' as sha
, '19.12.2019' as released
, 'Улучшена работа со справочником МО (1.2.643.2.69.1.1.1.64): добавлена загрузка доп. сведений при обработке справочника.' as description
from rdb$database
union
select '65dc81b99aea135e9f55e998268299893a0148be' as sha
, '19.12.2019' as released
, '**Исправлена** проблема с возникновением ошибки при обработке некоторых справочников,'
|| ' которые являются независыми и обработки на самом деле не требуют' as description
from rdb$database
union
select 'cc1b5eef6d70864b8912ea8db81eac5d5fb07527' as sha
, '19.12.2019' as released
, 'Переводит справочник статусов/типов диагнозов (1.2.643.2.69.1.1.1.26) в статус независимых,'
|| ' то есть убирает DICINFO-копию, так как его коды совпадают с идентификаторами МИС,'
|| ' и настройка связей ни к чему и только добавляет проблем.' as description
from rdb$database
union
select '98de14dea09b3719e451fd6704eac3ae39dca3fd' as sha
, '18.12.2019' as released
, 'Улучшает логику работу со справочником специальностей (1.2.643.5.1.13.2.1.1.181),'
|| ' добавляет расчет родительской специальности при обработке справочника' as description
from rdb$database
union
select '4fadc77d8fdec2f734b471e624075d0561d078da' as sha
, '18.12.2019' as released
, '**Исправлена** проблема с отображением пустого имени для формы мед. помощи МИС'
|| ' при настройке связей для справочника (1.2.643.2.69.1.1.1.54) в Классификаторе НСИ' as description
from rdb$database
) union
select
0 as major, 2 as minor, 0 as patch
, trim(sha) as git_sha
, released
, trim(description) as description
from (
select 'cef19c0e8a10895d7da6cd85995f14e38eeebed5' as sha
, '03.12.2019' as released
, 'Добавлен контроль по ИНН/ОГРН при добавление нового МО из РЕГИЗ для избежания появления дублей с организациями, добавленными не из РЕГИЗ' as description
from rdb$database
union
select 'e33cffd5babceb8cf39bcde621782af8774089d0' as sha
, '03.12.2019' as released
, 'Добавлен вспомогательный скрипт для заполнения поля `JPERSONS.JCODE` буквенным кодом для СМО Спб' as description
from rdb$database
union
select 'ca4e4b4df1d71b8ab02e99b767733d4f4296b88d' as sha
, '02.12.2019' as released
, 'Добавлена логика автоматического создания ОМС договора при добавлении СМО в МИС на основе сведений РЕГИЗ (#40)' as description
from rdb$database
union
select 'd84d38df80888701bd4e38d504f13914cbfa765d' as sha
, '02.12.2019' as released
, 'Изменена логика работы со справочником МО (#38): ' || ascii_char(13) || ascii_char(10)
|| ' - Код МО из РЕГИЗ решено хранить в новом поле `JPERSONS.RIR_OID`' || ascii_char(13) || ascii_char(10)
|| ' - Добавлена возможность создавать МО (и его родительских МО) в МИС на основе сведений из РЕГИЗ' as description
from rdb$database
union
select '6c1f8b84b44bb7dee0b1d47064b4d8dca0110160' as sha
, '01.12.2019' as released
, 'Изменена логика работы со справочником СМО (#39): ' || ascii_char(13) || ascii_char(10)
|| ' - Код СМО из РЕГИЗ решено хранить в поле "Федеральный код МО (OID)" юр.лица (`JPERSONS.FIR_OID`)' || ascii_char(13) || ascii_char(10)
|| ' - Добавлена возможность создавать СМО в МИС на основе сведений из РЕГИЗ' as description
from rdb$database
)
) as upd
on upd.git_sha = cur.git_sha
when not matched then insert (git_sha, major, minor, patch, released, description)
values (upd.git_sha, upd.major, upd.minor, upd.patch, upd.released, upd.description)
when matched then update
set description = trim(upd.description)
, released = upd.released
, major = upd.major
, minor = upd.minor
, patch = upd.patch;

delete from mds_nterm_routine_hash;

-- Обновляет информацию по хэшам процедур для контроля изменений процедур и триггеров интеграции
insert into mds_nterm_routine_hash (name, is_trigger, hash)
select trim(rdb$procedure_name) as name
, 0 as is_trigger
, hash(trim(rdb$procedure_source)) as hash
from rdb$procedures
where rdb$procedure_name starts with 'MDS_NTERM'
union all
select trim(rdb$trigger_name) as name
, 1 as is_trigger
, hash(trim(rdb$trigger_source))
from rdb$triggers
where rdb$trigger_name starts with 'MDS_NTERM';




sql
Была ли статья полезна?