Десктопна утиліта · у роботі

Лічильник ревізії

Плаваюче вікно поверх УкрСкладу, яке рахує кожне сканування штрих-коду під час ревізії, бо облікова програма показує лише суму в гривнях.

Лічильник ревізії
Рік
2026
Статус
Використовується на складі
Платформа
Windows, працює офлайн
Стек
Python · WinAPI WH_KEYBOARD_LL · Tkinter · openpyxl · CSV
  • 10–30 msна клавішу від сканера, сигнал, на який він спирається
  • 0ручних встановлень на новому ноутбуці
  • 3лічильники: партія, всього, цей товар
  • CSVта Excel-експорт для УкрСкладу

Задача

У вікні внесення залишків УкрСклад показує гроші, а не штуки. Під час ревізії ніхто не знає, скільки товарів у поточній партії чи скільки разів відскановано один товар, а помилка означає перерахунок полиці.

Як це працює

  1. 01

    Прогалина

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

  2. 02

    Слухати, не перехоплювати

    USB-сканер — це просто дуже швидка клавіатура. Низькорівневий хук бачить кожну клавішу й не забирає її, тож УкрСклад і далі отримує свої цифри.

  3. 03

    Сканер чи людина

    Сканер друкує весь код зі швидкістю 10–30 мс на клавішу й завершує Enter; людина рідко швидша за ~120 мс. Рахуються лише швидкі серії. Спробуй у демо.

  4. 04

    Лічильники, що не губляться

    Поточна партія, загальна кількість і лічильник для щойно відсканованого товару, з журналом на диску, щоб збій нічого не стер.

  5. 05

    Експорт для імпорту

    Наприкінці підрахунок вивантажується в Excel або CSV у форматі, який УкрСклад може імпортувати.

  6. 06

    Працює на будь-якому ноутбуці

    Нічого не треба ставити вручну. Bat-файл сам підтягує Python, а офлайн-режим пакує все для ноутбука без інтернету.

Спробуй: надрукуй щось і натисни Enter або зімітуй сканер.

50 ms
Час між клавішами, мс
партія
0
всього
0
цей товар
0

    Правило, перенесене в браузер. Десктопна програма читає клавіші через низькорівневий хук WinAPI і не забирає їх в УкрСкладу.

    Відомі обмеження

    • Правило залежить від швидкості набору, тож сканер, налаштований на повільне надсилання, не розпізнається, доки не змінити поріг у конфігурації.

    Потрібно щось схоже?

    Розкажіть про задачу й дані. Я відповім, як би підійшов до неї.

    Обговорити проєкт →