. Как надо и как не стоит проводить инвентаризацию
Как надо и как не стоит проводить инвентаризацию

Как надо и как не стоит проводить инвентаризацию

На мой взгляд, нет ничего сложнее, чем использование современных технологий в реальной жизни. Любая программа, любой алгоритм в «чистом» виде – вещь в идеальном случае довольно простая. Чуть сложнее оказывается (если оно в принципе возможно) прямое сопряжение таких алгоритмов, реализованных разными командами. Еще сложнее получается обработка данных, сгенерированных другими программами. Самое неприятное и сложное – заставить работать это все в реальном мире, с данными, генерируемыми непредсказуемыми и хаотичными процессами нашей реальности. Потому что алгоритм и его реализующая программа в любом случае представляют собой средство УПОРЯДОЧЕННОЙ обработки данных. А наш мир, как это сейчас считается, катится только в направлении увеличения беспорядка. Автоматизация розничной торговли – задача из этой области: попытка упорядоченно обработать потоки данных, слабо подчиняющихся формализации и упорядочению. Ну или очень сильно сопротивляющиеся. Хе, как будто у них есть намерения. В своей предыдущей статье (Как надо и как не стоит автоматизировать торговлю) я довольно сумбурно свалил очень много всего в кучу. Похвалил и поругал ПО для автоматизации продаж в торговой сети. Уточним: в коммерческой сети аптек. И обещал рассказать, как лучше провести инвентаризацию. Сегодня я расскажу, как мы проводим инвентаризацию на аптеках, и какие айсберги поджидают наш Титаник на этом пути. В этот раз постараюсь разукрасить статью картинками и писать предложения с меньшим количеством слов. Кому интересно — добро пожаловать под кат. Итак, инвентаризация. Сначала вообще надо понять, что это и зачем оно бывает. Инвентаризация — это такое мероприятие, в результате которого мы получаем обоснованное количественное сравнение фактического остатка каждого наименования товара с предполагаемым («учетный»). Учетный получается из результатов предыдущей инвентаризации путем суммирования приходных и расходных данные по документам. Откуда могут браться расхождения — отдельный вопрос, но поверьте мне, они берутся. Масштабы их зависят от дисциплинированности и честности персонала, юзабельности ПО, корректной работы оборудования, и много еще от чего. В большинстве аптек, которые автоматизированы под моим руководством, сейчас инвентаризация проходит с расхождениями в сумме товара на 100-200 рублей. Это при среднем обороте 1-1,5млн.р. в месяц. А инвентаризации мы теперь проводим нечасто, — где-то раз в год. В результатах инвентаризации плохо отклонение и в плюс, и в минус — ибо это отклонение от данных системы автоматизации. А система эта внедряется не только для того, чтобы быстрее «колотить выручку», но и чтобы давать данные для решений о развитии торговли, направлениях расширения или сужения ассортимента, следить за дефектурой по наименованиям, группам товаров, за сроками годности и фальсификатами. Тут вопрос принципа — можно ли системе и выдаваемым ею данным доверять. Итак, проводится инвентаризация, учетный остаток приводится в соответствие с фактическим, «поощряются непричастные и наказываются невиновные». И снова торгуем до следующей инвентаризации, получаем постепенно расходящиеся фактический и учетный остатки. И так, теоретически, до бесконечности. Ну или как минимум до закрытия компании. А вот первичная точка отсчета какая? Откуда взялся первый учетный остаток? Из первичной инвентаризации. Принципиально она от всех остальных ничем не отличается, просто в этот момент учетный остаток нулевой. А вот технически она отличается очень сильно. Чтобы понять, чем, — сначала надо понять, как проводится любая другая — после нее.

Обычная инвентаризация

Если кто поинтересовался, идентификация товара у нас ведется по нашему внутреннему штрих-коду (ШК). Это ШК в стандарте EAN13 с ведущей цифрой 2. Такая однозначная идентификация позволяет нам учитывать товар с точностью до поставки (партии). А сведения о партии содержат отсылку на само наименование (а еще точнее — на элемент классификатора товаров), серию, срок годности, данные по ценам и еще много чего. И это важно — вести учет с точностью до партий, ибо никто не захочет получить просроченные лекарства, ибо, как ранее правильно отметили в комментах, «на кону жизнь и здоровье» граждан. Да и незаконно это, — продавать просроченные препараты. А потому и инвентаризацию мы должны проводить с точностью до партий. А то вдруг осталась в фактичесом остатке просроченная аскорбинка, и дите чье-нибудь ей потравится. Или заклеит мозоль просроченным пластырем. Внимательный хабраюзер уже наверняка самостоятельно пришел к выводу, что процесс обычной инвентаризации прост донельзя: достаточно считать внутренний ШК со всех упаковок, проставляя количеством единицу. Потом свернуть эти данные, группируя по ШК и суммируя по количеству — вуаля, фактический остаток готов. Останется с идентификацией по ШК сравнить с учетными данными. И тогда уже поощрять и наказывать. А вот теперь особенности. Понятное дело, процесс инвентаризации подразумевает, что аптека в это время закрыта. Все видели ненавистное слово УЧЕТ на двери так необходимого вот именно теперь магазина? Ненавижу это слово. Это как получить отказ от девушки: идешь, готовишься, предвкушаешь, а тебе — от ворот поворот. Заставляет чувствовать себя лузером. Ну в общем закрыта аптека в это время. И хотелось бы, чтобы это ее состояние длилось как можно меньше. Ну хотя бы потому что в это время не идет выручка, если уж чувства отшитых покупателей никого не волнуют. Поэтому тех четырех (это у нас на самой ходовой аптеке) рабочих мест со сканерами ШК катастрофически недостаточно. Поэтому мы используем так называемые терминалы сбора данных (ТСД). В нашем распоряжении в свое время оказались Casio DT-930

Это очень интересная машинка: в голове у нее – лазерный излучатель и поглотитель. Поглотителем она считывает ШК, а излучателем – его излучает. Ну в смылсе, в голову его встроен считыватель ШК, который помимо всего прочего поддерживает и EAN13 (эка невидаль). Так а нам бОльшего и не надо! В комплекте с ним идет набор стандартных конфигураций, руководящих процессом сбора данных (в каких-то надо вводить цену, в каких-то ШК разбирается как содержащий данные о весе товара, много еще вариантов). На нашу беду, простейшей конфиугурации, тупо собирающей ШК с указанием количества, среди стандартных нет. А вот чтобы склепать и (что важнее) зашить свою конфигурацию, — нужна лицензия Стандарт. Базовый комплект ТСД включает лицензию Демо, с ней нельзя закачать свою конфигурацию. Это подводный камень для тех, кто решит использовать эти ТСД.

Если вообще говорить о ТСД как средстве сбора данных на инвентаризации, в принципе, большего, чем этот Casio, и не надо. Хотя если бы мы не представляли из себя «ансамбль бедных людей», я бы с радостью использовал современные технологии беспроводной передачи данных и связал бы ТСД с системой учета напрямую. Но пока то только в мечтах. Итак, на эту машинку собираются данные практически так же, как описано выше: сканируется ШК… и ставится количество. Это подводный камень номер два при использовании ТСД. Когда есть возможность проставить количество, никого не заставишь считать сто предположительно одинаковых ШК. Например, в коробке с пузырьками нафтизина. А проверить, что они одинаковые – уж тем более. А у одного и того же препарата в разных партиях – и цена разная, и срок годности… Поэтому инвентаризация – не панацея от расхождений учетных и фактических остатков. И однозначно от так назваемого пересорта не защищает. Для неспециалистов поясню: пересорт – это такое универсальное ругательное слово, которое употребляется вместо слова п@#$ц при описании ситуаций с расхождением учетных и фактических остатков. Оно может собой означать как настоящий пересорт (когда товар одного сорта учтен как товар другого сорта – то есть, например, если вместо десяти упаковок виагры, значащихся по учету, на полке стоят десять эмалированных горшков), так и «пересорт» в пределах одного и того же товара, но по партиям (то есть, по серии, сроку годности и цене). А в устах человека, недостаточно хорошо говорящего по-русски, это слово может означать именно то, что я закрыл нечитаемыми символами, напрямую, то есть, например, вообще недостачу (это когда товара не хватает) или излишки (это когда по факту товара слишком много, но мы-то помним, что это все равно плохо). Возвращаясь к обычной инвентаризации, предположим, что данные на ТСД собираются достаточно аккуратно. Тогда при загрузке данных с него у нас сейчас получается нечто вроде вот этого: 2001000291205;5; 2001000302925;6; 2001000242405;2; 2001000308515;1; 2001000245512;2; 2001000230228;1; 2001000312085;5; 2001000177349;5; 2001000017739;1; Простой текстовый файл. Эти данные несложно загружаются в систему учета и присоединяются к данным текущей инвентаризации. М-Аптека Плюс это умеет. Когда дадут попробовать 1Сные варианты, — посмотрю и у них. А вот от инвентаризации на других системах сознательно отнекивался: слишком много это мороки все-таки, я не готов сейчас на неродные аптеки тратить целый день. Чуть не забыл: тут еще один подводный камень. Внимательный хабрачитатель заметит, что все ШК тут -13-значные. И это правильно, это стандарт. Зато вот в системе учета они могут храниться с отступлением от стандарта. Конкретно в М-Аптеке+ они хранятся без последнего контрольного разряда. То есть, 12-значными. О каком совпадении тут может идти речь?! Ну а разве мне вас учить, как написать скриптик, обрезающий 13й символ в этом файле?! Для желающих могу привести, он у меня написан на javascript, выполняется над всеми текстовыми файлами директории, в которой лежит. Проверки на то, что файл уже обрабатывался (то есть, ШК уже 12-значные) нет, но это не вызывало проблем ни разу, поэтому смысла встраивать такую проверку в скрипт внутренного использования не вижу. Другое дело – если бы я его продавать вздумал. Но тогда я бы наверное в первую очередь задумался над защитой от копирования. И тогда он сразу стал бы стоить не 2коп., а какие-нибудь 20у.е… Ну а дальше все просто: система суммирует фактические данные инвентаризации по всем источникам, считает расхождения, и тогда можно по этим расхождениям оформлять документ списания и оприходования, выводить отчеты и регламентированные печатные формы инвентаризации.

Первичная инвентаризация
  • Можно задним числом импортировать в систему автомаризации все документы, по которым были получены эти 10% товара. Путь сложный, но при должном порядке в компании может «прокатить». Порядок гарантирует возможность найти эти документы и их электронные накладные (ЭН, описал там) и труд менеджера сведется к обычной процедуре. Вряд ли стоит доказывать, что такой порядок в компании – явление крайне редкое, потому вероятность грамотно провернуть этот трюк очень мала. А вот если такое получается, — достоинств масса. Например, сохранение ссылочной целостности учета, которая очень важна, например, при учете себестоимости (если кому интересно – пишите в комменты)
  • Можно в течение того самого месяца специальному человеку «дежурить» на объекте и каким-нибудь способом выслеживать плохо расходящийся товар, и, опять же, заводить на остаток его вручную – долгим и нудным поиском по наименованию в классификаторе. Остальное, что этот человек не отследит, — уже вводить точно так же, но уже в день инвентаризации.
  • И наконец самый надежный путь – вводить все эти 10% в день инвентаризации. В этот момент обычно вводится оприходование, в котором указывается минимум сведений: ссылка на товар, розничная цена (кто ж его теперь найдет цену поставки-то?), срок годности, серия (а иногда и они не вводятся), еще некоторые кровно необходимые бухгалтерские данные. Путь конечно самый надежный, но далеко не самый быстрый и при плохой подготовке может привести к растяжению процесса на два, три или сколько угодно дней.

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

Ну и напоследок, поскольку обещал картинки. В качестве взрывающегося вертолета:

📎📎📎📎📎📎📎📎📎📎