Вход | Регистрация
    1  2

Построить цепочку от готовой продукции к исходному сырью.

Построить цепочку от готовой продукции к исходному сырью.
Я
   Kongo2019
 
22.10.20 - 13:05
Доброго.
Построить цепочку от готовой продукции к исходному сырью.
Есть цепочка документов.
Давайте я упрошенный вариант для примера приведу.
Стартовые доки. Закупка или отчет сборе винограда.
Это док генерирует партию. Для этого сделан отдельно справочник Партии.
Правило генерации партии, один сорт, один день и одна переработка  - это одна партия.
Далее виноград перегоняют на сусло.
Во всех доках партия входящая обязательно к заполнению.
То бишь на входе списываем необходимое количество винограда с указанием конкретной партии. На выходе получаем сусло с генерацией партии по выше изложенному алгоритму.
И так все переделы. На входе обязательно указывается партия, на выходе автоматически генерируемая. Получаем виноматериал, получаем спирты, и куча смешиваний в процессе. До конечного купажа.
Теперь сама задача.
Как вот построить цепочку от готовой продукции, то есть конкретного купажа, до винограда. С показом всех переделов. То бишь мне надо указать конкретный купаж и выводить всю цепочку откуда он был собран.
Сейчас я тупо сделал регистр сведений с измерениями
ДокПередела
Купаж
ПартияВходяцая
ПартияИсходящая
И тупо раз в час его грохаю и заново по докам заполняю. Первым проходом ПартиюВхода и ПартиюВыхода, вторым проходом пишу Купаж из ПартияИзходящей в ПартиюВходящую.
Но объемы растут. Так это решение на коленке, и ему скоро хана будет.
Заранее спасибо за любые идеи.
Да, и конфа полностью самописная, можно делать все что хотим.
   HeKrendel
 
101 - 27.10.20 - 14:46
Классическая задача без знания архитектуры коммуникаций вести перепланировку здания
   wt
 
102 - 27.10.20 - 14:50
(0) Это жизненный цикл изделия. PLM. Попробуй подглядеть у производителей Сименс: Teamcenter или такой продукт как Windchill. Наши не делают. Только только доросли. Это по состоянию на 2012г. Как сейчас не знаю.
   Kongo2019
 
103 - 27.10.20 - 15:11
(99) Это ты прав, правильно заданный врос содержит половину ответа.

Ну давай так. Один купаж. Без эгализаций. Упрощённая схема. Может я и сам соображу.
Получили виноград.
Несколько партий. Сгенерировали новые партии. Один виноград, одни день - это одна партия.
Переработали на сусло.
Тут пока просто, переработка идет сразу практически. В идеале получается одна партия винограда на входе одна на выходе.
Сгенерировали новые партии. Одно сусло, однин день - это одна партия.
Дальше оно тама бурлит.
Декантация. Вот тут уже сложнее. Сливается с нескольких ёмкостей в одну.
То бишь несколько партий сусла - одна партия виноматериала.
Сгенерировали новые партии. Один виноматериал, однин день - это одна партия.
Дальше перегонка на спирт.
Колона много вмещает, поэтому за день всю партию виноматериала могу не переработать.
И получается дробление
Одна партия виноматериала- несколько партий спирта молодого.
Сгенерировали новые партии. Один спирт молодой, одной крепости в один день - это одна партия.
Дальше заливают его на выдержку.
По бочкам, бочки небольшие. Опять дробятся партии.
Одна партия спирта молодого - несколько партий выдержанного спирта.
Сгенерировали новые партии. Один спирт выдержанный, одной крепости в один день - это одна партия.
Далее купаж. Где куча спиртов выдержанных собирается в одну партию.
Сгенерировали новые партии. Один купаж, одной крепости в один день - это одна партия.

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

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

А еще не просто узнать что из какой партии хотелось реализовать, то и чего сколько было в цепочке было по количеству. Но это уже потом.
   HeKrendel
 
104 - 27.10.20 - 17:38
(103) Какую типовую знаешь?
   HeKrendel
 
105 - 27.10.20 - 17:39
УПП или ЕРП?
   HeKrendel
 
106 - 27.10.20 - 17:45
Это не надо
Сгенерировали новые партии. Одно сусло, однин день - это одна партия.
   vvspb
 
107 - 27.10.20 - 17:54
(103) Пользователь хочет жмакнуть на купаж...
И получить всю выше описанную цепочку/// и Вы это хотите всё "по правде" реализовать?
   asady
 
108 - 27.10.20 - 17:59
(103) Это очень похоже на многопередельное производство
а искомое дерево похоже на построение себестоимости по заказу.
Поэтому методики позаказного учета в производстве УПП (ЕРП) могут вполне подойти
В моем багаже есть работающие производства которые реализуют методику позаказного учета (УПП) с учетом характеристик

Сейчас занят как раз тем, что пытаюсь этот же подход реализовать в ЕРП 2.4
   HeKrendel
 
109 - 27.10.20 - 18:08
(108) Это базовый функционал, что ты там пытаешься?
   Bigbro
 
110 - 28.10.20 - 04:12
(95) вас пугает тысяча записей на документ?? реально?
я наверное совсем отстал от жизни но в 7ке десятки тысяч записей это нормально абсолютно
а тут 8ка, с соответствующим железом, тут миллионы должны перевариваться без проблем.
   Bigbro
 
111 - 28.10.20 - 04:28
(103) "А теперь надо узнать всю цепочку до винограда."
при каждом проведении документа запускается "построитель цепочек".
который бежит по цепи документов до самого исходного и аккуратно пишет в регистр записи с "конечной" (на данном шаге) партией и каждым из документов по цепочке.
дальше запрос к этому регистру с отбором по партии и получаем все документы. и получаем мгновенно "жмакнув" ответ.
для обратной задачи в регистр надо писать помимо документа "исходную" партию.
   Айболит
 
112 - 28.10.20 - 06:06
(97) не мешайте человеку нетленку свою писать. Этот этап должен пройти любой программист.
(0) - то вы хотите давно реализовано в куче пищевых конфигураций. Проводите ключевые слова "1с, прослеживаемость, ХАССП". Посмотрите цикл вебинаров  http://inthepress.ru/press/p442198.html

Вообщем не майтесь фигнёй, либо подберите-купите конфу специализированную, либо посмотрите в них типовые решения.
Общее решение - простейший регистр накопления типа товаров на складах. Партия = серия. В регистр добавляются только РЕКВИЗИТЫ типа КорПартия, КорНоменклатура, в которых фиксируем серию, из которой пришло или в которую ушло.

Ну а вообще, то что вы хотите реализовано даже в типовой вам, только две галочки поставь в номенклатуре: использовать серии, всти партионный учёт по сериям
   Paint_NET
 
113 - 28.10.20 - 06:12
Чо тут, чо тут, новая фузина? :)
   Kongo2019
 
114 - 28.10.20 - 08:12
(105) С УПП работаю.
   Kongo2019
 
115 - 28.10.20 - 08:13
(107) Я это уже реализовал. Вопрос как сделать более лучше что ли. алгоритмически правильно. Типа так.
   Айболит
 
116 - 28.10.20 - 08:18
(115) Алгоритмически правильно использовать регистр накопления с использованием принципа двойной записи (по типу учета затрат в УПП)
   Kongo2019
 
117 - 28.10.20 - 08:21
(108) Оно и есть. Только вот эти сливы переливы всю картину портят.
Вот у меня есть судоремонт. Там по требовани регистра надо тоже всю цепочку видет кто из чего и когда.
Там блин все просто. Есть деталь, ширихкод, разобрали, типа разборка на запчасти, на каждую деталь штрихкод.
Собирают из деталей на каждом этапе клюют штрихкод. Пару девочек бегает сканирует.
Просто тут. Всегда цепочки идут от малого к большому, или наоборот.
Целые составные части. А тут то дробим до сливаем.
Там болт взяли, взяли гайку и болт всегда будет болтом, а гайка гайкой. Просто в конце будет например двигатель, где эта гайка и болт крепят крышку цилиндра например.
   Kongo2019
 
118 - 28.10.20 - 08:21
(113) Нет, старая добрая 1С.
   Kongo2019
 
119 - 28.10.20 - 08:21
(116) А подробней плиз.
   Kongo2019
 
120 - 28.10.20 - 08:22
(111) Ну так у меня это построитель раз в час запускается. Не вижу разницы.
   Kongo2019
 
121 - 28.10.20 - 08:25
(106) Почему это не надо партии генерировать? Очень даже надо.
Мы каждый передел делаем анализы и пишем отчеты для контролирующих органов.
   vvspb
 
122 - 28.10.20 - 08:28
(117) Вот у меня есть судоремон/// у меня что-то среднее между судоремонтном и виноделием :) 
Сырьё практически в полном объеме сливается в общую партию...
   Фрэнки
 
123 - 28.10.20 - 08:37
(119) не будет от него подробней - он больше тролль, чем спец. Успел в Политике набросить хх-а с лопаты и ушел отдыхать.
   vvspb
 
124 - 28.10.20 - 08:39
(122) т.е. да, как в (106) я ж и спрашивала -- неужели в программе надеетесь реализовать всё "как в жизни"?
   vvspb
 
125 - 28.10.20 - 08:39
(123) т.е. на одного специалиста меньше :(
   Фрэнки
 
126 - 28.10.20 - 08:41
(117) механическая сборка все-таки допускает разборку некорректно собранного элемента - разукомплектация.

А у тебя в сливе-переливе идет процесс только в одну сторону, с некоторой вероятностью появления утилизации вынужденного брака. Причем, о том, как эта утилизация происходит в контексте данной задачи вопросы не ставятся. Ну она и не интересна в ней.
   Фрэнки
 
127 - 28.10.20 - 08:42
(125) ну... если чел в чем-то идиот... ну это весьма сомнительный "специалист" - зачем он нужен?
   HeKrendel
 
128 - 28.10.20 - 08:59
(114) Ну значит открываешь УППшный учет серий и куришь его, документ для всех процессов-Комплектация

В серию дописывается вкладка- состав с гиперссылками на документы партии исходники, и все, счастье настало
   HeKrendel
 
129 - 28.10.20 - 09:02
Из бонусов, еще и себес посчитается
   Kongo2019
 
130 - 28.10.20 - 09:17
Ну давай вот на декантации попробуем.
На входе несколько партий сусла. Технологи посмотрели и давай говорят чуток из той партии, чуток из этой, а эта не влезла.
Пусть будет три партии сусла на входе. И одна партия виноматериала на выходе.
Ок, я делаю Комплектацию.
И в серию, ну которая типа партия виноматериала пишу док декантации такой то.
Правильно понимаю?
 
 Рекламное место пустует
   Bigbro
 
131 - 28.10.20 - 09:24
блин я уже 10 раз написал что надо сделать, не понимаю какими еще надо словами чтобы понятно стало.
есть документ 1 - виноград в сусло
док2 - сусло в куда то там еще
док3 другой виноград в сусло2
док 4 смешали 1 и 2 получили 3
док 5 смешали 1 и 2 в других пропорциях получили 4

в итоге пробежав по цепочкам заполнить регистр в котором будут по партии 4 привязаны документы 1 3 5
по партии 3 привязаны документы 1 3 4

и по обратной задаче к винограду1 привязаны доки 1 2 4 и 5
к винограду 2 доки 3 4 5

ну?

не те партии которые списались получились, чтобы не крутить все каждый раз по переделам
а именно начальная и конечная. и весь список доков записями.
   HeKrendel
 
132 - 28.10.20 - 09:26
(130) Все правильно
   HeKrendel
 
133 - 28.10.20 - 09:27
Хотя нет, туплю, ты в серию пишешь не документ, у партии уже есть документ, ты в серию пишешь партии которые пошли на деканации, а они у тебя есть в сериях уже ;-)
   HeKrendel
 
134 - 28.10.20 - 09:29
Можешь писать и пропорции
   Kongo2019
 
135 - 28.10.20 - 09:29
(131) Не, я явно тупой. Ну не понимаю я как ты предлагаешь по партиям пробежаться. Ну прости меня такого тупого. Ты молодец, спасибо тебе.
Я еще раз перечитаю твои сообщения. Может въеду.
   Bigbro
 
136 - 28.10.20 - 09:32
(135) по партиям бежать тем же самым алгоритмом который ты уже сделал который цепочки собирает.
только писать не входную и выходную партию.
а начальную и конечную.
сразу писать старт финиш вместо промежуточных шагов.
   Kongo2019
 
137 - 28.10.20 - 09:38
Кажись понял. Дайте пару часиков я тут покручу у себя.
   Фрэнки
 
138 - 28.10.20 - 10:10
имхо, не должно получиться. Пост-фактум возможно. А оперативно - не будет такой возможности. Когда стоишь в начале, то не известно, когда произойдет остановка на финишной партии и сколько будет переделов/переливов, прежде чем возникнет готовая продукция, на которой нужно останавливаться и новых переработок не создавать.
   Bigbro
 
139 - 28.10.20 - 10:20
(138) если нужны промежуточные - просто пиши для каждой промежуточной то же самое.
регистр конечно распухнет, но точно так же ткну в любую партию из средины получишь и все что было после и все что было до.
механизм универсальный, а объем - плата за оперативность получения информации, так всегда было.
   Фрэнки
 
140 - 28.10.20 - 10:29
(139) так у него в методическом смысле и сейчас примерно тоже самое и происходит.
   HeKrendel
 
141 - 28.10.20 - 10:55
(140) потому что у него помойка в методическом смысле, которая дописывается
   Bigbro
 
142 - 28.10.20 - 11:38
(140) там зачем-то чистится все. я так и не понял зачем.
   Kongo2019
 
143 - 28.10.20 - 14:39
Тогда такая схема у меня вырисовывается.
Справочник Партии(уже есть)
Реквизиты
Номенклатура – ссылка на справочник номенклатура
Дата – дата партии.
Крепость – число.
Ёмкость – ссылка на справочник места хранения.

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

Переработка винограда.
При заполнений дока оператор обязательно указывает партию виноград. Там просто сканирование ТСД. Плюс всякие расчеты в доках, буду опускать.
При проведении дока, списывается виноград, появляется партия сусла. Генерируем партию сусла аналогично как у винограда. Одно сусло и одна емкость, где оно бродит это партия. И в партию пишем партии винограда.

Декантация.
Сусло перебродило, сливаем готовый виноматериал.
При проведении дока списывается  партия сусла. Генерируем партию виноматериала. Один виноматериал, одна крепость, и одна емкость. И в партию пишем партии копируем партии винограда из партии сусла, и пишем партии сусла.

И так погнали дальше, на каждом переделе копируем данные по партиям из партии входа и пишем свою сгенерированную партию.

По итогу в Партии купажа будут записаны все предыдущие ему партии.

Тут вот вопрос сразу возник, где лучше это хранить, табличная часть справочника Партии, отдельный справочник подчинённый справочнику Партии, или регистр сведений?
   Kongo2019
 
144 - 28.10.20 - 14:40
(142) Потому что данные задним числом вбивают. А регистр быстрее грохнуть, чем искать записи и перезаписывать.
   HeKrendel
 
145 - 28.10.20 - 14:46
(143) Почти правильно, я бы еще над организацией поработал всего твоего бардака, но тут нужны будут бабки
   HeKrendel
 
146 - 28.10.20 - 14:47
А так с тебя 50к
   Kongo2019
 
147 - 28.10.20 - 14:50
(145) Чего я упустил?
Бардак не у нас. Бардак нар РАР устаивает с ФНС на пару.
   Kongo2019
 
148 - 28.10.20 - 14:51
(146) За что? Не жадничай. У меня зарплата меньше.
   HeKrendel
 
149 - 28.10.20 - 14:52
(148) Это Стимуляция была, а не то ты начал внимательность терять
   HeKrendel
 
150 - 28.10.20 - 14:55
Вот с Этим надо поработать

"И так погнали дальше, на каждом переделе копируем данные по партиям из партии входа и пишем свою сгенерированную партию."

С одной стороны запрос к партии сразу дают структуру состава
С другой, большая избыточность данных
С третьей, я предполагал, что нужно хранить только последний передел, и собирать данные запросом, но надо ли? дешевле взять системы хранения, чем сам сервер
   HeKrendel
 
151 - 28.10.20 - 14:58
(147) Они не могут с тебя потребовать партию винограда в 1905 году, такого учета просто не было, значит вы или не вели его, или чего-то не понимаете
   Kongo2019
 
152 - 28.10.20 - 14:58
(150) Избыточность да.
Но зато я могу смотреть даже если купажа еще нет, мы где-то посерединке, в дороже так сказать. Ну только например виноматериал в спирт перегоняем.
   Kongo2019
 
153 - 28.10.20 - 14:59
(152)в дороже так сказать = в дороге так сказать
   Фрэнки
 
154 - 28.10.20 - 15:00
(144) Быстрее оно на удаление быстрее. А как заново создавать, так и не быстрее ни разу. Впрочем, в тч справочника или документа оно пишется примерно с той же скоростью, если по одному писать. Смотря что изменяется и сколько. Можно отбор делать по значению измерения.
   HeKrendel
 
155 - 28.10.20 - 15:00
Тут вот вопрос сразу возник, где лучше это хранить, табличная часть справочника Партии, отдельный справочник подчинённый справочнику Партии, или регистр сведений?

Это не ко мне вопрос, я конфигуратор открывал 3 раза
   HeKrendel
 
156 - 28.10.20 - 15:01
Но всяко регистр лучше, ибо по нему отчеты строятся насколько знаю- быстрее
   Kongo2019
 
157 - 28.10.20 - 15:03
Тут вот вопрос сразу возник, где лучше это хранить, табличная часть справочника Партии, отдельный справочник подчинённый справочнику Партии, или регистр сведений?
   HeKrendel
 
158 - 28.10.20 - 15:04
Регистр лучше, если данные нормализованы, а если помойка то может и справочник
   Bigbro
 
159 - 28.10.20 - 15:06
(144) ну это пока данные за год в системе. а когда будут за 20 лет? тоже будет проще грохнуть и заново?
проектируйте систему сразу чтобы она нормально на рост объема данных реагировала.
в регистре независимом хранить.
а при проведении хоть задним числом хоть текущим - перестраивать цепочки.
именно поэтому я и говорил про допроведение
чтобы проведение по остаткам документов проходило быстро не мешая работе
а наша история с цепочками партий восстанавливалась не спеша в фоне.
   Фрэнки
 
160 - 28.10.20 - 15:06
(157) у тебя может возникнуть желание использовать несколько разных измерений для отборов и получения наборов записей регистра. Получаемые наборы записей будет проще и перезаписывать и удалять.
 
 Рекламное место пустует
   Kongo2019
 
161 - 28.10.20 - 15:07
Регистр сведений, это если по методологии 1С.
Отчет строить на данных регистров надо.
   Kongo2019
 
162 - 28.10.20 - 15:08
(159) Дык вот чего я сюда и пришел. Не хочу я постоянно базу пересчитывать.
   Фрэнки
 
163 - 28.10.20 - 15:09
(161) тут дело даже не в том, как в методологии, а как ты сам будешь эти наборы записей оперативно крутить и затем отчеты по ним строить.

Физически, что регистр, что таблица табчасти справочника дают одинаковый эффект при получении данных. Но наличие измерений в независимом РС даст еще более свободную функциональность.
   Kongo2019
 
164 - 28.10.20 - 15:17
Значит будет регистр сведений. Независимы конечно.
Большое спасибо народ за обсуждение и советы.
Пойду пилить.
   Bigbro
 
165 - 28.10.20 - 15:18
(162) не хочешь пересчитывать - запрещай работу задним числом, чтобы партии в средине цепочки не возникали.
только сторно.
алгоритм упростится.
но в любом случае если вы начнете добавлять всякие выдержанные спирты лет 20 которые у вас созреют со временем - песня станет долгой.
так что кардинально ситуацию не изменить.
либо вы в фоне строите весь набор записей регистра для моментального получения отчета.
либо забиваете на скорость, экономите место в базе, но каждый отчет приходится строить вытаскивая партии по цепочке и перелопачивая документы всех переделов.
   Фрэнки
 
166 - 28.10.20 - 15:25
Но я бы еще и оборотный регистр крутанул. Сведения оно прикольно, по оборотный интересней. Конечно, при наличии измеримого ресурса.
   Kongo2019
 
167 - 28.10.20 - 15:29
(166) А что в оборонный писать?
Партионый учет у меня есть уже регистр накопления, остатки.
   Kongo2019
 
168 - 28.10.20 - 15:31
(165) Так я доки в последовательность загоню. Буду только теперь от последнего перероведенного дока перестраиваться.
   Kongo2019
 
169 - 28.10.20 - 15:31
(168) и запрет конечно включу.
  1  2

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.