Проверять импорт данных лучше на отдельной копии и небольшом контрольном наборе, для которого заранее известен результат. Сверьте принятые и отклонённые записи, значения полей, связи и поведение повторной загрузки. Эта инструкция поможет владельцу бизнеса принять перенос в приложение, не исправляя рабочую таблицу наугад и не рискуя действующей базой.

Предпринимательница сверяет контрольную копию данных перед пробным импортом, AI-иллюстрация

Что именно проверяет пробная загрузка

Пробный импорт — ограниченная загрузка в изолированное место, после которой Вы сравниваете фактический результат с заранее записанным ожиданием. Успех означает, что приложение правильно поняло данные и объяснило исключения. Сообщения «Файл загружен» для такой проверки недостаточно: файл мог открыться, но часть записей могла не попасть в нужный список.

Сначала определите границу проверки. Например, переносится справочник товаров из подготовленного CSV в тестовый каталог. Создание заказов, отправка уведомлений покупателям и изменение остатков в этот опыт не входят. Если импорт автоматически запускает связанные действия, разработчик должен заранее показать, как они отключены или изолированы. Не отправляйте рабочий файл в публичный сервис только ради проверки формата.

Подготовка таблицы и приёмка импорта решают разные задачи. Очистку исходника, словарь полей и разделение объектов мы разобрали в материале о подготовке Excel к переносу в приложение. Здесь предполагается, что структура уже согласована. Мы проверяем исполнение этих правил: что было прочитано, что сохранилось и что произошло с исключениями.

Запишите условие завершения одной фразой: «Все записи контрольного файла получили объяснимый результат, а выбранные поля совпали с образцом». Добавьте ответственного за смысл данных и человека, который может проверить сохранённые значения. Пользовательский экран иногда скрывает технические поля или округляет число, поэтому для спорного случая может понадобиться разрешённая контрольная выгрузка.

Не начинайте с полного объёма. На маленькой выборке легче установить, какая строка дала расхождение и почему. При этом успешная проба не доказывает готовность к любой нагрузке: время обработки, ограничения размера файла и поведение при большом количестве записей проверяются отдельно, в согласованных условиях.

Как сохранить оригинал и отделить место проверки

Оставьте исходный файл неизменным, а тестовый набор создайте отдельно. Зафиксируйте имя, дату выгрузки, лист или диапазон и число записей без заголовка. Если в файле продолжают работать сотрудники, согласуйте момент снимка данных. Иначе расхождение может возникнуть потому, что Вы сравниваете импорт с уже изменённым источником.

Копия файла защищает только сам файл. Она не защищает приложение, в которое попадут данные. Для пробы нужен отдельный тестовый контур, каталог или иной подтверждённый способ изоляции. Название «тест» в имени файла не мешает импорту создать реальные записи. До запуска уточните, куда именно будет записан результат и кто видит этот раздел.

  • Оригинал хранится отдельно и не открывается для исправления во время опыта
  • Рабочая копия имеет отличимое имя и описанный состав
  • В наборе нет настоящих контактов клиентов, паролей и закрытых документов
  • Тестовое место не запускает рассылки, оплату и изменения действующих заказов
  • Известно, какие созданные записи относятся к конкретной попытке
  • Порядок очистки результата согласован до загрузки, а не после неё

Если отдельного места нет, безопасная проверка ограничивается чтением файла и предварительным просмотром, который действительно ничего не записывает. Не считайте кнопку «Далее» безвредной по названию: спросите, на каком шаге начинается сохранение. При неопределённом поведении остановитесь и передайте вопрос разработчику. Удаление следов неудачной пробы из рабочей базы может оказаться сложнее самого импорта.

Для более строгой фиксации разработчик может записать контрольную сумму файла. Она помогает заметить изменение байтов, но не подтверждает правильность смысла данных. Повторное сохранение книги способно изменить её техническое содержимое без видимой правки таблицы. Поэтому контрольную сумму используют вместе с описанием снимка, а не вместо него.

Какие записи включить в контрольный набор

Выберите примеры разных правил, а не первые строки таблицы. Нужны обычная запись, допустимый пропуск, заведомая ошибка, повтор ключа и запись со связью на другой объект. Для каждого случая заранее укажите, должен ли он добавиться, обновиться, остаться без изменений или быть отклонён. Вымышленные значения обозначьте как учебные.

Ниже — условный набор для справочника товаров, не данные клиента и не функции конкретного приложения. Столбец «Ожидание» составляет владелец процесса вместе с разработчиком. Если правило ещё не определено, такую строку нельзя использовать для вывода «импорт работает неправильно»: сначала требуется договорённость.

Контрольный случайЧто зафиксировать до запускаЧто проверить после
Код 00123Код хранится текстом, нули значимыСохранилось именно 00123, а не 123
Необязательное описание пустоеПропуск разрешён и не заменяется выдуманным текстомЗапись принята, пустота имеет согласованный смысл
Нет обязательного кодаЗапись должна быть отклоненаЕсть причина и возможность найти исходную запись
Код уже существуетСогласовано обновление, пропуск либо отказНе создан неожиданный второй объект
Категория отсутствует в справочникеСогласовано действие при неизвестной связиНет молчаливой подстановки другой категории
Текст содержит разделитель или перенос строкиИзвестно, как поле записано в формате файлаСодержимое осталось одним полем нужной записи

Не путайте номер строки в редакторе с номером записи. В CSV текстовое поле может содержать перенос строки. Для сверки полезнее устойчивый код объекта и идентификатор попытки, если приложение его предоставляет. Если журнал называет только номер строки, уточните, как он считается и включает ли заголовок.

Добавьте ожидаемые контрольные итоги, которые имеют смысл для набора: число разных кодов, число заполненных обязательных полей, распределение по категориям. Сумму используйте только там, где значения действительно можно складывать. Совпадение общей суммы само по себе не доказывает корректность: одна потерянная и одна лишняя запись иногда компенсируют друг друга.

Как проверить предварительный просмотр и сопоставление полей

До сохранения убедитесь, что каждый столбец попадает в нужное поле. Похожее название не гарантирует правильного назначения: «Дата» может быть датой заказа или изменения, «Цена» — ценой единицы или суммой строки. Запишите соответствие явно и сохраните его рядом с протоколом проверки.

Посмотрите не только на названия, но и на несколько значений. Кириллица должна читаться, текст с разделителем оставаться в своей ячейке, а заголовок не превращаться в товар. Если весь ряд попал в один столбец или появились лишние поля, сначала разберите параметры чтения. Не компенсируйте неверное чтение удалением столбцов вручную после каждой попытки.

Специалист сопоставляет поля учебной таблицы с предварительным просмотром импорта
Предварительный просмотр проверяют по значениям и смыслу полей, а не только по заголовкам

Отдельно проверьте коды и даты. Microsoft в инструкции о сохранении начальных нулей объясняет, что Excel способен автоматически преобразовывать числовой текст и длинные числа. Поэтому код проверяют как идентификатор, а не как величину для расчёта. Не открывайте и не пересохраняйте единственную копию выгрузки без понимания преобразований.

Для даты заранее задайте смысл и допустимый формат. Запись вроде 03/04 неоднозначна без правила. В контрольном наборе используйте дату, по которой заметна перестановка месяца и дня, и сравните сохранённое значение. Если поле содержит время, уточните часовой пояс источника и представление в приложении; одинаковые цифры на экране ещё не доказывают совпадение момента.

Разделите техническое чтение и бизнес-правило. Программа может успешно прочитать отрицательное число, но процесс может его запрещать. И наоборот, пустое описание не является ошибкой, если поле необязательное. Зафиксируйте оба уровня в протоколе, чтобы не обсуждать все отклонения как одну общую «ошибку файла».

Как сверить принятые, отклонённые и обновлённые записи

После попытки каждой исходной записи должен соответствовать объяснимый исход. Для выбранного контракта составьте баланс: сколько добавлено, обновлено, пропущено и отклонено. Категории должны быть непересекающимися. Если один объект отражается в нескольких счётчиках, выясните определения, прежде чем складывать числа.

Простой учебный пример: в наборе пять записей; три должны добавиться, одна обновить существующую и одна отклониться из-за отсутствующего обязательного поля. Тогда ожидается четыре обработанные записи, но увеличение общего списка только на три. Сравнение «строк было пять, новых появилось три» без разбора исходов ошибочно объявит потерянными две записи.

При другой настройке одна ошибка может остановить всю попытку. Это не универсальное свойство импорта: например, документация PostgreSQL COPY различает остановку при ошибке и режим пропуска некоторых ошибочных входных строк. В Вашем приложении поведение нужно подтвердить отдельно. Наличие такой возможности в базе данных не означает, что интерфейс Nazara или сторонний сервис её использует.

Проверка выделенной проблемной записи на учебном листе рядом с журналом сверки
Причина отклонения должна позволять найти запись и повторить проверку после исправления

Сначала сверяйте состав по кодам, затем значения. Откройте обычную, обновлённую и связанную запись. Проверьте значимые нули, десятичную часть, единицу измерения, пустые поля и ссылку на родительский объект. Если интерфейс сокращает текст или округляет число, используйте согласованный способ просмотра сохранённого значения. Не объявляйте потерю данных по одному сокращённому отображению.

Для отклонённого примера нужны причина, идентификатор исходной записи и понятный следующий шаг. Сообщение «Ошибка 1» не помогает владельцу данных. Хороший журнал объясняет, какое поле не принято и какой формат ожидается, не раскрывая лишние персональные сведения. Если отчёт содержит исходные значения, обращайтесь с ним так же осторожно, как с исходным файлом.

Расхождения в суммах и фильтрах подробнее разобраны в статье о несовпадении дашборда и таблицы. При приёмке импорта сначала подтвердите сам набор объектов. Проверка красивого графика поверх неверного состава не заменяет сверку записей.

Как проверить повтор, ошибку и возврат к исходному состоянию

Повторная загрузка того же файла должна следовать согласованному правилу. Возможны отказ, пропуск уже существующих объектов или обновление по ключу. Ни один вариант не универсально правильный. Опасно, когда пользователь ожидает обновление, а программа каждый раз создаёт новые записи без предупреждения.

Повторяйте пробу только в изолированном месте. Запишите число объектов до второй попытки, запустите тот же неизменённый набор и сопоставьте результат с ожидаемым. Проверьте отдельно изменённую запись с прежним ключом: обновляются ли разрешённые поля, сохраняются ли связанные записи, что происходит с пустым значением. Пустота может означать «очистить» или «не менять» — это необходимо решить до теста.

Если соединение оборвалось или окно закрылось, не нажимайте загрузку заново вслепую. Сначала выясните состояние предыдущей попытки в разрешённом журнале или у ответственного. Неясное сообщение об ошибке в браузере не доказывает, что на сервере ничего не сохранилось. Повтор после неопределённого результата требует той же осторожности, что и обычный повторный импорт.

Порядок возврата зависит от приложения. Удаление созданных объектов может не отменить изменения существующих, историю и внешние уведомления. Транзакция базы данных тоже не является обещанием вернуть уже выполненные внешние действия. Для пробы заранее выбирают способ очистки или восстановления и проверяют его на тестовом контуре, а не предлагают владельцу самостоятельно удалять данные из рабочей базы.

После исправления повторите контрольный набор целиком. Устранение ошибки даты способно повлиять на другие поля, а новое правило дублей — на прежде успешную запись. В протоколе сохраните обе попытки с разными результатами. Не переписывайте старый итог «всё принято», если первая версия теряла или пропускала данные.

Что передать разработчику и когда принимать импорт

Передавайте воспроизводимый пример: обезличенный файл, правило чтения, ожидаемый исход, фактический результат и способ найти запись. Сообщения «данные съехали» недостаточно. Укажите конкретно: «Код 00123 после загрузки стал 123; ожидается текстовый идентификатор с сохранением нулей». Не вкладывайте полную рабочую базу, если проблему воспроизводит учебный набор.

В протокол включите версии файла и приложения, дату попытки, место проверки, соответствие полей, баланс исходов и список расхождений. Для каждого дефекта назначьте действие: исправить правило, уточнить ожидание или получить недостающую информацию. Непроверенный случай остаётся непроверенным, даже если он не мешал этой попытке.

Принимать импорт можно, когда контрольный набор объяснимо обработан, значения и связи сверены, повтор не создаёт неожиданных объектов, а порядок возврата понятен. Отдельно согласуйте переход к рабочему объёму: актуальную выгрузку, период без изменений, ответственного и итоговую сверку. Маленькая проба уменьшает неопределённость, но не отменяет контроль реальной загрузки.

Отметки сохраняются в этом браузере. Этот список не читает Ваш файл и не проверяет приложение автоматически.

В каталоге приложений Nazara можно посмотреть направления разработки. Этот материал описывает метод приёмки, а не обещает импорт в каждом представленном инструменте. Для обсуждения загрузки под Ваш процесс доступна Умная форма: опишите объекты, поля и ожидаемое действие при повторе, не отправляя рабочие данные. Возможности конкретного решения согласуются отдельно.

Частые вопросы

Можно ли считать предварительный просмотр успешным импортом

Нет. Предпросмотр показывает чтение и сопоставление, но не обязательно сохранение записей. После разрешённой тестовой загрузки отдельно проверьте фактический список, значения и связи.

Сколько записей достаточно для пробы

Универсального числа нет. Выборка должна покрывать разные правила и исключения. Размер сам по себе не делает проверку полной: несколько одинаковых строк не проверят повторы, пропуски и неизвестные связи.

Нужно ли удалять ошибочную запись из оригинала

Нет. Сохраните оригинал, опишите причину и исправляйте отдельную копию по подтверждённому правилу. Иногда ошибка связана с настройкой чтения, а не со значением исходной записи.

Почему число новых объектов меньше числа принятых записей

Часть принятых записей могла обновить существующие объекты. Сопоставьте определения счётчиков и ключи. Если приложение не объясняет исход каждой записи, результат требует дополнительной проверки.

Что делать, если нет тестового контура

Ограничьтесь подтверждённым предпросмотром без записи и согласуйте безопасное место с разработчиком. Не используйте действующую базу как временную песочницу без отдельного плана и разрешения ответственного.

Доказывает ли успешная проба готовность большого файла

Нет. Смысловые проверки на образце и проверка объёма дополняют друг друга. Для большого набора отдельно согласуют ограничения, время обработки, контроль результата и порядок действий при прерывании.