Конструктор eCRF
Визиты и окна, матрица «форма × визит», формы, поля и их свойства.
Конструктор eCRF — место, где администратор проекта настраивает то, что заполняют врачи: визиты, формы на каждом визите, поля каждой формы и их сверки (edit checks). Он открывается из меню исследования, пункт «Конструктор eCRF». Менять структуру может только администратор проекта; остальная команда заполняет формы.
Исследование начинается с шаблона
На шаге 2 «Нового исследования» — шесть шаблонов. Визиты, формы и сверки (edit checks) создаются сразу, на языке вашего интерфейса:
- Регистр — включение, визиты через 6 и 12 месяцев, терапия, нежелательные явления, опросник пациента.
- Долгосрочный регистр — включение, визит наблюдения каждые 6 месяцев, пока пациент участвует, терапия журналом, нежелательные явления, опросник пациента и окончание участия.
- Наблюдательное исследование — три визита за полгода с окнами.
- Ретроспективное исследование — один визит «Выписка из медицинской карты»: источник данных, диагноз, терапия, исход.
- Опросы пациентов (ePRO) — опросники на старте, через 4 и через 12 недель.
- Пустой проект — один визит и пустая форма, для тех, кто хочет собрать всё сам.
Ниже, в группе «По заболеваниям, из библиотеки форм», наборы для сахарного диабета 2 типа, артериальной гипертензии, хронической сердечной недостаточности и хронической болезни почек: формы болезни с визитами на год. Подробнее в статье «Библиотека форм».
Шаблон — только отправная точка: любые визиты, формы и поля меняются здесь. Исследование, созданное из черновика протокола в YouEDC Studio («Протокол в структуру исследования»), вместо шаблона получает визиты, формы и поля черновика.

Визиты
В исследовании визиты и события четырёх видов; переключает их поле «Вид» в форме визита:
- Плановый визит — один раз, в свой день от даты отсчёта, с окном: сколько дней до и после. В REG-DIAB-01 «Визит 6 мес» — день 182, окно −30/+30 дней. В списке пациентов просроченный визит подсвечивается красным.
- Повторяющийся визит — каждые несколько дней, недель или месяцев, первый в свой день. «Раз» задаёт, сколько повторов; если пусто — визит повторяется, пока пациент участвует. Следующий считается от плановой даты предыдущего или от его фактической даты, когда визит «плывёт» вместе с пациентом.
- По событию — госпитализация, прогрессирование, нежелательное явление. Врач добавляет его с датой столько раз, сколько нужно.
- Журнал — список записей пациента в виде таблицы: линии терапии, препараты, анамнез.
Плановый и повторяющийся визит считаются от даты включения, от даты из данных пациента (дата операции, дата диагноза) или от даты другого события. Если визит считается от события по событию, он идёт после каждого такого события: «контроль через 30 дней после каждой госпитализации». «Ожидается, только если» делает визит ожидаемым лишь у части пациентов, например тест на беременность — только если пол равен Ж; у остальных он никогда не просрочен. Условий может быть несколько, через И / ИЛИ, по полям любых форм и карточке пациента (условия). См. События, лента и календарь визитов.
«Добавить визит или событие» — под списком; «Изменить» рядом с визитом меняет его. Визит, по которому уже есть данные, удалить нельзя, как и визит, поле или форму, от которых считаются другие события.
Схема визитов: визиты × формы
Таблица «Визиты и события» показывает, какие формы заполняются на каждом визите. Отметьте клетки и нажмите «Сохранить схему» — вся таблица сохраняется разом. В REG-DIAB-01 витальные показатели (VS) и терапия (CM) собираются на каждом визите, опросник пациента (PRO) — с 6-го месяца. Точкой отмечена форма, по которой на этом визите уже есть данные: её нельзя убрать из визита.

Формы
«Новая форма» спрашивает название; код (имя листа в выгрузке) получится из названия, если оставить его пустым. Кнопка «Форма» на странице формы открывает её настройки: название, код, пояснение для врача, место среди форм и «Заполняет пациент (ePRO)» — такую форму пациент видит на смартфоне, крупным шрифтом. Когда по форме появились данные, её код фиксируется, а удалить её нельзя — уберите её из визитов.
Библиотека форм. Готовую форму, копию своей или чужой формы, весь eCRF другого исследования или спецификацию из Excel добавляет кнопка «Библиотека форм»: Библиотека форм, копирование и eCRF из Excel.
Слепое исследование. Если исследование отмечено как слепое, в настройках формы есть флажок «Только для неослеплённой команды»: для выдачи препарата, учёта наборов, концентраций в крови. Такую форму и её данные видят только участники команды, отмеченные как неослеплённые. У остальных её нет в визитах пациента, запросах, импорте, выгрузках, casebook, журнале аудита и руководстве исследователя. Отметка входит в версию eCRF, как любое изменение. Форму, которую заполняет пациент, так отметить нельзя.
Поля
Поле добавляется кнопкой под списком полей — кнопка задаёт тип. Кнопки собраны в пять групп, всего 17 типов:
- Текст: короткий и длинный текст, а также текст для исследователя — пояснение прямо в форме («Измерьте давление после 5 минут покоя»). Значения у него нет, в выгрузку он не попадает.
- Числа: число (с запятой), целое число и вычисляемое поле. Вычисляемое поле врач не вводит: YouEDC Capture считает его при сохранении формы по формуле — возраст в полных годах, ИМТ, дни между двумя датами или сумма баллов опросника.
- Даты и время: дата, неполная дата, время (ЧЧ:ММ) и дата и время. В неполной дате неизвестный день или месяц отмечается UK: «UK.03.2024» — март 2024 года. Так обычно записывают дату начала сопутствующей терапии или диагноза из анамнеза.
- Выбор: один вариант (кнопки или список), выпадающий список для длинных справочников, несколько вариантов, да / нет и одиночный флажок («Информированное согласие подписано»).
- Шкалы: шкала баллов — ряд кнопок 0–10 (боль, самочувствие) и ВАШ — бегунок 0–100 мм. Границы можно поменять.


| Свойство | Что задаёт |
|---|---|
| Вопрос | Текст, который видит врач: «Систолическое АД». |
| Код переменной | Имя столбца в выгрузке: SBP. Если оставить пустым, код станет именем по CDISC, когда оно подходит («Систолическое АД» в форме витальных показателей → SYSBP), а иначе получится из вопроса, кириллица транслитерируется: «Индекс Карновского» → INDEKS_KARNOV. |
| Единица | Для чисел: мм рт. ст. |
| Допустимый диапазон | Значение вне его не сохранится: 50–300 мм рт. ст. Подробнее — в статье «Сверки ввода (edit checks)». |
| Ожидаемый диапазон | Значение вне его сохранится, но откроется запрос: 90–180 мм рт. ст. |
| Варианты ответа | По одному в строке; код — перед вертикальной чертой: 1|Лёгкая. Без кодов варианты получат номера 1, 2, 3… |
| Знаков после запятой | Для числа и вычисляемого поля: «1» не даст сохранить 7,25 и покажет ИМТ как 33,0. |
| Формула | Для вычисляемого поля: что считать и из каких полей, по порядку. ИМТ — вес в кг, затем рост в см. Или свободная формула с кодами полей, другими формами и карточкой пациента: она проверяется при наборе и пробуется на тестовых значениях, подробнее — сверки и вычисляемые поля по формуле. |
| Формат и пример формата | Для короткого текста: регулярное выражение, например [A-Z]{2}-\d{3}, и пример для врача «AB-123». Значение в другом формате не сохранится. |
| Раздел формы | Заголовок над группой полей: «Давление и пульс». |
| Подсказка для врача | Строка под вопросом: «Например, I50.0». |
| Показывать поле, только если | Поле появляется, только когда выполнены условия: по полям этой и других форм и карточке пациента, через И / ИЛИ (подробнее). |
| Обязательное поле | Без него (или без отметки «нет данных») форма не будет полной. |
| Можно отметить «нет данных» | Вместо значения врач выбирает ND (не выполнялось), UNK (неизвестно) или NA (неприменимо). |
| Критичное поле | Отметка SDV: монитор сверяет его с первичной документацией в первую очередь. |
Условия показа
В форме «Лекарственная терапия» поля «Препарат (МНН)», доза, единица и дата начала видны, только если на вопрос «Получает ли пациент лекарственную терапию по основному заболеванию?» ответили «Да». Скрытое поле не требует заполнения, а его значение очищается.

Коды и порядок
Порядок полей меняется перетаскиванием: возьмите поле за ручку ⠿ слева и отпустите на новом месте — мышью или пальцем на планшете и телефоне. Стрелки рядом с ручкой сдвигают поле на одно место; страница при этом остаётся на месте, а фокус — на стрелке, так что порядок можно менять и с клавиатуры. Esc во время перетаскивания отменяет его. Поле, перенесённое к полям другого раздела формы, переходит в этот раздел; раздел поля можно поменять и в его свойствах. Каждое перемещение записывается в журнал аудита («место 5 → место 2») и, если eCRF уже выпущена, ждёт в черновике следующей версии.

Если переименовать код переменной, сверки и условия показа, которые на него ссылаются, обновятся сами. Когда по полю есть данные, его код и тип фиксируются, а удалить его нельзя — только деактивировать.
Таблицы в форме
Поле «Таблица» (группа «Структура») собирает в форме строки и столбцы. Каждая ячейка — полноценное поле: свои диапазоны, «нет данных», журнал аудита, запрос и отметка SDV. Таблица бывает трёх видов: сетка, растущая таблица и повторяющаяся группа полей (о ней ниже).
- Фиксированная сетка: строки задаёте вы. Так собирается лабораторная панель (строка = показатель с кодом, например
GLUC) или давление в трёх точках времени. - Растущая таблица: строки добавляет центр, от нуля до заданного предела (не больше 50). Так удобно вести дозы или процедуры одного визита.
Сопутствующую терапию, нежелательные явления и анамнез ведите не таблицей, а событием-журналом: там у каждой записи свой статус, подпись и кодирование по словарю.
Лабораторная панель
При создании таблицы выберите «Начать с: лабораторная панель». Получится сетка из шести показателей биохимии со столбцами «Результат» (LBORRES) и «Клинически значимо» (LBCLSIG). «Результат» — столбец значения: каждая строка задаёт ему свои единицы, допустимый и ожидаемый диапазоны, а для качественных тестов — свои варианты ответа («отр / пол»). Заготовленные диапазоны — типичные для взрослых: замените их нормами своей лаборатории. Отметка «Принимать результаты вида <5 или >1000» разрешает ввести результат ниже или выше предела измерения анализатора; он сохраняется как есть и не проверяется диапазоном.
Строки добавляются в редакторе таблицы по одной или списком, по строке на показатель: HGB|Гемоглобин|г/л|20|250|120|160 (код, название, единица, допустимо от и до, ожидаемо от и до). Порядок строк меняется номерами в столбце «№». Строку, по которой уже есть данные, удалить нельзя: её можно выключить, данные останутся.

Нормы, загруженные на странице «Лабораторные нормы», заменяют ожидаемый диапазон строки для каждого центра, с пересчётом единиц. Строку можно сделать расчётной: «СКФ, CKD-EPI 2021» считается из креатинина, пола и возраста пациента, «ЛПНП по Фридевальду» — из общего холестерина, ЛПВП и триглицеридов (при триглицеридах выше 4,5 ммоль/л не считается). Лабораторная панель уже содержит строку СКФ: ниже 60 открывается запрос.
Столбец «Изменение, макс.» — дельта-проверка: наибольшее изменение результата с прошлого визита пациента, в единицах строки (30) или в процентах (50%). Большее изменение открывает запрос на ячейку. Лабораторная панель задаёт 50 % для креатинина и 100 % для АЛТ; пустая ячейка — без проверки.
Столбцы
Столбец добавляется кнопками под таблицей в списке полей: текст, число, дата и время, выбор. У столбца те же свойства, что у поля; «обязательное» значит «в каждой строке». Ячейку можно показывать только при условии в той же строке, например «Причина» — только если отмечено «Не выполнено».
В выгрузке у каждой таблицы свой лист, по строке на показатель, а значения сетки есть ещё и на листе формы, по столбцу на ячейку. В заверенной копии эИРК таблица печатается таблицей, вместе с удалёнными строками и причинами удаления.
Повторяющиеся группы полей
Третий вид таблицы — повторяющаяся группа: центр добавляет блок полей на каждую запись. Внутри блока поля стоят одно под другим со своими подписями, поэтому их может быть больше, чем помещается в строку таблицы, и среди них может быть длинный текст. Так удобно вести линии предшествующей терапии, очаги, родственников с наследственным заболеванием: несколько записей с одинаковым набором полей в одной форме.
- Создайте поле «Таблица» и выберите вид «Повторяющаяся группа полей», или начните с готовой группы «Предшествующие линии терапии»: схема, начало, окончание, лучший ответ (CR, PR, SD, PD, NE), причина окончания и комментарий.
- Поля группы добавляются кнопками под ней в списке полей, как столбцы таблицы, а также длинный текст. «Обязательное» значит «в каждом блоке», «обязательная» группа — «хотя бы один блок при завершении формы».
- Поле можно показывать только при условии внутри своего блока: например, «Дата отмены» и «Причина отмены», только когда «Принимает сейчас» = Нет.
- Центр нажимает «Добавить запись», блоки нумеруются 1, 2, 3; номер не повторяется. Сохранённый блок удаляется с причиной, его значения остаются в журнале аудита и в списке удалённых записей.
Хранение, проверки, запросы, SDV, журнал аудита и выгрузка у группы те же, что у растущей таблицы: ячейка PTREG[2] — схема во втором блоке. Растущую таблицу можно превратить в группу и обратно в любой момент, даже с данными; таблицей группа снова станет, только если в ней нет длинного текста. В файле ODM группа остаётся группой при переносе в другое исследование.
В демо-исследовании сахарного диабета 2 типа в анамнезе (в небольшом демо — в демографии) есть группа «Предшествующая сахароснижающая терапия»: у каждого пациента от одного до трёх препаратов, у отменённых — дата и причина отмены.

Имена переменных по CDISC
Пока вы пишете вопрос, под кодом переменной появляется подсказка: имя в стиле CDASH и куда это поле попадёт в SDTM. Имя подбирается по словам вопроса, типу поля и форме: «Дата начала» в форме нежелательных явлений — AESTDAT (в SDTM — AESTDTC), та же «Дата начала» в сопутствующей терапии — CMSTDAT, «Систолическое АД» — SYSBP, «Гемоглобин» — HGB. Кнопка «Взять» ставит имя в код; если код оставить пустым, поле получит первое имя само. Это те имена, которые конвейер CDISC переводит в SDTM без ручной разметки.

AESTDAT, а введённый вручную CMSTDAT помечен — это имя сопутствующей терапии.Если введённый код похож на ошибку, под ним появится предупреждение:
- имя из другого домена —
CMSTDATилиAEDECODв форме, похожей на нежелательные явления или сопутствующую терапию; - имя не подходит к типу поля —
AESTDATу текстового поля; - переменная заполняется в SDTM автоматически и собирать её не нужно —
USUBJID,STUDYID,AESEQ; - код длиннее 8 символов в форме, у которой есть домен SDTM: в SDTM ему понадобится имя короче.
Домен формы определяется по её коду и названию (AE, «Нежелательные явления», «Сопутствующая терапия», «Анамнез», «Лаборатория», «Информированное согласие»). Если домен не понять, подсказка появится только для явных вопросов вроде «Дата рождения» или «Систолическое АД».
Ввод данных: кнопка сохранения
Внизу страницы конструктора, в разделе Ввод данных, задаётся название главной кнопки формы — той, которой центр сохраняет заполненную форму. По умолчанию это «Сохранить и отправить на проверку» (в исследовании без SDV — «Форма заполнена»). Название пишется отдельно по-русски и по-английски, до 60 знаков; в интерфейсе на французском показывается английское. Пустое поле возвращает название по умолчанию. Каждая смена названия записывается в журнал аудита. Менеджер исследования попадает сюда и прямо из формы — по карандашу рядом с кнопкой.
После этой кнопки исследователь переходит к следующей форме визита, а после последней — к формам следующего визита (см. статью справки «Ввод данных в форму»).

Изменения после запуска
Пока версия 1 eCRF не выпущена, конструктор меняет структуру вживую: это тестирование, и каждое изменение сразу попадает во ввод данных. После выпуска изменения ждут в черновике и попадают во ввод данных только с выпуском следующей версии. Визиты, формы, поля и сверки выпущенной версии деактивируются, а не удаляются, а коды выпущенных форм и полей зафиксированы. Подробнее — в статье «Версии eCRF».
Каждое изменение — визит, схема, форма, поле, сверка — записывается в аудит как «Изменение eCRF», со старым и новым значением. После блокировки базы конструктор открыт только для просмотра.