Сведения о работниках лаборатории: различия между версиями
Sidminik (обсуждение | вклад) |
Sidminik (обсуждение | вклад) |
||
| (не показано 14 промежуточных версий этого же участника) | |||
| Строка 1: | Строка 1: | ||
==Общий вид== | |||
[[Файл:p_1.png|center|border]] | |||
==Параметры== | ==Параметры== | ||
| Строка 92: | Строка 96: | ||
и данные <code style="background-color: #fff3e0;>...</code> >> <code style="background-color: #fff3e0;>...</code> | и данные <code style="background-color: #fff3e0;>...</code> >> <code style="background-color: #fff3e0;>...</code> | ||
!Код и комментарии | !Код и комментарии | ||
|- | |||
|colspan = "3"|Сведения о работниках лаборатории | |||
|- | |- | ||
|Текущая дата | |Текущая дата | ||
| Строка 112: | Строка 118: | ||
|- | |- | ||
|Фамилия, имя, отчество (при наличии), страховой номер индивидуального лицевого счета, дата и место рождения | |Фамилия, имя, отчество (при наличии), страховой номер индивидуального лицевого счета, дата и место рождения | ||
|<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! | <code style="background-color: #fff3e0;>Fields!surname.Value, Fields!name.Value, Fields!patronimyc.Value,</code> >> <code style="background-color: #fff3e0;>surname, name, patronimyc / MainDataSet</code> >> <code style="background-color: #fff3e0;>SURNAME; NAME; PATRONYMIC / EMPLOYEE</code> | ||
<code style="background-color: #fff3e0;>Fields!snils.Value</code> >> <code style="background-color: #fff3e0;>snils / MainDataSet</code> >> <code style="background-color: #fff3e0;>STRING_VALUE / EMPLOYEE_ATTRIBUTE</code> | <code style="background-color: #fff3e0;>Fields!snils.Value</code> >> <code style="background-color: #fff3e0;>snils / MainDataSet</code> >> <code style="background-color: #fff3e0;>STRING_VALUE / EMPLOYEE_ATTRIBUTE</code> | ||
|<syntaxhighlight lang="vb">= | |<syntaxhighlight lang="vb">=ConcatFields(vbLF, FormatFio(Fields!surname.Value, Fields!name.Value, Fields!patronymic.Value, 0), Fields!snils.Value)</syntaxhighlight> | ||
в ячейку вносятся (через перенос на новую строку) значение ФИО и значение поля СНИЛС (если не пустое);<br>для соединения полей | в ячейку вносятся (через перенос на новую строку) значение ФИО и значение поля СНИЛС (если не пустое);<br>используются: | ||
*для соединения полей функция [[Scripts#ConcatFields()|<code>ConcatFields()</code>]] | |||
*для преобразования ФИО функция [[Scripts#FormatFio()|<code>FormatFio()</code>]] | |||
|- | |- | ||
|Основание для привлечения личного труда (трудовой договор, гражданско-правовой договор или иное), работа по основному месту работы или по совместительству | |Основание для привлечения личного труда (трудовой договор, гражданско-правовой договор или иное), работа по основному месту работы или по совместительству | ||
| Строка 124: | Строка 132: | ||
<code style="background-color: #fff3e0;>Fields!contract_date.Value</code> >> <code style="background-color: #fff3e0;>contract_date / MainDataSet</code> >> <code style="background-color: #fff3e0;>DATE_VALUE / EMPLOYEE_ATTRIBUTE</code> | <code style="background-color: #fff3e0;>Fields!contract_date.Value</code> >> <code style="background-color: #fff3e0;>contract_date / MainDataSet</code> >> <code style="background-color: #fff3e0;>DATE_VALUE / EMPLOYEE_ATTRIBUTE</code> | ||
|<syntaxhighlight lang="vb">=Code.ConcatFields(", ", Fields!employment_form.Value, Fields!contract_number.Value, Fields!contract_date.Value | |<syntaxhighlight lang="vb">=Code.ConcatFields(", ", Fields!employment_form.Value, Fields!contract_number.Value, Format(Fields!contract_date.Value, "dd.MM.yyyy"), Fields!employment_type.Value)</syntaxhighlight> | ||
если все 4 поля БД, содержащие форму, номер, дату и тип являются пустыми, то в строку заносится прочерк; иначе вносятся через запятую форма, номер, дата и тип;<br>для соединения полей используется функция [[Scripts#ConcatFields()|<code>ConcatFields()</code>]] | если все 4 поля БД, содержащие форму, номер, дату и тип являются пустыми, то в строку заносится прочерк; иначе вносятся через запятую форма, номер, дата и тип;<br>для соединения полей используется функция [[Scripts#ConcatFields()|<code>ConcatFields()</code>]] | ||
|- | |- | ||
| Строка 137: | Строка 145: | ||
<code style="background-color: #fff3e0;>Fields!uni_year.Value</code> >> <code style="background-color: #fff3e0;>uni_year / MainDataSet</code> >> <code style="background-color: #fff3e0;>DATE_VALUE / EMPLOYEE_ATTRIBUTE</code> | <code style="background-color: #fff3e0;>Fields!uni_year.Value</code> >> <code style="background-color: #fff3e0;>uni_year / MainDataSet</code> >> <code style="background-color: #fff3e0;>DATE_VALUE / EMPLOYEE_ATTRIBUTE</code> | ||
|<syntaxhighlight lang="vb">= | |<syntaxhighlight lang="vb">=Code.ConcatFields(", ",Fields!uni.Value, Fields!uni_year.Value, Fields!prof.Value, Fields!diplom.Value)</syntaxhighlight> | ||
если все 4 поля БД (учебное заведение, год окончания, специальность и реквизиты диплома) пустые, то вносится прочерк; иначе | если все 4 поля БД (учебное заведение, год окончания, специальность и реквизиты диплома) пустые, то вносится прочерк; иначе через запятую выводятся только не пустые поля;<br>для соединения полей используется функция [[Scripts#ConcatFields()|<code>ConcatFields()</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!diplom_date.Value</code> >> <code style="background-color: #fff3e0;>diplom_date / MainDataSet</code> >> <code style="background-color: #fff3e0;>DATE_VALUE / EMPLOYEE_ATTRIBUTE</code> | <code style="background-color: #fff3e0;>Fields!diplom_date.Value</code> >> <code style="background-color: #fff3e0;>diplom_date / MainDataSet</code> >> <code style="background-color: #fff3e0;>DATE_VALUE / EMPLOYEE_ATTRIBUTE</code> | ||
|<syntaxhighlight lang="vb">= | |<syntaxhighlight lang="vb">=GetExperience(Fields!diplom_date.Value)</syntaxhighlight> | ||
<syntaxhighlight lang="vb"> | |||
Public Function GetExperience(diplomDate As Object) As String | |||
If IsDBNull(diplomDate) OrElse diplomDate Is Nothing Then | |||
Return "-" | |||
End If | |||
<syntaxhighlight lang="vb">Public Function | |||
Return YearsWithSuffix(diplomDate) & vbLF & Format(diplomDate, "dd.MM.yyyy") & " - по текущую дату" | |||
End Function | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="vb"> | |||
Public Function YearsWithSuffix(inputDate As Date) As String | |||
Dim yearsDiff As Long = DateDiff(DateInterval.Year, inputDate, Now()) | Dim yearsDiff As Long = DateDiff(DateInterval.Year, inputDate, Now()) | ||
Dim resultDate As Long = yearsDiff | Dim resultDate As Long = yearsDiff | ||
| Строка 168: | Строка 181: | ||
Return resultString | Return resultString | ||
End Function</syntaxhighlight> | End Function | ||
</syntaxhighlight> | |||
|- | |- | ||
|} | |} | ||
| Строка 198: | Строка 205: | ||
|- | |- | ||
|ФИО | |ФИО | ||
|Получение данных из фильтра <code>Parameters!ReportParameterFio.Label</code> и преобразование в формат И.О. Фамилия | |Получение данных из фильтра <code>Parameters!ReportParameterFio.Label</code> и преобразование в формат И.О. Фамилия | ||
|<syntaxhighlight lang="vb">= | |<syntaxhighlight lang="vb">=FormatFio(First(Fields!surname.Value, "FilterPosition"), First(Fields!name.Value, "FilterPosition"), First(Fields!patronymic.Value, "FilterPosition"), 2)</syntaxhighlight> | ||
для преобразования ФИО используется функция [[Scripts#FormatFio()|<code>FormatFio()</code>]] | |||
|- | |- | ||
|} | |} | ||
Текущая версия от 01:39, 2 апреля 2026
Общий вид

Параметры
| № | Параметр | Тип поля | Данные | Сортировка |
|---|---|---|---|---|
| 1 | Выберите лабораторию:
|
выбор значения | лаборатории, имеющие записи в журналах | сначала головное учреждение, затем остальные по алфавиту |
| 2 | Укажите ФИО уполномоченного лица:
|
выбор значения | сотрудники из лаборатории (п.1)
|
по алфавиту |
| 3 | Укажите должность уполномоченного лица:
|
выбор значения | должности сотрудника (п.2)
|
по алфавиту |
| 4 | Сотрудники (область аккредитации):
|
выбор одного из 2-х вариантов - «в области аккредитации», «вне области аккредитации» | отметка проставляется ТОЛЬКО для сотрудников лаборатории | - |
| 5 | Введите начальное значение нумерации строк:
|
ввод числа | начальное значение, с которого будет начинаться нумерация строк (по умолчанию 1) | - |
Атрибуты
В наборе данных MainDataSet в таблице ATTRIBUTE_NAME используются атрибуты со следующими значениями NAME:
- СНИЛС
- Форма привлечения труда
- Тип занятости
- Номер договора
- Дата договора
- Выполняемые функции
- Образовательное учреждение
- Период обучения
- Специальность, специализация, квалификация
- Реквизиты документа об образовании
- Дата получения диплома
- В области аккредитации
Внимание!
Описание атрибутов приведено в соответствии с базой данных ASTRA-PG13 на основе созданных пользователем полей.
В других базах этих полей может не быть либо их наименование может отличаться!!!
Отсутствующие в базе атрибуты не будут выводиться в документе. Для корректной работы документа актуализируйте атрибуты в соответствии с приведенным списком.
Поля, данные, выражения, элементы интерфейса и код
Верхний колонтитул
| Поля | Интерфейс ... >> ...
и данные |
Код и комментарии |
|---|---|---|
| Название лаборатории | Parameters!ReportParameterLaboratory.Label
|
=Parameters!ReportParameterLaboratory.Label
|
| Владелец версии | Code.Globals.GetVersionOwner()
|
="Владелец версии: " & Code.Globals.GetVersionOwner()
|
Заголовок
| Поля | Интерфейс ... >> ...
и данные |
Код и комментарии |
|---|---|---|
| Сведения о работниках лаборатории | ||
| Текущая дата | Today.ToString("dd.MM.yyyy")
|
="По состоянию на: " & Today.ToString("dd.MM.yyyy")
|
Основная информация
| Поля | Интерфейс ... >> ...
и данные |
Код и комментарии |
|---|---|---|
| № п/п | Сквозная нумерация строк RowNumber(), начальное значение нумерации строк из параметра фильтра Parameters!ReportParametrNumberFirstString.Value – 1
|
=RowNumber() + Parameters!ReportParametrNumberFirstString.Value – 1
RowNumber() вычитается единица, чтобы скорректировать смещение относительно числа, введенного пользователем; при вводе пользователем, например, числа 50, для первой строки отчета RowNumber() вернет 1: выражение вычисляется как 1 + 50 - 1, что дает в результате 50 (желаемый начальный номер); для второй строки RowNumber() вернет 2, и выражение даст 2 + 50 - 1 = 51, и так далее
|
| Фамилия, имя, отчество (при наличии), страховой номер индивидуального лицевого счета, дата и место рождения | Персонал >> Выбрать запись >> Карточка сотрудника >> Фамилия, Имя, Отчество, СНИЛС
|
=ConcatFields(vbLF, FormatFio(Fields!surname.Value, Fields!name.Value, Fields!patronymic.Value, 0), Fields!snils.Value)
в ячейку вносятся (через перенос на новую строку) значение ФИО и значение поля СНИЛС (если не пустое);
|
| Основание для привлечения личного труда (трудовой договор, гражданско-правовой договор или иное), работа по основному месту работы или по совместительству | Персонал >> Выбрать запись >> Карточка сотрудника >> Форма привлечения труда; Номер договора; Дата договора; Тип занятости
|
=Code.ConcatFields(", ", Fields!employment_form.Value, Fields!contract_number.Value, Format(Fields!contract_date.Value, "dd.MM.yyyy"), Fields!employment_type.Value)
если все 4 поля БД, содержащие форму, номер, дату и тип являются пустыми, то в строку заносится прочерк; иначе вносятся через запятую форма, номер, дата и тип; |
| Выполняемые функции, проводимые исследования, испытания, измерения | Персонал >> Выбрать запись >> Карточка сотрудника >> Выполняемые функции
|
=IIF(IsNothing (Fields!function_value.Value), "-", Fields!function_value.Value)
|
| Образование (наименование учебного заведения, год окончания, квалификация по документу об образовании, реквизиты документа об образовании) | Персонал >> Выбрать запись >> Карточка сотрудника >> Образовательное учреждение; Дата получения диплома; Специальность, специализация, квалификация; Реквизиты документа об образовании
|
=Code.ConcatFields(", ",Fields!uni.Value, Fields!uni_year.Value, Fields!prof.Value, Fields!diplom.Value)
если все 4 поля БД (учебное заведение, год окончания, специальность и реквизиты диплома) пустые, то вносится прочерк; иначе через запятую выводятся только не пустые поля; |
| Практический опыт по исследованиям, испытаниям, измерениям, включенным в область аккредитации (в годах, с указанием, в каких организациях, в какой период и по каким видам исследований (испытаний) измерений получен) | Персонал >> Выбрать запись >> Карточка сотрудника >> Дата получения диплома
|
=GetExperience(Fields!diplom_date.Value)
Public Function GetExperience(diplomDate As Object) As String
If IsDBNull(diplomDate) OrElse diplomDate Is Nothing Then
Return "-"
End If
Return YearsWithSuffix(diplomDate) & vbLF & Format(diplomDate, "dd.MM.yyyy") & " - по текущую дату"
End Function
Public Function YearsWithSuffix(inputDate As Date) As String
Dim yearsDiff As Long = DateDiff(DateInterval.Year, inputDate, Now())
Dim resultDate As Long = yearsDiff
Dim resultString As String = yearsDiff.ToString()
If (resultDate > 20) Then
resultDate = resultDate Mod 10
End If
Select Case resultDate
Case 1
resultString &= $" год"
Case 2 To 4
resultString &= $" года"
Case Else
resultString &= $" лет"
End Select
Return resultString
End Function
|
Для вывода основной информации также использовались:
Подписи
| Поля | Интерфейс ... >> ...
и данные |
Код и комментарии |
|---|---|---|
| Должность | Подстановка из фильтра Parameters!ReportParameterPosition.Label
|
=Parameters!ReportParameterPosition.Label
|
| ФИО | Получение данных из фильтра Parameters!ReportParameterFio.Label и преобразование в формат И.О. Фамилия
|
=FormatFio(First(Fields!surname.Value, "FilterPosition"), First(Fields!name.Value, "FilterPosition"), First(Fields!patronymic.Value, "FilterPosition"), 2)
для преобразования ФИО используется функция |
Нижний колонтитул
| Поля | Интерфейс ... >> ...
и данные |
Код и комментарии |
|---|---|---|
| Имя программы | Code.Globals.GetProgramName()
|
=Code.Globals.GetProgramName()
|
| Нумерация страниц | Номер страницы Globals!PageNumber и всего страниц Globals!TotalPages
|
="Страница " & Globals!PageNumber & " из " & Globals!TotalPages
|