Сведения о работниках лаборатории: различия между версиями
Sidminik (обсуждение | вклад) |
Sidminik (обсуждение | вклад) |
||
| Строка 35: | Строка 35: | ||
|style="text-align: center;" colspan="3"|<b>Основная таблица</b> | |style="text-align: center;" colspan="3"|<b>Основная таблица</b> | ||
|- | |- | ||
|rowspan="2"|№ п/п||Вывод сквозной нумерации строк <code>RowNumber()</code>||rowspan="2"|< | |rowspan="2"|№ п/п||Вывод сквозной нумерации строк <code>RowNumber()</code>||rowspan="2"|<syntaxhighlight lang="vb">=RowNumber() + Parameters!ReportParametrNumberFirstString.Value – 1</syntaxhighlight> из счетчика <code>RowNumber()</code> вычитается единица, чтобы скорректировать смещение относительно числа, введенного пользователем; при вводе пользователем, например, числа 50, для первой строки отчета <code>RowNumber()</code> вернет 1: выражение вычисляется как 1 + 50 - 1, что дает в результате 50 (желаемый начальный номер); для второй строки <code>RowNumber()</code> вернет 2, и выражение даст 2 + 50 - 1 = 51, и так далее | ||
|- | |- | ||
|Начальное значение нумерации строк из параметра фильтра: <code>Parameters!ReportParametrNumberFirstString.Value – 1</code> | |Начальное значение нумерации строк из параметра фильтра: <code>Parameters!ReportParametrNumberFirstString.Value – 1</code> | ||
| Строка 61: | Строка 61: | ||
|Вид работы <code>Fields!type.Value</code>||<code>Редактировать</code> >> <code>Карточка сотрудника</code> >> <code>Информация</code> >> <code>Трудовые отношения</code> >> <code>Тип занятости</code> | |Вид работы <code>Fields!type.Value</code>||<code>Редактировать</code> >> <code>Карточка сотрудника</code> >> <code>Информация</code> >> <code>Трудовые отношения</code> >> <code>Тип занятости</code> | ||
|- | |- | ||
|Условие <code>IIF()</code>||rowspan=2"|< | |Условие <code>IIF()</code>||rowspan=2"|<syntaxhighlight lang="vb">=IIF(IsNothing(Fields!form.Value) And IsNothing(Fields!number.Value) And IsNothing(Fields!date.Value) And IsNothing(Fields!type.Value), "-", Fields!form.Value + " " + Fields!number.Value + IIF( Not IsNothing(Fields!date.Value), " от " + Fields!date.Value, "") + " (" + Fields!type.Value + ")")</syntaxhighlight> | ||
если все 4 поля БД, содержащие форму, номер, дату и тип являются пустыми, то в строку заносится прочерк; иначе вносятся форма + номер + (если дата не пустая, то « от » + дата, если пустая то ничего) + тип | если все 4 поля БД, содержащие форму, номер, дату и тип являются пустыми, то в строку заносится прочерк; иначе вносятся форма + номер + (если дата не пустая, то « от » + дата, если пустая то ничего) + тип | ||
|- | |- | ||
| Строка 68: | Строка 68: | ||
|rowspan="3"|Выполняемые функции, проводимые исследования, испытания, измерения||Выполняемые функции <code>Fields!func.Value</code>||<code>Редактировать</code> >> <code>Карточка сотрудника</code> >> <code>Информация</code> >> <code>Выполняемые функции, исследования, испытания, измерения</code> | |rowspan="3"|Выполняемые функции, проводимые исследования, испытания, измерения||Выполняемые функции <code>Fields!func.Value</code>||<code>Редактировать</code> >> <code>Карточка сотрудника</code> >> <code>Информация</code> >> <code>Выполняемые функции, исследования, испытания, измерения</code> | ||
|- | |- | ||
|Условие <code>IIF()</code>||rowspan="2"|< | |Условие <code>IIF()</code>||rowspan="2"|<syntaxhighlight lang="vb">=IIF(IsNothing (Fields!func.Value), "-", Fields!func.Value)<</syntaxhighlight> если поле БД, содержащее функцию, пустое, то вносится прочерк, иначе вносится функция из поля | ||
|- | |- | ||
|Сравнение с пустой ячейкой <code>Not IsNothing()</code> | |Сравнение с пустой ячейкой <code>Not IsNothing()</code> | ||
| Строка 80: | Строка 80: | ||
|Реквизиты диплома <code>Fields!diplom.Value</code>||<code>Редактировать</code> >> <code>Карточка сотрудника</code> >> <code>Информация</code> >> <code>Трудовые отношения</code> >> <code>Реквизиты документа об образовании</code> | |Реквизиты диплома <code>Fields!diplom.Value</code>||<code>Редактировать</code> >> <code>Карточка сотрудника</code> >> <code>Информация</code> >> <code>Трудовые отношения</code> >> <code>Реквизиты документа об образовании</code> | ||
|- | |- | ||
|Условие <code>IIF()</code>||rowspan="2"|< | |Условие <code>IIF()</code>||rowspan="2"|<syntaxhighlight lang="vb">=IIF(IsNothing(Fields!univer.Value) And IsNothing(Fields!uni_year.Value) And IsNothing(Fields!prof.Value) And IsNothing(Fields!diplom.Value), "-", IIF( Not IsNothing(Fields!univer.Value), Fields!univer.Value & ", ", "") &IIF( Not IsNothing(Fields!uni_year.Value), Fields!uni_year.Value & ", ", "") & IIF( Not IsNothing(Fields!prof.Value), Fields!prof.Value & ", ", "") & Fields!diplom.Value)</syntaxhighlight> | ||
если все 4 поля БД (учебное заведение, год окончания, специальность и реквизиты диплома) пустые, то вносится прочерк; иначе к трем полям применяется условие – если поле не пустое, выводится поле и запятая, если пустое, то ничего; к последнему полю применяется условие без запятой – если поле не пустое, то выводится поле, если пустое, то ничего; | если все 4 поля БД (учебное заведение, год окончания, специальность и реквизиты диплома) пустые, то вносится прочерк; иначе к трем полям применяется условие – если поле не пустое, выводится поле и запятая, если пустое, то ничего; к последнему полю применяется условие без запятой – если поле не пустое, то выводится поле, если пустое, то ничего; | ||
|- | |- | ||
| Строка 87: | Строка 87: | ||
|rowspan="3"|Практический опыт по исследованиям, испытаниям, измерениям, включенным в область аккредитации (в годах, с указанием, в каких организациях, в какой период и по каким видам исследований (испытаний) измерений получен)||Дата начала трудовой деятельности <code>Fields!start.Value</code>||<code>Редактировать</code> >> <code>Карточка сотрудника</code> >> <code>Информация</code> >> <code>Дата начала практического опыта</code> | |rowspan="3"|Практический опыт по исследованиям, испытаниям, измерениям, включенным в область аккредитации (в годах, с указанием, в каких организациях, в какой период и по каким видам исследований (испытаний) измерений получен)||Дата начала трудовой деятельности <code>Fields!start.Value</code>||<code>Редактировать</code> >> <code>Карточка сотрудника</code> >> <code>Информация</code> >> <code>Дата начала практического опыта</code> | ||
|- | |- | ||
|Условие <code>IIF()</code>||< | |Условие <code>IIF()</code>||<syntaxhighlight lang="vb">=IIF(IsNothing(Fields!start.Value), "-", Code.ReturnYearsWithSuffix (Fields!start.Value) & vbLF & Fields!start.Value & " - по текущую дату")</syntaxhighlight> | ||
если в БД поле даты начала трудовой деятельности пустое, выводится прочерк; | если в БД поле даты начала трудовой деятельности пустое, выводится прочерк; | ||
иначе | иначе | ||
Версия от 09:41, 20 января 2026
Параметры
В форме используются 5 фильтров параметров:
Выберите лабораторию:(выбор одного из вариантов); выводятся в алфавитном порядке лаборатории, имеющие сотрудников;Укажите ФИО уполномоченного лица:(выбор одного из вариантов); выводятся только сотрудники выбранной в п.1 лаборатории;Укажите должность уполномоченного лица:(выбор одного из вариантов); выводятся должности, относящиеся к выбранному в п.2 сотруднику;Сотрудники (область аккредитации):(доступные значения – «в области аккредитации», «вне области аккредитации»);Введите начальное значение нумерации строк:(ввод целого числа); по умолчанию 1, возможен ввод в т.ч. 0 или отрицательного числа.
Атрибуты
В наборе данных (SQL-запрос для DataSet) в таблице ATTRIBUTE_NAME используются атрибуты со следующими значениями NAME:
- 'СНИЛС' –
snils; - 'Форма привлечения труда' –
form; - 'Тип занятости' –
type; - 'Номер договора' –
number; - 'Дата договора' –
date; - 'Выполняемые функции, исследования, испытания, измерения' –
func; - 'Наименование учебного заведения' –
univer; - 'Год окончания' –
uni_year; - 'Квалификация по документу' –
prof; - 'Реквизиты документа об образовании' –
diplom; - 'Дата начала практического опыта' –
start; - 'В области аккредитации' –
accred.
Поля, данные, выражения и формулы
| Поля | Данные и выражения | Формулы |
|---|---|---|
| Верхний колонтитул | Название лаборатории =Parameters!ReportParameterLaboratory.Value |
Персонал >> Привязка или Редактировать >> Карточка сотрудника >> Привязка
|
Владелец версии Code.Globals.GetVersionOwner() |
="Владелец версии: " & Code.Globals.GetVersionOwner()
| |
| Заголовок | Текущая дата Today.ToString("dd.MM.yyyy") |
="По состоянию на: " & Today.ToString("dd.MM.yyyy")
|
| Основная таблица | ||
| № п/п | Вывод сквозной нумерации строк RowNumber() |
=RowNumber() + Parameters!ReportParametrNumberFirstString.Value – 1
RowNumber() вычитается единица, чтобы скорректировать смещение относительно числа, введенного пользователем; при вводе пользователем, например, числа 50, для первой строки отчета RowNumber() вернет 1: выражение вычисляется как 1 + 50 - 1, что дает в результате 50 (желаемый начальный номер); для второй строки RowNumber() вернет 2, и выражение даст 2 + 50 - 1 = 51, и так далее
|
Начальное значение нумерации строк из параметра фильтра: Parameters!ReportParametrNumberFirstString.Value – 1
| ||
| Фамилия, имя, отчество (при наличии), страховой номер индивидуального лицевого счета, дата и место рождения | Вывод ФИО Fields!fio.Value |
Редактировать >> Карточка сотрудника >> Информация >> Фамилия:
|
Редактировать >> Карточка сотрудника >> Информация >> Имя:
| ||
Редактировать >> Карточка сотрудника >> Информация >> Отчество:
| ||
Вывод СНИЛС Fields!snils.Value |
Редактировать >> Карточка сотрудника >> Информация >> СНИЛС:
| |
Условие IIF() |
=IIF( Not IsNothing(Fields!snils.Value), Fields!fio.Value + vbLF + "СНИЛС " + Fields!snils.Value, Fields!fio.Value)
| |
Сравнение с пустой ячейкой Not IsNothing()
| ||
Перенос строки vbLF
| ||
| Основание для привлечения личного труда (трудовой договор, гражданско-правовой договор или иное), работа по основному месту работы или по совместительству | Форма договора Fields!form.Value |
Редактировать >> Карточка сотрудника >> Информация >> Трудовые отношения >> Форма привлечения труда:
|
Номер договора Fields!number.Value |
Редактировать >> Карточка сотрудника >> Информация >> Трудовые отношения >> Номер договора:
| |
Дата договора Fields!date.Value |
Редактировать >> Карточка сотрудника >> Информация >> Трудовые отношения >> Дата договора
| |
Вид работы Fields!type.Value |
Редактировать >> Карточка сотрудника >> Информация >> Трудовые отношения >> Тип занятости
| |
Условие IIF() |
=IIF(IsNothing(Fields!form.Value) And IsNothing(Fields!number.Value) And IsNothing(Fields!date.Value) And IsNothing(Fields!type.Value), "-", Fields!form.Value + " " + Fields!number.Value + IIF( Not IsNothing(Fields!date.Value), " от " + Fields!date.Value, "") + " (" + Fields!type.Value + ")")
если все 4 поля БД, содержащие форму, номер, дату и тип являются пустыми, то в строку заносится прочерк; иначе вносятся форма + номер + (если дата не пустая, то « от » + дата, если пустая то ничего) + тип | |
Сравнение с пустой ячейкой Not IsNothing()
| ||
| Выполняемые функции, проводимые исследования, испытания, измерения | Выполняемые функции Fields!func.Value |
Редактировать >> Карточка сотрудника >> Информация >> Выполняемые функции, исследования, испытания, измерения
|
Условие IIF() |
=IIF(IsNothing (Fields!func.Value), "-", Fields!func.Value)<
| |
Сравнение с пустой ячейкой Not IsNothing()
| ||
| Образование (наименование учебного заведения, год окончания, квалификация по документу об образовании, реквизиты документа об образовании) | Название учебного заведения Fields!univer.Value |
Редактировать >> Карточка сотрудника >> Информация >> Образование >> Наименование учебного заведения
|
Год окончания Fields!uni_year.Value |
Редактировать >> Карточка сотрудника >> Информация >> Трудовые отношения >> Год окончания
| |
Квалификация Fields!prof.Value |
Редактировать >> Карточка сотрудника >> Информация >> Трудовые отношения >> Квалификация по документу
| |
Реквизиты диплома Fields!diplom.Value |
Редактировать >> Карточка сотрудника >> Информация >> Трудовые отношения >> Реквизиты документа об образовании
| |
Условие IIF() |
=IIF(IsNothing(Fields!univer.Value) And IsNothing(Fields!uni_year.Value) And IsNothing(Fields!prof.Value) And IsNothing(Fields!diplom.Value), "-", IIF( Not IsNothing(Fields!univer.Value), Fields!univer.Value & ", ", "") &IIF( Not IsNothing(Fields!uni_year.Value), Fields!uni_year.Value & ", ", "") & IIF( Not IsNothing(Fields!prof.Value), Fields!prof.Value & ", ", "") & Fields!diplom.Value)
если все 4 поля БД (учебное заведение, год окончания, специальность и реквизиты диплома) пустые, то вносится прочерк; иначе к трем полям применяется условие – если поле не пустое, выводится поле и запятая, если пустое, то ничего; к последнему полю применяется условие без запятой – если поле не пустое, то выводится поле, если пустое, то ничего; | |
Сравнение с пустой ячейкой Not IsNothing()
| ||
| Практический опыт по исследованиям, испытаниям, измерениям, включенным в область аккредитации (в годах, с указанием, в каких организациях, в какой период и по каким видам исследований (испытаний) измерений получен) | Дата начала трудовой деятельности Fields!start.Value |
Редактировать >> Карточка сотрудника >> Информация >> Дата начала практического опыта
|
Условие IIF() |
=IIF(IsNothing(Fields!start.Value), "-", Code.ReturnYearsWithSuffix (Fields!start.Value) & vbLF & Fields!start.Value & " - по текущую дату")
если в БД поле даты начала трудовой деятельности пустое, выводится прочерк;
иначе
‒ вызывает функцию | |
Количество лет DateDiff(DateInterval.Year, Fields!start.Value, Now() |
Public Function ReturnYearsWithSuffix(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
функция принимает числовое значение количества лет трудового стажа;
| |