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

как лучше планировать/проектировать логику программы?

Автор Yamuna, 07 июн 2019, 07:17

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

Yamuna

Добрый день!Подскажите как правильно составить последовательность алгоритма работы программы.Задача у элемента будут добавляться подчиненные элементы,их будет 5, и соответственно у каждого подчиненного элемента будут свои подчиненные элементы их тоже будет 5 и дальше это будет продолжаться не ограниченно.И когда элемент имеет 5 подчиненных элементов, то ему присваивается признак "Активирован",и если элемент имеет 5 подчиненных элементов с признаком "Активирован",то ему присваивается признак "Развившийся"и он переходит с первого уровня на второй и далее на 3 на 4 и 5 по тем же правилам, т.е. когда его подчиненные будут переходить на 2-й уровень то он будет получать признаки "Активирован" и "Развившийся" и так далее.
К сожалению я не имею опыта и поэтому прошу Ваших советов как это можно реализовать. Я думаю через документ можно будет регистрировать элемент и проводить анализ сколько чего у него есть. Для этого понадобится регистр накопления где мы  будем накапливать количество подчиненных у элемента и наверное регистр сведений. А вот как анализировать признаки? Если кто то может подскажите какие могут быть варианты для решения этих задач?

LexaK

не все понятно, по вашему
1 уровень - Активирован
2 уровень - Развившийся
а
3 уровень - ?
4 уровень - ?
и т.д. эти уровни какие названия имеют?

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

alex0402

Цитата: LexaK от 07 июн 2019, 09:103 уровень - ?
4 уровень - ?
и т.д. эти уровни какие названия имеют?
На всех уровнях одинаковые. По достижению количества подчиненных изменяются.
Спасибо за Сказать спасибо

LexaK

ЦитироватьНа всех уровнях одинаковые. По достижению количества подчиненных изменяются.
тогда не имеет смысла их упоминать, и тогда надо анализировать первые два уровня, а это в корне меняет алгоритм расчета
(или бесконечную иерархию строить, или только 2 уросня - есть разница?)
если помогло нажмите: Спасибо!

Yamuna

Цитата: LexaK от 07 июн 2019, 09:10
не все понятно, по вашему
1 уровень - Активирован
2 уровень - Развившийся
а
3 уровень - ?
4 уровень - ?
и т.д. эти уровни какие названия имеют?
элементы по мере накопления подчиненных будут перемещаться на уровень выше по принципу если у элемента появляются 5 элементов с признаком "Активирован" , то он перемещается на уровень выше, и на каждом уровне дальше происходит то же самое, единственное что на других уровнях они сидят и ждут когда подчиненные на их уровень подтянутся, но принцип остается такой же : подтянулось 5 подчиненных стал "Активирован", и если подтянулись по 5 и у подчиненных, то есть каждых подчиненных стал "Активирован", то Родитель опять переходит на уровень выше и ждет когда его подчиненные подтягиваться будут и т. д.


Добавлено: 07 июн 2019, 09:39


Цитата: LexaK от 07 июн 2019, 09:34
ЦитироватьНа всех уровнях одинаковые. По достижению количества подчиненных изменяются.
тогда не имеет смысла их упоминать, и тогда надо анализировать первые два уровня, а это в корне меняет алгоритм расчета
(или бесконечную иерархию строить, или только 2 уросня - есть разница?)
вообще уровней должно быть 5 больше не будет..

LexaK

хм, еще раз
3,4,5 уровни как называются?
Добавлено: 07 июн 2019, 10:59


еще доп вопрос. Как создаются новые клиенты?
просто добавили в справочнике элемент? а Родителя ему какого и когда задают?
(такое впечатление что всю эту задачу на одном справочнике можно построить Иерархия подчинения элементам)
просто при открытии списка справочника (динамически) анализировать количество подчиненных и выводить соответствующий статус, да еще сгруппировать по Родителю
если помогло нажмите: Спасибо!

Yamuna

Цитата: LexaK от 07 июн 2019, 09:59
хм, еще раз
3,4,5 уровни как называются?
Добавлено: 07 июн 2019, 10:59


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

LexaK

Вот посмотрите такой вариант, все на одном справочнике Клиенты
при добавлении нового элемента или пометки удаления автоматически перерассчитываются статусы
(ни каких документов, ни каких регистров, ни каких копирований из справочника в справочник при этом не надо)

https://cloud.mail.ru/public/42ru/2Srv2geLr
если помогло нажмите: Спасибо!

Yamuna

Цитата: LexaK от 07 июн 2019, 12:21
Вот посмотрите такой вариант, все на одном справочнике Клиенты
при добавлении нового элемента или пометки удаления автоматически перерассчитываются статусы
(ни каких документов, ни каких регистров, ни каких копирований из справочника в справочник при этом не надо)

https://cloud.mail.ru/public/42ru/2Srv2geLr

LexaK Большое спасибо! Единственное я думаю как это теперь мне использовать, там смысл в том что когда элемент переходит с одного уровня на другой директор должен получить сообщение что такой то перешел на такой то уровень,поэтому я думал использовать эти признаки, но сейчас я могу взять значение реквизита "статус", если получится или тогда можно добавить еще условия где будет показывать например "Активированный 2 уровень" и "Развившийся 2 уровень" и так далее
пусть будет все в одном справочнике только это как то надо выделить чтобы сразу в глаза бросалось в общем должно быть как то видно на каком уровне кто находится.

Добавлено: 07 июн 2019, 13:54


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

LexaK

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

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск