Структура CSV-файла
CSV подходит для переноса в электронные таблицы и локального резервного копирования, если кодировка, разделитель и названия колонок не меняются между версиями. Для обмена заранее фиксируют UTF-8 и разделитель запятая либо точка с запятой; выбранный вариант записывают в инструкции к файлу.
Числа хранят в граммах с десятичной точкой, если это требуется выбранным форматом импорта. Проценты можно рассчитывать при просмотре, но фактические массы остаются первичной записью.
| Колонка | Назначение |
|---|---|
| formula_id | Постоянный ID формулы или проекта |
| formula_version | Версия состава; изменение создаёт новую версию |
| batch_id | ID конкретной пробной партии |
| line_no | Номер строки компонента внутри партии |
| material_id | Внутренний ID флакона из реестра |
| supplier_name | Наименование с этикетки или имя поставщика без замены внутреннего ID |
| supplier_lot | Партия сырья |
| material_status | Исходный материал или разведение |
| actual_mass_g | Фактически внесённая масса в г |
| planned_mass_g | Плановая масса в г, если она нужна для сравнения |
| unit | Значение g |
| note | Отклонение, наблюдение или ссылка на документ |
CSV-шаблон
Пример ниже использует условные обозначения A, B и C. Он показывает структуру данных и не является рецептом.
- Создайте заголовок: formula_id,formula_version,batch_id,line_no,material_id,supplier_name,supplier_lot,material_status,actual_mass_g,planned_mass_g,unit,note.
- Добавьте строки: FM-001,V01,TP-021,1,RM-0101,A,LOT-A01,исходный,1.50,1.50,g,стабильное показание.
- Добавьте строку: FM-001,V01,TP-021,2,RM-0102,B,LOT-B04,разведение,0.50,0.50,g,стабильное показание.
- Добавьте строку: FM-001,V01,TP-021,3,RM-0103,C,LOT-C02,исходный,3.00,3.00,g,стабильное показание.
- Не записывайте в поле material_id только торговое имя. При смене флакона, партии или разведения создайте новый ID материала либо используйте уже существующий ID соответствующей записи.
Проверка массы после импорта
Проверка ловит ошибки переноса единиц и пропущенные строки, но не подтверждает качество сырья или соответствие требованиям.
- Отберите строки с одинаковыми formula_id, formula_version и batch_id: FM-001, V01 и TP-021.
- Сложите actual_mass_g; знаменатель равен 1.50 г + 0.50 г + 3.00 г = 5.00 г.
- Для контроля строки RM-0102 разделите её фактическую массу на общий итог: 0.50 г / 5.00 г = 0.10.
- Переведите результат в проценты: 0.10 × 100 % = 10.0 %. Это контрольная массовая доля строки RM-0102 в конкретной записи TP-021.
Резервная копия и неизвестные поля
Храните CSV отдельно от файлов SDS, COA и сканов этикеток, но связывайте их через material_id, supplier_lot или путь к файлу. Резервная копия должна сохранять исходные CSV без автоматической перезаписи предыдущей версии.
Пустое поле supplier_lot допустимо только как явно неизвестное значение, если партия не установлена. Не заполняйте его названием материала: неизвестная партия меняет возможность различать поставки и передавать данные на проверку.
Рабочий диапазон весов и допустимая неопределённость конкретной модели в универсальный CSV не выводятся. Их фиксируют отдельным полем условий измерения, когда эти данные доступны.
Источники
Сведения относятся к указанным в источниках моделям и версиям.
