/usr/share/doc/gnumed/user-manual/Gnumed/GmManualLettersFormsRu.html is in gnumed-doc 1.4.6+dfsg-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en_US" lang="en_US">
<head>
<title> GmManualLettersFormsRu < Gnumed < Foswiki</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <meta name="robots" content="noindex" /> <link rel="alternate" type="application/rss+xml" title="RSS Feed" href="WebRss.html" />
<link rel="icon" href="../rsrc/System/ProjectLogos/favicon.ico" type="image/x-icon" /> <link rel="shortcut icon" href="../rsrc/System/ProjectLogos/favicon.ico" type="image/x-icon" />
<link rel="alternate" href="http://wiki.gnumed.de/bin/edit/Gnumed/GmManualLettersFormsRu?t=1391005512" type="application/x-wiki" title="edit GmManualLettersFormsRu" />
<meta name="description" content="GmManualLettersFormsRu" />
<!--[if IE]></base><![endif]-->
<style type="text/css" media="all">
@import url('../rsrc/System/SkinTemplates/base.css');
</style>
<style type="text/css" media="all">
@import url('../rsrc/System/SkinTemplates/default.css');
</style>
<!--[if IE]><style type="text/css" media="screen">
pre {
overflow-x:auto;
padding-bottom:expression(this.scrollWidth > this.offsetWidth ? 16 : 0);
}
</style>
<![endif]-->
<meta name="foswiki.PUBURL" content="http://wiki.gnumed.de/pub" /> <!-- PUBURL -->
<meta name="foswiki.PUBURLPATH" content="/pub" /> <!-- PUBURLPATH -->
<meta name="foswiki.SCRIPTSUFFIX" content="" /> <!-- SCRIPTSUFFIX -->
<meta name="foswiki.SCRIPTURL" content="http://wiki.gnumed.de/bin" /> <!-- SCRIPTURL -->
<meta name="foswiki.SCRIPTURLPATH" content="/bin" /> <!-- SCRIPTURLPATH -->
<meta name="foswiki.SERVERTIME" content="29%20Jan%202014%20-%2015:25" /> <!-- SERVERTIME -->
<meta name="foswiki.SKIN" content="twikinet%2c%20pattern" /> <!-- SKIN -->
<meta name="foswiki.SYSTEMWEB" content="System" /> <!-- SYSTEMWEB -->
<meta name="foswiki.TOPIC" content="GmManualLettersFormsRu" /> <!-- TOPIC -->
<meta name="foswiki.USERNAME" content="KarstenHilbert" /> <!-- USERNAME -->
<meta name="foswiki.USERSWEB" content="Main" /> <!-- USERSWEB -->
<meta name="foswiki.WEB" content="Gnumed" /> <!-- WEB -->
<meta name="foswiki.WIKINAME" content="KarstenHilbert" /> <!-- WIKINAME -->
<meta name="foswiki.WIKIUSERNAME" content="Main.KarstenHilbert" /> <!-- WIKIUSERNAME -->
<meta name="foswiki.NAMEFILTER" content="%5b%5cs%5c*%3f~%5e%5c%24%40%25%60%22'%26%3b%7c%3c%3e%5c%5b%5c%5d%23%5cx00-%5cx1f%5d" /> <!-- NAMEFILTER --><!--JQUERYPLUGIN::FOSWIKI::META-->
<script type='text/javascript' src='../rsrc/System/JQueryPlugin/jquery-1.4.3.js'></script><!--JQUERYPLUGIN-->
<script type='text/javascript' src='../rsrc/System/JQueryPlugin/plugins/livequery/jquery.livequery.js'></script><!--JQUERYPLUGIN::LIVEQUERY-->
<script type='text/javascript' src='../rsrc/System/JQueryPlugin/plugins/foswiki/jquery.foswiki.js'></script><!--JQUERYPLUGIN::FOSWIKI-->
<script type='text/javascript' src='../rsrc/System/JSTreeContrib/jquery.jstree.js'></script><!--JQUERYPLUGIN::JSTREE-->
</head>
<body class=""><div class="foswikiPage">
<a name="PageTop"></a>
<p></p>
<p></p>
<h1><a name="GNUmed"></a> Подход к оформлению в GNUmed </h1>
<p></p>
<a name="foswikiTOC"></a><div class="foswikiToc"> <ul>
<li> <a href="#A_"> Понятия </a> <ul>
<li> <a href="#A_AN1"> Выписки </a>
</li> <li> <a href="#A_AN2"> Формы </a>
</li> <li> <a href="#A_AN3"> Шаблоны </a>
</li> <li> <a href="#A_AN4"> Движок форм </a>
</li> <li> <a href="#A_AN5"> Поля подстановки </a>
</li></ul>
</li> <li> <a href="#A_AN6"> Теория функционирования </a> <ul>
<li> <a href="#OOo"> Специфика шаблона OOo </a>
</li> <li> <a href="#LaTeX"> Специфика шаблона LaTeX </a>
</li> <li> <a href="#PDF"> Специфика шаблона формы PDF </a>
</li></ul>
</li> <li> <a href="#A_AN7"> Добавление нового шаблона письма </a>
</li></ul>
</div>
<p></p>
<h2><a name="A_"></a> Понятия </h2>
<p></p>
<h3><a name="A_AN1"></a> Выписки </h3>
<p></p>
Выписки, обычно, являются записями, оформленными для сопровождения пациента в стационар и из стационара или консультативных посещений. Они компилируются из шаблонов в окончательный повторно нецифруемый формат. Этот окончательный формат, обычно, затем предоставляется для постобработки с помощью текстового редактора или текстового процессора прямо перед печатью. Выписка затем, обычно, печатается на обычном, пустом или на специально отпечатанном бумажном бизнес-бланке.
<p></p>
<h3><a name="A_AN2"></a> Формы </h3>
<p></p>
Формы, в противоположность выписке часто используются для запроса конкретной терапии или диагностических процедур. Они, обычно, выводятся в подготовленном оформлении с линиями, блоками и полями. Таким образом, формы лучше всего реализуются при заполнении специального оконного шаблона, в котором затем компилируются и печатаются в бумажную форму. В отличие от выписки, для компилирования формы перед печатью редко требуется редактирование.
<p></p>
До настоящего времени в GNUmed поддерживаются ограниченные формы.
<p></p>
<h3><a name="A_AN3"></a> Шаблоны </h3>
<p></p>
Шаблон � это файл, который содержит постоянные части документа с полями подстановки для данных пациента.
<p></p>
<h3><a name="A_AN4"></a> Движок форм </h3>
<p></p>
Механизм формы � это код внутри GNUmed, используемый для превращения шаблона в формат вывода для печати. В настоящее время в GNUmed известно три таких механизма, каждый для создания вывода запускает внешнее программное обеспечение: механизм Openoffice.org, движок <a href="LaTeXRu.html" target="_top">LaTeX</a> и движок форм PDF (FDF).
<p></p>
<h3><a name="A_AN5"></a> Поля подстановки </h3>
<p></p>
Поля подстановки, обычно, являются категорийными словами, которые будут заменены определенными экземплярами данной категории для текущего пациента, скажем, <em>фамилия</em> заменяется на <code>Кирк</code>. Обратитесь к <a href="http://gitorious.org/gnumed/gnumed/blobs/master/gnumed/gnumed/client/wxpython/gmMacro.py" target="_top">этому списку</a> известных полей подстановки. Если необходимо, подробнее о полях подстановки <a href="mailto:gnumed-devel@gnu.org">узнайте</a> в <a href="http://lists.gnu.org/mailman/listinfo/gnumed-devel" target="_top">списке рассылки</a>.
<p></p>
Поля подстановки идут в формате <code>$<placeholder-name::optional-arguments::optional-maximum-length>$</code>. Если хотите задать максимальную длину для данного поля подстановки без аргументов (скажем, <em>фамилия</em>), то поле аргументов должно быть пустым. Таким образом, <code>$< фамилия>$</code> является допустимым полем подстановки, как и <code>$<фамилия::::5>$</code> (поле аргументов в середине пустое), но <strong>не</strong> <code>$<фамилия::5>$</code>. Именно от того, что можно ввести в поле аргументов, зависит поле подстановки в запросе. Данные передаются обработчику поля подстановки как есть. Максимальная длина поля может быть оставлена, как off (но не пустая). Так, допустимо <code>$<soap::ap::25>$</code>, как и <code>$<soap::ap>$</code>, но <strong>не</strong> <code>$<soap::ap::>$</code> (длина поля пустая).
<p></p>
Примеры:
<p></p> <ul>
<li> дата рождения: <code>$<date_of_birth::%Y-%m-%d>$</code> <ul>
<li> показывает дату рождения, форматированную как <em>Год-Месяц-День</em>
</li> <li> строки форматирования перечисленны в <a href="http://docs.python.org/library/time.html#time.strftime" target="_top">документации Python</a>
</li></ul>
</li> <li> рабочие записи: <code>$<soap::ap::300>$</code> <ul>
<li> показывает строки soAP, но максимально из 300 символов
</li> <li> GNUmed позволит пользователю выбрать, какие строки soAP, из каких обращений
</li></ul>
</li></ul>
<p></p>
Специфика каждого поля подстановки описана в <a href="http://gitorious.org/gnumed/gnumed/blobs/master/gnumed/gnumed/client/wxpython/gmMacro.py" target="_top">этом исходном файле</a>.
<p></p>
<h2><a name="A_AN6"></a> Теория функционирования </h2>
<p></p>
GNUmed использует движки для управления внешними программами, чтобы комбинировать шаблоны, содержащие поля подстановки с данными для них в экземплярах шаблона, и компилировать их в формат вывода. В настоящее время поддерживаемыми движками являются <a href="http://www.openoffice.org" target="_top">OpenOffice</a>, формы PDF и <a href="LaTeXRu.html" target="_top">LaTeX</a> (существует еще два: <code>gnuplot</code> и <code>image_editor</code>, но для создания отчетов из форм они не используются).
<p></p>
При генерации письма/формы GNUmed будет экспортировать шаблон из записи определения для шаблона оформления внутри бэкэнда во временный файл. Этот файл будет проверен на известные поля подстановки, которые затем заменяются их соответствующими значениями данных для активного пациента. Некоторым из этих заменителей может потребоваться взаимодействие с пользователем (например, выбор, какие рабочие записи включать фактически). Далее GNUmed откроет подстановочный файл в редакторе, подходящем этому типу файла для облегчения дальнейшего редактирования. В зависимости от внешней программы завершенный шаблон затем, либо печатается непосредственно через это приложение (OOo), или компилируется в PDF (<a href="LaTeXRu.html" target="_top">LaTeX</a>, формы PDF). Полученный PDF затем печатается с использованием любого метода (Acrobat reader, gtklp, os.startfile, Internet Explorer, MacOSX с открытым исходным кодом, gsprint.exe или сценарий shell <code>gm-print_doc</code>). Наконец, пользователю запрашивается, под каким случаем сохранить новый документ (можно прервать, чтобы документ не сохранять в файл). Если возможно, повторно редактируемая версия документа хранится вместе с окончательной нередактируемой версией.
<p></p>
В зависимости от непосредственной цели вышеуказанного процесса некоторые шаги будут пропущены. Например, печать списка препаратов не откроет подстановочный файл <a href="LaTeXRu.html" target="_top">LaTeX</a> в текстовом редакторе перед печатью и также не будет импортирован сгенерированный PDF, как новый документ. Он, скорее, создаст административное примечание в документировании EMR, какой список лекарств был напечатан и из какого шаблона он был создан.
<p></p>
<h3><a name="OOo"></a> Специфика шаблона OOo </h3>
<p></p>
Определения письма хранятся в базе данных в виде файла шаблона OOo (.ott) вместе с некоторыми метаданными (см. таблицу <code>ref.paperwork_templates</code>). После открытия документа в OOo, GNUmed задает обратный вызов в OOo с тем, чтобы получать уведомления о закрытии документа. Затем считывает текущее имя файла документа и использует, чтобы импортировать его в GNUmed. Таким образом, документ импортируется правильно, даже если пользователь, тем временем, сохранил его под другим именем.
<p></p> <ul>
<li> откройте в <a href="OpenOfficeRu.html" target="_top">OpenOffice</a> новый документ
</li> <li> разработайте шаблон письма, как желаете
</li> <li> при необходимости, включите в документ поля подстановки <ol>
<li> поля подстановки могут быть просто записаны в текст
</li> <li> поле подстановки также может быть добавлено через меню <em>Вставить_/_Поле</em>
</li></ol>
</li> <li> сохраните его как <em>шаблон</em> документа <a href="OpenOfficeRu.html" target="_top">OpenOffice</a> .ott
</li></ul>
<p></p>
С полями подстановки в OOo имеется одно предостережение: с полями подстановки, просто записанными в поток текста, вы не можете поставить два из них в одной строке (возможно, даже в том же логическом пункте). Это объясняется тем, что функция поиска и замены OOo не поддерживает поиск непоглощающего регулярного выражения <img src="../rsrc/System/SmiliesPlugin/frown.gif" alt="frown" title="frown" border="0" /> . Их преимуществом, однако, является то, что они автоматически наследуют свойства их окружающего текста, который не является случаем с полем подстановки, явно объявленным через <em>Вставить_/_Поле</em>. С другой стороны, они правильно работают в той же самой строке... Таким образом, выбирайте свой яд (или выберите <a href="LaTeXRu.html" target="_top">LaTeX</a> <img src="../rsrc/System/SmiliesPlugin/wink.gif" alt="wink" title="wink" border="0" /> )
<p></p>
<h3><a name="LaTeX"></a> Специфика шаблона <a href="LaTeXRu.html" target="_top">LaTeX</a> </h3>
<p></p>
Эти шаблоны пишутся на языке подготовки документов <a href="LaTeXRu.html" target="_top">LaTeX</a>. Шаблоны, как таковые, не будут полностью действительным кодом <a href="LaTeXRu.html" target="_top">LaTeX</a>, из-за определений начала и окончания поля подстановки со знаком <code>$</code> который имеет особое значение в системе TeX. Многие другие символы также имеют значение TeX (<code>_</code>, <code>\</code>, <code>%</code> и т.д.), так что они могут нуждаться в экранировании, если хотите, чтобы они отображались как видимые в заключительном документе PDF. GNUmed предоставляет поле подстановки <code>$<tex_escape::>$</code>, которое - в пределах кода Python - правильно экранирует все, что помещается внутри этого поля подстановки. Это особенно полезно для тегов VCS и подобных вещей, над которыми таковой не имеет явного контроля.
<p></p>
Если используете <a href="http://www.lyx.org" target="_top">LyX</a> или другой TeX-распознающий редактор для создания шаблонов, не забудьте проверить файл шаблона на специальные символы, успешно экранированные редактором, но и сделавшие недействительными определения ваших полей подстановки. Это особенно относится к <code>$</code>, <code>%</code> и <code>_</code>, которые часто встречаются в форматировании данных или строк и имен полей подстановки.
<p></p>
Найдите <a href="TemplateRepositoryRu.html">существующие шаблоны</a> для просмотра, как достигнуть вещей, подобных созданию элемента списка <a href="LaTeXRu.html" target="_top">LaTeX</a>, таблицы <a href="LaTeXRu.html" target="_top">LaTeX</a> или интеллектуальных разделителей элементов списка (напр., без замыкающего разделителя после последнего элемента или без особого разделителя, когда список пуст).
<p></p>
Используйте <code>.tex</code>, как расширение имени файла для шаблонов <a href="LaTeXRu.html" target="_top">LaTeX</a>.
<p></p>
<h3><a name="PDF"></a> Специфика шаблона формы PDF </h3>
<p></p>
Такие шаблоны создаются, принимая форму PDF, вставкой полей подстановки в поля формы и импортом этой частично предварительной формы в базу данных, как файла шаблона. Для использования в качестве шаблона <strong>не</strong> <em>выравнивайте</em> PDF при сохранении частично заполненной формы.
<p></p>
Необходимо установить и просмотрщик PDF, способный выравнивать форму, и также <a href="http://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/" target="_top">pdftk</a>.
<p></p>
<h2><a name="A_AN7"></a> Добавление нового шаблона письма </h2>
<p></p>
С шаблоном, подготовленным, как описано выше, следуйте этой процедуре:
<p></p> <ul>
<li> в меню <em>GNUmed</em> перейдите в <em>Управление основными данными</em>
</li> <li> используйте пункт меню <em>оформительские шаблоны</em>
</li> <li> в диалоговом окне, при необходимости, заполните поля и выберите созданный файл шаблона
</li> <li> сохраните новый шаблон
</li></ul>
<p></p>
Новый шаблон теперь должен быть доступен в GNUmed.
<p></p>
<hr />
<em>Далее:</em> <strong><a href="GmManualTestResultConceptsRu.html">Управление результатами анализов </a></strong>
<a name="TopicEnd"></a>
<p></p>
<p></p>
<p></p>
<p></p>
</div>
</body></html>
|