Паспорт качества газа (ОСТ 089): различия между версиями
Sidminik (обсуждение | вклад) |
Sidminik (обсуждение | вклад) |
||
| (не показано 14 промежуточных версий этого же участника) | |||
| Строка 127: | Строка 127: | ||
|- | |- | ||
|Период поставки | |Период поставки | ||
| | |<nowiki>-</nowiki> | ||
|<syntaxhighlight lang="vb">=" с " & Format(Parameters!ReportParameterFrom.Value, "HH:mm dd.MM.yyyy")</syntaxhighlight> | |||
<syntaxhighlight lang="vb">="по " & Format(Parameters!ReportParameterTo.Value, "HH:mm dd.MM.yyyy")</syntaxhighlight> | |||
|- | |||
<code style="background-color: #d4edda;>Лабораторные журналы</code> >> <code style="background-color: #d4edda;>Журнал регистрации проб и испытаний</code> >> Выбрать пробу >> <code style="background-color: #d4edda;> | |Дата (период) отбора проб | ||
|<code style="background-color: #d4edda;>Лабораторные журналы</code> >> <code style="background-color: #d4edda;>Журнал регистрации проб и испытаний</code> >> Выбрать пробу >> <code style="background-color: #d4edda;>Редактировать</code> >> <code style="background-color: #d4edda;>Карточка пробы</code> >> <code style="background-color: #d4edda;>Информация</code> >> <code style="background-color: #d4edda;>Дата и время отбора пробы</code> | |||
<code style="background-color: #fff3e0;>Fields!sampling_date.Value</code> >> <code style="background-color: #fff3e0;>sampling_date / MainDataSet</code> >> <code style="background-color: #fff3e0;>DATE_VALUE / JOURNAL_RECORD_ATTRIBUTE</code> | <code style="background-color: #fff3e0;>Fields!sampling_date.Value</code> >> <code style="background-color: #fff3e0;>sampling_date / MainDataSet</code> >> <code style="background-color: #fff3e0;>DATE_VALUE / JOURNAL_RECORD_ATTRIBUTE</code> | ||
|<syntaxhighlight lang="vb">=RangeDate(Min(Fields!sampling_date.Value), Max(Fields!sampling_date.Value))</syntaxhighlight> | |||
<syntaxhighlight lang="vb"> | |||
Public Function RangeDate(minDate As Object, maxDate As Object) As String | |||
Dim hasMin As Boolean = Not minDate Is Nothing | |||
Dim hasMax As Boolean = Not maxDate Is Nothing | |||
If Not hasMin And Not hasMax Then Return "-" | |||
If hasMin And Not hasMax Then | |||
Return minDate.Date | |||
ElseIf Not hasMin And hasMax Then | |||
Return maxDate.Date | |||
ElseIf hasMin And hasMax Then | |||
If minDate.Date = maxDate.Date Then | |||
Return minDate.Date | |||
Else | |||
Return minDate.Date & " - " & maxDate.Date | |||
End If | |||
End If | |||
End Function | |||
</syntaxhighlight> | |||
|- | |- | ||
|НД на метод отбора | |НД на метод отбора | ||
| Строка 155: | Строка 171: | ||
|- | |- | ||
|Дата (период) испытаний | |Дата (период) испытаний | ||
|<code style="background-color: #d4edda;>Лабораторные журналы</code> >> <code style="background-color: #d4edda;>Журнал регистрации проб и испытаний</code> >> Выбрать пробу >> <code style="background-color: #d4edda;> | |<code style="background-color: #d4edda;>Лабораторные журналы</code> >> <code style="background-color: #d4edda;>Журнал регистрации проб и испытаний</code> >> Выбрать пробу >> <code style="background-color: #d4edda;>Результаты</code> >> <code style="background-color: #d4edda;>Дата начала анализа</code>, <code style="background-color: #d4edda;>Дата окончания анализа</code> | ||
<code style="background-color: #fff3e0;>Fields! | |||
<code style="background-color: #fff3e0;>Fields!min_date_analysis.Value, Fields!max_date_analysis.Value</code> >> <code style="background-color: #fff3e0;>min_date_analysis, max_date_analysis / MainDataSet</code> >> <code style="background-color: #fff3e0;>DATE_VALUE / JOURNAL_RESULT_ATTRIBUTE</code> | |||
|<syntaxhighlight lang="vb">=RangeDate(Fields!min_date_analysis.Value, Fields!max_date_analysis.Value)</syntaxhighlight> | |<syntaxhighlight lang="vb">=RangeDate(Fields!min_date_analysis.Value, Fields!max_date_analysis.Value)</syntaxhighlight> | ||
|- | |- | ||
| Строка 224: | Строка 242: | ||
*используется функция [[Scripts#GetOrDash()|<code>GetOrDash()</code>]] | *используется функция [[Scripts#GetOrDash()|<code>GetOrDash()</code>]] | ||
|- | |- | ||
|Норма | |Норма (строка 1) | ||
|rowspan = "3"| <code style="background-color: #d4edda;>Объекты анализа</code> >> Выбрать объект >> <code style="background-color: #d4edda;>Редактировать</code> >> <code style="background-color: #d4edda;>Карточка объекта анализа</code> >> Выбрать показатель >> <code style="background-color: #d4edda;>Карточка показателя</code> >> <code style="background-color: #d4edda;> | |rowspan = "3"| <code style="background-color: #d4edda;>Объекты анализа</code> >> Выбрать объект >> <code style="background-color: #d4edda;>Редактировать</code> >> <code style="background-color: #d4edda;>Карточка объекта анализа</code> >> Выбрать показатель >> <code style="background-color: #d4edda;>Карточка показателя</code> >> <code style="background-color: #d4edda;>Группа в паспорт качества</code> | ||
<code style="background-color: #d4edda;>Объекты анализа</code> >> Выбрать объект >> <code style="background-color: #d4edda;>Редактировать</code> >> <code style="background-color: #d4edda;>Карточка объекта анализа</code> >> Выбрать показатель >> <code style="background-color: #d4edda;>Карточка показателя</code> >> <code style="background-color: #d4edda;>Нормы</code> >> <code style="background-color: #d4edda;>Нижний предел, Округление</code> | <code style="background-color: #d4edda;>Объекты анализа</code> >> Выбрать объект >> <code style="background-color: #d4edda;>Редактировать</code> >> <code style="background-color: #d4edda;>Карточка объекта анализа</code> >> Выбрать показатель >> <code style="background-color: #d4edda;>Карточка показателя</code> >> <code style="background-color: #d4edda;>Нормы</code> >> <code style="background-color: #d4edda;>Нижний предел, Верхний предел, Округление</code> | ||
<code style="background-color: #fff3e0;>Fields!serial_number.Value, Fields!group_number.Value, Fields!min.Value, Fields!comment.Value, Fields!limit_scale.Value</code> >> <code style="background-color: #fff3e0;>serial_number, group_number, min, comment, limit_scale / ResultDataSet</code> >> <code style="background-color: #fff3e0;>INTEGER_VALUE / INDICATOR_ATTRIBUTE</code>, <code style="background-color: #fff3e0;>LOWER_LIMIT, COMMENT, LIMIT_SCALE / QUANTITATIVE_NORM</code> | <code style="background-color: #fff3e0;>Fields!serial_number.Value, Fields!group_number.Value, Fields!min.Value, Fields!max.Value, Fields!comment.Value, Fields!limit_scale.Value</code> >> <code style="background-color: #fff3e0;>serial_number, group_number, min, max, comment, limit_scale / ResultDataSet</code> >> <code style="background-color: #fff3e0;>INTEGER_VALUE / INDICATOR_ATTRIBUTE</code>, <code style="background-color: #fff3e0;>LOWER_LIMIT, UPPER_LIMIT, COMMENT, LIMIT_SCALE / QUANTITATIVE_NORM</code> | ||
|<syntaxhighlight lang="vb">=IIF(Fields!serial_number.Value = 1, GetNorms(Fields!group_number.Value, Fields!min.Value, Fields!comment.Value, Fields!limit_scale.Value), "")</syntaxhighlight> | |<syntaxhighlight lang="vb">=IIF(Fields!serial_number.Value = 1, GetNorms(Fields!group_number.Value, Fields!min.Value, Fields!comment.Value, Fields!limit_scale.Value), "")</syntaxhighlight> | ||
<syntaxhighlight lang="vb"> | <syntaxhighlight lang="vb"> | ||
Public Function GetNorms(groupNumber As Integer, norm As String, comment As String, scale As Object) As String | Public Function GetNorms(groupNumber As Integer, norm As String, comment As String, scale As Object) As String | ||
If groupNumber = 1 Or groupNumber = 8 Or groupNumber = 9 Or groupNumber = | If groupNumber = 1 Or groupNumber = 8 Or groupNumber = 9 Or groupNumber = 11 Then Return comment | ||
If norm = "0" Or norm Like "*0*(0)*" Then Return "-" | If norm = "0" Or norm Like "*0*(0)*" Then Return "-" | ||
If scale IsNot Nothing Then Return RoundMethod(Double.Parse(norm.Replace(".", ",")), Integer.Parse(scale), 1) | If scale IsNot Nothing Then Return RoundMethod(Double.Parse(norm.Replace(".", ",")), Integer.Parse(scale), 1) | ||
Return norm.Replace(".", ",") | Return norm.Replace(".", ",") | ||
| Строка 241: | Строка 258: | ||
End Function | End Function | ||
</syntaxhighlight> | </syntaxhighlight> | ||
|- | |- | ||
|Норма | |Норма (строка 2) | ||
|<syntaxhighlight lang="vb">=GetNorms(Fields!group_number.Value, Fields!min.Value, Fields!comment.Value, Fields!limit_scale.Value)</syntaxhighlight> | |<syntaxhighlight lang="vb">=GetNorms(Fields!group_number.Value, Fields!min.Value, Fields!comment.Value, Fields!limit_scale.Value)</syntaxhighlight> | ||
|- | |- | ||
|Норма | |Норма (строки прочие) | ||
|<syntaxhighlight lang="vb">=GetNorms(Fields!group_number.Value, Fields!min.Value, Fields!comment.Value, Fields!limit_scale.Value)</syntaxhighlight> | |<syntaxhighlight lang="vb">=GetNorms(Fields!group_number.Value, Fields!min.Value, Fields!comment.Value, Fields!limit_scale.Value)</syntaxhighlight> | ||
<syntaxhighlight lang="vb">=GetNorms(Fields!group_number.Value, Fields!max.Value, Fields!comment.Value, Fields!limit_scale.Value)</syntaxhighlight> | |||
|- | |- | ||
|Норма | |Норма (строка 4) | ||
| | |rowspan = "3"| <code style="background-color: #d4edda;>Объекты анализа</code> >> Выбрать объект >> <code style="background-color: #d4edda;>Редактировать</code> >> <code style="background-color: #d4edda;>Карточка объекта анализа</code> >> Выбрать показатель >> <code style="background-color: #d4edda;>Карточка показателя</code> >> <code style="background-color: #d4edda;>Номер в паспорт качества</code> | ||
<code style="background-color: #d4edda;>Объекты анализа</code> >> Выбрать объект >> <code style="background-color: #d4edda;>Редактировать</code> >> <code style="background-color: #d4edda;>Карточка объекта анализа</code> >> Выбрать показатель >> <code style="background-color: #d4edda;>Карточка показателя</code> >> <code style="background-color: #d4edda;>Нормы</code> >> <code style="background-color: #d4edda;>Нижний предел, Верхний предел, Округление</code> | |||
|<syntaxhighlight lang="vb">= | |||
<code style="background-color: #fff3e0;>Fields!group_index.Value, Fields!min.Value, Fields!max.Value, Fields!limit_scale.Value</code> >> <code style="background-color: #fff3e0;>group_index, min, max, limit_scale / ResultDataSet</code> >> <code style="background-color: #fff3e0;>INTEGER_VALUE / INDICATOR_ATTRIBUTE</code>, <code style="background-color: #fff3e0;>LOWER_LIMIT, UPPER_LIMIT, LIMIT_SCALE / QUANTITATIVE_NORM</code> | |||
|<syntaxhighlight lang="vb">=GetNorms4(LookupSet(4, Fields!group_index.Value, Fields!min.Value, "ResultDataSet"), LookupSet(4, Fields!group_index.Value, Fields!limit_scale.Value, "ResultDataSet"))</syntaxhighlight> | |||
<syntaxhighlight lang="vb">=GetNorms4(LookupSet(4, Fields!group_index.Value, Fields!max.Value, "ResultDataSet"), LookupSet(4, Fields!group_index.Value, Fields!limit_scale.Value, "ResultDataSet"))</syntaxhighlight> | |||
<syntaxhighlight lang="vb"> | |||
Public Function GetNorms4(norms As Object(), scales As Object()) As String | |||
Dim first As String = "" | |||
If norms(0) IsNot Nothing Then first = norms(0).ToString().Replace(".", ",") | |||
Dim second As String = "" | |||
If norms(1) IsNot Nothing Then second = norms(1).ToString().Replace(".", ",") | |||
If (first = "0" Or first = "") And (second = "0" Or second = "") Then Return "-" | |||
Dim result As New System.Text.StringBuilder() | |||
If Not String.IsNullOrEmpty(first) Then | |||
If scales.Length > 0 AndAlso scales(0) IsNot Nothing Then | |||
result.Append(RoundMethod(Double.Parse(first), Integer.Parse(scales(0)), 1)) | |||
Else | |||
result.Append(first) | |||
End If | |||
End If | |||
If Not String.IsNullOrEmpty(second) Then | |||
result.Append(" (") | |||
If scales.Length > 1 AndAlso scales(1) IsNot Nothing Then | |||
result.Append(RoundMethod(Double.Parse(second), Integer.Parse(scales(1)), 1)) | |||
Else | |||
result.Append(second) | |||
End If | |||
result.Append(")") | |||
End If | |||
Return result.ToString() | |||
End Function | |||
</syntaxhighlight> | |||
|- | |- | ||
|Результаты испытаний | |Норма (строка 5) | ||
|<code style="background-color: #d4edda;>Объекты анализа</code> >> Выбрать объект >> <code style="background-color: #d4edda;>Редактировать</code> >> <code style="background-color: #d4edda;>Карточка объекта анализа</code> >> Выбрать показатель >> <code style="background-color: #d4edda;>Карточка показателя</code> >> <code style="background-color: #d4edda;>Группа в паспорт качества</code> | |<syntaxhighlight lang="vb">=GetNorms56(Fields!group_index.Value, LookupSet(5, Fields!group_index.Value, Fields!min.Value, "ResultDataSet"), LookupSet(5, Fields!group_index.Value, Fields!limit_scale.Value, "ResultDataSet"))</syntaxhighlight> | ||
<syntaxhighlight lang="vb">=GetNorms56(Fields!group_index.Value, LookupSet(5, Fields!group_index.Value, Fields!max.Value, "ResultDataSet"), LookupSet(5, Fields!group_index.Value, Fields!limit_scale.Value, "ResultDataSet"))</syntaxhighlight> | |||
<syntaxhighlight lang="vb"> | |||
Public Function GetNorms56(group As Integer, norms As Object(), scales As Object()) As String | |||
Dim first As String = "" | |||
If norms(0) IsNot Nothing Then first = norms(0).ToString().Replace(".", ",") | |||
Dim second As String = "" | |||
If norms(1) IsNot Nothing Then second = norms(1).ToString().Replace(".", ",") | |||
Dim result As New System.Text.StringBuilder() | |||
result.Append(vbLF & vbLF & vbLF) | |||
If String.IsNullOrEmpty(first) OrElse first = "0" Then | |||
first = "-" | |||
ElseIf scales.Length > 0 AndAlso scales(0) IsNot Nothing Then | |||
first = RoundMethod(Double.Parse(first), Integer.Parse(scales(0)), 1) | |||
End If | |||
If String.IsNullOrEmpty(second) OrElse second = "0" Then | |||
second = "-" | |||
ElseIf scales.Length > 1 AndAlso scales(1) IsNot Nothing Then | |||
second = RoundMethod(Double.Parse(second), Integer.Parse(scales(1)), 1) | |||
End If | |||
If group = 5 Then | |||
result.Append(first & vbLF & second) | |||
Else | |||
result.Append(vbLF & first & vbLF & second) | |||
End If | |||
Return result.ToString() | |||
End Function | |||
</syntaxhighlight> | |||
|- | |||
|Норма (строка 6) | |||
|<syntaxhighlight lang="vb">=GetNorms56(Fields!group_index.Value, LookupSet(6, Fields!group_index.Value, Fields!min.Value, "ResultDataSet"), LookupSet(6, Fields!group_index.Value, Fields!limit_scale.Value, "ResultDataSet"))</syntaxhighlight> | |||
<syntaxhighlight lang="vb">=GetNorms56(Fields!group_index.Value, LookupSet(6, Fields!group_index.Value, Fields!max.Value, "ResultDataSet"), LookupSet(6, Fields!group_index.Value, Fields!limit_scale.Value, "ResultDataSet"))</syntaxhighlight> | |||
|- | |||
|Результаты испытаний (кроме 4, 5, 6 групп) | |||
|rowspan = "3" | <code style="background-color: #d4edda;>Объекты анализа</code> >> Выбрать объект >> <code style="background-color: #d4edda;>Редактировать</code> >> <code style="background-color: #d4edda;>Карточка объекта анализа</code> >> Выбрать показатель >> <code style="background-color: #d4edda;>Карточка показателя</code> >> <code style="background-color: #d4edda;>Группа в паспорт качества, Номер в паспорт качества</code> | |||
<code style="background-color: #d4edda;>Лабораторные журналы</code> >> <code style="background-color: #d4edda;>Журнал регистрации проб и результатов</code> >> Выбрать пробу >> <code style="background-color: #d4edda;>Результаты</code> >> <code style="background-color: #d4edda;>Ввод результатов</code> >> <code style="background-color: #d4edda;>Результат</code> | <code style="background-color: #d4edda;>Лабораторные журналы</code> >> <code style="background-color: #d4edda;>Журнал регистрации проб и результатов</code> >> Выбрать пробу >> <code style="background-color: #d4edda;>Результаты</code> >> <code style="background-color: #d4edda;>Ввод результатов</code> >> <code style="background-color: #d4edda;>Результат</code> | ||
| Строка 263: | Строка 363: | ||
<code style="background-color: #d4edda;>Методики анализа</code> >> Выбрать методику >> <code style="background-color: #d4edda;>Редактировать</code> >> <code style="background-color: #d4edda;>Карточка методики анализа</code> >> <code style="background-color: #d4edda;>Округление</code> >> <code style="background-color: #d4edda;>Округление</code> >> Выбрать показатель >> <code style="background-color: #d4edda;>Представление результата анализа</code> | <code style="background-color: #d4edda;>Методики анализа</code> >> Выбрать методику >> <code style="background-color: #d4edda;>Редактировать</code> >> <code style="background-color: #d4edda;>Карточка методики анализа</code> >> <code style="background-color: #d4edda;>Округление</code> >> <code style="background-color: #d4edda;>Округление</code> >> Выбрать показатель >> <code style="background-color: #d4edda;>Представление результата анализа</code> | ||
<code style="background-color: #fff3e0;>Fields!group_number.Value, | <code style="background-color: #fff3e0;>Fields!group_number.Value, Fields!group_index.Value, Fields!num_result.Value, Fields!str_result.Value, Fields!met_min.Value, Fields!met_max.Value, Fields!round_num.Value, Fields!round_type.Value</code> >> <code style="background-color: #fff3e0;>group_number, num_result, str_result, met_min, met_max, round_num, round_type / ResultDataSet</code> >> <code style="background-color: #fff3e0;>INTEGER_VALUE / INDICATOR_ATTRIBUTE</code>, <code style="background-color: #fff3e0;>NAME / INDICATOR</code>, <code style="background-color: #fff3e0;>AVG_R / JOURNAL_RESULT</code>, <code style="background-color: #fff3e0;>FROM, TO / METH_METR_RNG_BNDS</code>, <code style="background-color: #fff3e0;>NUMBER, TYPE / STANDARD_ROUND_RESULT</code> | ||
|<syntaxhighlight lang="vb">=GetResult(Fields!group_number.Value, Fields!num_result.Value, Fields!str_result.Value, Fields!met_min.Value, Fields!met_max.Value, Fields!round_num.Value, Fields!round_type.Value)</syntaxhighlight> | |<syntaxhighlight lang="vb">=GetResult(Fields!group_number.Value, Fields!num_result.Value, Fields!str_result.Value, Fields!met_min.Value, Fields!met_max.Value, Fields!round_num.Value, Fields!round_type.Value)</syntaxhighlight> | ||
<syntaxhighlight lang="vb"> | <syntaxhighlight lang="vb"> | ||
| Строка 272: | Строка 371: | ||
Select Case group | Select Case group | ||
Case | Case 4 | ||
Dim arr() As String = strRes.Split(" "c) | Dim arr() As String = strRes.Split(" "c) | ||
Dim firstNum As Double = Double.Parse(arr(0).Replace(".", ",")) | Dim firstNum As Double = Double.Parse(arr(0).Replace(".", ",")) | ||
| Строка 279: | Строка 378: | ||
Dim compareRangeNorm = GetMetRange(numRes, min, max, digits, mode) | Dim compareRangeNorm = GetMetRange(numRes, min, max, digits, mode) | ||
If compareRangeNorm Like " | If compareRangeNorm Like "%менее%" Or compareRangeNorm Like "%более%" Then | ||
Return compareRangeNorm | Return compareRangeNorm | ||
Else | Else | ||
| Строка 285: | Строка 384: | ||
End If | End If | ||
Case | Case 10 | ||
Return "отсутствуют" | Return "отсутствуют" | ||
| Строка 323: | Строка 422: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
*используется функция <code>RoundMethod</code>, вариация функции [[Глобальные_функции#Rounding.RoundBase()|<code>Rounding.RoundBase()</code>]] | *используется функция <code>RoundMethod</code>, вариация функции [[Глобальные_функции#Rounding.RoundBase()|<code>Rounding.RoundBase()</code>]] | ||
|- | |||
|Результаты испытаний (4 группа) | |||
|<syntaxhighlight lang="vb">=GetResult4( LookupSet(4, Fields!group_index.Value, Fields!num_result.Value, "ResultDataSet"), LookupSet(4, Fields!group_index.Value, Fields!met_min.Value, "ResultDataSet"), LookupSet(4, Fields!group_index.Value, Fields!met_max.Value, "ResultDataSet"), LookupSet(4, Fields!group_index.Value, Fields!round_num.Value, "ResultDataSet"), LookupSet(4, Fields!group_index.Value, Fields!round_type.Value, "ResultDataSet"))</syntaxhighlight> | |||
<syntaxhighlight lang="vb">Public Function GetResult4(numRes As Object, min As Object, max As Object, digits As Object, mode As Object) As String | |||
Dim first As String = "" | |||
If numRes(0) IsNot Nothing Then first = numRes(0).ToString().Replace(".", ",") | |||
Dim second As String = "" | |||
If numRes(1) IsNot Nothing Then second = numRes(1).ToString().Replace(".", ",") | |||
If (first = "0" Or first = "") And (second = "0" Or second = "") Then Return "-" | |||
Dim compareRangeNorm = GetMetRange(numRes(0), min(0), max(0), digits(0), mode(0)) | |||
If compareRangeNorm Like "*менее*" Or compareRangeNorm Like "*более*" Then | |||
Return compareRangeNorm | |||
Else | |||
Return RoundMethod(numRes(0), 2, 1) & " (" & RoundMethod(numRes(1), 0, 1) & ")" | |||
End If | |||
End Function</syntaxhighlight> | |||
*используется функция <code>RoundMethod</code>, вариация функции [[Глобальные_функции#Rounding.RoundBase()|<code>Rounding.RoundBase()</code>]] | |||
|- | |||
|Результаты испытаний (5, 6 группы) | |||
|<syntaxhighlight lang="vb">=GetResult56(Fields!group_index.Value, LookupSet(5, Fields!group_index.Value, Fields!num_result.Value, "ResultDataSet"), LookupSet(5, Fields!group_index.Value, Fields!met_min.Value, "ResultDataSet"), LookupSet(5, Fields!group_index.Value, Fields!met_max.Value, "ResultDataSet"), LookupSet(5, Fields!group_index.Value, Fields!round_num.Value, "ResultDataSet"), LookupSet(5, Fields!group_index.Value, Fields!round_type.Value, "ResultDataSet"), Fields!delivery_date.Value)</syntaxhighlight> | |||
<syntaxhighlight lang="vb">=GetResult56(Fields!group_index.Value, LookupSet(6, Fields!group_index.Value, Fields!num_result.Value, "ResultDataSet"), LookupSet(6, Fields!group_index.Value, Fields!met_min.Value, "ResultDataSet"), LookupSet(6, Fields!group_index.Value, Fields!met_max.Value, "ResultDataSet"), LookupSet(6, Fields!group_index.Value, Fields!round_num.Value, "ResultDataSet"), LookupSet(6, Fields!group_index.Value, Fields!round_type.Value, "ResultDataSet"), Fields!delivery_date.Value)</syntaxhighlight> | |||
<syntaxhighlight lang="vb"> | |||
Public Function GetResult56(group As Integer, numRes As Object, min As Object, max As Object, digits As Object, mode As Object, startDate As Object) As String | |||
Dim first As String = "" | |||
If numRes(0) IsNot Nothing Then first = numRes(0).ToString().Replace(".", ",") | |||
Dim second As String = "" | |||
If numRes(1) IsNot Nothing Then second = numRes(1).ToString().Replace(".", ",") | |||
If (first = "0" Or first = "") And (second = "0" Or second = "") Then Return "-" | |||
Dim result As New System.Text.StringBuilder() | |||
result.Append(vbLF & vbLF & vbLF) | |||
If String.IsNullOrEmpty(first) OrElse first = "0" Then | |||
first = "-" | |||
ElseIf numRes.Length > 0 AndAlso numRes(0) IsNot Nothing Then | |||
first = GetMetRange(numRes(0), min(0), max(0), digits(0), mode(0)) | |||
End If | |||
If String.IsNullOrEmpty(second) OrElse second = "0" Then | |||
second = "-" | |||
ElseIf numRes.Length > 1 AndAlso numRes(1) IsNot Nothing Then | |||
second = GetMetRange(numRes(1), min(1), max(1), digits(1), mode(1)) | |||
End If | |||
If group = 6 Then result.Append(vbLF) | |||
If Month(startDate) >= 10 Or Month(startDate) <= 4 Then | |||
result.Append(first & vbLF & "-") | |||
Else | |||
result.Append("-" & vbLF & second) | |||
End If | |||
Return result.ToString() | |||
End Function | |||
</syntaxhighlight> | |||
|- | |- | ||
|} | |} | ||
| Строка 334: | Строка 498: | ||
!Код и комментарии | !Код и комментарии | ||
|- | |- | ||
|1. Значения и нормы показателей ... установлены при стандартном давлении 101,325 кПа и стандартной температуре 20 | |1. Значения и нормы показателей ... установлены при стандартном давлении 101,325 кПа и стандартной температуре 20,0 °С. | ||
|<code style="background-color: #d4edda;>Объекты анализа</code> >> Выбрать объект >> <code style="background-color: #d4edda;>Редактировать</code> >> <code style="background-color: #d4edda;>Карточка объекта анализа</code> >> Выбрать показатель >> <code style="background-color: #d4edda;>Карточка показателя</code> >> <code style="background-color: #d4edda;>Норма при стандартных условиях</code> | |<code style="background-color: #d4edda;>Объекты анализа</code> >> Выбрать объект >> <code style="background-color: #d4edda;>Редактировать</code> >> <code style="background-color: #d4edda;>Карточка объекта анализа</code> >> Выбрать показатель >> <code style="background-color: #d4edda;>Карточка показателя</code> >> <code style="background-color: #d4edda;>Норма при стандартных условиях</code> | ||
| Строка 343: | Строка 507: | ||
*используется функция [[Scripts#CollapseNumbers()|<code>CollapseNumbers()</code>]] | *используется функция [[Scripts#CollapseNumbers()|<code>CollapseNumbers()</code>]] | ||
|- | |- | ||
|2 | |2. Значения показателей ... определены потоковыми средствами измерений (среднеарифметическое значение за период поставки). | ||
|<code style="background-color: #d4edda;>Лабораторные журналы</code> >> <code style="background-color: #d4edda;>Журнал регистрации проб и результатов</code> >> Выбрать пробу >> <code style="background-color: #d4edda;>Результаты</code> >> <code style="background-color: #d4edda;>Ввод результатов</code> >> <code style="background-color: #d4edda;>Определен</code> | |<code style="background-color: #d4edda;>Лабораторные журналы</code> >> <code style="background-color: #d4edda;>Журнал регистрации проб и результатов</code> >> Выбрать пробу >> <code style="background-color: #d4edda;>Результаты</code> >> <code style="background-color: #d4edda;>Ввод результатов</code> >> <code style="background-color: #d4edda;>Определен</code> | ||
| Строка 403: | Строка 525: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
|- | |- | ||
| | |3. Значения показателей ... определены ... | ||
|<code style="background-color: #d4edda;>Лабораторные журналы</code> >> <code style="background-color: #d4edda;>Журнал регистрации проб и результатов</code> >> Выбрать пробу >> <code style="background-color: #d4edda;>Результаты</code> >> <code style="background-color: #d4edda;>Ввод результатов</code> >> <code style="background-color: #d4edda;>Определен</code> | |<code style="background-color: #d4edda;>Лабораторные журналы</code> >> <code style="background-color: #d4edda;>Журнал регистрации проб и результатов</code> >> Выбрать пробу >> <code style="background-color: #d4edda;>Результаты</code> >> <code style="background-color: #d4edda;>Ввод результатов</code> >> <code style="background-color: #d4edda;>Определен</code> | ||
| Строка 444: | Строка 566: | ||
|<syntaxhighlight lang="vb">=FormatFio(Fields!surname.Value, Fields!name.Value, Fields!patronymic.Value, 2)</syntaxhighlight> | |<syntaxhighlight lang="vb">=FormatFio(Fields!surname.Value, Fields!name.Value, Fields!patronymic.Value, 2)</syntaxhighlight> | ||
*используется функция [[Scripts#FormatFio()|<code>FormatFio()</code>]] | *используется функция [[Scripts#FormatFio()|<code>FormatFio()</code>]] | ||
|- | |||
|Дата выдачи паспорта качества | |||
|<nowiki>-</nowiki> | |||
|<syntaxhighlight lang="vb">="Дата выдачи паспорта качества: " & Format(Now(), "dd.MM.yyyy")</syntaxhighlight> | |||
|- | |- | ||
|} | |} | ||
Текущая версия от 09:21, 5 мая 2026
Общий вид

Параметры
В форме используются 5 фильтров параметров:
| № | Параметр | Тип поля | Данные | Сортировка |
|---|---|---|---|---|
| 1 | Выберите лабораторию: |
выбор значения | лаборатории, имеющие записи в журналах с показателями, у которых в наименовании нормы присутствует ГОСТ 5542 | по алфавиту |
| 2 | Введите номер паспорта: |
ввод текста | 1 (значение по умолчанию) | - |
| 3 | Введите начало периода поставки: |
поле-календарь | 01.01.2020 0:00 (значение по умолчанию) | - |
| 4 | Введите завершение периода поставки: |
поле-календарь | текущие дата и время (значение по умолчанию) | - |
| 5 | Выберите сотрудников, ответственных за оформление паспорта: |
выбор одного или нескольких значений | сотрудники лаборатории (п.1) |
по алфавиту |
Атрибуты
В наборе данных MainDataSet в таблице ATTRIBUTE_NAME используются атрибуты со следующими значениями NAME:
- НД на отбор проб
- Дата и время отбора пробы
- Дата поставки пробы
- Полное наименование
- Код ОКПД 2
- Дата начала анализа
- Дата окончания анализа
В наборе данных OrganisationDataSet в таблице ATTRIBUTE_NAME используются атрибуты со следующими значениями NAME:
- Адрес
- Телефоны
В наборе данных ResultDataSet в таблице ATTRIBUTE_NAME используются атрибуты со следующими значениями NAME:
- Группа в паспорт качества
- Номер в паспорт качества
- Дата поставки пробы
В наборе данных NoteDataSet в таблице ATTRIBUTE_NAME используются атрибуты со следующими значениями NAME:
- Дата поставки пробы
- Определен
- Группа в паспорт качества
- Номер в паспорт качества
- Норма при стандартных условиях
Внимание!
Описание атрибутов приведено в соответствии с базой данных ASTRA-PG13 на основе созданных пользователем полей.
В других базах этих полей может не быть либо их наименование может отличаться!!!
Отсутствующие в базе атрибуты не будут выводиться в документе. Для корректной работы документа актуализируйте атрибуты в соответствии с приведенным списком.
Поля, данные, выражения, элементы интерфейса и код
Информация об организации
| Поля | Интерфейс ... >> ...
и данные |
Код и комментарии |
|---|---|---|
| Наименование организации | Подразделения предприятия >> + >> Выбрать предприятие >> Редактировать >> Карточка подразделения >> Краткое наименование
|
=Fields!head_org.Value
|
| Адрес, телефоны, e-mail | Подразделения предприятия >> + >> Выбрать предприятие >> Редактировать >> Карточка подразделения >> Адрес, Телефоны, E-mail
|
=Fields!head_org_address.Value & vbLF & "тел, e-mail: " & ConcatFields("; ", Fields!head_org_tel.Value, Fields!head_org_mail.Value)
используются:
|
| Наименование лаборатории | Подразделения предприятия >> + >> Выбрать подразделение >> Редактировать >> Карточка подразделения >> Краткое наименование
|
=Fields!lab_name.Value
|
| Адрес лаборатории | Подразделения предприятия >> + >> Выбрать подразделение >> Редактировать >> Карточка подразделения >> Адрес
|
=Fields!lab_address.Value
|
Общие данные паспорта
| Поля | Интерфейс ... >> ...
и данные |
Код и комментарии |
|---|---|---|
| Номер паспорта качества | Parameters!ReportParameterNum.Value
|
="Паспорт качества № " & Parameters!ReportParameterNum.Value
|
| Наименование объекта анализа и наименование стандарта | Объекты анализа >> Выбрать объект >> Редактировать >> Карточка объекта анализа >> Полное наименование
|
=Fields!ao_full_name.Value & " по " & Fields!quant_norm.Value
|
| Код ОКПД2 | Объекты анализа >> Выбрать объект >> Редактировать >> Карточка объекта анализа >> Код ОКПД 2
|
="Код ОКПД 2 " & Fields!code_okpd2.Value
|
| Период поставки | - | =" с " & Format(Parameters!ReportParameterFrom.Value, "HH:mm dd.MM.yyyy")
="по " & Format(Parameters!ReportParameterTo.Value, "HH:mm dd.MM.yyyy")
|
| Дата (период) отбора проб | Лабораторные журналы >> Журнал регистрации проб и испытаний >> Выбрать пробу >> Редактировать >> Карточка пробы >> Информация >> Дата и время отбора пробы
|
=RangeDate(Min(Fields!sampling_date.Value), Max(Fields!sampling_date.Value))
Public Function RangeDate(minDate As Object, maxDate As Object) As String
Dim hasMin As Boolean = Not minDate Is Nothing
Dim hasMax As Boolean = Not maxDate Is Nothing
If Not hasMin And Not hasMax Then Return "-"
If hasMin And Not hasMax Then
Return minDate.Date
ElseIf Not hasMin And hasMax Then
Return maxDate.Date
ElseIf hasMin And hasMax Then
If minDate.Date = maxDate.Date Then
Return minDate.Date
Else
Return minDate.Date & " - " & maxDate.Date
End If
End If
End Function
|
| НД на метод отбора | Объекты анализа >> Выбрать объект >> Редактировать >> Карточка объекта анализа >> НД на отбор проб
|
=First(Fields!sampling_norm_doc.Value)
|
| Место отбора проб | Лабораторные журналы >> Журнал регистрации проб и испытаний >> Выбрать пробу >> Редактировать >> Карточка пробы >> Источник >> Выбранный источник
|
=First(Fields!place_name.Value)
|
| Дата (период) испытаний | Лабораторные журналы >> Журнал регистрации проб и испытаний >> Выбрать пробу >> Результаты >> Дата начала анализа, Дата окончания анализа
|
=RangeDate(Fields!min_date_analysis.Value, Fields!max_date_analysis.Value)
|
Таблица результатов
| Поля | Интерфейс ... >> ...
и данные |
Код и комментарии |
|---|---|---|
| № | Fields!group_index.Value >> group_index / ResultDataSet >> SQL
|
=Fields!group_index.Value & "."
|
| Наименование показателя | Объекты анализа >> Выбрать объект >> Редактировать >> Карточка объекта анализа >> Выбрать показатель >> Карточка показателя >> Группа в паспорт качества, Наименование
|
=GetIndName(Fields!group_number.Value, Fields!met_ind_name.Value, Fields!ind_name.Value, Fields!unit.Value)
Public Function GetIndName(group As Integer, methIndName As Object, indName As Object, unit As Object) As String
Dim resultName As String = ""
If methIndName IsNot Nothing AndAlso Not IsDBNull(methIndName) AndAlso Not String.IsNullOrWhiteSpace(methIndName.ToString()) Then
resultName = methIndName.ToString().Trim()
ElseIf indName IsNot Nothing AndAlso Not IsDBNull(indName) Then
resultName = indName.ToString().Trim()
End If
If unit IsNot Nothing AndAlso Not IsDBNull(unit) AndAlso Not String.IsNullOrWhiteSpace(unit.ToString()) Then
If group <> 1 Then
Dim unitStr As String = RemoveTagsWithSupIndex(unit)
resultName &= ", " & unitStr
End If
End If
If resultName = "Метан" Then
resultName = "Молярная доля компонентов (компонентный состав), %" & vbLf & resultName
End If
Return resultName
End Function
Public Function RemoveTagsWithSupIndex(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 Replace(txt, "3", "³", , , CompareMethod.Text)
End Function
|
| Метод испытания | Методики анализа >> Выбрать методику >> Редактировать >> Карточка методики анализа >> Нормативный документ
|
=GetOrDash(Fields!norm_document.Value)
|
| Норма (строка 1) | Объекты анализа >> Выбрать объект >> Редактировать >> Карточка объекта анализа >> Выбрать показатель >> Карточка показателя >> Группа в паспорт качества
|
=IIF(Fields!serial_number.Value = 1, GetNorms(Fields!group_number.Value, Fields!min.Value, Fields!comment.Value, Fields!limit_scale.Value), "")
Public Function GetNorms(groupNumber As Integer, norm As String, comment As String, scale As Object) As String
If groupNumber = 1 Or groupNumber = 8 Or groupNumber = 9 Or groupNumber = 11 Then Return comment
If norm = "0" Or norm Like "*0*(0)*" Then Return "-"
If scale IsNot Nothing Then Return RoundMethod(Double.Parse(norm.Replace(".", ",")), Integer.Parse(scale), 1)
Return norm.Replace(".", ",")
End Function
|
| Норма (строка 2) | =GetNorms(Fields!group_number.Value, Fields!min.Value, Fields!comment.Value, Fields!limit_scale.Value)
| |
| Норма (строки прочие) | =GetNorms(Fields!group_number.Value, Fields!min.Value, Fields!comment.Value, Fields!limit_scale.Value)
=GetNorms(Fields!group_number.Value, Fields!max.Value, Fields!comment.Value, Fields!limit_scale.Value)
| |
| Норма (строка 4) | Объекты анализа >> Выбрать объект >> Редактировать >> Карточка объекта анализа >> Выбрать показатель >> Карточка показателя >> Номер в паспорт качества
|
=GetNorms4(LookupSet(4, Fields!group_index.Value, Fields!min.Value, "ResultDataSet"), LookupSet(4, Fields!group_index.Value, Fields!limit_scale.Value, "ResultDataSet"))
=GetNorms4(LookupSet(4, Fields!group_index.Value, Fields!max.Value, "ResultDataSet"), LookupSet(4, Fields!group_index.Value, Fields!limit_scale.Value, "ResultDataSet"))
Public Function GetNorms4(norms As Object(), scales As Object()) As String
Dim first As String = ""
If norms(0) IsNot Nothing Then first = norms(0).ToString().Replace(".", ",")
Dim second As String = ""
If norms(1) IsNot Nothing Then second = norms(1).ToString().Replace(".", ",")
If (first = "0" Or first = "") And (second = "0" Or second = "") Then Return "-"
Dim result As New System.Text.StringBuilder()
If Not String.IsNullOrEmpty(first) Then
If scales.Length > 0 AndAlso scales(0) IsNot Nothing Then
result.Append(RoundMethod(Double.Parse(first), Integer.Parse(scales(0)), 1))
Else
result.Append(first)
End If
End If
If Not String.IsNullOrEmpty(second) Then
result.Append(" (")
If scales.Length > 1 AndAlso scales(1) IsNot Nothing Then
result.Append(RoundMethod(Double.Parse(second), Integer.Parse(scales(1)), 1))
Else
result.Append(second)
End If
result.Append(")")
End If
Return result.ToString()
End Function
|
| Норма (строка 5) | =GetNorms56(Fields!group_index.Value, LookupSet(5, Fields!group_index.Value, Fields!min.Value, "ResultDataSet"), LookupSet(5, Fields!group_index.Value, Fields!limit_scale.Value, "ResultDataSet"))
=GetNorms56(Fields!group_index.Value, LookupSet(5, Fields!group_index.Value, Fields!max.Value, "ResultDataSet"), LookupSet(5, Fields!group_index.Value, Fields!limit_scale.Value, "ResultDataSet"))
Public Function GetNorms56(group As Integer, norms As Object(), scales As Object()) As String
Dim first As String = ""
If norms(0) IsNot Nothing Then first = norms(0).ToString().Replace(".", ",")
Dim second As String = ""
If norms(1) IsNot Nothing Then second = norms(1).ToString().Replace(".", ",")
Dim result As New System.Text.StringBuilder()
result.Append(vbLF & vbLF & vbLF)
If String.IsNullOrEmpty(first) OrElse first = "0" Then
first = "-"
ElseIf scales.Length > 0 AndAlso scales(0) IsNot Nothing Then
first = RoundMethod(Double.Parse(first), Integer.Parse(scales(0)), 1)
End If
If String.IsNullOrEmpty(second) OrElse second = "0" Then
second = "-"
ElseIf scales.Length > 1 AndAlso scales(1) IsNot Nothing Then
second = RoundMethod(Double.Parse(second), Integer.Parse(scales(1)), 1)
End If
If group = 5 Then
result.Append(first & vbLF & second)
Else
result.Append(vbLF & first & vbLF & second)
End If
Return result.ToString()
End Function
| |
| Норма (строка 6) | =GetNorms56(Fields!group_index.Value, LookupSet(6, Fields!group_index.Value, Fields!min.Value, "ResultDataSet"), LookupSet(6, Fields!group_index.Value, Fields!limit_scale.Value, "ResultDataSet"))
=GetNorms56(Fields!group_index.Value, LookupSet(6, Fields!group_index.Value, Fields!max.Value, "ResultDataSet"), LookupSet(6, Fields!group_index.Value, Fields!limit_scale.Value, "ResultDataSet"))
| |
| Результаты испытаний (кроме 4, 5, 6 групп) | Объекты анализа >> Выбрать объект >> Редактировать >> Карточка объекта анализа >> Выбрать показатель >> Карточка показателя >> Группа в паспорт качества, Номер в паспорт качества
|
=GetResult(Fields!group_number.Value, Fields!num_result.Value, Fields!str_result.Value, Fields!met_min.Value, Fields!met_max.Value, Fields!round_num.Value, Fields!round_type.Value)
Public Function GetResult(group As Integer, numRes As Double, strRes As String,
min As Object, max As Object, digits As Object, mode As Object) As String
Select Case group
Case 4
Dim arr() As String = strRes.Split(" "c)
Dim firstNum As Double = Double.Parse(arr(0).Replace(".", ","))
Dim secondNum As Double = Double.Parse(arr(1).Replace(".", ",").Replace("(", "").Replace(")", ""))
Dim compareRangeNorm = GetMetRange(numRes, min, max, digits, mode)
If compareRangeNorm Like "%менее%" Or compareRangeNorm Like "%более%" Then
Return compareRangeNorm
Else
Return RoundMethod(firstNum, 2, 1) & " (" & RoundMethod(secondNum, 0, 1) & ")"
End If
Case 10
Return "отсутствуют"
Case Else
Return GetMetRange(numRes, min, max, digits, mode)
End Select
End Function
Public Function GetMetRange(numRes As Double, min As Object, max As Object, digits As Object, mode As Object) As String
Dim numMin As Double
If min Is Nothing OrElse IsDBNull(min) OrElse String.IsNullOrWhiteSpace(min.ToString()) Then
numMin = Double.MinValue
Else
numMin = Val(min.ToString().Replace(",", "."))
End If
Dim numMax As Double
If max Is Nothing OrElse IsDBNull(max) OrElse String.IsNullOrWhiteSpace(max.ToString()) Then
numMax = Double.MaxValue
Else
numMax = Val(max.ToString().Replace(",", "."))
End If
If numRes < numMin Then
Return "менее " & min.ToString()
ElseIf numRes > numMax Then
Return "более " & max.ToString()
Else
Return RoundMethod(numRes, digits, mode)
End If
End Function
|
| Результаты испытаний (4 группа) | =GetResult4( LookupSet(4, Fields!group_index.Value, Fields!num_result.Value, "ResultDataSet"), LookupSet(4, Fields!group_index.Value, Fields!met_min.Value, "ResultDataSet"), LookupSet(4, Fields!group_index.Value, Fields!met_max.Value, "ResultDataSet"), LookupSet(4, Fields!group_index.Value, Fields!round_num.Value, "ResultDataSet"), LookupSet(4, Fields!group_index.Value, Fields!round_type.Value, "ResultDataSet"))
Public Function GetResult4(numRes As Object, min As Object, max As Object, digits As Object, mode As Object) As String
Dim first As String = ""
If numRes(0) IsNot Nothing Then first = numRes(0).ToString().Replace(".", ",")
Dim second As String = ""
If numRes(1) IsNot Nothing Then second = numRes(1).ToString().Replace(".", ",")
If (first = "0" Or first = "") And (second = "0" Or second = "") Then Return "-"
Dim compareRangeNorm = GetMetRange(numRes(0), min(0), max(0), digits(0), mode(0))
If compareRangeNorm Like "*менее*" Or compareRangeNorm Like "*более*" Then
Return compareRangeNorm
Else
Return RoundMethod(numRes(0), 2, 1) & " (" & RoundMethod(numRes(1), 0, 1) & ")"
End If
End Function
| |
| Результаты испытаний (5, 6 группы) | =GetResult56(Fields!group_index.Value, LookupSet(5, Fields!group_index.Value, Fields!num_result.Value, "ResultDataSet"), LookupSet(5, Fields!group_index.Value, Fields!met_min.Value, "ResultDataSet"), LookupSet(5, Fields!group_index.Value, Fields!met_max.Value, "ResultDataSet"), LookupSet(5, Fields!group_index.Value, Fields!round_num.Value, "ResultDataSet"), LookupSet(5, Fields!group_index.Value, Fields!round_type.Value, "ResultDataSet"), Fields!delivery_date.Value)
=GetResult56(Fields!group_index.Value, LookupSet(6, Fields!group_index.Value, Fields!num_result.Value, "ResultDataSet"), LookupSet(6, Fields!group_index.Value, Fields!met_min.Value, "ResultDataSet"), LookupSet(6, Fields!group_index.Value, Fields!met_max.Value, "ResultDataSet"), LookupSet(6, Fields!group_index.Value, Fields!round_num.Value, "ResultDataSet"), LookupSet(6, Fields!group_index.Value, Fields!round_type.Value, "ResultDataSet"), Fields!delivery_date.Value)
Public Function GetResult56(group As Integer, numRes As Object, min As Object, max As Object, digits As Object, mode As Object, startDate As Object) As String
Dim first As String = ""
If numRes(0) IsNot Nothing Then first = numRes(0).ToString().Replace(".", ",")
Dim second As String = ""
If numRes(1) IsNot Nothing Then second = numRes(1).ToString().Replace(".", ",")
If (first = "0" Or first = "") And (second = "0" Or second = "") Then Return "-"
Dim result As New System.Text.StringBuilder()
result.Append(vbLF & vbLF & vbLF)
If String.IsNullOrEmpty(first) OrElse first = "0" Then
first = "-"
ElseIf numRes.Length > 0 AndAlso numRes(0) IsNot Nothing Then
first = GetMetRange(numRes(0), min(0), max(0), digits(0), mode(0))
End If
If String.IsNullOrEmpty(second) OrElse second = "0" Then
second = "-"
ElseIf numRes.Length > 1 AndAlso numRes(1) IsNot Nothing Then
second = GetMetRange(numRes(1), min(1), max(1), digits(1), mode(1))
End If
If group = 6 Then result.Append(vbLF)
If Month(startDate) >= 10 Or Month(startDate) <= 4 Then
result.Append(first & vbLF & "-")
Else
result.Append("-" & vbLF & second)
End If
Return result.ToString()
End Function
|
Примечания
| Поля | Интерфейс ... >> ...
и данные |
Код и комментарии |
|---|---|---|
| 1. Значения и нормы показателей ... установлены при стандартном давлении 101,325 кПа и стандартной температуре 20,0 °С. | Объекты анализа >> Выбрать объект >> Редактировать >> Карточка объекта анализа >> Выбрать показатель >> Карточка показателя >> Норма при стандартных условиях
|
="1. Значения и нормы показателей " & CollapseNumbers(LookupSet(True, Fields!standart_norm.Value, Fields!group_index.Value, "NoteDataSet")) & " установлены при стандартном давлении 101,325 кПа и стандартной температуре 20,0 °С. Стандартная температура сгорания 25,0 °С."
|
| 2. Значения показателей ... определены потоковыми средствами измерений (среднеарифметическое значение за период поставки). | Лабораторные журналы >> Журнал регистрации проб и результатов >> Выбрать пробу >> Результаты >> Ввод результатов >> Определен
|
=CollapseNumbers(LookupSet(1, 1, GetNumForNote4(Fields!group_index.Value, Fields!definition.Value), "NoteDataSet"))
Public Function GetNumForNote4(group As Object, definition As Object) As Object
If definition Is Nothing Then Return Nothing
If LCase(definition.ToString()) Like "*ото*си*" Then Return group
Return Nothing
End Function
|
| 3. Значения показателей ... определены ... | Лабораторные журналы >> Журнал регистрации проб и результатов >> Выбрать пробу >> Результаты >> Ввод результатов >> Определен
|
=CollapseNumbers(LookupSet(1, 1, GetNumForNote5(Fields!group_index.Value, Fields!definition.Value, Fields!first_45.Value), "NoteDataSet"))
Public Function GetNumForNote5(group As Object, definition As Object, first_45 As Boolean) As Object
If first_45 AndAlso group = 1 Then Return Nothing
If definition Is Nothing OrElse Not (LCase(definition.ToString()) Like "*ото*си*") Then Return group
Return Nothing
End Function
=Parameters!ReportParameterLaboratory.Label
|
Подписи
| Поля | Интерфейс ... >> ...
и данные |
Код и комментарии |
|---|---|---|
| Должность | Персонал >> Выбрать запись >> Карточка сотрудника >> Должность
|
=Fields!position.Value
|
| И.О. Фамилия | Персонал >> Выбрать запись >> Карточка сотрудника >> Фамилия; Имя; Отчество
|
=FormatFio(Fields!surname.Value, Fields!name.Value, Fields!patronymic.Value, 2)
|
| Дата выдачи паспорта качества | - | ="Дата выдачи паспорта качества: " & Format(Now(), "dd.MM.yyyy")
|