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