Разное

Некорректный ввод данных: Обработка некорректного пользовательского ввода в C++ | Уроки С++

10.04.1970

Содержание

Как в Excel исключить ввод некорректных значений с помощью проверки данных

Выделите ячейку или целую область, которую Excel должен проверить при вводе данных. Теперь перейдите к ленте меню «Данные | Работа с данными | Проверка данных». В следующем окне установите условия проверки. В поле «Тип данных» выберите между такими опциями, как «Целое число», «Действительное», «Список», «Дата», «Время», «Длина текста» или «Другой».

При определении условия допустим любой тип данных. Если выбрать опцию «Другой», то можно еще более точно установить значения. Так, например, выставить дату только от 01.01.2017 до 31.12.2017. Если нужно установить точные данные, выберите опцию «Список» и введите данные, разделяя их точкой и с запятой.

Подготовьте данные заранее, внеся их в таблицу Excel. Нажмите на кнопку в поле «Источник» и перейдите к соответствующему листу книги Excel. Выделите область и подтвердите выбор нажатием на клавишу [Enter].

Теперь рядом с указанным полем при проверке данных появилось развертывающееся меню, из которого можно выбирать необходимое значение. Если требуется удалить данные для проверки, выделите ячейки, которые Excel больше не должен проверять. Теперь перейдите к ленте меню «Данные | Работа с данными | Проверка данных» и нажмите на «Очистить все».

Исключите ввод ошибочных данных в Excel. Проверка данных в Excel поможет пользователям избежать ошибок в работе с таблицами

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

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

Фото: компания-производитель

Некорректный ввод — английский перевод

Некорректный

Invalid

Некорректный номер.

Invalid number!

Вопрос некорректный.

Well, the question’s not fair.

Некорректный вопрос.

Loaded Question.

Некорректный

размер изображения

Invalid value.

Некорректный размер изображения

Invalid image size

Некорректный файл тега

Invalid Tag File

Некорректный файл тега

Invalid StateMachine File

Некорректный запросHTTP error

Bad request

Получен некорректный пакет.

Malformed packet received.

Некорректный тип MIME

Bad MIME type

Вопрос совершенно некорректный!

Hey, Roxie, who’s the father?

Протестую, некорректный вопрос.

It acts as a drug Object to the form

Некорректный файлTotal displayed lines

File not valid

Некорректный пароль подписать невозможно.

Bad passphrase could not sign.

Некорректный пароль расшифровать невозможно.

Bad passphrase could not decrypt.

Обнаружен некорректный пульт ДУ

Incorrect Remote Control Detected

Некорректный атрибут в объявлении XML.

Invalid attribute in XML declaration.

О, извини, это некорректный термин?

Oh, I’m sorry, was that an offensive term?

Это некорректный вопрос для меня.

It seems like the wrong question to me.

Нажми ввод . Ввод ?

Push enter. Enter ?

Ай . Ввод . Ай и Ввод .

I. Enter. I and Enter.

Ввод

Input

Ввод

Return

Ввод

Enter

Ввод

Input

Ввод

Reload Preview

Ввод

Guess

Ввод

Login Input

Ввод

Input

ВВОД

ENTER

Но это же… это абсолютно некорректный порядок включения!

But that… that’s a completely improper procedure.

Сложно представить себе более несправедливый и некорректный портрет.

It would be hard to imagine a less fair or accurate portrait.

я передала некорректный ген, изза которого препарат был слаб.

I passed on the flawed gene that gave the drug its weakness.

Ввод карточки

3.1.1 RSA Keys generation and distribution

(ввод данных)

(data entry) 5 000

Ввод данных

ECE CES SEM.54 11 (Summary)

Ввод данных

C. Data entry

Ввод из

Input From

Ввод платежа

Enter or schedule?

Ввод данных

Data entry

Ввод данных

Data input

Ввод вывод

Input, output

Ввод данных

MICRODATA AND

Ввод данных

Input

Проверка вводимых пользователем данных — Windows Forms .NET

  • Чтение занимает 2 мин

В этой статье

Когда пользователи вводят данные в приложение, может потребоваться проверить, являются ли данные допустимыми, прежде чем использовать их в приложении. Может потребоваться проверить, что определенные текстовые поля не были нулевой длины, что поле отформатировано как номер телефона или строка не содержит недопустимых символов. Windows Forms предоставляет несколько способов проверки вводимых данных в приложении.

Важно!

Документация для Руководства по рабочему столу по .NET 5 (и .NET Core) находится в разработке.

Элемент управления MaskedTextBox

Если требуется, чтобы пользователи вводили данные в четко определенном формате, например номер телефона или артикул, это можно сделать быстро и с минимальным количеством кода с помощью элемента управления MaskedTextBox. Маска — это строка, состоящая из символов языка маскирования, которые указывают, какие символы можно вводить в каждой заданной позиции в текстовом поле. Элемент управления отображает набор запросов пользователю. Если пользователь вводит неправильное значение, например, вводит букву, когда требуется цифра, элемент управления автоматически отклоняет введенные данные.

Язык маскирования, используемый MaskedTextBox, является очень гибким. Он позволяет указать обязательные символы, необязательные символы, литералы, такие как дефисы и скобки, символы валют и разделители дат. Этот элемент управления также хорошо работает при привязке к источнику данных. Событие Format в привязке данных можно использовать для переформатирования входящих данных в соответствии с маской, а событие Parse можно использовать для переформатирования исходящих данных в соответствии со спецификациями поля данных.

Проверка на основе событий

Если требуется полностью программный контроль над проверкой или нужно выполнять сложные проверки, следует использовать события проверки, встроенные в большинство элементов управления Windows Forms. У каждого элемента управления, принимающего пользовательский ввод в свободной форме, есть событие Validating, которое возникает каждый раз, когда элементу управления требуется проверка данных. В методе обработки событий Validating можно проверить ввод пользователя несколькими способами. Например, если имеется текстовое поле, которое должно содержать почтовый индекс, можно выполнить проверку следующими способами.

  • Если почтовый индекс должен принадлежать к определенной группе почтовых индексов, можно выполнить сравнение строк на входе, чтобы проверить введенные пользователем данные. Например, если почтовый индекс должен быть из набора {10001, 10002, 10003}, можно использовать сравнение строк для проверки данных.

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

    ##### или #####-####, можно использовать регулярное выражение ^(\d{5})(-\d{4})?$. Чтобы проверить формат A#A #A#, можно использовать регулярное выражение [A-Z]\d[A-Z] \d[A-Z]\d. Дополнительные сведения о регулярных выражениях см. в разделах Регулярные выражения .NET и Примеры регулярных выражений.

  • Если почтовый индекс должен быть допустимым почтовым индексом США, можно вызвать веб-службу почтовых индексов для проверки данных, введенных пользователем.

Событие Validating предоставляется объектом типа CancelEventArgs. Если вы определили, что данные элемента управления недопустимы, отмените событие Validating, задав свойству Cancel этого объекта значение true. Если свойство Cancel не задано, Windows Forms будет считать, что проверка для этого элемента управления прошла удачно, и порождает событие Validated.

Пример кода, который проверяет адрес электронной почты в TextBox, см. в справочнике по событию Validating.

Управляемые событиями элементы управления с привязкой к данным

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

При использовании привязки данные в элементе управления синхронизируются с источником данных во время выполнения события Validating. Если отменить событие Validating, данные не будут синхронизированы с источником данных.

Важно!

Если после события Validating выполняется пользовательская проверка, это не повлияет на привязку данных. Например, если в событии Validated имеется код, который пытается отменить привязку данных, привязка данных все равно будет выполняться. В этом случае для выполнения проверки в событии Validated измените значения свойства элемента управления Binding.DataSourceUpdateMode с DataSourceUpdateMode.OnValidation на DataSourceUpdateMode.Never и добавьте your-control.DataBindings["field-name"].WriteValue() в код проверки.

Явная и неявная проверка

Итак, когда выполняется проверка данных элемента управления? Это решает разработчик. В зависимости от потребностей приложения можно использовать явную или неявную проверку.

Неявная проверка

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

Если вы хотите использовать неявную проверку для элемента управления, необходимо задать его свойству AutoValidate значение EnablePreventFocusChange или EnableAllowFocusChange. При отмене события Validating поведение элемента управления будет определяться значением, назначенным свойству AutoValidate. Если вы установили значение EnablePreventFocusChange, отмена события приведет к возникновению события Validated. Фокус поля ввода будет оставаться на текущем элементе управления до тех пор, пока пользователь не изменит данные на допустимый формат. Если вы установили значение EnableAllowFocusChange, событие Validated не произойдет при отмене события, но фокус по-прежнему будет переходить к следующему элементу управления.

Присвоение значения Disable свойству AutoValidate полностью отключает неявную проверку. Тогда для проверки элемента управления необходимо использовать явную проверку.

Явная проверка

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

  • вызов метода Validate, чтобы проверить последний элемент управления, который потерял фокус;
  • вызов метода ValidateChildren, чтобы проверить все дочерние элементы управления в форме или контейнере;
  • вызов пользовательского метода для проверки данных в элементах управления вручную.

Поведение по умолчанию неявной проверки для элементов управления

Различные элементы управления Windows Forms имеют разные значения по умолчанию свойства AutoValidate. В следующей таблице показаны наиболее распространенные элементы управления и их значения по умолчанию.

Закрытие формы и переопределение проверки

Когда элемент управления сохраняет фокус, поскольку содержащиеся в нем данные являются недопустимыми, невозможно закрыть родительскую форму одним из обычных способов:

  • нажатием кнопки Закрыть;
  • выбором пункта меню Система > Закрыть;
  • вызовом метода Close программным способом.

Однако в некоторых случаях может потребоваться разрешить пользователю закрывать форму независимо от того, являются ли значения в элементах управления допустимыми. Можно переопределить проверку и закрыть форму, которая все еще содержит недопустимые данные, создав обработчик для события FormClosing формы. В событии задайте для свойства Cancel значение false. Это приведет к принудительному закрытию формы. Дополнительные сведения и пример см. в разделе Form.FormClosing.

Примечание

Если принудительно закрыть форму таким образом, все данные в элементах управления формы, которые еще не были сохранены, теряются. Кроме того, модальные формы не проверяют содержимое элементов управления при их закрытии. Вы по-прежнему можете использовать проверку элемента управления для блокировки фокуса на элементе управления, но вам не нужно беспокоиться о поведении, связанном с закрытием формы.

См. также

Независимый регистратор сервер недоступен, некорректный ввод

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

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

Функции ИС «Независимый регистратор»

Программа записывает с экрана монитора все действия пользователя во время проведения он-лайн торгов. Независимый регистратор запускается при входе на сайты электронных торговых площадок и автоматически отключается при переходе на иные ресурсы.

При запуске программа проверяет качество работы сети, данные о рабочем месте пользователя и доступность электронных торговых площадок, после чего начинается запись всех действий участника при проведении торгов — к примеру, было ли нажатие кнопки мыши или же участник просто подвел курсор к функциональной клавише. Следовательно, предприниматель не сможет обвинить площадку в некорректной работе, если по той или иной причине не смог сделать ставку (подать ценовое предложение), и у него не будет достаточно оснований обращаться в ФАС.

Вся информация, зафиксированная независимым регистратором, сохраняется в двух экземплярах: один остается на компьютере пользователя, другой передается на специальный сервер. После окончания торгов доступ к этой информации получат сотрудники ФАС. Программа или видеозапись перестают работать и автоматически отключаются, если совершается попытка изменить в них что-либо.

Плюсы применения

Чтобы защитить права участников торгов, программа записывает все, что происходит на стороне организатора процедуры, фиксируя основные моменты, которые могут помешать проведению торгов: нестабильность интернета, совершались ли DDOS-атаки, имеет ли участник аукциона цифровую подпись. Если организатор торговой процедуры не обеспечил доступность площадки, его ждет административное наказание.

По словам заместителя главы Минкомсвязи РФ М. Евграфова, аналогов подобной системе фиксации процесса торгов в электронной форме, направленной на борьбу с интернет-мошенниками, не имелось ранее как в нашей стране, так и за рубежом.

На сегодняшний день данное приложение имеет различные настройки, с помощью которых можно сделать процесс более удобным, к примеру, уменьшить длительность сохраненного видео (в настоящее время максимум — 6 часов), или отложить доставку видеозаписи, если качество интернет-связи недостаточно высокое.

Как скачать и установить Независимый регистратор

В 2013 году Минкомсвязи был организован конкурс на развитие системы «независимый регистратор», победителем которого является ФГУП НИИ «Восход», подписавший с министерством контракт на 2 года.

В ноябре 2014 года систему ввели в промышленную эксплуатацию, и уже в конце месяца программу мог скачать каждый желающий на сайте госзакупок. Следующий, 2015 год, служит тестовым периодом перед тем, как создатели будут расширять функционал ПО.

И уже с января 2016 г. все, кто участвует в электронных аукционах, должны будут в обязательном порядке использовать «Независимый регистратор».

Скачать «Независимый регистратор» с официального сайта закупок:

Скачать руководство по установке и использованию:

Большинство программ, имеющих хоть какой-либо пользовательский интерфейс, сталкиваются с обработкой пользовательского ввода. В программах, которые мы писали раньше, используется std::cin для получения пользовательского ввода. А так как ввод данных имеет свободную форму (пользователь может ввести всё, что пожелает), то пользователю очень легко ввести данные, которые от него никак не ожидаются.

При написании программ, вы всегда должны учитывать, как пользователи (преднамеренно или непреднамеренно) могут использовать ваши программы. Хорошо написанная программа предвидит, как ею могут злоупотребить, и либо будет обрабатывать такие случаи, либо предотвращать их (если это возможно). Программа, которая имеет обработку некорректного ввода, называется надежной.

На этом уроке мы рассмотрим, как пользователи могут вводить некорректные данные через std::cin, а также как с этим бороться.

std::cin, буфер данных и извлечение

Прежде чем разбираться с обработкой некорректного ввода через std::cin и оператор >>, давайте сначала рассмотрим их принцип работы.

Процесс, когда мы используем оператор >> для получения данных от пользователя и размещение этих данных в определенной переменной, называется извлечением. Соответственно, оператор >> называется оператором извлечения.

Когда пользователь вводит данные в ответ на операцию извлечения, то эти данные помещаются в буфер std::cin. Буфер данных — это просто часть памяти, зарезервированная для временного хранения данных, когда они перемещаются из одного места в другое. В этом случае буфер используется для хранения пользовательского ввода, пока он находится в режиме ожидания выделения для него переменных.

При использовании оператора извлечения, выполняется следующая процедура:

Если во входном буфере есть данные, то эти данные используются для извлечения.

Если во входном буфере нет данных, то пользователю предлагается ввести данные (обычно именно это и происходит в большинстве случаев). Когда пользователь нажимает Enter, символ новой строки \n помещается во входной буфер.

Оператор >> извлекает столько данных из входного буфера в переменную, сколько позволяет размер самой переменной (игнорируя любые пробелы, табы или \n).

Любые данные, которые не были извлечены, остаются во входном буфере для последующего извлечения.

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

1 2 int a; std::cin >> a;

Если пользователь введет 7d, то 7 будет извлечено, преобразовано в целое число и присвоено переменной a. А d\n останется во входном буфере дожидаться следующего извлечения.

Извлечение не выполняется, если данные ввода не соответствуют типу переменной, выделенной для них. Например:

1 2 int a; std::cin >> a;

Если бы пользователь ввел z, то извлечение не выполнилось бы, так как z не может быть извлечено в целочисленную переменную.

Проверка пользовательского ввода

Существует три основных способа проверки пользовательского ввода:

До ввода

Предотвращение некорректного пользовательского ввода.

После ввода

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

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

Некоторые графические пользовательские интерфейсы или расширенные текстовые интерфейсы позволяют проверять ввод пользователя сразу (символ за символом). Программист создает функцию проверки данных, которая принимает и проверяет пользовательский ввод, и, если данные ввода корректны, то возвращается true, если нет — false. Эта функция вызывается каждый раз, когда пользователь нажимает на клавишу. Если функция проверки возвращает true, то символ, который пользователь ввел — принимается. Если функция возвращает false, то символ, который только что ввел пользователь — отбрасывается (и не отображается на экране). Используя этот метод, мы можем гарантировать, что любой пользовательский ввод будет корректным, так как любые неверные нажатия клавиш будут обнаружены и немедленно удалены. К сожалению, std::cin не поддерживает этот тип проверки.

Поскольку строки не имеют никаких ограничений на то, какие символы вводятся, то извлечение гарантированно будет успешным (хотя помним, что std::cin останавливает процесс извлечения при первом обнаружении символа пробела). После ввода строки программа сразу может её проанализировать. Однако этот анализ и последующая конвертация данных в другие типы данных (например, числа) может быть сложной, поэтому это делается только в редких случаях.

Чаще всего мы позволяем std::cin и оператору извлечения выполнять тяжелую работу. В соответствии с этим методом пользователь может вводить всё, что хочет, а далее std::cin и оператор >> пытаются извлечь данные и, если что-то пойдет не так, выполняется обработка возможных ошибок. Это самый простой способ, и его мы и будем рассматривать.

Рассмотрим следующую программу «Калькулятор», которая не имеет обработки ошибок:

Здесь мы просим пользователя ввести два числа и арифметический оператор. Результат выполнения программы:

Enter a double value: 4
Enter one of the following: +, -, *, or /: *
Enter a double value: 5
4 * 5 is 20

Теперь рассмотрим, где некорректный ввод пользователя может привести к сбою в программе.

Сначала мы просим пользователя ввести первое число. А что будет, если он введет что-либо другое (например, q)? В этом случае извлечение данных не произойдет.

Во-вторых, мы просим пользователя ввести один из 4-х возможных символов (арифметических операторов). Что будет, если он введет какой-то другой символ? Мы сможем извлечь данные, но не сможем их обработать.

В-третьих, что будет, если пользователь вместо символа введет строку, например, *q hello. Хотя мы можем извлечь символ *, но в буфере останется лишний балласт, который в будущем может привести к проблемам.

Основные типы некорректного пользовательского ввода

Мы выделили 4 типа:

Извлечение выполняется успешно, но значения бесполезны для программы (например, вместо математического оператора введен символ k).

Извлечение выполняется успешно, но пользователь вводит лишний текст (например, *q hello вместо одного символа математического оператора).

Извлечение не выполняется (например, вместо числового значения ввели символ q).

Извлечение выполняется успешно, но пользователь ввел слишком большое числовое значение.

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

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

Ошибка №1: Извлечение выполняется успешно, но данные бесполезны

Это самый простой случай. Рассмотрим следующий фрагмент выполнения программы, приведенной выше:

Enter a double value: 4
Enter one of the following: +, -, *, or /: k
Enter a double value: 5

Здесь мы просим пользователя ввести один из 4-х арифметических операторов, но он вводит k. Символ k является допустимым символом, поэтому std::cin извлекает его в переменную sm, и всё это добро возвращается обратно в функцию main(). Но в программе не предусмотрен случай обработки подобного ввода, поэтому мы получаем сбой, и в результате ничего не выводится.

Решение простое: выполнить проверку пользовательского ввода. Обычно она состоит из 3-х шагов:

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

Если ввод совпадает с ожидаемым, то значения благополучно возвращаются.

Если нет, то сообщаем пользователю что что-то пошло не так, и просим повторить ввод снова.

Вот обновленная функция getOperator() с проверкой пользовательского ввода:

Мы используем цикл while для гарантии корректного ввода. Если пользователь введет один из ожидаемых символов, то всё хорошо — символ возвратится обратно в функцию main(), если нет — пользователю выведется просьба повторить ввод снова. И вводить данные он будет до тех пор, пока не введет корректное значение, не закроет программу или не уничтожит свой компьютер 🙂

Ошибка №2: Извлечение выполняется успешно, но пользователь вводит лишний текст

Рассмотрим следующее выполнение программы «Калькулятор»:

Enter a double value: 4*5

Как вы думаете, что произойдет дальше?

Enter a double value: 4*5
Enter one of the following: +, -, *, or /: Enter a double value: 4 * 5 is 20

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

Когда пользователь вводит 4*5, то эти данные поступают в буфер. Затем оператор >> извлекает 4 в переменную a, оставляя *5\n в буфере. Затем программа выводит Enter one of the following: +, -, *, or /:. Однако, когда вызывается оператор извлечения, он видит, что в буфере находится *5\n, поэтому он использует эти данные вместо того, чтобы запрашивать их у пользователя еще раз. Следовательно, извлекается символ *, а 5\n остается во входном буфере.

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

Хотя результат программы правильный, но её выполнение — нет. Согласитесь, что с наличием возможности просто проигнорировать лишние символы было бы намного лучше. К счастью, это можно сделать следующим образом:

Поскольку последний символ, введенный пользователем, должен быть \n (так как пользователь в конце ввода нажимает Enter), то мы можем сообщить std::cin игнорировать все символы в буфере до тех пор, пока не будет найден символ новой строки (который мы также удаляем). Таким образом, всё лишнее будет успешно проигнорировано.

Обновим нашу функцию getDouble(), добавив эту строчку:

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

Ошибка №3: Извлечение не выполняется

Рассмотрим следующее выполнение программы «Калькулятор»:

Enter a double value: a

Теперь уже не удивительно, что программа работает не так, как надо, но её дальнейший ход выполнения — вот что интересно:

Enter a double value: a
Enter one of the following: +, -, *, or /: Enter a double value:

И программа внезапно обрывается.

Этот случай похож на ошибку №2, но все же несколько отличается. Давайте рассмотрим детально, что здесь происходит.

Когда пользователь вводит a, то этот символ помещается в буфер. Затем оператор >> пытается извлечь a в переменную a типа double. Поскольку a нельзя конвертировать в тип double, то оператор >> не может выполнить извлечение. На этом этапе случаются две вещи: a остается в буфере, а std::cin переходит в «режим отказа». Как только установлен этот режим, то все последующие запросы на извлечение данных будут проигнорированы.

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

Вот так! Теперь давайте интегрируем это в нашу функцию getValue():

Ошибка №4: Извлечение выполняется успешно, но пользователь ввел слишком большое числовое значение

Рассмотрим следующий код:

Что случится, если пользователь введет слишком большое число (например, 40000)?

Enter a number between -32768 and 32767: 40000
Enter another number between -32768 and 32767: The sum is: 32767

В вышеприведенном примере std::cin немедленно перейдет в «режим отказа», и значение не будет присвоено переменной x. Следовательно, переменной x присваивается максимально возможное значение типа данных (в этом случае, 32767). Все следующие данные ввода будут проигнорированы, а y останется с инициализированным значением 0. Решение такое же, как и в случае с неудачным извлечением (см. ошибка №3).

Объединяем всё вместе

Вот программа «Калькулятор», но уже с полным механизмом обработки/проверки ошибок:

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

Может ли извлечение не выполниться?

Может ли пользователь ввести значение больше ожидаемого?

Может ли пользователь ввести бессмысленные значения?

Может ли ввод пользователя привести к переполнению переменных?

Используйте ветвление if и логические переменные для проверки пользовательского ввода.

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

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

Что значит Некорректный номер карты, Операция не выполнена, Некорректно указана карта получателя

При платеже банк выдал: Операция не выполнена, Некорректно указана карта получатель. Что это значит?

Разберём на примере Сбербанка.

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


Для перевода денежных средств в реальном времени можно воспользоваться одним из способов:

  1. по номеру карты получателя;
  2. по номеру телефона получателя;
  3. по номеру банковского счета получателя.

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

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

  • указанная вами карта не активна (карта может быть заблокирована банком или у карты закончился срок действия) ;
  • карта получателя не была активирована с помощью ввода пин-кода через банкомат Сбербанка.

Если воспользоваться услугой перевода денежных средств по номеру телефона получателя при помощи смс, то необходимо удостовериться, что у получателя тоже подключена услуга «Мобильный банк». Если получатель не использует услугу «Мобильный банк» или она на данный момент заблокирована (например, недостаточно средств на счету), то данной операцией воспользоваться невозможно.

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

Если ошибка «Некорректно указана карта получателя» возникает повторно, то необходимо обратиться за помощью в отделение Сбербанка или связаться по телефону 8-800-555-55-50.

Ответ на вопрос пользователя: задать свой вопрос

Автор поста: Alex Hodinar
Частный инвестор с 2006 года (акции, недвижимость). Владелец бизнеса, специалист по интернет маркетингу.

Обработка ошибок. VBA для чайников

Читайте также

Пример: обработка ошибок

Пример: обработка ошибок В программе 1.2 было продемонстрировано использование лишь самых примитивных средств обработки ошибок, а именно, получение номера ошибки в переменной типа DWORD с помощью функции GetLastError. Вызов функции, а не просто получение глобального номера

Пример: обработка ошибок как исключений

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

26.4. Обработка ошибок

26.4. Обработка ошибок Каждая из функций popt, которая может возвращать ошибки, возвращает целочисленные значения. В случае возникновения ошибки возвращается отрицательный код. В табл. 26.2 перечислены коды возможных ошибок. После таблицы дается подробное обсуждение каждой

Отслеживание и обработка ошибок

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

Обработка ошибок

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

1.4. Обработка ошибок: функции-обертки

1.4. Обработка ошибок: функции-обертки В любой реальной программе существенным моментом является проверка каждого вызова функции на предмет возвращаемой ошибки. В листинге 1.1 мы проводим поиск ошибок в вызовах функций socket, inet_pton, connect, read и fputs, и когда ошибка случается, мы

Обработка ошибок

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

1.6. Обработка ошибок: функции-обертки

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

Обработка ошибок

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

Обработка ошибок и исключения

Обработка ошибок и исключения Обработка ошибок — сложная задача, при решении которой программисту требуется вся помощь, которая только может быть предоставлена. — Бьярн Страуструп (Bjarne Stroustrup), [Stroustrup94] §16.2 Имеется три способа написать программу без ошибок; но работает

ГЛАВА 32. Обработка ошибок и события.

ГЛАВА 32. Обработка ошибок и события. В этой главе мы рассмотрим, как при выполнении модулей PSQL — триггеров и процедур — можно перехватывать и обрабатывать ошибки в выполняемом коде.Стандартным поведением модулей PSQL при появлении исключений является остановка выполнения,

3.1.4 Обработка ошибок

3.1.4 Обработка ошибок Поскольку программа так проста, обработка ошибок не сотавляет большого труда. Функция обработки ошибок просто счтает ошибки, пишет сообщение об ошибке и возвращает управлние обратно:int no_of_errors;double error(char* s) (* cerr «„ «error: » «« s «« « “; no_of_errors++; return 1;

7.3.4 Обработка Ошибок

7.3.4 Обработка Ошибок Есть четыре подхода к проблеме, что же делать, когда во время выполнения универсальное средство вроде slist сталкивется с ошибкой (в С++ нет никаких специальных средств языка для обработки ошибок):1. Возвращать недопустимое значение и позволить

Действия с цифровым тахографом | ГАЗ-КАРД топливные карты «Газпромнефть»

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

Из статьи Вы узнаете:

О мотивации обмана

О наказании за вмешательство

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

Мотивация обмана

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

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

Наказание за вмешательство

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

При перевозках в пределах нашей страны нет таких программ. Можно привести пример Испании. Там наказание может быть в объеме до 400 евро. Оно может быть наложено за использование карты тахографа с истекшим сроком или за ввод ложных данных.

Сумма может быть увеличена, если в тахографе не будет сведений о времени отдыха и работы водителя или же обнаружится неправильное использование листков регистрации. В таком случае размер штрафа будет 2000 евро. Сумма может увеличиться втрое, если на транспорте нет тахографа или регистрационных листков.

Можно ещё взять за пример Францию. Если водитель отдыхает в транспортном средстве, в гостинице, то штраф составит 500 тысяч евро или отбывание наказания в тюрьме. Речь идёт об обязательном еженедельном отдыхе.

5 Ошибки при вводе данных, которых следует избегать компаниям для повышения точности

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

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

Как качество данных дорого обходится компаниям?

Низкое качество данных обходится организациям по всему миру почти в 9,7 млн ​​долларов в год, утверждает Gartner. Только в США предприятия теряют прибл. 3,1 триллиона долларов в год из-за низкого качества данных. Ошибочные решения, принятые с использованием некорректных данных, неудобны и очень дорого обходятся различным бизнес-функциям.

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

Относятся ли компании к работе по вводу данных серьезно?

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

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

Что такое ошибка ввода данных?

Информация введена неверно или неправильно.Это обычное дело, как ввод слов, а не числовых данных или чисел, а не слов. Распространенными ошибками ввода данных являются ошибки транскрипции и транспонирования.

Как избежать распространенных ошибок при вводе данных?

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

Что такое точность при вводе данных?

Точность ввода данных означает, что значение, введенное и сохраненное в поле, является правильным.Чтобы быть правильным, введенное значение данных должно быть правильным и должно быть представлено в последовательной и однозначной форме.

Как повысить точность ввода данных?

  • Выявление основных источников неточностей
  • Проведение регулярного анализа
  • Стандартизация процессов
  • Отслеживание прогресса
  • Включение автоматизации

Почему точность так важна?

Если уровни точности данных низкие, аналитические данные будут неточными, и решения, принятые для их использования, дадут плохие результаты.Вот почему организации должны понимать, что качество данных более важно, чем количество данных. Слишком много внимания только к сбору как можно большего количества информации, не задумываясь о том, верна ли она и как ее можно использовать — никогда не поможет.

Почему точность данных важна для общего качества данных?

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

Компании, использующие данные как лучший актив, могут улучшить свои повседневные решения. Теперь, если решения будут приниматься с помощью данных с низкой точностью, понимание будет отсутствовать, а решения, на которые оно повлияет, будут катастрофическими. Это не относится только к высшему руководству; вместо этого он применяется ко всем снизу вверх.

Вторая причина заключается в том, что неточности, приводящие к низкому качеству данных, являются препятствием для организаций, чтобы сделать рывок к цифровой трансформации. Каждые 8 ​​из 10 машинного обучения (ML) и искусственного интеллекта (AI) для современных проектов управления данными не выполняются из-за грязных или некачественных данных. 96% этих проектов столкнулись с проблемами качества данных и маркировки данных, необходимых для обучения ИИ.

Ошибки ввода данных обходятся организациям в миллионы долларов времени и эффективности.

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

5 распространенных ошибок ввода данных, влияющих на бизнес:

  • Неоднозначные данные
  • Согласованность представления значений
  • Несогласованность, вызванная изменениями
  • Действительные значения
  • Отсутствующие значения

Советы по улучшению вашего точность ввода данных

Ошибки при вводе данных делают достижение 100-процентной точности данных титанической задачей для большинства компаний.Безошибочный ввод данных и точные данные всегда имеют восходящий подход. Лучшие практики управления данными могут помочь организациям выявлять неточные данные; но не все ошибки и неточности выявляются и исправляются. Организация всегда должна гарантировать, что введенные данные точны и доступны по мере необходимости.

Заключение

Импровизированное улучшение данных с немедленной отдачей — это не ракетная наука, однако сохранение бизнес-базы данных от неточностей и поддержание такого статуса — это долгосрочный процесс, требующий самоотдачи.Кроме того, организации могут исправить только небольшой фрагмент того, что они обнаружили из-за нехватки времени и навыков. Аутсорсинговые компании по вводу данных, обладающие необходимыми навыками, опытом и технологическими ноу-хау, могут быстро преобразовать огромные объемы ваших критически важных данных в надежную бизнес-информацию.

Чираг Шивалкер возглавляет отдел цифрового контента HabileData, глобальной аутсорсинговой компании по управлению данными, которая входит в число ведущих компаний по бизнес-бизнесу в Индии. Chirag фокусируется на оцифровке данных в масштабах всего предприятия, управлении данными, качестве данных и возможностях бизнес-аналитики.

Типичные ошибки, которые могут возникнуть при вводе данных, и способы их устранения

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

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

Такие проблемы необходимо решать для решения конкретных проблем и внесения необходимых изменений. Если вовремя не заняться, это может по-прежнему негативно сказываться на вашем бизнесе.

Ошибки при вводе данных: Одной из наиболее типичных проблем при вводе данных является ввод неверных данных.Непреднамеренная опечатка может привести к краткосрочным или даже долгосрочным неприятностям. Это также может привести к неправильным записям, неверной информации и дезорганизации.

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

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

Это может привести к недоумению и дезорганизации из-за того, что такие данные, как номер телефона, вводятся несколько раз, или вводятся дополнительные данные, которые программа для ввода данных не может отсортировать. Могут быть даже случаи, когда данные вводятся в правильные поля один раз, оставляя после себя дополнительные или неиспользуемые поля как пустые и не используя их надлежащим образом.

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

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

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

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

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

Эффективные решения и способы минимизировать ошибки при вводе данных

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

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

Подробнее: Зачем и где использовать аутсорсинг служб ввода данных?

Заключение

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

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

Мы в Cogneesol — надежные поставщики решений для ввода данных, помогающие предприятиям по всему миру эффективно управлять данными. Позвоните нам по телефону +1 646-688-2821 или по электронной почте [email protected] , чтобы начать бесплатную пробную версию наших услуг по вводу данных.

Как избежать ошибок ввода данных и защитить базы данных

Если вы работаете с любым объемом данных, ошибки ввода и ввода данных, вероятно, являются двумя вашими наименее любимыми вещами.

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

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

Но ввод данных — один из самых важных процессов в вашем бизнесе. На каждом этапе бизнес-процесса используются данные. Если у вас плохие данные, вам будет плохо.

На самом деле подавляющее большинство неверных данных возникает из-за ошибок ручного ввода данных.И эти ошибки могут сильно повлиять на вашу прибыль.

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

Вот что вам нужно знать о процессе ввода данных и сокращении количества ошибок при вводе данных.

Есть два типа ошибок ввода данных: ошибки ручного ввода данных и неправильные данные.

Источник этих ошибок может быть внутренним или внешним. Однако одно обычно ведет к другому.И они могут иметь каскадный эффект.

Ошибки ручного ввода данных

Ошибки при вводе данных вручную обычно являются внутренними, то есть их совершают сотрудники организации.

Это два наиболее распространенных типа ошибок ввода данных:

  • Ошибки транскрипции. Обычно это опечатки, повторение и удаление. Это наиболее часто встречается, когда люди вводят слова. При просмотре записей легко спутать букву «l» с «i». Так что они часто остаются незамеченными.Функция автозамены в текстовых процессорах также может вызывать ошибки транскрипции.
  • Ошибки транспонирования. Это наиболее распространено, когда люди вводят числовые данные. Это случается, когда они набирают числа не по порядку. Например, кто-то может ввести в качестве адреса 346 2nd Street вместо 364 2nd Street. Это простые ошибки, которые сложно заметить.

Неверные данные

Эти ошибки исходят из источника данных.

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

Труднее всего иметь дело с неверными данными, так как вам нужно вернуться к источнику, чтобы исправить это.

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

Однако есть несколько способов минимизировать количество неверных данных, попадающих в ваши базы данных, которые мы рассмотрим в следующих разделах.

Повышение точности ввода данных

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

Но вы можете значительно снизить риск, следуя передовым методам ввода данных.

Использовать автоматический ввод данных

Ручной ввод данных требует больших ресурсов и монотонности. Так что это сказывается на ваших командах и отнимает время от использования данных.

Максимально возможная автоматизация ввода данных экономит время, позволяет членам команды работать над задачами, которые нельзя автоматизировать, и сводит к минимуму возможность ошибок при вводе данных.

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

Сосредоточьтесь на точности

Точность — самая важная часть ввода данных. Нет никаких дебатов.

Это означает, что вам нужно установить разумные сроки и не перегружать свою команду. Даже если вам нужно ввести массу данных, основное внимание следует уделять качеству, а не количеству.

Так что наберитесь терпения и убедитесь, что в ваших командах достаточно людей и времени, чтобы уложиться в сроки, не торопясь с работой.

Стандартизация процессов ввода данных

Когда вам нужно ввести данные, всегда делайте это одинаково.

Сюда входит стандартизация того, как ваши команды вводят данные и как форматируются записи.

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

Если вам нужно внедрить стандартизацию, хорошие инструменты для работы с данными, такие как Excel и Google таблицы, имеют функции для очистки форматов данных и разделения данных на разные списки. Таким образом, вы можете стандартизировать свои данные задним числом.

Подчеркните важность данных

Если ваши команды не знают, насколько важны данные, они не будут обращаться с ними так тщательно.

Так что найдите время, чтобы дать законное образование о том, как ваша компания использует данные и насколько эти данные ценны для организации.

Это особенно ценно, если несколько отделов используют одни и те же данные. Человеку легко недооценить важность данных, когда он не осознает, сколько отдельного фрагмента информации используется вне его команды.

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

Подтвердите свои данные

Обеспечение наличия достоверных данных для начала избавит вас от головной боли в долгосрочной перспективе.

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

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

Есть два способа использовать проверку данных для защиты ваших баз данных:

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

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

Выбор метода во многом зависит от того, как вы собираете данные.

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

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

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

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

Поскольку ошибки ввода данных являются основными причинами появления неверных данных, управление этими ошибками дает вам максимальную отдачу от управления данными.

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

Какие ваши любимые методы предотвращения ошибок при вводе данных? Оставить комментарий и дайте нам знать!

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



Как избежать типичных ошибок при вводе данных |

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

Общие типы ошибок при вводе данных

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

Ошибка транскрипции

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

Ошибка транспозиции

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

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

Неверная интерпретация данных
Этот тип ошибки ввода данных обычно возникает, когда числа смешиваются со словами, например, при вводе кодов или паролей. Примером этого является ситуация, когда в исходных данных указано, что символом является O, как в букве, но агент думал о нем как о 0, как в числе, и другие случаи неверной интерпретации данных.

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

Как избежать ошибок при вводе данных

Чтобы помочь вам предотвратить появление этих ошибок при вводе данных, поскольку большинство предприятий полагаются на некоторые из своих стратегий и целей из этой информации, вот несколько полезных советов по обеспечению точного ввода данных:

Нанять достаточное количество персонала

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


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

Обучить сотрудников

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

Обеспечьте комфортные условия труда

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

Учитывайте автоматические отчеты об ошибках

Это расширенная функция программного обеспечения для автоматического ввода данных. Его можно использовать для экономии времени и уменьшения количества ошибок. Это также может помочь повысить эффективность ввода данных. Это отлично подходит для проектов с однотипными данными. Примером этого является ввод номера счета. Если вы настроите систему на требование определенного количества цифр, она быстро уведомит оператора, когда он введет меньшее или большее количество цифр.

Обеспечение качества данных

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

Определите источник неточностей в данных

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

Ставьте реалистичные цели

Одна из проблем с вводом данных заключается в том, что цели очень далеки от их реального достижения.У руководства должны быть четкие, понятные и разумные цели для всей команды. Кроме того, хотя скорость — это нормально, учитывая, что проекты ограничены по времени, все же лучше отдавать приоритет точности, а не скорости. Согласно Inc.com, поспешная работа неизбежна с ошибками. Это может поставить под угрозу качество данных, поэтому выделение достаточного количества времени для каждого проекта приносит большую пользу вашему бизнесу и вашим сотрудникам.

Поддержание высоких стандартов точности ввода данных

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

Обновите вашу систему

Каждый бизнес, особенно тот, который использует автоматизацию для ввода данных, должен понимать, что даже системы допускают ошибки. Они не всегда так надежны, как вы думаете, что характерно для программ, которые не обновляются регулярно. Именно по этой причине вы должны следить за тем, чтобы все автоматизированные системы и программы всегда обновлялись и работали нормально.Вам также следует использовать соответствующие программные инструменты, чтобы минимизировать нагрузку на ваших агентов. Существуют различные программы для ввода данных, и некоторые из них могут автоматически извлекать данные, например, оптическое распознавание символов (OCR) и интеллектуальное распознавание символов (ICR). Меньшее количество ручной работы может привести к меньшему количеству ошибок.

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

ПОГОВОРИТЬ С НАМИ!

Свяжитесь с нами сегодня для получения дополнительной информации.

Источники неточных данных в процессе ввода данных

Источники неточных данных в процессе ввода данных

Есть несколько причин, по которым данные, введенные в систему в организации, могут быть неточными. Возможно, он был введен неверно по ошибке или же он мог быть введен неправильно, преднамеренно.Это также могло быть связано с ошибкой в ​​системе. Какова бы ни была причина, необходимо исследовать источники таких ошибок, чтобы исправить ошибки, прежде чем они приведут к катастрофам.

Ниже приведены некоторые источники неточных данных.

Причины ошибок в процессе ввода данных
  1. Человеческие ошибки:

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

  1. Некорректный процесс:

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

    • Могут быть отсканированные копии бумажных документов нечеткой формы, которые распространяются в фирме. Компании видели несколько случаев, когда информация пересылается по факсу на бумаге плохого качества в аппарате, в котором отсутствует хороший тонер и который дает плохие результаты.
    • Самая частая ошибка — неправильная информация вводится в неправильные поля. Иногда информация остается открытой для интерпретации оператором, и он или она вводит данные, которые отличаются от того, что имел в виду отправитель.Бывают случаи, когда используемый тип английского языка вызывает затруднения у операторов; содержание может быть написано на английском языке (США), в то время как операторы обучены английскому языку (Великобритания). Документы также поступают в разных форматах и ​​стилях. Когда происхождение самой информации неверно, каждый следующий шаг также становится подверженным ошибкам.
  1. Системные ошибки:

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

    • В фирме по ценным бумагам системы фронт-офиса и системы бэк-офиса различаются. Трейдеры вводят данные в системы фронт-офиса, и по мере того, как информация проходит по проводам и кодам и встраивается в инструменты бэк-офиса, некоторые из них теряются, в то время как другие данные заполняются только наполовину. Бухгалтерские фирмы обнаруживают, что проводки не рассчитываются на правильных счетах главной книги.
    • Иногда кодов бывает так много, что бухгалтеры не знают, какой код ввести для какой транзакции.Это часто может привести к путанице, когда два или более кода относятся к тесно связанным транзакциям. Банки обнаруживают, что их системы неправильно рассчитывают процентные платежи в неправильную дату или используют неправильный процент. Депозиты не обновляются в правильную дату, потому что система работала неправильно, а записи на сберегательных счетах не производились вовремя. Вот почему сверка Inter Systems — это массовая и постоянно происходящая деятельность в мире финансов.
  1. Преднамеренные ошибки:

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

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

Предыдущая статья8 Ключевые шаги по минимизации риска аутсорсингаСледующая статья7 Советы по улучшению прогнозирования продаж

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

Распространенные ошибки при вводе данных и способы их уменьшения

Ввод данных | 4 июня 2018 г., Джули Клементс

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

Недавно ошибка ввода данных даже привела к тому, что государственное жилье в Чапел-Хилл было оценено как низкое и отнесено к категории государственного жилья «проблемный исполнитель». Ошибка возникла из-за сотрудника, который ввел «одну часть ключевой информации в неправильное поле в форме отчетности, используемой в ранних отчетах с неаудированными числами», в результате чего официальные лица из Министерства жилищного строительства и городского развития США, включая Чапел-Хилл, в категория «Troubled Performer» рейтинга HUD.

Когда дело доходит до ввода данных вручную, к наиболее распространенным ошибкам относятся следующие.

Ошибочное написание имен или другой важной информации

«Тайрон Родни Джур» вместо «Тайрон Родни-младший»

Неправильный формат даты при вводе данных в Excel

Имя Дата рождения Возраст
XYZ 15.05.1987
15.05.1987
15-87 мая
16.05.1987

Неправильная интерпретация данных

Замена буквы «О» на ноль

Отсутствующие значения

Имя Дата рождения
ABC NA
DEF 14.05.1987
FGH 15.05.1987
HLJ 16.05.1987
JKL 17.05.1987

Ввод данных в неправильное поле

Имя Дата рождения Расположение
ABC 13.05.1987 NY
DEF 14.05.1987 AL
FGH 15.05.1987 CA
HLJ 16.05.1987 NY
JKL NY 17.05.1987

Что можно сделать, чтобы уменьшить эти ошибки?

  • Строгие проверки качества — Двойная проверка введенных данных помогает уменьшить количество ошибок и устраняет необходимость повторного ввода данных.Регулярные проверки также помогут выявить области, требующие улучшения.
  • Обучите сотрудников — Обязательно обучите их важности данных, с которыми они работают, и сообщите им о последствиях компрометации любых данных. Попросите их сосредоточиться больше на точности, чем на скорости.
  • Обеспечьте достаточно времени и разрешите перерывы — Даже если ваши операторы обладают хорошими навыками и опытом в области ввода данных, всегда есть вероятность ошибки, когда они загружены кучей задач.Обеспечьте комфортную рабочую среду и предложите им регулярные перерывы, чтобы освежиться и сбросить напряжение перед их возвращением к работе.
  • Обновление автоматизированных систем — Если ваша компания полагается на автоматизированные инструменты, такие как интеллектуальное распознавание символов (ICR) и оптическое распознавание символов (OCR) для сбора или анализа данных, обязательно обновляйте эти системы регулярно. Кроме того, защитите автоматизированные системы от вирусов и вредоносных программ, иначе это может привести к ошибкам.
  • Найдите источник неточности данных — Проверьте произошедшие ошибки ввода данных, статистику и шаблоны, чтобы определить основные внутренние и внешние источники неточности данных.Это помогает внести необходимые изменения как в процессы, так и в методы управления.
  • Рассмотрите возможность передачи на аутсорсинг Передача данных на аутсорсинг и задач управления опытной компании по вводу данных поможет предприятиям получить точные данные, которые они ищут, наряду с сокращением эксплуатационных расходов, эффективным управлением данными и безопасной обработкой.

Аутсорсинговые компании по вводу данных используют новейшее передовое программное обеспечение и имеют опытных профессионалов по вводу данных, чтобы обеспечить ввод данных более простым, но более эффективным способом с большей точностью.При вводе данных в Excel можно использовать функцию проверки данных, чтобы исключить несоответствующие данные.

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

Анализ ошибочного ввода данных при сборе бумажных и электронных данных | Примечания к исследованию BMC

Процедуры

Исследование проводилось в больнице в Дангхади, на востоке страны. Пациенты были обследованы, и пациенты, соответствующие критериям отбора, были приглашены к участию.После письменного информированного согласия каждому участнику был присвоен идентификационный номер исследования (CODE). Была заполнена анкета и проведено краткое физическое обследование, результаты которого были записаны в присутствии пациента. Венозная кровь была собрана и отправлена ​​в сотрудничающую лабораторию для последующего анализа. Данные были получены и записаны в двух временных точках, в присутствии пациента и в лаборатории. Для EDC были созданы две отдельные базы данных: одна для данных, собранных с пациентом, другая для соответствующих лабораторных данных; для PBDC все данные были записаны в один и тот же CRF, а затем введены в единую базу данных.Один и тот же персонал выполнял PBDC и EDC, все имели как минимум среднее образование, ни один из них не имел опыта сбора электронных данных.

Система EDC была разработана с использованием программного обеспечения с открытым исходным кодом от AKVO (Нидерланды; https://akvo.org/, последний доступ 11.07.2019). Данные вводились на планшеты (Galaxy Tab A 7.0 SM T285, Samsung, Сеул, Южная Корея). Каждому участнику исследования было присвоено два идентификатора: уникальный идентификатор базы данных, автоматически предоставляемый системой, и другой, присвоенный сборщиком данных (CODE).Система не проверяла уникальность присвоенного КОДА. Во время ввода данных пользовательская маска ввода данных выполняла проверки полноты и диапазона, ошибочные результаты сообщались клерку по вводу данных в момент времени ввода, однако ввод данных мог продолжаться даже в случае неразрешенных ошибок. Система не смогла обнаружить логические ошибки или ошибки, связанные с календарем, например, регистрацию до даты рождения. Все введенные данные были загружены сразу после ввода данных через Wi-Fi в облачную базу данных и могли контролироваться третьим лицом в режиме реального времени.

Для ввода данных PBDC CRF были заполнены и оцифрованы в течение 7 дней с использованием EpiData версии 3.1 (Ассоциация EpiData, Оденсе, Дания) [5]. Эта версия больше не поддерживается, однако предлагает возможность проверки логики, диапазона и даты. Система ввода данных была спроектирована так, что КОД нельзя было присвоить более одного раза. Во всех остальных случаях система выделяла обнаруженные ошибки во время ввода данных, подсказывая служащему по вводу данных через всплывающее окно и звуковой сигнал.Как и в случае с EDC, ввод данных может продолжаться, несмотря на ошибочный ввод. Хотя это технически возможно, система не предназначена для подсказки клерку по вводу данных в случае, если переменная не была введена.

Анализ данных

После завершения ввода данных оцифрованные данные были экспортированы в Excel (Microsoft, Редмонд, США), а больничная и лабораторная базы данных EDC были объединены с использованием идентификатора пациента (CODE). Были проверены следующие ошибки: полнота ввода переменных, значения за пределами реалистичных диапазонов, нарушения внутренней логики в подмножестве переменных и даты за пределами разумных временных рамок.В отсутствие эталонного метода результаты сравнивались из обеих баз данных с использованием CODE в качестве переменной соответствия. База данных была перестроена с кодированием совпадающих записей переменных как «0» и несогласованных записей как «1». Каждая переменная была разделена на текстовую, непрерывную, категориальную, дату или время.

Статистический анализ проводился с использованием Stata версии 14 (Stata Corp, США). Различия в пропорциях оценивали с помощью критерия хи-квадрат и теста Макнемара для коррелированных пропорций, если это необходимо.

Количество несогласованных записей сравнивалось между обеими системами, в целом и по категориям переменных, а также выяснялось, различалась ли доля несогласованных результатов при вводе лабораторных и полевых данных. Среди противоречивых результатов были количественно определены и сопоставлены отсутствующие записи и результаты, выходящие за пределы допустимого диапазона, в обеих системах. Отсутствующие данные оценивались на предмет отсутствия механизмов данных, единственной включенной переменной, специфичной для пациента, был пол [6]. Среди непропущенных несогласованных непрерывных переменных абсолютная разница была рассчитана между обеими записями и выражена как доля более высокой записи в процентах (%).В качестве заместителя логических ошибок среди противоречивых результатов мы определили, была ли дата рождения позже даты включения в исследование, и рассчитали индекс массы тела (ИМТ) на основе веса и роста для всех участников [7]. ИМТ выше 40 или ниже 12 был определен как нереальный независимо от возраста участников.

Результаты

Данные были собраны у 362 пациентов. База данных EDC содержала дублирование уникального идентификатора (CODE) в двух случаях, соответственно четыре участника были исключены из обеих баз данных, в результате чего 358 (98.9%) участников с парными данными, собранными обеими системами. Каждый набор данных содержал 56 переменных (дополнительный файл 1: таблица S1). В общей сложности 4 (7,1%) переменных были исключены из этого анализа: переменная «CODE», поскольку это была связующая переменная между наборами данных, «Название исследования» (STUDY), поскольку оно было автоматически заполнено в обеих системах, «Инициалы пациента» (INI). ) и «Место рождения» (POB), поскольку они были введены как свободный текст и должны были быть переведены с деванагари на латинские буквы. Из 52 (92,9%) включенных переменных всего 3 (5.8%) переменных содержали даты, 2 (3,8%) переменных записывали конкретное время (в 24-часовом формате), 10 (19,2%) переменных содержали непрерывные данные, 35 (67,3%) переменных содержали категориальные данные и 2 (3,8%) переменные содержали текст, в котором предполагалось, что сборщики данных будут знать правильное написание всех возможных ответов латинскими буквами («Диагностика-DIAG» и «Основное место жительства-MPR», Дополнительный файл 1: Таблица S1).

Расхождения между обоими наборами данных были обнаружены в 12,6% (2352/18 616) всех записей, а различия между базами данных обнаружены в 18.0% (643/3580) непрерывных переменных, 15,8% (113/716) временных переменных, 13,0% (140/1074) переменных даты, 12,0% (86/716) текстовых переменных и 10,9% (1370/12 530). ) категориальных переменных (табл. 1 и рис. 1).

Таблица 1 Обзор несовпадающих результатов среди всех введенных данных, а также среди несовпадающих результатов: количество пробелов, выходящие за пределы диапазона записи и логические ошибки Рис. 1

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

В общей сложности 64% (1499/2352) всех несогласованных записей произошли из-за того, что данные были введены в одну систему, но не в другую.Наибольшая доля пропусков была среди категориальных переменных (76,6%, 1148/1499), за которыми следовали непрерывные переменные (17,9%, 269/1499), даты (4,9%, 74/1499, все в EDC) и текстовые переменные (0,5 %, 8/1499). В целом 66,8% (1002/1499) данных были исключены из метода PBDC / Epidata по сравнению с 33,2% (497/1499) данных, введенных в базу данных EDC (p <0,001). Значительно более высокая доля пропусков была обнаружена в базе данных PBDC среди категориальных и непрерывных переменных, для переменных даты и текста были значительно более высокие доли пропущенных записей в базе данных EDC (все p <0.05) (таблица 1). При рассмотрении пропусков данных, которые были обнаружены в обеих системах, доля отсутствующих данных была немного выше среди женщин (n = 1949/5695, 25,5%) по сравнению с мужчинами (n = 2521/8451, 23,0%), p <0,001.

Хотя он был разработан с учетом пропусков данных, это было нежелательно. В зависимости от формата переменной, записи «0», «9» и «99» должны были быть введены в случае, если данные не были доступны, вопрос не относился к делу или результат теста был отрицательным. В 42% (624/1499) всех несогласованных пробелов, обнаруженных только в базе данных PBDC, соответствующая запись была найдена в базе данных EDC, тогда как противоположное имело место в 3% (44/1499) записей (p <0.01). Среди несогласованных записей одна запись даты в базе данных EDC и одна непрерывная переменная в базе данных PBDC оказались вне диапазона, одна логическая ошибка среди несогласованных переменных даты и одна среди несогласованных непрерывных переменных была обнаружена в базе данных EDC (Таблица 1) .

Среди 10 непрерывных переменных средняя относительная разница между записями варьировалась от 1,0% (межквартильный диапазон (IQR): 0,39–1,00, диапазон 0,20–1,94) для измеренной температуры тела (TEMP) до 55,1% (IQR: 34.09–76.46, диапазон 2,44–95,33) для подсчета количества малярийных паразитов на лейкоциты (APC).

В общей сложности 33 переменных были собраны в присутствии пациента, причем несогласованные записи присутствовали в 5,8% (685/11 814), что значительно меньше (p <0,001), чем среди 19 переменных, собранных в лаборатории, где 24,5% (1667/6802) ) всех записей различались в обеих системах (рис. 2). Наблюдаемая разница была применима ко всем релевантным категориям (все p <0,05), с 3,2% (374/11 814) пробелов, созданных для данных пациента и 16.6% (1130/6802) для лабораторных данных; р <0,001.

Рис. 2

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

Обсуждение и заключение

При сравнении обоих методов ввода данных, противоречивые результаты присутствовали более чем в 12% всех записей, причем почти две трети (64%) этих ошибок были вызваны пропуском данных.Распределение пропусков данных значительно различается по разным категориям. Данные, не введенные ни в одну из систем, предполагают, что они не собирались изначально, и их доля была немного, но значительно выше среди женщин-участниц. Рассмотрение различий в пропуске данных по категориям переменных и общей разницы в данных, которые не собираются по полу, позволяет предположить, что при сборе данных использовалась модель «пропущенные не случайно» (MNAR) [6]. Обе системы давали возможность ввести отрицательный ответ, отражающий, что данные не были собраны, вместо того, чтобы оставлять переменные пустыми, однако это часто не применялось и в значительно большей пропорции в системе PBDC.Пропуски данных чаще всего обнаруживались среди категориальных данных, которые вводились путем установки флажка в бумажной форме, а затем во время оцифровки путем ввода одной цифры из раскрывающегося меню в Epidata или путем установки флажка в системе AKVO. Соответственно, категориальные данные вводить легко и быстро, но они приводят к повышенному риску пропуска данных, особенно когда данные вводятся массово, как это было в случае метода PBDC.

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

Epidata позволяет выполнять внутренние логические проверки во время ввода данных, что невозможно в системе AKVO. ИМТ был рассчитан и использовался в качестве прокси для логических ошибок, однако в обеих системах данных было очень мало нереалистичных записей. Даты также проверялись на наличие нелогичных последовательностей, но это не было основным источником ошибок. Интересно, что все пропуски даты были обнаружены в EDC.

Неотъемлемой проблемой любой системы EDC является сбор данных для одного и того же человека в разные моменты времени, как в случае исследований с последующими визитами или исследований с полевыми и лабораторными компонентами.Если собранные данные нельзя загрузить напрямую, последующее объединение данных может быть проблематичным. Мы обнаружили, что противоречивые результаты для переменных, сгенерированных в лаборатории, были значительно больше, чем для переменных, сгенерированных в клинике. При оценке модели ошибочных записей в лаборатории (дополнительный файл 1: таблица S1) ошибки произошли в последовательных блоках, которые могут отражать то, что идентификатор участника (CODE) для данных EDC был ошибочно назначен в лаборатории. В качестве альтернативы качество ввода данных может варьироваться между клиническим и лабораторным персоналом, что подчеркивает важность адекватной подготовки всего исследовательского персонала.

Наши результаты дополняют растущий объем данных, свидетельствующих о том, что EDC является эффективной альтернативой традиционному сбору данных на бумажных носителях [2, 8, 9]. Хотя экономическая эффективность не оценивалась, предыдущие исследования показывают, что EDC экономически эффективна, по крайней мере, в крупных исследованиях [2, 10].

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *