Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
07 ноя 2024, 05:44

Самописный велосипед-монстр недоERP.

Автор pr22m, 02 ноя 2024, 15:13

0 Пользователей и 1 гость просматривают эту тему.

pr22m

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

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

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

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

Краткое описание текущих возможностей.
1. Система калькуляции, которая позволяет:
- учитывать в калькуляции материл, услуги, вложенные калькуляции;
- обновлять цены на материалы/услуги при помощи документа "обновление цен", что позволяет получать калькуляцию на заданную дату и сравнивать разницу;
- получать список калькуляций с перечнем неактуальных цен (разворачиваемый документ) - т.е. по каждому изделию можно посмотреть на какие материалы цены "старше" заданного периода;
- получать ведомость материалов по изделию с разбивкой по деталям (если они вложенные) или общую свертку по изделию по всем материалам;
- обратный пересчет количества материала в погонных метрах (круги, трубы, листы и другой мерный материал) автоматически переводится из килограммов в длину в свертках;
- в самой калькуляции мерный материал (листы, круги, трубы и т.д.) при заданных свойствах у материала можно указывать размерами - 100мм, или 100х300 мм, и пересчет в килограммы происходит автоматически;
- прикреплять файлы - общий вид калькуляции, чертежи в формате pdf с редварительным просмотром;
2. Система учета материала.
Тут напишу чуть подробнее. Я так и не нашел решения вечной проблемы бухгалтерии, когда фактически одна и та-же номенклатура может приходить с разными названиями. В нашем случае (да и у многих других, с кем я общался) - бугхалтерия просто заводит новые позиции, даже если это "Лист 10мм, ст.20" и "Лист сталь 20, 10мм". Слышал про варианты унификации названий при внесении, но там есть много нюансов.
У себя я решил этот вопрос следующим образом:
В программу вносится материал, с которым идет непосредственно работа - Лист 10мм, ст20, Лист 16мм, ст20, Круг 50мм, ст09Г2С и т.д. При этом приход делается по аналогии с 1с - вносится УПД немного измененной формы. В табличной части документа есть поля - наименование по входящему документу, единица измерения по входящему документу, количество по входящему документу и наименование, единица измерения и количество по внутренней учетной политике. Основная часть УПД выгружается из рабочей 1с бухгалтерии, загружается в мою систему и необходимо только сопоставить входящей номенклатуре внутреннюю учетную. Далее работа (списание) ведется уже по внутренней учетной системе, где все материалы однозначно определены, а при конечном списании, для передачи в бухгалтерию, в документе прописываются фактические наименования, которые были изначально в УПД. Списание производится партиями по принципу ФИФО. Т.е. если у нас поступает 2 партии одной номенклатуры с разными названиями, то списываться они будут в порядке поступления и с таким-же наименованием, как в УПД, тем самым не меняя привычку бухгалтерии работать по старому.

Дополнительно кратко опишу другие возможности:
- Работа с заявками на материалы с производства и их контроль, с отображением остатков на складе, печати путевого листа по позициям, которые может забирать водитель-экспедитор, печати списка в работе со статусами, контрагентами и т.д;
- Отображение складских остатков (по внутренней учетной политике) с движениями и т.д. с переходом на соответствущие документы;
- Система инвентаризации - можно проводить инвентаризацию хоть по одной позиции, о чем будет сохранена информация и при следующей инвентаризации по данной позиции (группе позиций) будет автоматически отображаться, показывая необходимую информацию;
- Работа с заказами на производство - списание материалов, работа со спецификациями + технические фишки - подгрузка чертежей dxf, определение габаритов, предварительный раскрой по прямоугольникам (по габаритам материала) с подсчетом примерного количества необходимых листов с визуальным представлением
- Система задач с диалогами, возможностью подключения наблюдателей (могут видеть задачи и писать) с возможностью указывать "объекты задачаи" для оперативного перехода к ним из самой задачи;
- База знаний - дерево документов с отображением в соседней области;
- Система работы с продукцией. Сущность продукция отличается от обычной номенклатуры - т.к. содержит основные параметры продукции, позволяет автоматически генерировать паспорта (на основе бланков) и другие документы с занесением в них основных параметров;
- Система учета заказов (некое подобие црм) с возможностью печати паспортов, деклараций с заполненной информацией, с генерацией серийных номеров, с печатью этикеток на продукцию на принтере этикеток на основе бланков так-же напрямую из 1с;
- Прайс-лист - работа с ценами на продукцию с возможностью обновления цен на основе документов "обновление цены на продукцию", генерации простых КП по списку и т.д.

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

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

alexandr_ll

pr22m, Выкладывайте конфигурацию для тестирования.

LexaK

pr22m, А что случилось-то? Что сподвигло на такой опус.

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

Была ли у вас возможность познакомиться, изучить возможности таких баз баз как УПП, и таже  ЕРП?
использована ли в вашей базе БСП?
на каком движке строится весь учет? на регистрах накопления или на бухгалтерских регистрах

так же, при беглом просмотре ни чего про планирование не сказано,
Сколько типов Рабочих мест запрограммировано?
сколько и каких типов служб, могут использовать вашу программу для ввода данных?

в общем, так себе...

если помогло нажмите: Спасибо!

pr22m

Цитата: LexaK от 02 ноя 2024, 16:58наводит на мысль что ваша база представляет из себя огромнейшую кучу Гов..но кода.
Вряд ли найдутся желающие в нем ковыряться.
100% - именно так. Это одна из причин, по которой я не особо хочу выкладывать сюда конфигурацию, и не прошу в ней ковыряться) А вторая - даже если я ее выложу - без начального объяснения, что где и как (даже банальное заполнение материалов с его свойствами - плотность, которая заполняется в отдельном справочнике марка, основной типоразмер и т.д.) - не получится наглядно посмотреть работу даже системы калькуляции, которая использует эти свойства для автоматического расчета массы, длины и т.д. Для стороннего человека тут требуется начальная инициализация данными + пояснение, где, что и для чего.

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

Цитата: LexaK от 02 ноя 2024, 16:58Была ли у вас возможность познакомиться, изучить возможности таких баз баз как УПП, и таже  ЕРП?
использована ли в вашей базе БСП?
БСП не использовалось (что это такое в курсе, но узнал я про это, когда уже написал кучу всего), конфигурация написана полностью с 0, без использования каких-либо типовых конфигураций в качестве основы.

Цитата: LexaK от 02 ноя 2024, 16:58на каком движке строится весь учет? на регистрах накопления или на бухгалтерских регистрах
Регистры сведений и регистры накопления.

Цитата: LexaK от 02 ноя 2024, 16:58Сколько типов Рабочих мест запрограммировано?
сколько и каких типов служб, могут использовать вашу программу для ввода данных?
На текущий момент системой пользуются: менеджеры по продажам, снабженец, кладовщик, начальник производства.

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

Ну и в целом я тут больше планировал обсуждать принципы решений тех или иных вопросов или задач из области ERP, чем конкретные программные реализации. Хотя если у кого-то возникнет желание - отдельные моменты моих решений из го..но когда могу показать. Например мне пришла мысль, что при отображении остатков материалов на складе хорошо бы было показывать не только общее количество с наименованием по внутренней учетной политике, например "Лист 10мм, ст20", которые мы берем из регистра накопления, а еще фактические остатки по партиям по данному материалу (наименованию из УПД), без учета уже списанных партий и фактический остаток текущей партии, которая списана частично. Это удобно для проведения инвентаризации, когда бухгалтерия сверяет остатки по своей 1с и производственные остатки - они будут видеть одинаковые названия материалов и там и там, а не название по внутренней учетной политике. Этот вопрос я решил.

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

П.С. Если что я не являюсь всеми этими людьми, как может показаться изначально - у нас на этих должностях разные, конкретные люди - примерно 15 человек ИТР и 30+ рабочих и нормальное производство с кучей оборудования - токарные, фрезерные станки, в т.ч. с ЧПУ, плазма и т.д.

alexandr_ll

pr22m, Ну а что тут можно сказать? Если вам интересно это делать и исполнителей устраивает - продолжайте.
Наверное, стоит рассмотреть типовую конфигурацию 1С, например в части работы со справочником "Номенклатура поставщиков"

pr22m

Мне уже советовали смотреть в эту сторону, но, на сколько я понял - это не совсем то. Ну или может я не разобрался. Попробую чуть более подробно объяснить:
Во внутреннем операционном учете есть материал "Лист 10мм, ст.20"

От поставщиков и даже от одного поставщика материал может приходить с разными названиями:
Лист 10мм, ст.20
Лист сталь20, 10мм
Лист S=10, ст.угл.(20)
...

Дополнительно, в связи со спецификой нашего производства и особенностей конструкций даже такие позиции, как:
Лист 10мм, ст.3
Лист 10мм, ст.3пс
Лист 10мм, ст.8

Так-же во внутреннем учете будут проходить как "Лист 10мм, ст.20" (На других производствах могут быть другие критерии группировок).

Задача стоит в том, что с каким бы наименованием не пришла позиция - в производственном учете она должна увеличивать количество материала "Лист 10мм, ст.20", производство в своей работе оперирует только этой сущностью, но при подготовке документов на списание для бухгалтерии, уже снова фигурируют фактические наименования из УПД - "Лист сталь20, 10мм", "Лист 10мм, ст.3" и т.д. И списывается это партиями - какой материал первый пришел, такой первый и списывается. Если при списании не хватает остатков текущей партии для списания, то начинает списываться следующая партия. Т.е. при списании "Лист 10, ст.20" в количестве 10 кг, для бухгалтерии мы можем получить в документе уже две строчки - "Лист сталь20, 10мм - 4,3 кг" и "Лист 10, ст.3" - 5,7 кг".

Из плюсов:
- бухгалтерия работает в своем режиме, как и работала - заводит 100500 позиций и списывает 100500 позиций.
- бухгалтерии не надо разбираться, какой материал, какому соответствует, а делают это уже люди на производстве, которые как раз и должны в этом разбираться;
На всякий случай приведу пример по номенклатуре - например материал "лист" может иметь более 10 типоразмеров, и более 8 марок стали, т.е. уже около 80 вариантов. И каждый из этих 80 у разных поставщиков, а иногда и у одного, может иметь разные наименования. По материалу "труба" - уже более 150 вариантов комбинаций "диаметр, толщина стенки, тип проката, материал". А еще бывают круги, уголки, швеллер и т.д. 80 и 150 - это примерное количество разных сущностей "лист" и "труба", которыми оперирует только наше производство, а на других эти цифры могут быть гораздо больше.

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


Можно ли такое сделать с применением "Номенклатуры поставщиков"?

antoneus

У нас использовался РС с наименованиями/артикулами поставщиков, измерения: поставщик, вид кода поставщика (наименование или артикул), код поставщика, ресурс - наша номенклатура. Работало норм.

pr22m

Это что-то самописное/доработка к типовой конфигурации? А можно чуть подробнее про реализацию - как происходит внесение, списание, как это примерно выглядело для бухгалтерии?

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

kiokiosan

Цитата: pr22m от 02 ноя 2024, 18:19Причина, по которой я могу эти велосипеды изобретать и изобретаю - потому-что я одновременно смотрю на все со всех позиций: программист, бухгалтер, начальник производства, кладовщик, снабженец и т.д. - я глубоко понимаю всю специфику их работы (на нашем предприятии). Ну и сам себе системный аналитик, исходя из вышеописанного).
Очень круто что есть такие спецы как вы, голова!
Я бы на месте собственника сдувал с вас пылинки, потому что вы незаменимы. Незаменимы как из-за вашего опыта (понимание всех процессов и их недостатков это большая редкость), так и из-за го#нокода :)

Криворучко

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

Рейтинг@Mail.ru

Поиск