Как работают аналоги в 1с. Печатные формы документов и отчетов

Очень часто пользователи по тем или иным причинам (чаще субъективным) хотят найти альтернативу программам 1С-предприятие. Как правило, отрицательные эмоции вызваны медленной работой, плохой настройкой 1С 8.3 или простым незнанием возможностей конфигурации.

Так ли просто найти зарубежный или отечественный аналог 1С? Есть ли конкурентоспособная замена 1С? Так ли легко подобрать альтернативу всеми любимого 1С-предприятия? Я попробую разобрать основных конкурентов 1С-Предприятия в области ERP на нашем рынке.

Среди отечественных систем альтернативу 1С могут составить, пожалуй, только системы Галактика и Парус . Среди зарубежных можно выделить как аналоги SAP и Microsoft Dynamics Axapta (Navision) .

Данная система как неплохой аналог программы 1С 8.3 существует на рынке уже 25 лет. Программа завоевала свою нишу в области ERP, имеет достойное количество клиентов, доверивших им автоматизацию предприятия. Это полноценная альтернатива 1С.

Систему нельзя корректировать , кроме мелких исправлений интерфейса. Все необходимо заказывать у разработчика системы, по сравнению с 1С это выйдет дорого и неприемлемо по срокам. Система доступна для внешней интеграции по средствам XML, COM, ActiveX, ODBC.

Интерфейс с первого взгляда не очень дружелюбный, напоминает эксель:

Получите 267 видеоуроков по 1С бесплатно:

Парус

Данная программа также существует очень давно и полноценно может быть названа аналогом 1С, основана компания в 1990 году. Большинство доходов компания получает от государственных компаний. Парус так же состоит из модулей: финансы, бухгалтерия, MRP, CRM и т.д.

Систему имеют право дорабатывать только сами разработчики , софт приходится использовать «как есть». Как правило, устанавливается в БД Oracle, что выходит достаточно дорого при использовании лицензионного ПО. Один из главных плюсов системы — масштабируемость решения.

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

SAP

SAP — это программа класса ERP, родом из Германии. SAP является самой перспективной заменой 1С. Сап, как и остальные решения, состоит из модулей, различающихся по видам назначения. САП очень популярная система в мире. В России в основном внедряется крупными предприятиями. Это обусловлено высокой ценой лицензий и услуг (в 3-10 раз выше, чем 1С). САП имеет хорошую репутацию среди ERP, решение хорошо масштабируемое.

Доработка SAP возможна, но достаточно трудоёмкая . Практически то, что в 1С 8.2 можно доработать за 1-2 часа, в SAP занимает 1-2 дня. Как правило, в SAP ничего не дописывают, лишь настраивают.

Интерфейс выглядит следующим образом:

Microsoft Dinamics Axapta (NAVISION)

Первая версия Axapta была выпущена в 1998 году. Достойная альтернатива SAP, программа как аналог 1С 8, несмотря на распространенность в мире, не может похвастаться большой отечественной аудиторией. Axapta содержит все современные модули: MRP, HR, CRM и т.д. Среди особенностей данного решения высокая степень интегрируемости с продуктами Microsoft — Outlook, Excel и тд. Лицензии не такие дорогие относительно SAP.

Доработки софта, подобно САП, достаточно трудоемкие . Специалистов на отечественном рынке не так уж много.

29.10.2016 (admin)

Любое предприятие стремится упорядочить систему контроля и учета во всех сферах деятельности: финансовой, хозяйственной и прочих. Однако известные 1С продукты подходят не всем. Кроме того, 1С является платной, как в приобретении, так и в обслуживании. Современные разработчики программного обеспечения предлагают бесплатные аналоги программ учета.

Хорошо себя показывает в использовании программа «Дебет Плюс». Она является бесплатной и будет полезна для только что открывшихся и небольших предприятий. Функционал не урезан и позволяет сводить бухгалтерский баланс, производить расчет зарплат и вести складской учет. Интерфейс является дружественным, все опции и справочники подписаны. Программа подходит для всех операционных систем.

Участники малого и среднего бизнеса могут обратить внимание на программу «Своя технология». Опции программы помогают настроить ее, полностью адаптировав под пользователя. Все функции сохранены в полном объеме, такие как: складской учет, ведение расчетов с клиентами, оформление первичных документов, взаимодействие с банк-клиентом. Пользователи отмечают высокую скорость работы программы, удобную системы фильтрации при построении отчетов, возможность работы с несколькими базами.

Система управления в программе «GrossBee» подойдет как для малых предприятий, так и для больших организаций. Количество функций позволяет провести практически любую операцию. Кроме того, каждый блок функций подчиняется своей подсистеме, которые образуют единую базу данных. Все базы обмениваются информацией между собой, что повышает точность отображения информации, и ее актуальность. Разработчики активно работают над программой, в ней появляются новые модули и системы.

Программа «ВС:Бухгалтерия» исключительно бухгалтерская. Она позволяет вести учет в разных режимах налогообложения. Присутствует возможность создания отчетов по любым фильтрам, кассовые операции, создание налоговых деклараций, всевозможные виды учетов и банк-клиент. Пользователи отмечают, что интерфейс является приятным и понятным. К минусам программы можно отнести то, что ее разработка остановлена. Официально программой можно пользоваться и она полностью функционирует, однако техническая поддержка полностью отсутствует.

«ERP Монолит» — комплекс программ, разработанный для решений разнообразных задач предприятия. Сюда входят такие продукты, как управление финансами, планирование, управление продажами и персоналом, электронный документооборот и прочее. Каждый из блоков отображает актуальную информацию и доступен для редактирования сразу нескольким пользователям. Все вместе они взаимодействуют, обмениваются данными. Отдельно вынесена возможность управления закупками и организация тендеров. Разработчики всегда остаются на связи со своими пользователями и оказывают техническую поддержку. Программа распространяется платно и является хорошей альтернативой продуктам 1С.

Для небольшого предприятия отличной альтернативой бухгалтерских продуктов 1С станет онлайн сервис «Класс365». Бесплатная версия несет в себе функционал для обслуживания одной организации одним пользователем. Пользователи отмечают приятное цветовое решение программы и удобный интерфейс. В бесплатную версию включены даже такие функции как CRM, торговый и складской учет. Техническая поддержка осуществляется в полной мере для всех пользователей, независимо от версии программы. В сфере торговли сервис себя показал особенно хорошо, так как в него встроена функция интеграции с интернет-магазинами.

Бесплатные аналоги 1с обновлено: Ноябрь 6, 2016 автором: admin

Аналоги аналогов и их аналоги

Казалось бы, зачем убийце убивать
убийцу убийцы?!... но Донцову уже
было не остановить..(с) Интернет

Введение

Все мы знаем, что такое аналоги: взаимозаменяемые товары, с похожими ключевыми свойствами. Однако задача учета аналогов не является тривиальной по своей сути. Во-первых, аналоги не всегда являются взаимозаменяемыми. Помните уроки истории:Вассал моего вассала — не мой вассал. Например, есть два вида обшивки - обычная и влагостойкая. Можно сказать, что влагостойкая является аналогом для обычной, но не наоборот! Таким образом, если покупателю потребуется мебель с обычной обшивкой, которой вдруг не окажется на складе, ее можно будет заменить на влагостойкую.

Также бывают случаи, когда аналогом одной позиции является несколько составляющих. Например, ноутбук можно заменить системным блоком, монитором, клавиатурой, мышкой и источником бесперебойного питания:). Иногда несколько позиций может заменяться на несколько других.

Аналоги можно использовать в нескольких целях (в зависимости от требований заказчика):

· при списании (продаже или передаче в производственный цех) автоматически подставлять аналоги при нехватке основных позиций, указанных в документе;

· после заполнения документа предоставлять возможность воспользоваться распределением недостающих позиций по аналогам;

· в момент подбора номенклатуры в документ показывать остатки, как основных позиций, так и их аналогов.

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

Именно поэтому в типовых конфигурациях на платформе «1С:Предприятие 8» задача учета аналогов не автоматизирована. Исключением является конфигурация «1С:Управление производственным предприятием 8», где в одном из производственных документов можно вызывать форму подбора аналогов для материалов.

Постановка задачи

В этой статье я бы хотел рассмотреть решение следующего варианта учета аналогов: учет полной взаимозаменяемости номенклатуры. Например, пользователь указывает, что аналогом красного маркера является оранжевый, а аналогом оранжевого - желтый (см. рис. 1).

Рассматриваем максимально абстрактный пример, поскольку, если разбирать задачу на реальных примерах, например, из пищевого производства - для прочих отраслей это подсознательно означает «это все не про нас». Будем развивать абстрактное мышление.

Рис. 1. Аналоги, задаваемые пользователем

Система должна достроить связи: для красного маркера, аналогами являются и оранжевый и желтый (см. рис. 2, синие стрелки).

Рис. 2. Полная взаимозаменяемость номенклатуры

Аналоги будем использовать для автоматической подстановки при списании, в случае нехватки выбранных товаров. Например, на складе есть 10 красных, желтых и оранжевых маркеров. При попытке списать (переместить в производство, продать) 25 красных маркеров должно списаться 10 красных, 10 оранжевых и 5 желтых, либо 10 красных, 10 желтых и 5 оранжевых. Последовательность списания аналогов должна определяться приоритетом.

Цель статьи - показать механизмы работы с взаимозаменяемыми аналогами. Данный вариант использования аналогов выбран по причине простоты реализации.

В этой статье не хотелось углубляться математику: теорию графов и так далее. Рассмотрим решение задачи в информационной системе «1С:Предприятие 8».

Варианты решения

Вариант жестокий

Можно заставить пользователя описать все возможные пары аналогов в регистре сведений. Этот вариант рассматривать не будем, так как с учетом неограниченной вложенности аналогов, таких пар может быть много.

Вариант прямолинейный

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

Кроме этого в данном варианте нужно следить за тем, чтобы не образовалось кольцо аналогов. Например, пары «Красный - Оранжевый», «Оранжевый - Желтый» «Желтый - Красный». Если подобные данные введет пользователь, то этот алгоритм зациклится.

Вариант правильный

На самом деле решение задачи на поверхности. Ведь в постановке задачи все товары можно разделить на непересекающиеся группы (будем называть их кластерами ). Каждый товар внутри кластера является взаимозаменяемым с любым товаром из этого же кластера (см. рис. 3).

Рис. 3. Кластеры аналогов

Таким образом, прежде чем браться за решение задачи нужно разработать структуру базы данных.

Приведем шаги по реализации задачи.

1. Прежде всего, потребуется справочник, описывающий кластеры. Реквизитов в этом справочнике не требуется, достаточно наименования. Называть кластеры можно по-разному, «Кластер 1», «Кластер 2» или «One », «Two ». Следует учитывать, что кластеры создаются системой автоматически, поэтому осмысленные такие названия, как «Столы офисные», «Мебель плетеная» и т.д. вряд ли возможны. Можно применить интересный ход - в наименовании отображать названия товаров, входящих в кластер. То есть название кластера может выглядеть так «Табуретка на 4х ножках; Табуретка на 3х ножках; Табуретка на любителя (на одной ножке)». Такой подход будет удобен для пользователя: можно сразу представить какая номенклатура входит в кластер. Но следует помнить, что длина наименования в справочнике ограничена 150 символами, поэтому название может содержать лишь некоторые элементы, входящие в кластер.

2. Создать объект, описывающий состав кластера (кластеры не должны пересекаться по товарам). Это, конечно же, регистр сведений. Какова будет его структура? Вспомним замечательное свойство регистра сведений - контроль уникальности записейпо всем измерениям и периоду. Поэтому структура должна быть следующей: измерение - номенклатура, ресурс - кластер.

3. Документ, позволяющий определять аналоги. Именно этот документ будет определять (а в случае необходимости и создавать) кластер для пары «номенклатура-аналог». Также нужно учесть, что кластеры могут укрупняться. Например, есть пара аналогов маркеров «Синий - Фиолетовый» они задаются в своем кластере. Также существует кластер маркеров «Красный - Оранжевый - Желтый». Если завести еще одну пару аналогов «Фиолетовый - Оранжевый», то и синий маркер будет аналогом для красного.

4. В документе отгрузке, нужно получать данные об аналогах списываемых позиций. Все выполняется одним запросом. Причем желательно, чтобы запрос возвращал иерархическую структуру данных, где на верхнем уровне представлен исходный товар, а на нижнем - его аналоги.

Действительно, представленный алгоритм может показаться простым для реализации в платформе «1С:Предприятие 8». Но здесь есть подводный камень, который замечают не все разработчики.

Представим, что в документе списываются следующие маркеры:

· красный, 10 шт.

· желтый 10 шт.

На остатках числятся маркеры:

· красный, 5 шт.

· желтый 5 шт.

· оранжевый 9 шт.

В этом случае при обработке первой строки система спишет 5 шт. красных маркеров и 5 шт. оранжевых. И, теперь, главное при обработке второй строки запроса нужно учесть, что оранжевых маркеров осталось всего 4 штуки! То есть, нужно динамически отслеживать уже списанные остатки. Также нужно учитывать, что в приведенном примере желтый маркер является аналогом красного. Значит, может возникнуть ситуация, когда товар, который списывается в текущей строке, уже был списан ранее!

Приоритеты аналогов

Рассмотрим еще один важный вопрос - последовательность списания аналогов. Допустим, что для красного маркера аналогами являются оранжевый и желтый. Какой товар должна взять система при нехватке красного маркера? Можно предположить, что должен быть приоритет, на который должна ориентироваться система. На самом деле, в реальной жизни все обстоит несколько сложнее. Система должна гарантировать, что редкий заменитель уйдет только на ту позицию, где он абсолютно необходим.

Для учета приоритетов необходимо ввести понятие веса.

Вес = Приоритет * К покрытия , где

Приоритет -определяется пользователем

К покрытия - коэффициент, учитывающий остатки аналога. То есть больший приоритет имееют те аналоги, которых достаточно много на складе.

Заключение

После того, как была разобрана схема решения задачи, я рекомендовал бы вам выполнить реализацию на платформе «1С:Предприятие 8.2». Тем самым, вы получите полезный навык решения нетривиальных задач.

Если Вы тоже сталкиваетесь с задачами учета аналогов, например, иерархические аналоги, аналоги без полной взаимозаменяемости, условные аналоги и Вам интересно пообщаться на эту тему- пишите на [email protected] .

С уважением к вам, Евгений Гилев.

  • PHP ,
  • 1С-Битрикс
  • Поскольку задача написания «аналогов» и «альтернатив» 1С нетривиальная, есть смысл изложить свое видение и ключевые моменты на основе опыта написания своей наколенной поделки. Ну и как бонус услышать критику и вовремя переделать где промахнулся.

    По факту, на данный момент 1С занимает подавляющий сегмент в нише учетных систем. Это объясняется рядом причин, в том числе и агрессивным маркетингом. Напомню техническую сторону. 1С в общем виде, состоит как бы из двух физически отдельных частей - собственно платформы (ядра, движка) и так называемой конфигурации.

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

    Это плюсы. Но есть и масса минусов. Чтобы не описывать тут можно почитать например .

    Попыток вытеснить 1С предпринимается великое множество. Большинство проектов пытается переплюнуть плюсы 1С. Тягаться с огромной корпорацией дело малоперспективное. Продукты, писанные на Делфи или.NET, то есть требующие перекомпиляции, вообще неконкурентные, те, кто пытаются прикручивать в качестве DSL движки javascript или VBA выглядят чуть получше, но в любом случает такие решения могут использоваться в основном если есть штатный программист, чего малый бизнес, как правило, позволить себе не может.

    Попробуем подобраться с другой стороны. Не пытаться переплюнуть достоинства 1С а предложить решения тех проблем где 1С имеет минусы.

    Поскольку минусы где то уравновешивают плюсы а у нас этих минусов не будет то, даже если у нас не будет плюсов на уровне 1С, сальдо примерно будет такое же.

    Итак, какие характеристики должны быть у создаваемой системы.

    Open source. Кросплатформенность.
    Тут объяснений не требуется.
    Веб приложение.
    Многопользовательский режим с возможностью прямого доступа с мобильных устройств без необходимости писать специальных клиентов, синхронизировать справочники и т.д.
    PHP
    Язык с низким порогом вхождения, знакомый большинству веб разработчиков. Для внесения изменений требуется только текстовый редактор. Веб приложение легко обновляется заменой отдельных файлов (привет конфигуратору 1С). Скриптовый слаботипизированный язык в сочетании с набором высокоуровневых бизнес-объектов хорошо подходит для написания бизнес-логики.

    Казалось бы, что еще нужно для счастья. Тем не менее, в реальности опенсорс учетные системы - это, как правило, кривое портирование забугорных разработок.

    Причем кривое не только локализацией. Для приведения к отечественному законодательству требуется немалый труд. Но и это не все. Бухгалтер, глядя на страницу такой системы, не будет понимать для чего половина полей и вообще как тут работать. Не забываем, что пользователь наверняка уже имеет опыт с 1С и наверняка это его единственный опыт работы с учетной системой. Это означает, что из сотни способов сделать макет страницы ввода накладной и подписать элементы ввода нужно выбирать тот, который по максимуму напоминает 1С (а значит, надо перелопатить все страницы забугорного творения).

    Когда я давал фрилансерам заполнять свою систему демо данными (типа как демо - конфигурация в 1С), ни разу не возник вопрос - а как тут работать.

    Более распространенная проблема - переусложнение системы. Думаю, это основная причина, из-за которой проекты не доводятся до ума.

    Программист обычно делает систему максимально гибкой (а как же иначе!) тратит две трети времени на написание многочисленных настроек, визардов, генераторов или того хуже тулсов для командной строки и т.д.

    Пользователь, тетенька-бухгалтер, не будучи айтишницей, с тоской смотрит на все это добро, не понимая, почему нельзя просто поставить пару кнопок. Затем звонит программисту, чтобы он пришел, настроил программу после очередного приказа минфина. Программист искренне негодует, что за тупой пользователь, неужели сложно разобраться с парой десятков чекеров и комбобоксов. Правда его запал утихает, когда оказывается, что настройкой тут не обойдешься и теперь надо продираться сквозь дебри инфраструктурного кода, обеспечивающего пресловутую гибкость.

    Примером является и сама 1С - от версии 2.0, где бухгалтера действительно вводили формулы на специальном «птичьем» языке до монстра 8.3. Попробуйте дать мануал непосвященному и посчитайте с какой попытки он врубится в витиеватую словесную конструкцию «план видов характеристик».

    Отсюда вытекает следующая идея. Раз уж все равно приглашать программиста и стоимость работы этого программиста пропорциональна навороченности системы то зачем ее наворачивать. Не проще ли выкинуть все, что от лукавого и дать возможность программисту работать только с бизнес-логикой, потому как реализация бизнес-логики собственно и есть задача программы.

    Поясню на примере. План счетов бухучета. Меняется крайне редко. Настраивается один раз при внедрении программы и, как правило, не меняется в процессе работы (напоминаю, речь не о энтерпрайз системах). Возможно, когда-то и понадобится добавить какой субсчет. Но под него наверняка надо скорректировать и код, а значит, звать программиста. Но программист за две секунды воткнет новую запись в план счетов с помощью обычного phpMyAdmin и незачем писать редактор плана счетов а юзера вынуждать указывать указывать наперед неизвестные счета в формах ввода первичных документов.

    Аналогичным образом можно оставить только реально нужные и, главное понятные пользователю, настройки бизнес-логики - адреса, ставки налогов и т.д.

    Вот основная идеология, которая, по моему мнению, должна присутствовать в реализации данного класса задач.

    А теперь некоторые общие технические идеи, которые могут пригодиться «велосипедистам» при написании собственного «убийцо» 1С.

    Хранение документов
    Типичный вопрос на форумах, задаваемый писателями CRM, учетных, складских систем и систем документооборота. Как хранить документы, которые очевидно, имеют разнородную структуру. Отдельная таблица под каждый тип документа, общая таблица с кучей универсальных полей, модные нынче NoSQL хранилища…
    Предлагается хранить все документы в одной таблице в блобе, упакованными в XML. Отдельно - только общие поля, которые показываются в списках и журналах - номер документа, дата создания, автор, статус. Упаковка в XML имеет преимущество перед сериализацией или json - каждое значение обрамлено именованным тегом, а значит, можно выполнять сквозной поиск, не натыкаясь не лишние строки. То есть найти ссылку на контрагента по
    12
    не представляет труда, тем более большинство серверов БД поддерживают XPath. Упаковка-распаковка происходит автоматически в базовом классе, например, Document который содержит два предопределенных ассоциативных массива - header и details (массив массивов для табличной части) и которые заполняются дочерними классами - первичными документами как им по кайфу. Ключ ассоциативного массива становится тегом, значение - содержимым.

    Функции упаковки и распаковки вызываются соответственно перед записью и после чтения документа из БД.
    Кроме того, рекомендуется использовать денормализацию. Например, в документ пишется не только id контрагента а и его наименование, которое предъявляется пользователю. Много есть не просит, зато позволяет обойтись без джойнов к другим таблицам и использования «исторических» атрибутов.

    Аналогично можно хранить справочники - контрагенты, сотрудники и т.д. Отдельно, в соответствующих таблицах, только поля идентификаторов, наименований, типов. То есть то по чем может понадобится сортировка или отбор. Остальное пакуется в XML. Такой подход, кроме всего прочего, позволит избежать необходимости изменения структуры БД при внесении изменений в систему (например появление нового атрибута справочника).
    В идеале структура Бд должна меняться только при появлении в системе каких то совершенно новых бизнес-сущностей.

    Печатные формы документов и отчетов.
    Просто HTML. Плюс несложный шаблонизатор, например, Fenom .

    Преимущества очевидны - можем создать любую печатную форму без всяких построителей, отобразить ее в браузере или распечатать. Кроме того, HTML экспортируется в Word и Excel. Делается это просто - HTML сохраняется с расширением docx или xslx. При открытии файла офис (во всяком случае, майкрософтовский) сам сконвертит в нужный формат. Да, убого. Но зато просто, универсально и не требует специального кодирования. В крайнем случае, всегда можно подправить руками в том же екселе.

    При желании можно конвертить и в pdf но библиотеки типа TCPDF чувствительны к верстке и стилизации посему, кому надо, поставит PDFCreator и будет ему счастье.

    Впрочем, с введением электронной отчетности и обмена электронными документами на первый план выходит экспорт-импорт а не печать на бумаге, поэтому смысл печатных форм в основном - оперативный просмотр документов а экране.

    Хранение аналитики
    Аналитические данные, связанные с синтетическими счетами в проводках. Субконто в терминах 1С. Реализация - одна таблица, по сути представляющая собой таблицу фактов в ROLAP типа звезда. Ссылка на документ, синтетический счет (отдельная запись на каждый корреспондирующий счет -типа полупроводки), количество, сумма. Дополнительные измерения - ссылки на основные бизнес сущности - контрагенты, партии товаров, сотрудники, денежные счета. Количество и сумма (отмасштабированные в целые числа) для дебета пишутся с плюсом для кредита - с минусом. Это позволяет простым суммированием путем полного пересчета получать остатки и обороты на любой период в разрезах основных бизнес-сущностей без необходимости хранить промежуточные итоги. Так же просчитываются и синтетические счета в проводках.

    Такая схема позволяет удалять, проводить и перепроводить документы задним числом без пересчета итогов. А также проводить передним числом, например, реализовывая резервирование товаров.

    Замечу, что хардкод синтетических счетов позволяет не выставлять их номера на формы ввода первичных документов. То есть, если пользователю нужен только складской учет он может не обращать внимания на бухгалтерию или использовать ее для управленческого учета.

    Модульность
    То, отсутствием чего страдает 1С. В некотором смысле систему можно разделить на условные «платформу» и «конфигуратор». Собственно структуру сайта, системные объекты и страницы можно считать платформой (ядром). Объекты бизнес логики - справочники, документы, отчеты и т.д могут быть подключены в произвольном сочетании. По сути каждый объект реализуется несколькими файлами. Для самого сложного - документа это 4 файла: шаблон страницы ввода, php файл - класс страницы ввода (бек-енд), файл шаблона печатной формы и php файл персистентной сущности (Entity), отвечающий за сохранение документа в хранилище. Файлы и классы PHP в них должны иметь общее «родовое» имя. Например, invoice или goodsissue. Файлы копируются в предопределенные папки. Затем в админпанели добавляется новый пункт меню со ссылкой на это имя и наименованием пункта меню, соответственно Счет или Накладная. При открытии основной страницы меню генерится автоматически, группируется, если указано, и получаем как бы “конфигурацию”. При выборе пункта меню система находит заведомо незнакомый файл страницы по «родовому» имени а дальше подтягиваются шаблоны и печатные формы…

    То есть, прикладная часть программы собирается и пересобирается как конструктор Lego. Даже непрограммист может стащить с оф. сайта или какого ресурса исправленный документ или отчет и закинуть на сайт. Ну и технически нет проблем организовать автообновление.

    Кстати, для одиночных пользователей, не умеющих разворачивать сайты, не проблема сделать сборку на основе WAMP сервера.

    Может показаться, что предлагается какое-то низкоуровневое программирование - все захардкодить. Но ведь язык 1С по сути ничем не высокуровневее того же PHP. Просто там манипуляция бизнес-данными производится с помощью высокоуровневых бизнес-объектов (документов, справочников) что предлагается делать и здесь.

    Итак, сухой остаток - выкинуть по возможности все, что не относится к бизнес логике, сделать простым и универсальным все, что можно сделать просто и универсально. На мой взгляд, такой подход единственно конкурентоспособен, в отличие от попыток создавать прямые функциональные аналоги 1С.

    Разумеется, система, сделанная таким образом вряд ли подойдет для серьезных решений. Но большинство потребителей 1С - мелкий бизнес и вряд ли возникнет ситуация что сервер не справляется с обработкой данных, зато саппорт системы на порядок проще и дешевле. А труд программиста нынче гораздо дороже куска памяти или процессора.

    О чем эта статья

    В этой статье мы рассмотрим, как система может подсказывать товары-заменители .

    Это актуально, если основного товара нет на складе, а отпускать клиента с пустыми руками нехорошо:)

    Для компаний с огромным ассортиментом это крайне полезный функционал.

    Применимость

    Статья написана для двух редакций 1С:Управление торговлей – 11.1 и 11.2 . Если вы используете эти редакции, отлично – прочтите статью и внедряйте рассмотренный функционал.

    Если же Вы планируете начать внедрение УТ 11, то скорее всего будет использоваться более свежая редакция. Интерфейсы и её функционал могут отличаться.

    Поэтому, мы рекомендуем пройти курс Практические задачи уровня 1С:Специалист по УТ 11, КА 2 и 1С:ERP 2 , это поможет вам избежать ошибок и потери времени / репутации.

    Постановка задачи

    Компания «Мебель-дизайн» занимается оптовой торговлей мебелью. В компании присутствует один оптовый склад, с которого осуществляется отгрузка товара.

    Менеджер по продажам принимает заказы клиентов и проводит в базе необходимые документы для отгрузки.

    Бывают ситуации, что клиент заказал товар, которого сейчас нет на остатках и привезти его нельзя.

    В таком случае менеджер по продажам предлагает клиенту похожий (аналогичный) товар, но который есть на складе. То есть менеджер предлагает аналогичный товар того же производителя и с такого же материала с остатками на складе.

    Все процессы компании отражаются средствами программы «1С:Управление торговлей 11».

    Что необходимо получить

    Требуется продемонстрировать функционал аналогов номенклатуры в программе «1С:Управление торговлей 11».

    Решение задачи по аналогам товаров

    Для начала создадим в базе организацию «Мебель-дизайн».

    Поскольку в нашей компании используется только одна организация, то флажок «Несколько организаций» в разделе «Администрирование» – «Организации и денежные средства» устанавливать не будем (в УТ 11.2 это раздел «НСИ и администрирование» – «Предприятие»).

    Для создания организации перейдем в раздел «Нормативно-справочная информация» – «Настройки и справочники» – «Сведения об организации» (в УТ 11.2 это раздел «НСИ и администрирование» – «Сведения об организации»).

    Опять же, поскольку мы используем только один склад, то в разделе «Администрирование» – «Склад и доставка» флажок «Несколько складов» включать не будем (в УТ 11.2 это раздел «НСИ и администрирование» – «Склад и доставка»).

    Перейдем в раздел «Нормативно-справочная информация» – «Настройки и справочники» – «Настройка складского учета» (в УТ 11.2 это раздел «НСИ и администрирование» – «Сведения о предприятии» – «Настройка складского учета»).

    В условии задания сказано, что поиск аналогов номенклатуры производится по производителю и по материалу номенклатуры.

    Если открыть карточку номенклатуры, то мы увидим, что поле «Производитель» в карточке товара есть на вкладке «Описание».

    Работа с аналогами номенклатуры реализована на основе тех дополнительных и основных реквизитов, которые могут быть добавлены для позиции номенклатуры.

    Поэтому поле «Материал» заведем для номенклатуры как дополнительный реквизит.

    Перейдем в раздел «Администрирование» – «Общие настройки» и установим флажок «Дополнительные реквизиты и сведения» (в УТ 11.2 это раздел «НСИ и администрирование» – «Общие настройки»).

    По умолчанию в программе используется два вида номенклатуры «Товар» и «Услуга».

    Посмотреть их можно в разделе «Нормативно-справочная информация» – «Настройки и справочники»:

    • Настройка ведения товаров.
    • Настройка ведения услуг.

    Если открыть «Настройки ведения товаров», то страницы «Панель быстрого отбора» мы не увидим.

    Для того, чтобы включить в программе возможность использования панели быстрого отбора необходимо в разделе «Администрирование» – «Номенклатура» включить флажок «Множество видов номенклатуры» (в УТ 11.2 это раздел «НСИ и администрирование» – «Номенклатура»).

    После этого в разделе «Нормативно-справочная информация» – «Настройки и справочники» – «Виды номенклатуры» мы сможем создавать дополнительные виды номенклатуры, а в карточках видов номенклатуры у нас появится страница «Панель быстрого отбора».

    Как видим, карточка вида немного изменилась по сравнению с предыдущим скриншотом вида номенклатуры. В первую очередь появилась страница «Панель быстрого отбора», которая нам необходима для использования функционала аналогов номенклатуры.

    Но сначала перейдем на страницу «Дополнительные реквизиты» карточки вида номенклатуры и создадим новый дополнительный реквизит «Материал».

    В поле «Тип значения» оставим вариант по умолчанию как «Дополнительное значение».

    Нажмем кнопку «Создать» в дополнительном реквизите «Материал» и добавим, например, три вида материалов: ДСП, Дуб и Ясень.

    После этого на странице «Дополнительные реквизиты» карточки вида номенклатуры у нас появится одна запись – «Материал».

    На вкладке «Описание» теперь есть дополнительное поле «Материал», где мы можем указать один из созданных нами материалов для вида номенклатуры «Товар».

    Список тех реквизитов, по которым мы будем определять аналогичный товар, следует указать в справочнике «Виды номенклатуры» на странице «Панель быстрого отбора».

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

    Согласно условию нашей задачи, аналоги номенклатуры мы определяем по производителю и материалу номенклатуры.

    Перенесем реквизиты «Производитель» и «Материал» в карточку вида номенклатуры «Товар» нажав на кнопку «Добавить в панель».

    Запишем карточку вида номенклатуры.

    Отлично! Панель быстрого отбора для поиска аналогов номенклатуры мы настроили.

    Закупим все товары из справочника «Номенклатура» кроме товара «Стол дубовый».

    При необходимости установим на товары цену в разделе «Маркетинг и планирование».

    Теперь представим себе ситуацию, что к нам поступил заказ на товар «Стол дубовый».

    Менеджер по продажам формирует документ «Заказ клиента» (включить использование заказов можно в разделе «Администрирование» – «CRM и продажи»).

    Перейдем в раздел «Продажи» – «Заказы клиентов» и нажмем кнопку «Создать».

    Заполним все необходимые реквизиты документа.

    Перед нами откроется окно подбора товаров в заказ клиента.

    Как видим, номенклатура «Стол дубовый» отсутствует на нашем складе.

    Менеджер решает предложить клиенту аналогичный товар того же производителя и с того же материала.

    Для этого в списке товаров следует установить курсор на нужный товар (в нашем случае «Стол дубовый») и выполнить команду контекстного меню «Товары со схожими свойствами».

    В табличной части подбора товаров останутся только товары, в которых производитель и материал такие же, как у товара «Стол дубовый».

    Программа автоматически установит фильтр по тем параметрам (реквизитам), которые мы определили на странице «Параметры быстрого отбора» в виде номенклатуры и покажет аналогичные товары.

    • по виду номенклатуры «Товар»;
    • по производителю «ДАНА-мебель»;
    • по материалу «Дуб».

    Менеджер видит все аналоги товара «Стол дубовый» и их наличие на складе.

    Предлагает аналоги товара клиенту и в случае, если клиент соглашается на предложение, переносит необходимые товары в документ «Заказ клиента».

    Дополнительно в этом же окне подбора товара можно устанавливать свои произвольные фильтры по нескольким реквизитам номенклатуры. То есть, по нескольким производителям и материалам.

    Менеджер может установить флажки напротив материалов «Дуб» и «Ясен», снять фильтр по производителю и увидеть только товары, сделанные с выбранных материалов.

    Поиск аналогов может производиться во всех документах, где есть возможность вызвать обработку «Подбор товаров».

    Заключение

    Итак, мы рассмотрели функционал аналогов номенклатуры в программе «1С: Управление торговлей 11».

    Функционал, нужно отметить, очень полезный, поскольку позволяет оперативно выполнять поиск необходимых товаров-аналогов.

    Менеджерам торговых предприятий, которые набивают документы, этот механизм существенно упростит жизнь и предоставит новые возможности, поскольку можно быстро найти необходимый товар-аналог и предложить его клиенту.