Функция, которая снизила количество возмущенных пользователей на порядки. Чем она помогает?
Вводить пробег приходится почти при каждой записи. А человеческий фактор не исключает ошибки ручного ввода. Неправильный пробег «ломает» статистику, сдвигает события и напоминания — в общем весьма неприятная штука. Но ведь приложение имеет данные о «последнем известном пробеге» и его дате. Ведь можно использовать это знание для проверки вводимых чисел и уберечь пользователя от явных опечаток.
Но любой алгоритм следует определить и задокументировать — для любопытствующих и себя самого. Вот условия:
- Проверка работает только при добавлении ТОПЛИВНОЙ записи. При редактировании нет. В тратной записи нет.
- Проверка работает при включенной галочке в настройках (по умолчанию — ДА).
- Проверка работает в режиме ввода пробега как показаний одометра (не счетчика).
- Проверка работает, если введенный пробег И подсказка к нему больше 0.
- Ругается в 4-х случаях:
- введенный пробег меньше последнего известного, а дата ввода больше даты последнего известного (вчера был 39000, а сегодня 38000);
- введенный пробег больше последнего известного, а дата ввода меньше даты последнего известного (вчера был 39000, а позавчера хотим ввести 40000);
- введенный пробег изменился относительно последнего введенного больше чем 2000 км/день (вчера был 39000, а сегодня 49500);
- введенный пробег изменился более чем в 5 раз (если он от 1000) (вчера был 39000, а сегодня 390500 — защита от лишнего нуля);
Как уже упомянуто — автопроверка пробега отключаема через «Настройки» — «Функциональность (Топливо)» — «Проверять вводимые данные»
В некоторых версиях приложения неправильно введенный пробег может сохраниться приложением как «указанный актуальный пробег«. Естественно это заставляет приложение ругаться даже на верно вводимый пробег. Если записи все верны, а приложение ругается — сбросьте указанный актуальный пробег.