FillVolumeAndContainerClosureChecker

Fill Volume & Container Closure

Vet veterinary veterinary vaccines animal health adjuvants aquaculture batch release CSV→JSON
Открыть подборку

Описание утилиты: Fill Volume & Container Closure

Fill Volume & Container Closure Checker — Контроль объема наполнения и герметичности упаковки

ℹ️  Утилита оценивает критические параметры процесса розлива и укупорки стерильных и нестерильных препаратов согласно Ph. Eur. 2.9.17, USP <1> и требованиям GMP:
     • Точность наполнения: Средний объем должен соответствовать целевому значению (обычно ±5%).
     • Минимальный объем: Ни одна единица продукции не должна содержать объем ниже установленного минимума.
     • Равномерность: Коэффициент вариации (RSD) наполнения должен быть низким (<5%).
     • Герметичность (CCIT): Абсолютное отсутствие утечек (0 дефектов).
     • Газовая среда: Контроль кислорода в головном пространстве для окисляющихся или лиофилизированных продуктов.

⚠️  КРИТИЧНО: 
     • Наличие даже одной негерметичной упаковки (CCIT Failure) является критическим дефектом, требующим расследования всей серии.
     • Недолив (Underfill) ниже минимального предела ведет к тому, что пациент получает неполную дозу препарата.

Использование:
  FillVolumeAndContainerClosureChecker.exe                            → демо-режим (вывод в консоль)
  FillVolumeAndContainerClosureChecker.exe input.csv output.json      → оценка ваших данных

Формат input.csv:
BatchNumber,ProductName,TargetVolume_ml,MeanFillVolume_ml,MinFillVolume_ml,MaxFillVolume_ml,RSD_Fill_Percent,CCIT_Failures,TotalContainersTested_CCIT,ContainerType,Headspace_O2_Percent

Пример:
  FILL-001,mAb 100mg,10.0,10.15,9.90,10.40,1.2,0,50,Vial,1.5

— ЗАЧЕМ ЭТО НУЖНО?
Точность дозирования гарантирует терапевтическую эффективность.
Герметичность упаковки (Container Closure Integrity) обеспечивает стерильность продукта на протяжении всего срока годности и защищает от попадания микроорганизмов и газов.
Это один из самых важных этапов контроля качества готовой лекарственной формы.

⚠️  КРИТИЧЕСКИ ВАЖНО:
• Методы CCIT: Используются деструктивные (синий краситель, вакуум-декомпрессия) и недеструктивные (высокочастотный разряд, лазерная абсорбция кислорода) методы.
• Статистика: Для подтверждения качества наполнения обычно отбирается репрезентативная выборка (например, 10-20 флаконов).
• Головное пространство: Для лиофилизированных продуктов остаточный кислород должен быть минимальным (<1-2%) для предотвращения окисления.
• Тип упаковки: Требования могут различаться для ампул, флаконов, шприцев и картриджей.

Ключевые особенности утилиты:
• Комплексная проверка объема и герметичности
• Строгий контроль нулевой толерантности к утечкам
• Оценка равномерности процесса розлива (RSD)
• Мониторинг газовой среды в упаковке
• Генерация отчетов для отделов производства и QC, а также LIMS LabWare
• Соответствие требованиям GMP и Фармакопей

Критические параметры:
• Средний объем: в пределах ±5% от целевого
• Минимальный объем: ≥ 95% от целевого
• RSD наполнения: ≤ 5.0%
• CCIT: 0 отказов (100% проход)
• Кислород: ≤ 2.0% (для чувствительных продуктов)

💡 Советы по использованию:
1. Калибровка весов: Используйте высокоточные весы для определения объема методом взвешивания (с учетом плотности).
2. Визуальный контроль: Дополнительно проводите визуальный осмотр на наличие трещин и сколов.
3. Валидация CCIT: Метод контроля герметичности должен быть валидирован на способность обнаруживать дефекты критического размера.
4. Тренды: Отслеживайте тренды объема наполнения для раннего выявления износа насосов розлива.
5. Документирование: Результаты CCIT являются ключевыми для выпуска серии стерильных препаратов.

⚠️ Особенность: В современной фарме наблюдается переход от деструктивных методов проверки герметичности к 100% недеструктивному контролю (100% ND-CCIT) на производственной линии.

input.csv

BatchNumber,ProductName,TargetVolume_ml,MeanFillVolume_ml,MinFillVolume_ml,MaxFillVolume_ml,RSD_Fill_Percent,CCIT_Failures,TotalContainersTested_CCIT,ContainerType,Headspace_O2_Percent
FILL-2026-VIAL-001,Monoclonal Antibody 100mg,10.0,10.15,9.90,10.40,1.2,0,50,Vial,1.5
FILL-2026-AMP-002,Vitamin C Injection,2.0,2.05,1.95,2.10,0.8,0,100,Ampoule,0.5
FILL-2026-FAIL-003,Insulin Pen,3.0,2.80,2.50,3.10,4.5,2,60,Cartridge,2.5

URS & FS — спецификация пользователя и функциональная спецификация

Документ описывает контролируемый интерфейс и поведение утилиты FillVolumeAndContainerClosureChecker для сценария Fill Volume & Container Closure Checker.

Предметные ограничения и критические параметры

Ниже приведены ключевые фрагменты исходного описания. Перед продуктивным применением пределы должны быть сверены с утверждённой спецификацией, регистрационным досье и локальными SOP.
  • ℹ️ Утилита оценивает критические параметры процесса розлива и укупорки стерильных и нестерильных препаратов согласно Ph. Eur. 2.9.17, USP <1> и требованиям GMP:
  • • Равномерность: Коэффициент вариации (RSD) наполнения должен быть низким (<5%).
  • ⚠️ КРИТИЧНО:
  • • Наличие даже одной негерметичной упаковки (CCIT Failure) является критическим дефектом, требующим расследования всей серии.
  • • Недолив (Underfill) ниже минимального предела ведет к тому, что пациент получает неполную дозу препарата.
  • Герметичность упаковки (Container Closure Integrity) обеспечивает стерильность продукта на протяжении всего срока годности и защищает от попадания микроорганизмов и газов.
  • ⚠️ КРИТИЧЕСКИ ВАЖНО:
  • • Головное пространство: Для лиофилизированных продуктов остаточный кислород должен быть минимальным (<1-2%) для предотвращения окисления.
  • • Соответствие требованиям GMP и Фармакопей
  • Критические параметры:
  • • Средний объем: в пределах ±5% от целевого
  • • Минимальный объем: ≥ 95% от целевого
  • • RSD наполнения: ≤ 5.0%
  • • Кислород: ≤ 2.0% (для чувствительных продуктов)
  • 1. Калибровка весов: Используйте высокоточные весы для определения объема методом взвешивания (с учетом плотности).
  • 3. Валидация CCIT: Метод контроля герметичности должен быть валидирован на способность обнаруживать дефекты критического размера.
  • 5. Документирование: Результаты CCIT являются ключевыми для выпуска серии стерильных препаратов.

URS — пользовательские требования

IDТребованиеКритичностьКритерий приемки
URS-001Утилита должна принимать файл input.csv для Fill Volume &amp; Container Closure Checker с заголовками, определёнными в контракте данных.HighФайл обрабатывается без ручного изменения заголовков.
URS-002Утилита должна выполнять детерминированную оценку QC/ОКК без машинного обучения и без вероятностного принятия решения о соответствии.HighПри одинаковых входных данных, версии правил и конфигурации результат полностью воспроизводим.
URS-003Утилита должна валидировать обязательные поля, типы данных, диапазоны, единицы измерения и предметную правдоподобность значений.HighОшибки схемы, преобразования и диапазона явно отражаются в результате.
URS-004Утилита должна применять предметные пределы и правила из описания, утверждённой спецификации, регистрационного досье и локальных SOP.HighКаждая проверка имеет результат PASS/WARNING/FAIL и понятное сообщение.
URS-005Утилита должна формировать output.json с машинно-читаемыми результатами, исходными значениями, предупреждениями, отказами и критическими находками.HighJSON пригоден для LIMS/ELN/MES-интеграции и QA/QC review.
URS-006Утилита должна сохранять трассируемость между серией/образцом, входным файлом, применёнными правилами и итоговым статусом.HighВыход содержит идентификаторы, список параметров и audit metadata.
URS-007Документация должна поддерживать подготовку IQ/OQ/PQ, CSV/CSA и обсуждение с инспекторами или внутренним QA.MediumURS, FS, контракт input/output и тестовые сценарии поставляются вместе с утилитой.
URS-008Утилита должна использоваться как decision-support инструмент QC, а не как замена утверждённым спецификациям и выпускному решению Qualified Person/QA.MediumВ документации указан контроль change control и необходимость сверки пределов.

Контракт input.csv

#ПолеТипПримерНазначение
1BatchNumberstring / controlled vocabularyFILL-2026-VIAL-001Идентификатор серии/партии для трассируемости.
2ProductNamestring / controlled vocabularyMonoclonal Antibody 100mgНаименование продукта или проверяемой лекарственной формы.
3TargetVolume_mldecimal10.0Объём/доза; используется для расчёта нагрузки, предела или выпуска.
4MeanFillVolume_mldecimal10.15Объём/доза; используется для расчёта нагрузки, предела или выпуска.
5MinFillVolume_mldecimal9.90Объём/доза; используется для расчёта нагрузки, предела или выпуска.
6MaxFillVolume_mldecimal10.40Объём/доза; используется для расчёта нагрузки, предела или выпуска.
7RSD_Fill_Percentdecimal1.2Контролируемый входной параметр для детерминированных QC-правил.
8CCIT_Failuresdecimal0Контролируемый входной параметр для детерминированных QC-правил.
9TotalContainersTested_CCITdecimal50Контролируемый входной параметр для детерминированных QC-правил.
10ContainerTypestring / controlled vocabularyVialКонтролируемый входной параметр для детерминированных QC-правил.
11Headspace_O2_Percentdecimal1.5Контролируемый входной параметр для детерминированных QC-правил.
BatchNumber,ProductName,TargetVolume_ml,MeanFillVolume_ml,MinFillVolume_ml,MaxFillVolume_ml,RSD_Fill_Percent,CCIT_Failures,TotalContainersTested_CCIT,ContainerType,Headspace_O2_Percent
FILL-2026-VIAL-001,Monoclonal Antibody 100mg,10.0,10.15,9.90,10.40,1.2,0,50,Vial,1.5
FILL-2026-AMP-002,Vitamin C Injection,2.0,2.05,1.95,2.10,0.8,0,100,Ampoule,0.5
FILL-2026-FAIL-003,Insulin Pen,3.0,2.80,2.50,3.10,4.5,2,60,Cartridge,2.5

Правила валидации входных данных

IDПолеПравилоКритичность
VR-001BatchNumberПоле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме.High
VR-002ProductNameПоле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме.High
VR-003TargetVolume_mlПоле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме.High
VR-004MeanFillVolume_mlПоле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме.Medium
VR-005MinFillVolume_mlПоле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме.Medium
VR-006MaxFillVolume_mlПоле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме.Medium
VR-007RSD_Fill_PercentПоле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме.Medium
VR-008CCIT_FailuresПоле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме.Medium
VR-009TotalContainersTested_CCITПоле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме.Medium
VR-010ContainerTypeПоле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме.Medium
VR-011Headspace_O2_PercentПоле должно соответствовать утверждённому справочнику/словарю или допустимой строковой форме.Medium

FS — функциональная спецификация

IDФункцияРеализация
FS-001CLI executionПоддержать режимы запуска: demo mode без аргументов и production mode input.csv output.json.
FS-002CSV importПрочитать input.csv в UTF-8/CSV-совместимом формате, проверить наличие заголовка и ожидаемых колонок.
FS-003Schema validationПроверить обязательные поля, количество колонок, неизвестные ключевые поля и пустые обязательные значения.
FS-004Type conversionПреобразовать числовые, флаговые и текстовые значения; некорректный формат фиксировать как ошибку строки.
FS-005Domain rule engineПрименить правила для Fill Volume &amp; Container Closure Checker, включая критические пределы из описания и утверждённой спецификации.
FS-006Status aggregationСформировать итоговый статус: FAIL при критическом отказе, WARNING при некритическом отклонении, PASS при соответствии.
FS-007JSON exportЗаписать output.json с детализацией проверок, исходными значениями, предупреждениями, отказами и critical findings.
FS-008Audit supportСохранять структуру результата пригодной для review, расследования отклонений и воспроизведения расчёта.
FS-009Integration contractПоддержать сценарий LIMS/ELN/MES → input.csv → utility → output.json → portal/admin review.
FS-010Error handlingВозвращать явные сообщения для отсутствующего файла, пустого CSV, неверной схемы, ошибки записи output.json и некорректного формата.

Пример output.json

{
  "utilityId": "fillvolumeandcontainerclosurechecker",
  "utilityFolder": "FillVolumeAndContainerClosureChecker",
  "package": "Vet",
  "overallStatus": "PASS|WARNING|FAIL",
  "sourceFile": "input.csv",
  "processedAtUtc": "2026-06-10T00:00:00Z",
  "checks": [
    {
      "parameter": "BatchNumber",
      "value": "FILL-2026-VIAL-001",
      "status": "PASS|WARNING|FAIL",
      "message": "Deterministic rule-based check result",
      "ruleReference": "FS-RULE-001"
    },
    {
      "parameter": "ProductName",
      "value": "Monoclonal Antibody 100mg",
      "status": "PASS|WARNING|FAIL",
      "message": "Deterministic rule-based check result",
      "ruleReference": "FS-RULE-002"
    },
    {
      "parameter": "TargetVolume_ml",
      "value": "10.0",
      "status": "PASS|WARNING|FAIL",
      "message": "Deterministic rule-based check result",
      "ruleReference": "FS-RULE-003"
    },
    {
      "parameter": "MeanFillVolume_ml",
      "value": "10.15",
      "status": "PASS|WARNING|FAIL",
      "message": "Deterministic rule-based check result",
      "ruleReference": "FS-RULE-004"
    },
    {
      "parameter": "MinFillVolume_ml",
      "value": "9.90",
      "status": "PASS|WARNING|FAIL",
      "message": "Deterministic rule-based check result",
      "ruleReference": "FS-RULE-005"
    },
    {
      "parameter": "MaxFillVolume_ml",
      "value": "10.40",
      "status": "PASS|WARNING|FAIL",
      "message": "Deterministic rule-based check result",
      "ruleReference": "FS-RULE-006"
    },
    {
      "parameter": "RSD_Fill_Percent",
      "value": "1.2",
      "status": "PASS|WARNING|FAIL",
      "message": "Deterministic rule-based check result",
      "ruleReference": "FS-RULE-007"
    },
    {
      "parameter": "CCIT_Failures",
      "value": "0",
      "status": "PASS|WARNING|FAIL",
      "message": "Deterministic rule-based check result",
      "ruleReference": "FS-RULE-008"
    },
    {
      "parameter": "TotalContainersTested_CCIT",
      "value": "50",
      "status": "PASS|WARNING|FAIL",
      "message": "Deterministic rule-based check result",
      "ruleReference": "FS-RULE-009"
    },
    {
      "parameter": "ContainerType",
      "value": "Vial",
      "status": "PASS|WARNING|FAIL",
      "message": "Deterministic rule-based check result",
      "ruleReference": "FS-RULE-010"
    },
    {
      "parameter": "Headspace_O2_Percent",
      "value": "1.5",
      "status": "PASS|WARNING|FAIL",
      "message": "Deterministic rule-based check result",
      "ruleReference": "FS-RULE-011"
    }
  ],
  "criticalFindings": [],
  "warnings": [],
  "audit": {
    "inputHash": "sha256:<calculated at runtime>",
    "rulesVersion": "<utility executable version>",
    "documentation": "FillVolumeAndContainerClosureChecker.documentation.html"
  }
}

Матрица трассируемости

URSFSТестПодтверждение
URS-001FS-001, FS-002OQ-001Проверить запуск и импорт валидного input.csv.
URS-002FS-005, FS-006OQ-004Повторить один и тот же набор данных и сравнить output.json.
URS-003FS-003, FS-004, FS-010OQ-002, OQ-003Проверить отсутствующие колонки и неверные типы.
URS-004FS-005, FS-006OQ-004, PQ-001Проверить критические отклонения по реальным/граничным данным.
URS-005FS-007, FS-009OQ-005Проверить JSON schema и пригодность для downstream-систем.
URS-006FS-008OQ-006Проверить наличие идентификаторов и audit metadata.
URS-007FS-008, FS-010IQ-001, OQ-007Проверить комплектность документации и control evidence.
URS-008FS-005, FS-008PQ-002Проверить review workflow и запрет автоматической замены QA-решения.

IQ/OQ/PQ тестовые сценарии

IDСценарийОжидаемый результат
IQ-001Проверить наличие executable, input.csv, документации и контрольной суммы.Комплект поставки полон; версия зафиксирована.
OQ-001Валидная строка из примера input.csv.PASS или допустимый WARNING согласно правилам.
OQ-002Удалить обязательную колонку из CSV.Ошибка схемы или FAIL с указанием отсутствующей колонки.
OQ-003Внести нечисловое значение в числовое поле.Ошибка преобразования типа с указанием строки/поля.
OQ-004Значение критического параметра вывести за предел.FAIL и critical finding.
OQ-005Проверить структуру output.json.Все обязательные секции присутствуют, JSON валиден.
OQ-006Проверить трассируемость серии/образца.Идентификаторы входа и результатов совпадают.
PQ-001Проверить 3–5 реальных партий/образцов пользователя.Результат подтверждён QC/QA review.
PQ-002Проверить workflow отклонения и ручного QA-решения.Утилита поддерживает review, но не заменяет утверждённое решение.

QA/QC и change control

  • Не менять имена колонок без обновления валидатора, документации и тестового набора.
  • Хранить input.csv, output.json, версию исполняемого файла и контрольную сумму.
  • Перед продуктивным использованием провести IQ/OQ/PQ или эквивалентную CSV/CSA-проверку.
  • Критические пределы должны быть сверены с утверждённой спецификацией, регистрационным досье и локальными SOP.
  • Утилита предоставляет формализованный QC decision support, но окончательное решение выпуска остаётся за QA/QP и утверждёнными процедурами.

Входит в пакеты

Vet — ветеринарные QC утилиты

Пакет Vet предназначен для ветеринарной фармацевтики и вакцин: адъюванты, антигены, аутогенные вакцины, аквакультура, корма/премиксы, антибактериальные и паразитарные препараты, стерильность и выпуск серии.

Открыть