Skip to main content

Настройка визуализации ЭЦП

Для начала необходимо настроить документ на подписание ЭЦП.

Чтобы подпись визуализировалась, в ПФ рекомендуется использовать готовый код. В зависимости от числа подписантов можно настроить визуализацию ЭЦП Врача (код 1) или Врача и Зав. отделения (код 2). Код необходимо скопировать и вставить в печатную форму, а после отредактировать под данные шаблона. Результат копирования показан на соответствующих рисунках  (рисунок 1) и (рисунок 2).

#FR3 clipboard#
<TfrxMasterData Name="EDS1" FillType="ftBrush" FillGap.Top="0" FillGap.Left="0" FillGap.Bottom="0" FillGap.Right="0" Frame.Typ="0" Height="49,13389" Left="0" Top="0" Width="680,3154" ColumnWidth="0" ColumnGap="0" RowCount="1" Stretched="True"/><TfrxMemoView Name="Memo0000" AllowVectorExport="True" Left="0" Top="11,33859"0" Width="207,87415" Height="37,79527559"49,13386559" StretchMode="smMaxHeight" Font.Charset="1" Font.Color="-16777208" Font.Height="-16" Font.Name="Times New Roman" Font.Style="0" Frame.Typ="0" ParentFont="False" VAlign="vaBottom" Text="Должность врача[DOLGNOST]"/><TfrxMemoView Name="Memo0001" AllowVectorExport="True" Left="442,20501" Top="11,33859"0" Width="238,11039" Height="37,79527559"49,13386559" StretchMode="smMaxHeight" Font.Charset="1" Font.Color="-16777208" Font.Height="-16" Font.Name="Times New Roman" Font.Style="0" Frame.Typ="0" HAlign="haRight" ParentFont="False" VAlign="vaBottom" Text="Ф.И.О. врача[MEDPERSONAL]"/><TfrxRichView Name="Podpis1" AllowVectorExport="True" Left="207,87415" Top="0" Width="234,33086" Height="49,13389" Visible="False" StretchMode="smActualHeight" Frame.Typ="15" GapX="2" GapY="1" PropData="0852696368456469740AD70200007B5C727466315C616E73695C616E7369637067313235315C64656666305C6E6F7569636F6D7061745C6465666C616E67313034397B5C666F6E7474626C7B5C66305C666E696C5C66636861727365743230342054696D6573204E657720526F6D616E204359523B7D7D0D0A7B5C2A5C67656E657261746F722052696368656432302031302E302E31393034317D5C766965776B696E64345C756331200D0A5C706172645C71635C625C66305C667331325C2763345C2763655C2763615C2764335C2763635C2763355C2763645C276432205C2763665C2763655C2763345C2763665C2763385C2764315C2763305C276364205C2764645C2763625C2763355C2763615C2764325C2764305C2763655C2763645C2763645C2763655C276339205C2763665C2763655C2763345C2763665C2763385C2764315C2764635C2764655C62305C7061720D0A0D0A5C706172645C667331365C2764315C2765355C2766305C2766325C2765385C2766345C2765385C2765615C2765305C2766323A205B676574454453496E666F46726F6D446F63283C444F435F49443E2C27534E272C31295D5C7061720D0A5C2763325C2765625C2765305C2765345C2765355C2765625C2765355C2766363A205C62205B676574454453496E666F46726F6D446F63283C444F435F49443E2C275355524E414D45272C31295D205B676574454453496E666F46726F6D446F63283C444F435F49443E2C27474956454E5F4E414D45272C31295D5C62305C7061720D0A5C2763345C2765355C2765395C2766315C2766325C2765325C2765385C2766325C2765355C2765625C2765355C276564205C276631205C62205B676574454453496E666F46726F6D446F63283C444F435F49443E2C27444154455F46524F4D272C31295D5C623020205C2765665C276565205C62205B676574454453496E666F46726F6D446F63283C444F435F49443E2C27444154455F544F272C31295D5C62305C7061720D0A7D0D0A00"/><TfrxMemoView Name="Memo0002" AllowVectorExport="True" Left="207,87415" Top="49,13386559" Width="234,33086" Height="0" Font.Charset="1" Font.Color="-16777208" Font.Height="-16" Font.Name="Times New Roman" Font.Style="0" Frame.Typ="4" ParentFont="False" VAlign="vaCenter" Text=""/>
Код 1  – MasterData с одним подписантом
#FR3 clipboard#
<TfrxMasterData Name="EDS2" FillType="ftBrush" FillGap.Top="0" FillGap.Left="0" FillGap.Bottom="0" FillGap.Right="0" Frame.Typ="0" Height="105,82684" Left="0" Top="0" Width="680,3154" ColumnWidth="0" ColumnGap="0" RowCount="1" Stretched="True"/><TfrxMemoView Name="Memo0005" AllowVectorExport="True" Left="0" Top="0" Width="207,87415" Height="49,13386559" Font.Charset="1" Font.Color="-16777208" Font.Height="-16" Font.Name="Times New Roman" Font.Style="0" Frame.Typ="0" ParentFont="False" VAlign="vaBottom" Text="Должность врача[DOLGNOST]"/><TfrxMemoView Name="Memo0006" AllowVectorExport="True" Left="442,20501" Top="11,33859"0" Width="238,11039" Height="37,79527559"49,13386559" Font.Charset="1" Font.Color="-16777208" Font.Height="-16" Font.Name="Times New Roman" Font.Style="0" Frame.Typ="0" HAlign="haRight" ParentFont="False" VAlign="vaBottom" Text="Ф.И.О. Врача[MEDPERSONAL]"/><TfrxMemoView Name="Memo0008" AllowVectorExport="True" Left="0" Top="56,69295" Width="207,87415" Height="49,13386559" Font.Charset="1" Font.Color="-16777208" Font.Height="-16" Font.Name="Times New Roman" Font.Style="0" Frame.Typ="0" ParentFont="False" VAlign="vaBottom" Text="Должность заведующего отд."/><TfrxMemoView Name="Memo0009" AllowVectorExport="True" Left="442,20501" Top="68,03154" Width="238,11039" Height="37,79527559" Font.Charset="1" Font.Color="-16777208" Font.Height="-16" Font.Name="Times New Roman" Font.Style="0" Frame.Typ="0" HAlign="haRight" ParentFont="False" VAlign="vaBottom" Text="Ф.И.О. заведующего отд."/><TfrxRichView Name="Podpis1" AllowVectorExport="True" Left="207,87415" Top="0" Width="234,33086" Height="49,13389" Visible="False" Frame.Typ="15" GapX="2" GapY="1" PropData="0852696368456469740AD70200007B5C727466315C616E73695C616E7369637067313235315C64656666305C6E6F7569636F6D7061745C6465666C616E67313034397B5C666F6E7474626C7B5C66305C666E696C5C66636861727365743230342054696D6573204E657720526F6D616E204359523B7D7D0D0A7B5C2A5C67656E657261746F722052696368656432302031302E302E31393034317D5C766965776B696E64345C756331200D0A5C706172645C71635C625C66305C667331325C2763345C2763655C2763615C2764335C2763635C2763355C2763645C276432205C2763665C2763655C2763345C2763665C2763385C2764315C2763305C276364205C2764645C2763625C2763355C2763615C2764325C2764305C2763655C2763645C2763645C2763655C276339205C2763665C2763655C2763345C2763665C2763385C2764315C2764635C2764655C62305C7061720D0A0D0A5C706172645C667331365C2764315C2765355C2766305C2766325C2765385C2766345C2765385C2765615C2765305C2766323A205B676574454453496E666F46726F6D446F63283C444F435F49443E2C27534E272C31295D5C7061720D0A5C2763325C2765625C2765305C2765345C2765355C2765625C2765355C2766363A205C62205B676574454453496E666F46726F6D446F63283C444F435F49443E2C275355524E414D45272C31295D205B676574454453496E666F46726F6D446F63283C444F435F49443E2C27474956454E5F4E414D45272C31295D5C62305C7061720D0A5C2763345C2765355C2765395C2766315C2766325C2765325C2765385C2766325C2765355C2765625C2765355C276564205C276631205C62205B676574454453496E666F46726F6D446F63283C444F435F49443E2C27444154455F46524F4D272C31295D5C623020205C2765665C276565205C62205B676574454453496E666F46726F6D446F63283C444F435F49443E2C27444154455F544F272C31295D5C62305C7061720D0A7D0D0A00"/><TfrxRichView Name="Podpis2" AllowVectorExport="True" Left="207,87415" Top="56,69295" Width="234,33086" Height="49,13389" Visible="False" Frame.Typ="15" GapX="2" GapY="1" PropData="0852696368456469740A7E0300007B5C727466315C616E73695C616E7369637067313235315C64656666305C6E6F7569636F6D7061745C6465666C616E67313034397B5C666F6E7474626C7B5C66305C666E696C5C66636861727365743230342054696D6573204E657720526F6D616E204359523B7D7B5C66315C666E696C5C6663686172736574302054696D6573204E657720526F6D616E3B7D7D0D0A7B5C2A5C67656E657261746F722052696368656432302031302E302E31393034317D5C766965776B696E64345C756331200D0A5C706172645C71635C625C66305C667331325C2763345C2763655C2763615C2764335C2763635C2763355C2763645C276432205C2763665C2763655C2763345C2763665C2763385C2764315C2763305C276364205C2764645C2763625C2763355C2763615C2764325C2764305C2763655C2763645C2763645C2763655C276339205C2763665C2763655C2763345C2763665C2763385C2764315C2764635C2764655C62305C667331365C7061720D0A0D0A5C706172645C2764315C2765355C2766305C2766325C2765385C2766345C2765385C2765615C2765305C2766323A205B676574454453496E666F46726F6D446F63283C444F435F49443E2C27534E272C5C66315C6C616E673130333320325C66305C6C616E673130343920295D5C7061720D0A5C2763325C2765625C2765305C2765345C2765355C2765625C2765355C2766363A205C62205B676574454453496E666F46726F6D446F63283C444F435F49443E2C275355524E414D45272C5C66315C6C616E673130333320325C66305C6C616E673130343920295D205B676574454453496E666F46726F6D446F63283C444F435F49443E2C27474956454E5F4E414D45272C5C66315C6C616E673130333320325C66305C6C616E673130343920295D5C62305C7061720D0A5C2763345C2765355C2765395C2766315C2766325C2765325C2765385C2766325C2765355C2765625C2765355C276564205C276631205C62205B676574454453496E666F46726F6D446F63283C444F435F49443E2C27444154455F46524F4D272C5C66315C6C616E673130333320325C66305C6C616E673130343920295D5C623020205C2765665C276565205C62205B676574454453496E666F46726F6D446F63283C444F435F49443E2C27444154455F544F272C5C66315C6C616E673130333320325C66305C6C616E673130343920295D5C62305C7061720D0A7D0D0A00"/><TfrxMemoView Name="Memo0007" AllowVectorExport="True" Left="207,87415" Top="49,13389" Width="234,33086" Height="0" Font.Charset="1" Font.Color="-16777208" Font.Height="-16" Font.Name="Times New Roman" Font.Style="0" Frame.Typ="4" ParentFont="False" VAlign="vaCenter" Text=""/><TfrxMemoView Name="Memo0010" AllowVectorExport="True" Left="207,87415" Top="105,82684" Width="234,33086" Height="0" Font.Charset="1" Font.Color="-16777208" Font.Height="-16" Font.Name="Times New Roman" Font.Style="0" Frame.Typ="4" ParentFont="False" VAlign="vaCenter" Text=""/>
Код 2  – MasterData с двумя подписантами
image.pngРисунок 1 – Пример результата настройки для одной подписи ЭЦП
image.pngРисунок 2 – Пример результата настройки для двух подписей ЭЦП

После добавления макета подписей, данную форму обязательно надо донастроить. Для этого нужно перейти на вкладку "Код" и скопировать в неё соответствующий док от выбранного числа подписантов. Если выбрана визуализация подписи Врача, то скопировать (код 3), если выбрана визуализация Врача и Зав. отделения, то скопировать (код 4). Примеры результатов приведены на (рисунок 3) и (рисунок 4).

var sn1 :string; 
begin 
  sn1 := getEDSInfoFromDoc(<DOC_ID>,'SN',1); 
  if Length(sn1) then Podpis1.visible:=true; 
end.
Код 3  – Визуализация одной ЭЦП
var sn1,sn2 :string;
begin  
  sn1 := getEDSInfoFromDoc(<DOC_ID>,'SN',1);
  sn2 := getEDSInfoFromDoc(<DOC_ID>,'SN',2);      
  begin
    if Length(sn1) then Podpis1.visible:=true;        
    if Length(sn2) then Podpis2.visible:=true;  
  end; 
end.
Код 4  – Визуализация двух ЭЦП
image.png
Рисунок 3 – Код для одной ЭЦП
image.png
Рисунок 4 – Код для двух ЭЦП

Внимание! Исспользование кода 1 и 2 без исспользования кода 3 и 4, не дадут желаемого результат. Для визуализации ЭЦП необходимо использовать их в связке.

Если все настроенно верно, то после подписания осмотра, ЭЦП будет визуализироваться при  распечатке. Иначе на месте "штампа" будет прочерк для проставления "живой" подписи (рисунок 5).

image.png

Рисунок 5 – Пример подписанного документа с настроенной визуализацией двух ЭЦП