На мой взгляд, нет ничего сложнее, чем использование современных технологий в реальной жизни. Любая программа, любой алгоритм в «чистом» виде – вещь в идеальном случае довольно простая. Чуть сложнее оказывается (если оно в принципе возможно) прямое сопряжение таких алгоритмов, реализованных разными командами. Еще сложнее получается обработка данных, сгенерированных другими программами. Самое неприятное и сложное – заставить работать это все в реальном мире, с данными, генерируемыми непредсказуемыми и хаотичными процессами нашей реальности. Потому что алгоритм и его реализующая программа в любом случае представляют собой средство УПОРЯДОЧЕННОЙ обработки данных. А наш мир, как это сейчас считается, катится только в направлении увеличения беспорядка.
Автоматизация розничной торговли – задача из этой области: попытка упорядоченно обработать потоки данных, слабо подчиняющихся формализации и упорядочению. Ну или очень сильно сопротивляющиеся. Хе, как будто у них есть намерения.
В своей предыдущей статье (Как надо и как не стоит автоматизировать торговлю) я довольно сумбурно свалил очень много всего в кучу. Похвалил и поругал ПО для автоматизации продаж в торговой сети. Уточним: в коммерческой сети аптек. И обещал рассказать, как лучше провести инвентаризацию.
Сегодня я расскажу, как мы проводим инвентаризацию на аптеках, и какие айсберги поджидают наш Титаник на этом пути.
В этот раз постараюсь разукрасить статью картинками и писать предложения с меньшим количеством слов.
Кому интересно — добро пожаловать под кат.
Итак, инвентаризация. Сначала вообще надо понять, что это и зачем оно бывает.
Инвентаризация — это такое мероприятие, в результате которого мы получаем обоснованное количественное сравнение фактического остатка каждого наименования товара с предполагаемым («учетный»). Учетный получается из результатов предыдущей инвентаризации путем суммирования приходных и расходных данные по документам. Откуда могут браться расхождения — отдельный вопрос, но поверьте мне, они берутся. Масштабы их зависят от дисциплинированности и честности персонала, юзабельности ПО, корректной работы оборудования, и много еще от чего. В большинстве аптек, которые автоматизированы под моим руководством, сейчас инвентаризация проходит с расхождениями в сумме товара на 100-200 рублей. Это при среднем обороте 1-1,5млн.р. в месяц. А инвентаризации мы теперь проводим нечасто, — где-то раз в год.
В результатах инвентаризации плохо отклонение и в плюс, и в минус — ибо это отклонение от данных системы автоматизации. А система эта внедряется не только для того, чтобы быстрее «колотить выручку», но и чтобы давать данные для решений о развитии торговли, направлениях расширения или сужения ассортимента, следить за дефектурой по наименованиям, группам товаров, за сроками годности и фальсификатами. Тут вопрос принципа — можно ли системе и выдаваемым ею данным доверять.
Итак, проводится инвентаризация, учетный остаток приводится в соответствие с фактическим, «поощряются непричастные и наказываются невиновные». И снова торгуем до следующей инвентаризации, получаем постепенно расходящиеся фактический и учетный остатки. И так, теоретически, до бесконечности. Ну или как минимум до закрытия компании.
А вот первичная точка отсчета какая? Откуда взялся первый учетный остаток?
Из первичной инвентаризации. Принципиально она от всех остальных ничем не отличается, просто в этот момент учетный остаток нулевой. А вот технически она отличается очень сильно. Чтобы понять, чем, — сначала надо понять, как проводится любая другая — после нее.
Если кто поинтересовался, идентификация товара у нас ведется по нашему внутреннему штрих-коду (ШК). Это ШК в стандарте EAN13 с ведущей цифрой 2.
Такая однозначная идентификация позволяет нам учитывать товар с точностью до поставки (партии). А сведения о партии содержат отсылку на само наименование (а еще точнее — на элемент классификатора товаров), серию, срок годности, данные по ценам и еще много чего. И это важно — вести учет с точностью до партий, ибо никто не захочет получить просроченные лекарства, ибо, как ранее правильно отметили в комментах, «на кону жизнь и здоровье» граждан. Да и незаконно это, — продавать просроченные препараты.
А потому и инвентаризацию мы должны проводить с точностью до партий. А то вдруг осталась в фактичесом остатке просроченная аскорбинка, и дите чье-нибудь ей потравится. Или заклеит мозоль просроченным пластырем.
Внимательный хабраюзер уже наверняка самостоятельно пришел к выводу, что процесс обычной инвентаризации прост донельзя: достаточно считать внутренний ШК со всех упаковок, проставляя количеством единицу. Потом свернуть эти данные, группируя по ШК и суммируя по количеству — вуаля, фактический остаток готов. Останется с идентификацией по ШК сравнить с учетными данными. И тогда уже поощрять и наказывать.
А вот теперь особенности.
Понятное дело, процесс инвентаризации подразумевает, что аптека в это время закрыта. Все видели ненавистное слово УЧЕТ на двери так необходимого вот именно теперь магазина? Ненавижу это слово. Это как получить отказ от девушки: идешь, готовишься, предвкушаешь, а тебе — от ворот поворот. Заставляет чувствовать себя лузером.
Ну в общем закрыта аптека в это время. И хотелось бы, чтобы это ее состояние длилось как можно меньше. Ну хотя бы потому что в это время не идет выручка, если уж чувства отшитых покупателей никого не волнуют. Поэтому тех четырех (это у нас на самой ходовой аптеке) рабочих мест со сканерами ШК катастрофически недостаточно. Поэтому мы используем так называемые терминалы сбора данных (ТСД). В нашем распоряжении в свое время оказались Casio DT-930
![image](https://habrastorage.org/r/w780q1/getpro/habr/post_images/dda/d79/83f/ddad7983fa4d2398450d9f6da4d4894c.jpg)
Это очень интересная машинка: в голове у нее – лазерный излучатель и поглотитель.Поглотителем она считывает ШК, а излучателем – его излучает. Ну в смылсе, в голову его встроен считыватель ШК, который помимо всего прочего поддерживает и EAN13 (эка невидаль). Так а нам бОльшего и не надо!
В комплекте с ним идет набор стандартных конфигураций, руководящих процессом сбора данных (в каких-то надо вводить цену, в каких-то ШК разбирается как содержащий данные о весе товара, много еще вариантов). На нашу беду, простейшей конфиугурации, тупо собирающей ШК с указанием количества, среди стандартных нет. А вот чтобы склепать и (что важнее) зашить свою конфигурацию, — нужна лицензия Стандарт. Базовый комплект ТСД включает лицензию Демо, с ней нельзя закачать свою конфигурацию. Это подводный камень для тех, кто решит использовать эти ТСД.
Если вообще говорить о ТСД как средстве сбора данных на инвентаризации, в принципе, большего, чем этот Casio, и не надо. Хотя если бы мы не представляли из себя «ансамбль бедных людей», я бы с радостью использовал современные технологии беспроводной передачи данных и связал бы ТСД с системой учета напрямую. Но пока то только в мечтах.
Итак, на эту машинку собираются данные практически так же, как описано выше: сканируется ШК… и ставится количество. Это подводный камень номер два при использовании ТСД. Когда есть возможность проставить количество, никого не заставишь считать сто предположительно одинаковых ШК. Например, в коробке с пузырьками нафтизина. А проверить, что они одинаковые – уж тем более. А у одного и того же препарата в разных партиях – и цена разная, и срок годности… Поэтому инвентаризация – не панацея от расхождений учетных и фактических остатков. И однозначно от так назваемого пересорта не защищает.
Для неспециалистов поясню: пересорт – это такое универсальное ругательное слово, которое употребляется вместо слова п@#$ц при описании ситуаций с расхождением учетных и фактических остатков. Оно может собой означать как настоящий пересорт (когда товар одного сорта учтен как товар другого сорта – то есть, например, если вместо десяти упаковок виагры, значащихся по учету, на полке стоят десять эмалированных горшков), так и «пересорт» в пределах одного и того же товара, но по партиям (то есть, по серии, сроку годности и цене). А в устах человека, недостаточно хорошо говорящего по-русски, это слово может означать именно то, что я закрыл нечитаемыми символами, напрямую, то есть, например, вообще недостачу (это когда товара не хватает) или излишки (это когда по факту товара слишком много, но мы-то помним, что это все равно плохо).
Возвращаясь к обычной инвентаризации, предположим, что данные на ТСД собираются достаточно аккуратно. Тогда при загрузке данных с него у нас сейчас получается нечто вроде вот этого:
Простой текстовый файл. Эти данные несложно загружаются в систему учета и присоединяются к данным текущей инвентаризации. М-Аптека Плюс это умеет. Когда дадут попробовать 1Сные варианты, — посмотрю и у них. А вот от инвентаризации на других системах сознательно отнекивался: слишком много это мороки все-таки, я не готов сейчас на неродные аптеки тратить целый день.
Чуть не забыл: тут еще один подводный камень. Внимательный хабрачитатель заметит, что все ШК тут -13-значные. И это правильно, это стандарт. Зато вот в системе учета они могут храниться с отступлением от стандарта. Конкретно в М-Аптеке+ они хранятся без последнего контрольного разряда. То есть, 12-значными. О каком совпадении тут может идти речь?! Ну а разве мне вас учить, как написать скриптик, обрезающий 13й символ в этом файле?! Для желающих могу привести, он у меня написан на javascript, выполняется над всеми текстовыми файлами директории, в которой лежит. Проверки на то, что файл уже обрабатывался (то есть, ШК уже 12-значные) нет, но это не вызывало проблем ни разу, поэтому смысла встраивать такую проверку в скрипт внутренного использования не вижу. Другое дело – если бы я его продавать вздумал. Но тогда я бы наверное в первую очередь задумался над защитой от копирования. И тогда он сразу стал бы стоить не 2коп., а какие-нибудь 20у.е…
Ну а дальше все просто: система суммирует фактические данные инвентаризации по всем источникам, считает расхождения, и тогда можно по этим расхождениям оформлять документ списания и оприходования, выводить отчеты и регламентированные печатные формы инвентаризации.
Ну а чем первичная инвентаризация отличается от обычной? Правильно, отсутствием внутренних ШК. Во всей аптеке первоначально нет ни одного внутреннего ШК. Есть только заводские, но тут все молчаливо согласились, что их использование почти нереализуемо.
Значит, перед нами стоит более сложная задача: надо пересчитать товар, который с учетом всего сказанного тут не слишком хорошо идентифицируется.
Ну что ж поделать, значит, надо будет его идентифицировать теми самыми способами, которые там же и описаны.
Сперва формализуем задачу.
Как в любой системе учета, хозяйственное событие регистрируется объектом, который называется документ. В документе хранится вся информация об этом событии. В случае первичной инвентаризации это будет документ первичного оприходования товара. Во всякой системе он называется по-своему и выглядит по-своему, но смысл у всех этих вариантов один: надо перечислить все товары, которые есть в аптеке, по возможности с наибольшим количеством учетных параметров: количество, розничная цена, закупочная цена, ставка НДС, срок годности, поставщик (а вдруг возвращать придется), серия партии, дата и номер приходной накладной.
Итак, приезжаем на аптеку, стартуем инвентаризацию, и начинаем вводить товар… Тут сразу ступор. Товары — это элементы нашего классификатора товаров, которые надо либо выбирать вручную, либо пользоваться ускоренным вводом через какие-то идентификаторы с возможностью автоматизированного ввода. Наименование на упаковках написано совсем не такое, как в документах поставщиков (как минимум дозировка или количество в упаковке вообще может быть указано в инструкции, а наименование на упаковке может быть рекламным, а не настоящим). Да и сканер ШК не умеет читать буквы. Вводить наименования с клавиатуры? Эдак даже не неделя, а месяц на внедрение уйдет. Попробовать по заводским ШК? Ну я в первый раз попробовал. Отсылаю за горькими слезами раскаяния в предыдущую статью.
А правильно надо вот как.
Во-первых, не ехать на аптеку. Правильно читаете, первичная инвентаризация не начинается в аптеке.
Чего нам не хватает для проведения инвентаризации? Внутренних ШК? Ну так давайте их сделаем! Но только не на тот товар, который сейчас есть в аптеке, чтобы его не идентифицировать и не перетасовывать целый месяц. А на тот, на который мы можем их наклеить без закрытия аптеки. Заставим работать менеджера снабжения и отдел приемки товара в аптеке за месяц до инвентаризации. Пусть менеджер оформляет приходы, а тетя Таня на приемке в аптеке клеит наши ШК на товар все это время, как будто мы по ним уже будем продавать. Результат потрясет воображение: через месяц 90% товара в аптеке будет иметь наши внутренние ШК!
Как такое может быть? А все просто. Оборот аптеки за месяц примерно равен его среднему остатку. Ну примерно в пределах 10-15% отклонения. Это эмпирическая закономерность, которую я заметил в аптеках нашей сети. Если в других сетях это по-другому, — то из этого «по-другому» и надо будет исходить.
А еще в фармторговле есть такая особенность: нельзя брать товар на годы вперед. Ведь у большинства ограничен срок годности. Обычно заказывается и привозится запас примерно из расчета на 2-4 дня. Значит, за месяц не продадутся только слаботекущие и дорогостоящие препараты. Таких немного – как раз прцоентов 10 и есть. Ибо аптеке невыгодно содержать товар, который плохо расходится.
Вот отсюда и получается 10%. Цифра неточная, конечно, и сильно зависит от метода закупок сети, от дисциплинированности персонала торговой точки, да много еще от чего.
Подводный камень номер непомнюкоторый. Для того, чтобы все это проворачивать, на аптеке надо будет «внедрить» систему автоматизации с самого начала. Но продавать там пока не получится. А с точки зрения персонала это выглядит как никчемная нагрузка, не имеющая основания, и пустая трата сил за ту же зарплату. Решается административно или по-человечески, долгими вечерами разговоров и объяснений. Хотя, как показывает опыт, только административно.
Весь этот месяц с точки зрения учетной системы мы ничего не продали – ну и пусть, по факту инвентаризации все, чего нет на полках, будет СПИСАНО. И 90% товара пройдет инвентаризацию быстро и без проблем, по схеме «обычной» инвентаризации.
Что делать с остальными 10%?
А вот тут уже не обойтись без утомительной процедуры ввода товара на учетный остаток вручную. Вариантов несколько.
Напомню, все эти варианты оцениваются по качеству с точки зрения скорости. Чтобы как можно меньше покупателей ощутили себя лузерами, и чтобы первичная инвентаризация не растянулась на неделю, как это гарантированно случится, если месяц подготовки не заложен в план действий.
В заключение остается только упомянуть практически идеальную с точки зрения скорости автоматизацию аптеки. Это когда сама инвентаризация как таковая отсутствует и фактический остаток считается совпадающим с учетным, а внутренние ШК наклеиваются сразу на весь товар. Такое бывает, если аптека только открывается и весь товар идет по закупке или перемещению с уже автоматизированных аптек этой сети.
Товар, который перемещается с другой аптеки, уже готов к продаже: на нем наклеены ШК и он заведен на остаток документом перемещения.
А товар, который закупается, просто проходит обычный путь оприходования через заказ, менеджера по закупкам, расценку и «обштриховку», как если бы аптека работала уже несколько лет. Правда, объем этой закупки довольно велик, но эта проблема решается усилением наряда тети Тани на приемке на неделю внедрения.
Ну и напоследок, поскольку обещал картинки. В качестве взрывающегося вертолета:
![image](https://habrastorage.org/r/w780q1/getpro/habr/post_images/cf4/1be/451/cf41be451acecb47bf9d79c400f63975.jpg)
Автоматизация розничной торговли – задача из этой области: попытка упорядоченно обработать потоки данных, слабо подчиняющихся формализации и упорядочению. Ну или очень сильно сопротивляющиеся. Хе, как будто у них есть намерения.
В своей предыдущей статье (Как надо и как не стоит автоматизировать торговлю) я довольно сумбурно свалил очень много всего в кучу. Похвалил и поругал ПО для автоматизации продаж в торговой сети. Уточним: в коммерческой сети аптек. И обещал рассказать, как лучше провести инвентаризацию.
Сегодня я расскажу, как мы проводим инвентаризацию на аптеках, и какие айсберги поджидают наш Титаник на этом пути.
В этот раз постараюсь разукрасить статью картинками и писать предложения с меньшим количеством слов.
Кому интересно — добро пожаловать под кат.
Итак, инвентаризация. Сначала вообще надо понять, что это и зачем оно бывает.
Инвентаризация — это такое мероприятие, в результате которого мы получаем обоснованное количественное сравнение фактического остатка каждого наименования товара с предполагаемым («учетный»). Учетный получается из результатов предыдущей инвентаризации путем суммирования приходных и расходных данные по документам. Откуда могут браться расхождения — отдельный вопрос, но поверьте мне, они берутся. Масштабы их зависят от дисциплинированности и честности персонала, юзабельности ПО, корректной работы оборудования, и много еще от чего. В большинстве аптек, которые автоматизированы под моим руководством, сейчас инвентаризация проходит с расхождениями в сумме товара на 100-200 рублей. Это при среднем обороте 1-1,5млн.р. в месяц. А инвентаризации мы теперь проводим нечасто, — где-то раз в год.
В результатах инвентаризации плохо отклонение и в плюс, и в минус — ибо это отклонение от данных системы автоматизации. А система эта внедряется не только для того, чтобы быстрее «колотить выручку», но и чтобы давать данные для решений о развитии торговли, направлениях расширения или сужения ассортимента, следить за дефектурой по наименованиям, группам товаров, за сроками годности и фальсификатами. Тут вопрос принципа — можно ли системе и выдаваемым ею данным доверять.
Итак, проводится инвентаризация, учетный остаток приводится в соответствие с фактическим, «поощряются непричастные и наказываются невиновные». И снова торгуем до следующей инвентаризации, получаем постепенно расходящиеся фактический и учетный остатки. И так, теоретически, до бесконечности. Ну или как минимум до закрытия компании.
А вот первичная точка отсчета какая? Откуда взялся первый учетный остаток?
Из первичной инвентаризации. Принципиально она от всех остальных ничем не отличается, просто в этот момент учетный остаток нулевой. А вот технически она отличается очень сильно. Чтобы понять, чем, — сначала надо понять, как проводится любая другая — после нее.
Обычная инвентаризация
Если кто поинтересовался, идентификация товара у нас ведется по нашему внутреннему штрих-коду (ШК). Это ШК в стандарте EAN13 с ведущей цифрой 2.
Такая однозначная идентификация позволяет нам учитывать товар с точностью до поставки (партии). А сведения о партии содержат отсылку на само наименование (а еще точнее — на элемент классификатора товаров), серию, срок годности, данные по ценам и еще много чего. И это важно — вести учет с точностью до партий, ибо никто не захочет получить просроченные лекарства, ибо, как ранее правильно отметили в комментах, «на кону жизнь и здоровье» граждан. Да и незаконно это, — продавать просроченные препараты.
А потому и инвентаризацию мы должны проводить с точностью до партий. А то вдруг осталась в фактичесом остатке просроченная аскорбинка, и дите чье-нибудь ей потравится. Или заклеит мозоль просроченным пластырем.
Внимательный хабраюзер уже наверняка самостоятельно пришел к выводу, что процесс обычной инвентаризации прост донельзя: достаточно считать внутренний ШК со всех упаковок, проставляя количеством единицу. Потом свернуть эти данные, группируя по ШК и суммируя по количеству — вуаля, фактический остаток готов. Останется с идентификацией по ШК сравнить с учетными данными. И тогда уже поощрять и наказывать.
А вот теперь особенности.
Понятное дело, процесс инвентаризации подразумевает, что аптека в это время закрыта. Все видели ненавистное слово УЧЕТ на двери так необходимого вот именно теперь магазина? Ненавижу это слово. Это как получить отказ от девушки: идешь, готовишься, предвкушаешь, а тебе — от ворот поворот. Заставляет чувствовать себя лузером.
Ну в общем закрыта аптека в это время. И хотелось бы, чтобы это ее состояние длилось как можно меньше. Ну хотя бы потому что в это время не идет выручка, если уж чувства отшитых покупателей никого не волнуют. Поэтому тех четырех (это у нас на самой ходовой аптеке) рабочих мест со сканерами ШК катастрофически недостаточно. Поэтому мы используем так называемые терминалы сбора данных (ТСД). В нашем распоряжении в свое время оказались Casio DT-930
![image](https://habrastorage.org/getpro/habr/post_images/dda/d79/83f/ddad7983fa4d2398450d9f6da4d4894c.jpg)
Это очень интересная машинка: в голове у нее – лазерный излучатель и поглотитель.
В комплекте с ним идет набор стандартных конфигураций, руководящих процессом сбора данных (в каких-то надо вводить цену, в каких-то ШК разбирается как содержащий данные о весе товара, много еще вариантов). На нашу беду, простейшей конфиугурации, тупо собирающей ШК с указанием количества, среди стандартных нет. А вот чтобы склепать и (что важнее) зашить свою конфигурацию, — нужна лицензия Стандарт. Базовый комплект ТСД включает лицензию Демо, с ней нельзя закачать свою конфигурацию. Это подводный камень для тех, кто решит использовать эти ТСД.
Если вообще говорить о ТСД как средстве сбора данных на инвентаризации, в принципе, большего, чем этот 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у.е…
Ну а дальше все просто: система суммирует фактические данные инвентаризации по всем источникам, считает расхождения, и тогда можно по этим расхождениям оформлять документ списания и оприходования, выводить отчеты и регламентированные печатные формы инвентаризации.
Первичная инвентаризация
Ну а чем первичная инвентаризация отличается от обычной? Правильно, отсутствием внутренних ШК. Во всей аптеке первоначально нет ни одного внутреннего ШК. Есть только заводские, но тут все молчаливо согласились, что их использование почти нереализуемо.
Значит, перед нами стоит более сложная задача: надо пересчитать товар, который с учетом всего сказанного тут не слишком хорошо идентифицируется.
Ну что ж поделать, значит, надо будет его идентифицировать теми самыми способами, которые там же и описаны.
Сперва формализуем задачу.
Как в любой системе учета, хозяйственное событие регистрируется объектом, который называется документ. В документе хранится вся информация об этом событии. В случае первичной инвентаризации это будет документ первичного оприходования товара. Во всякой системе он называется по-своему и выглядит по-своему, но смысл у всех этих вариантов один: надо перечислить все товары, которые есть в аптеке, по возможности с наибольшим количеством учетных параметров: количество, розничная цена, закупочная цена, ставка НДС, срок годности, поставщик (а вдруг возвращать придется), серия партии, дата и номер приходной накладной.
Итак, приезжаем на аптеку, стартуем инвентаризацию, и начинаем вводить товар… Тут сразу ступор. Товары — это элементы нашего классификатора товаров, которые надо либо выбирать вручную, либо пользоваться ускоренным вводом через какие-то идентификаторы с возможностью автоматизированного ввода. Наименование на упаковках написано совсем не такое, как в документах поставщиков (как минимум дозировка или количество в упаковке вообще может быть указано в инструкции, а наименование на упаковке может быть рекламным, а не настоящим). Да и сканер ШК не умеет читать буквы. Вводить наименования с клавиатуры? Эдак даже не неделя, а месяц на внедрение уйдет. Попробовать по заводским ШК? Ну я в первый раз попробовал. Отсылаю за горькими слезами раскаяния в предыдущую статью.
А правильно надо вот как.
Во-первых, не ехать на аптеку. Правильно читаете, первичная инвентаризация не начинается в аптеке.
Чего нам не хватает для проведения инвентаризации? Внутренних ШК? Ну так давайте их сделаем! Но только не на тот товар, который сейчас есть в аптеке, чтобы его не идентифицировать и не перетасовывать целый месяц. А на тот, на который мы можем их наклеить без закрытия аптеки. Заставим работать менеджера снабжения и отдел приемки товара в аптеке за месяц до инвентаризации. Пусть менеджер оформляет приходы, а тетя Таня на приемке в аптеке клеит наши ШК на товар все это время, как будто мы по ним уже будем продавать. Результат потрясет воображение: через месяц 90% товара в аптеке будет иметь наши внутренние ШК!
Как такое может быть? А все просто. Оборот аптеки за месяц примерно равен его среднему остатку. Ну примерно в пределах 10-15% отклонения. Это эмпирическая закономерность, которую я заметил в аптеках нашей сети. Если в других сетях это по-другому, — то из этого «по-другому» и надо будет исходить.
А еще в фармторговле есть такая особенность: нельзя брать товар на годы вперед. Ведь у большинства ограничен срок годности. Обычно заказывается и привозится запас примерно из расчета на 2-4 дня. Значит, за месяц не продадутся только слаботекущие и дорогостоящие препараты. Таких немного – как раз прцоентов 10 и есть. Ибо аптеке невыгодно содержать товар, который плохо расходится.
Вот отсюда и получается 10%. Цифра неточная, конечно, и сильно зависит от метода закупок сети, от дисциплинированности персонала торговой точки, да много еще от чего.
Подводный камень номер непомнюкоторый. Для того, чтобы все это проворачивать, на аптеке надо будет «внедрить» систему автоматизации с самого начала. Но продавать там пока не получится. А с точки зрения персонала это выглядит как никчемная нагрузка, не имеющая основания, и пустая трата сил за ту же зарплату. Решается административно или по-человечески, долгими вечерами разговоров и объяснений. Хотя, как показывает опыт, только административно.
Весь этот месяц с точки зрения учетной системы мы ничего не продали – ну и пусть, по факту инвентаризации все, чего нет на полках, будет СПИСАНО. И 90% товара пройдет инвентаризацию быстро и без проблем, по схеме «обычной» инвентаризации.
Что делать с остальными 10%?
А вот тут уже не обойтись без утомительной процедуры ввода товара на учетный остаток вручную. Вариантов несколько.
- Можно задним числом импортировать в систему автомаризации все документы, по которым были получены эти 10% товара. Путь сложный, но при должном порядке в компании может «прокатить». Порядок гарантирует возможность найти эти документы и их электронные накладные (ЭН, описал там) и труд менеджера сведется к обычной процедуре. Вряд ли стоит доказывать, что такой порядок в компании – явление крайне редкое, потому вероятность грамотно провернуть этот трюк очень мала. А вот если такое получается, — достоинств масса. Например, сохранение ссылочной целостности учета, которая очень важна, например, при учете себестоимости (если кому интересно – пишите в комменты)
- Можно в течение того самого месяца специальному человеку «дежурить» на объекте и каким-нибудь способом выслеживать плохо расходящийся товар, и, опять же, заводить на остаток его вручную – долгим и нудным поиском по наименованию в классификаторе. Остальное, что этот человек не отследит, — уже вводить точно так же, но уже в день инвентаризации.
- И наконец самый надежный путь – вводить все эти 10% в день инвентаризации. В этот момент обычно вводится оприходование, в котором указывается минимум сведений: ссылка на товар, розничная цена (кто ж его теперь найдет цену поставки-то?), срок годности, серия (а иногда и они не вводятся), еще некоторые кровно необходимые бухгалтерские данные.
Путь конечно самый надежный, но далеко не самый быстрый и при плохой подготовке может привести к растяжению процесса на два, три или сколько угодно дней.
Напомню, все эти варианты оцениваются по качеству с точки зрения скорости. Чтобы как можно меньше покупателей ощутили себя лузерами, и чтобы первичная инвентаризация не растянулась на неделю, как это гарантированно случится, если месяц подготовки не заложен в план действий.
В заключение остается только упомянуть практически идеальную с точки зрения скорости автоматизацию аптеки. Это когда сама инвентаризация как таковая отсутствует и фактический остаток считается совпадающим с учетным, а внутренние ШК наклеиваются сразу на весь товар. Такое бывает, если аптека только открывается и весь товар идет по закупке или перемещению с уже автоматизированных аптек этой сети.
Товар, который перемещается с другой аптеки, уже готов к продаже: на нем наклеены ШК и он заведен на остаток документом перемещения.
А товар, который закупается, просто проходит обычный путь оприходования через заказ, менеджера по закупкам, расценку и «обштриховку», как если бы аптека работала уже несколько лет. Правда, объем этой закупки довольно велик, но эта проблема решается усилением наряда тети Тани на приемке на неделю внедрения.
Ну и напоследок, поскольку обещал картинки. В качестве взрывающегося вертолета:
![image](https://habrastorage.org/getpro/habr/post_images/cf4/1be/451/cf41be451acecb47bf9d79c400f63975.jpg)