Unit Bdst_h; { открытие файлов и работа с базой данных Холтер } interface uses {$IFNDEF NOTUSEFORMS} StdCtrls,ExtCtrls,ComCtrls,Dialogs, {$ENDIF} SysUtils, DateUtils,inifiles,Classes, Glob,Glob_h,Glob_ho,Glob_v_h,Glob_v,Bortn_h,StringConv; Procedure Bdstart_h(f0:smallint); Procedure Nach_znach; Procedure Nacpeis; { обнуление ближайших пейсм } Procedure Popravka_j_e; Procedure Popravka_strok; Procedure readi0h(jekg,F0:smallint); { чтение из архива ЭКГ и ее распаковка } procedure writ_pok(F:byte);{ упаковка и запись ЭКГ пок } procedure Virez(inac,F0:smallint);{ Вырезание ЭКГ пок F0- из Th 1-из T3h} procedure Write_Peism_pok;{ Запиcь Peism_pok из массива } procedure Rewrite_fanh2(inr:integer); { перезаписать изменённый ритм } procedure write_fanh; procedure write_fdeb_p; procedure write_o; procedure write_obrazi; procedure write_hvost; procedure write_Porogi; procedure obratno_fanh(j1,j2:integer); procedure obratno_deb(j1,j2:integer); procedure obratno_tre(j1,j2:integer); procedure obratno_o(puth:string); procedure obratno_obrazi(puth:string); procedure obratno_hvost; procedure obratno_Porogi(puth:string); Procedure Clos_h; procedure Pac_otv(T_in:tmth;n1:smallint;Var T_out:thd;Var beg:posl_;P_iwr:byte);{ упаковка одного отв 30 сек со старым форматом} procedure Pac_otv_new(T_in:tmth;n1:smallint;Var T_out:thd_new;Var beg:posl_);{ упаковка одного отв 30 сек для нового регистратора} Function _LoadDan(Var data:ish_vh;Path:string):integer; Function _WriteDan(Var data:ish_vh;Path:string;rost:integer):integer; Procedure Iorel; //function FileCopy(const SourceFileName, TargetFileName: string):boolean; Const progr_new:array[0..15] of smallint = ( { 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 5 } 18,21,24,28,33,39,46,54,63,73,84,96,109,123,139,160); progr:array[0..7] of smallint = ( { 0 1 2 3 4 5 6 7 } 10,13,18,24,33,43,56,70); progri:array[0..7] of smallint = ( { 0 1 2 3 4 5 6 7 } 10,13,20,30,50,80,130,200); implementation {$IFNDEF NOTUSEFORMS} uses Unit1; {$ENDIF} Type TECG_Unique_Descriptor = packed record ID_Medical_Institution:word;//должны использоваться значения от 0 до ID_ECG:integer;//номер ЭКГ, нумерация ведется с начала создания архива DateTime_Of_Entry:TDateTime;//дата и время регистрации ЭКГ end; Ishod = packed record // UniqueName:TECG_Unique_Descriptor;//поле обеспечивающее уникальность каждой записи независимо от того когда и где ее сделали dni:smallint; { дней после ИМ } FIO:array[0..20] of byte; Gr:smallint; { год рожд } POL:array[0..1] of byte; ads,add:smallint; Mr:array[0..13] of byte; { место работы }