Сводный журнал результатов анализов: различия между версиями
Sidminik (обсуждение | вклад) |
Sidminik (обсуждение | вклад) |
||
| Строка 40: | Строка 40: | ||
|- | |- | ||
|} | |} | ||
<div style="background-color: #fff3cd; border-left: 5px solid #ffc107; padding: 15px; margin: 10px 0;"> | |||
'''Внимание!''' | |||
При использовании в параметре множественных значений (<code>Multivalue</code>) и множественном выборе в SQL в качестве значений для фильтра WHERE (независимо от типа данных в параметре - и String, и Integer) будет передаваться плоская строка со значениями через запятую, которая будет интерпретироваться SQL как набор литералов. | |||
Сравнение будет проводиться по схеме "поиск строки в наборе строк"). | |||
Для корректной работы блок WHERE в SQL должен выглядеть так: | |||
<syntaxhighlight lang="sql"> | |||
</syntaxhighlight> | |||
WHERE ssf."CHILD_ID"::text IN (@ss_id) AND ao."ID"::text IN (@ao_id) | |||
</div> | |||
<div style="background-color: #fff3cd; border-left: 5px solid #ffc107; padding: 15px; margin: 10px 0;"> | |||
'''Внимание!''' | |||
</div> | |||
==Атрибуты== | ==Атрибуты== | ||
Версия от 07:34, 5 марта 2026
Параметры
В форме используются 5 фильтров параметров:
| № | Параметр | Тип поля | Данные | Сортировка |
|---|---|---|---|---|
| 1 | Выберите лабораторию:
|
выбор одного значения | лаборатории, имеющие записи в журналах | по алфавиту |
| 2 | Выберите источники анализа:
|
выбор нескольких значений | источники анализа, относящиеся к выбранной лаборатории (п.1)
|
по алфавиту |
| 3 | Выберите объекты анализа:
|
выбор нескольких значений | объекты анализа, относящиеся к выбранному источнику (п.2)
|
по алфавиту |
| 4 | Дата начала:
|
ввод или выбор даты | начало периода (включительно) | - |
| 5 | Дата завершения:
|
ввод или выбор даты | конец периода (включительно) | - |
Внимание!
При использовании в параметре множественных значений (Multivalue) и множественном выборе в SQL в качестве значений для фильтра WHERE (независимо от типа данных в параметре - и String, и Integer) будет передаваться плоская строка со значениями через запятую, которая будет интерпретироваться SQL как набор литералов.
Сравнение будет проводиться по схеме "поиск строки в наборе строк").
Для корректной работы блок WHERE в SQL должен выглядеть так:
WHERE ssf."CHILD_ID"::text IN (@ss_id) AND ao."ID"::text IN (@ao_id)
Внимание!
Атрибуты
В наборе данных MainDataSet в таблице ATTRIBUTE_NAME используются атрибуты со следующими значениями NAME:
- Дата и время отбора пробы
- Номер пробы
- Примечание для журнала
Внимание!
Описание атрибутов приведено в соответствии с базой данных ASTRA-PG13 на основе созданных пользователем полей.
В других базах этих полей может не быть либо их наименование может отличаться!!!
Отсутствующие в базе атрибуты не будут выводиться в документе. Для корректной работы документа актуализируйте атрибуты в соответствии с приведенным списком.
Поля, данные, выражения, элементы интерфейса и код
Верхний колонтитул
| Поля | Интерфейс ... >> ...
и данные |
Код и комментарии |
|---|---|---|
| Название лаборатории | Parameters!ReportParameterLaboratory.Value
|
=Parameters!ReportParameterLaboratory.Value
|
| Владелец версии | Code.Globals.GetVersionOwner()
|
="Владелец версии: " & Code.Globals.GetVersionOwner()
|
Основная информация
| Поля | Интерфейс ... >> ...
и данные |
Код и комментарии |
|---|---|---|
| № п/п | GroupIndex()
|
=GroupIndex() + 1
для объединения одинаковых ячеек по вертикали (№п/п, дата и время и др.) создана группа на основе поля |
| Дата, время регистрации | Лабораторные журналы >> Выбрать подразделение >> Выбрать запись >> Результаты >> Дата и время отбора пробы
|
=Fields!date_value.Value.ToString("dd.MM.yyyy hh:mm")
|
| Шифр пробы | Лабораторные журналы >> Выбрать подразделение >> Выбрать запись >> Редактировать >> Журнал регистрации проб и результатов испытаний >> Информация >> Номер пробы
|
=Fields!code.Value
|
| Информация о пробе | Объекты анализа >> Тип и Наименование
|
=Fields!ao_type.Value & vblf & Fields!ao_name.Value & vblf & Fields!sample_source.Value
|
| Показатель, ед. изм., НД на методику анализа, Дата анализа | Лабораторные журналы >> Выбрать подразделение >> Выбрать запись >> Результаты >> Показатель; Методика анализа; Дата и время отбора пробы
|
=Fields!ind_meth_name.Value & ", " & Code.RemoveTagsSimple(Fields!unit.Value) & vbLF & Fields!norm_document.Value & vbLF & Fields!date_value.Value.ToString("dd.MM.yyyy hh:mm")
Function RemoveTagsSimple(ByVal input As String) As String
Dim tags() As String = {"<span>", "</span>", "<sub>", "</sub>", "<sup>", "</sup>"}
Dim txt As String = input
For Each tag As String In tags
txt = Replace(txt, tag, "", , , CompareMethod.Text)
Next
Return txt
End Function
|
| Результат ед. опр. | Лабораторные журналы >> Выбрать подразделение >> Выбрать запись >> Результаты >> Выбрать показатель >> Раскрыть >> Результат измерения
|
=Fields!single_result.Value
|
| Проверка приемлемости (контроль повторяемости) r ≤ rₙ | >>
|
=Fields!RAZMAH.Value
|
| Результат анализа, Х ± Δ(U) | Лабораторные журналы >> Выбрать подразделение >> Выбрать запись >> Результаты >> Результат; Показатель точности
|
=Fields!result_val.Value & "±" & Fields!result_dc.Value
|
| Норма | Лабораторные журналы >> Выбрать подразделение >> Выбрать запись >> Результаты >> Норма
|
=Code.NormProcessing(Fields!min.Value, Fields!max.Value)
Function NormProcessing(ByVal min As String, ByVal max As String) As String
Dim result As String = ""
Dim hasMin As Boolean = Not String.IsNullOrEmpty(min) AndAlso min <> "0"
Dim hasMax As Boolean = Not String.IsNullOrEmpty(max) AndAlso max <> "0"
If hasMin And hasMax Then
result = min & "-" + max
Else If hasMin Then
result = "≥" & min
Else If hasMax Then
result = "≤" & max
Else
result = "-"
End If
Return result
End Function
|
| Ф.И.О. исполнителя | Лабораторные журналы >> Выбрать подразделение >> Выбрать запись >> Результаты >> Исполнитель
|
=IIF(Not IsNothing(Fields!e_surname.Value), Fields!e_surname.Value & " " & Left(Fields!e_name.Value, 1) & "." & Left(Fields!e_patronymic.Value, 1) & ".", "-")
|
| Примечание | Лабораторные журналы >> Выбрать подразделение >> Выбрать запись >> Результаты >> Примечание
|
=IIF(Not IsNothing(Fields!note.Value), Fields!note.Value, "-")
|
Нижний колонтитул
| Поля | Интерфейс ... >> ...
и данные |
Код и комментарии |
|---|---|---|
| Имя программы | Code.Globals.GetProgramName()
|
=Code.Globals.GetProgramName()
|
| Нумерация страниц | Номер страницы Globals!PageNumber и всего страниц Globals!TotalPages
|
="Страница " & Globals!PageNumber & " из " & Globals!TotalPages
|