К списку форумов К списку тем
Регистрация    Правила    Главная форума    Поиск   
Имя: Пароль:
Рекомендовать в новости

Реквизит справочника - этот же самый справочник.

0 - 24.12.2017 - 16:33
Есть элементарный справочник. Один из его реквизитов имеет тип - этот же справочник. Мне приснилось, или у такой конструкции бывают подводные камни? Я что-то подзабыл :(


Гость
1 - 24.12.2017 - 17:35
(0)>>Мне приснилось, или у такой конструкции бывают подводные камни?
А ты где такое видел?
Вообще сделать такое можно, проблем нет, никто не запрещает, вопрос только ЗАЧЕМ???
2 - 24.12.2017 - 17:39
Теоретически возможно зацикливание при обработке цепочки элементов по этому реквизиту какой-нибудь рекурсивной функцией.
Гость
3 - 24.12.2017 - 17:43
(2) Это не теоретически, это практически будет, получить самого себя.
4 - 24.12.2017 - 18:01
(3) Это понятно, но не факт, что это обязательно выйдет боком.

Навскидку приходит в голову пример: коряво организованный справочник "Сотрудники", где совместитель ссылается на основного, у оановного - пусто. Тогда в программе где надо просто проверяется - заполнено ли поле ОсновнойСотрудник, а лезть в глубину по уровням до упора - незачем.
Гость
5 - 24.12.2017 - 18:13
(4) Ну тут тогда просто грамотность построения алгоритма
6 - 24.12.2017 - 19:07
Цитата:
Сообщение от nordbox Посмотреть сообщение
А ты где такое видел?
Например, так организован спр.сотрудники в ЗиКе. Но речь не о нём. Речь О самоделке, где спр.техника содержит и автомобили, и прицепы. Так вот реквизит "прицеп" - это тип спр.техника. Вот думаю, нужно ли развязать эту конструкцию, или меньше гемора будет, если не лезть к нему..
7 - 24.12.2017 - 19:10
..а вспомнил о ЗиКе, потому что про эту конструкцию рассказывал Сущеня, дескать, она чем-то нехороша. Но поскольку было это 10 лет назад, забыл я, в чём там косяк :(
8 - 24.12.2017 - 19:10
В ПУБе было, ничего страшного.
9 - 24.12.2017 - 19:11
Цитата:
Сообщение от Странный аттрактор Посмотреть сообщение
реквизит "прицеп" - это тип спр.техника. Вот думаю, нужно ли развязать эту конструкцию
Если разнести авто и прицепы по разным уровням справочника и при выборе реквизита контролировать уровень выбранного, то можно все разрулить, ИМХО.
10 - 24.12.2017 - 19:13
Цитата:
Сообщение от Ткачик Посмотреть сообщение
можно все разрулить, ИМХО.
ок, прислушался. Оставлю, как есть.
11 - 24.12.2017 - 19:23
Эх.. До чего же хороша была "семёрка"! Задал вопрос, тут же ответ, проблема решается мгновенно. Ностальгия..
Гость
12 - 24.12.2017 - 19:40
(11) а чем восьмерка то плоха? )))
просто раньше форум рос и развивался вместе с форумчанами, а сейчас все достигли лично своего уровня, кому какой надо, а молодежь в подвалах...
13 - 24.12.2017 - 19:49
Цитата:
Сообщение от Странный аттрактор Посмотреть сообщение
хороша была "семёрка"! Задал вопрос, тут же ответ, проблема решается мгновенно. Ностальгия..
Просто тут остались одни динозавры...
14 - 24.12.2017 - 19:59
Цитата:
Сообщение от nordbox Посмотреть сообщение
а чем восьмерка то плоха? )))
тем, что для решения задач, которые в семёрке решали 1-2 спеца, в 8ке нужен целый коллектив. Трудно себе представить, чтобы на 8ке 1 чел взял и написал полноценную конфу, скажем, по производству. Девиз 8ки - "долго и дорого". Злит.
15 - 24.12.2017 - 21:27
Цитата:
Сообщение от Странный аттрактор Посмотреть сообщение
а 8ке 1 чел взял и написал полноценную конфу
Чем больше я работаю тем с каждым днем все меньше и меньше программирую :)
Потому, что все уже изобретено, надо только знать где лежит и подобрать.
Я вон для Андроида нетленку сваял, так только от того, что делать нефиг было да и интересно. А в инете уже валом.
16 - 24.12.2017 - 22:20
Любой иерархический справочник имеет такой реквизит - Родитель.
17 - 25.12.2017 - 07:14
По моему ничего не будет, хоть все реквизиты делай того же типа, что сам справочник. В 7.7 сам не раз делал, в 8.x для примера у контрагентов есть головные контрагенты. Даже если сам элемент прописать в реквизит и то не видно причин бояться )
18 - 25.12.2017 - 13:07
Нет никаких камней, ни подводных ни надводных.
19 - 25.12.2017 - 13:35
делала. но через подчиненный справочник - деталь и ее аналоги
Uho
20 - 26.12.2017 - 11:49
Коллеги, пьянствуете уже?

Таких конструкций полно. Откройте справочник Контрагенты в типовой БП. Там реквизит Головной контрагент имеет тип того же самого справочника Контрагенты.

Мало того, если он не заполнен, туда записывается ссылка на тот же самый записываемый элемент.
101
21 - 27.12.2017 - 13:40
видел в 7-ке такое , для того чтобы справочник открывался как документ , то есть имел табличную часть
ЗЫ подводных камней не особенно если рисовать с умыслом
ЗЫ удалять сложновато бывает ))
22 - 02.01.2018 - 20:36
реквизит того же вида, что и элемент - это ущербность проектирования БД.
родитель - это группа. по идее - не содержит значений всех реквизитов справочника, а только минимальный набор. но и это тоже ущербность проектирования.
с точки зрения организации хранения данных структура таблицы должна быть линейной. то есть родители - должны быть элементами другой таблицы.
зная любовь 1Са пихать всё в одну кучу, могу предположить, что её бы устроил отдельный справочник или регистр сведений, содержащий все элементы родителей для всех справочников конфигурации. и это было бы правильнее.
имхо.
23 - 03.01.2018 - 19:02
(23)Это в порядке бреда ?) Справочники бывают (да ну !) многоуровневые, и для каждого уровня свой регистр ? Это тянет на нобелевскую премию. Как раз нормальный подход хранить ссылку своего типа. Именно так организуются различные списки, очереди и т.д. Например требуемая последовательность техопераций. В чем конкретно ушербность проектирования ? Должна быть линейной - сказал, как отрезал. А почему не шарообразной ? Есть вообще то такое понятие как нормализация баз данных, все правда про него уже забыли.
24 - 05.01.2018 - 04:19
23-USSR > не для каждого уровня свой регистр, а список уровней всех справочников в одном общем регистре/справочнике.
справочник - предпочтительнее. т.к. в нём уже можно типовыми средствами задать многоуровневую структуру. просто элементы верхнего уровня будут названиями всех прочих справочников, а уже в каждом таком элементе свои группы и подгруппы и подпод группы. если говорить о родителях.
например. есть справочник Номенклатура с группами "Материалы" и "Товары". Есть справочник "Контрагенты" с группами "Поставщики" и "Покупатели".

Так вот, предполагается создание служебного справочника "РодителиВсехСправочников", в котором создаются группы "Номенклатура" и подгруппы в ней "Материалы" и "Товары", аналогично группа "Контрагенты" и в ней подгруппы "Поставщики" и "Покупатели". Одновременно справочники Контрагенты и Номенклатура делаются одноуровневыми с реквизитом Роодитель содержащим ссылку на справочник РодителиВсехСправочников.

Требуемая последовательность техопераций... ка по мне так это отдельная сущность "ПоследовательностьТехОпераций", которая содержит набор ссылок на сами ТехОперации.

О! Нормализация! И где в ней сказано, в нормализации, что надо хранить в записи ссылку на саму запись или ей подобную? По-моему, там что-то про однотипность сущностей было, не? А группа и элемент справочника, например, Номенклатура - однотипные сущности?
25 - 05.01.2018 - 05:13
это если по-1Сному, то один общий справочник РодителиВсехСправочников.
а если по-нормальному, то для каждого справочника должен быть свой СправочникРодителей<ИменноЭтогоСправочника>.
технически я не вижу проблем такое организовать на уровне платформы. ибо кроме двух таблиц (элементов и родителей) нужен ещё и объект, который сможет всё это отобразить в форме списка, позволит работать с отборами, подборами, добавлением элементов и групп, изменением подчинённости и т.п.

про неродителей зацикливание и удаление уже писали.
26 - 05.01.2018 - 10:59
Цитата:
Сообщение от Зелёный тролль Посмотреть сообщение
О! Нормализация! И где в ней сказано, в нормализации, что надо хранить в записи ссылку на саму запись или ей подобную?
а почему бы не хранить?
Не пора ли освежить азы программирования?
Такой объект, как дерево значений (в том или ином виде используемый во всех СУБД) - строится именно на таком принципе. Элемент хранит ссылку на родителя.
Иерархический справочник по сути и есть дерево.
27 - 07.01.2018 - 23:01
26-Ирли Бёрд > пусть хранит ссылку на родителя. я не возражаю. но это будет ссылка на другой справочник, а не этот же.
28 - 07.01.2018 - 23:05
26-Ирли Бёрд > дерево значений и нормализация БД - это разные вещи, однако.
С т.з. БД дерево значений - это связь один-ко-многим (вероятно и несколько раз, то есть с большим количеством таблиц, чем две), а не ссылки на эту же таблицу. разве не так?
29 - 08.01.2018 - 14:03
(22) замечательно будут смотреться иерархические структуры у которых элемент родитель обладает теми же свойствами и поведением что и подчиненные. Как пример: справочник подразделений.
Подход (22) может быть уместен если родитель используются исключительно для группировок/отборов
30 - 09.01.2018 - 09:11
Бред какой-то
31 - 10.01.2018 - 19:09
(0) Приснилось!!!
32 - 10.01.2018 - 19:12
(0) В справочнике контрагентов есть реквизит "головной контрагент" и никто ещё не умер)


К списку вопросов
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск




Copyright ©, Все права защищены