|
Проверка родителя на родителя | ☑ | ||
---|---|---|---|---|
0
piffoff
06.02.12
✎
23:30
|
Подскажите люди добрые
как быдет выглядеть цикл берем хрень смотрим является ли она подчиненым справоч. и есть ли у ней родитель, далее берем родителя хрени и опять то же самое. И так до тех пор пока родители не закончатся! все это для платформы 8.2, объекта справочник |
|||
1
Никола_
Питерский 06.02.12
✎
23:32
|
*Пошел за поп-корном ! )))
|
|||
2
Neco
06.02.12
✎
23:33
|
(0) Цель какая? Или чисто позырить, на вложенные процедуры?
|
|||
3
Попытка1С
06.02.12
✎
23:56
|
Рекурсия.
|
|||
4
ПесняПроЗайцев
07.02.12
✎
00:02
|
(0) все правильно, цикл, и больше не надо сущностей.
|
|||
5
Asmody
07.02.12
✎
00:10
|
(0) у элементов подч.справочников должен быть владелец, а не родитель (хотя последний может и быть). хотя, думаю ТС всё равно на такие мелочи
|
|||
6
Никола_
Питерский 07.02.12
✎
00:19
|
Ниче если я автору мозГ повыношу ? ))
|
|||
7
Живой Ископаемый
07.02.12
✎
00:27
|
||||
8
piffoff
07.02.12
✎
10:34
|
цель имеет место быть такая
есть например склад такой - то в нем шкаф такой - то в шкафу ящичек а в ящичке з яйца ... нужно расшифровать |
|||
9
Starhan
07.02.12
✎
10:36
|
(7) тема.
|
|||
10
piffoff
07.02.12
✎
10:51
|
(7) почти поверил
у кого - нибудь есть ценные указания а не как всегда? и нет должен быть именно родитель, проверка на то что справочник в группе или нет справочник имееи иерархию груп и элементов и да есть тут кто ниб с возрастом и IQ больше 10? |
|||
11
Reset
07.02.12
✎
10:57
|
ТС прав в (8). "Нужно расшифровать", чего он хочет то.
|
|||
12
Staffa
07.02.12
✎
10:57
|
(10) вам в (3) уже сказали как сделать
|
|||
13
НЕА123
07.02.12
✎
11:04
|
(11)
а что расшифровывать? в (0) четко поставлена задача. код нужен. судя по (10) - тупые мистяне не могут его написать. |
|||
14
Reset
07.02.12
✎
11:07
|
(13) Для меня - совершенно не четко.
|
|||
15
НЕА123
07.02.12
✎
11:09
|
(14)
да, согласен, бредовато - владельцы, родители... но цель-то понятна |
|||
16
aka AMIGO
07.02.12
✎
11:09
|
в 7-ке для понятия "родитель" есть для элемента ПолныйКод()
для "Владельца" - особенного ничего нет, но, получив Вледельца, уже в его справочнике также можно увидеть "ПолныйКод()".. да и ПолноеНаименование() тоже можно анализировать. кажется, это и в 8-ке есть.. 2 года без 8-ки, забывается :) |
|||
17
Fish
07.02.12
✎
11:12
|
(13) Совсем миста обленилась. Не могут за человека элементарный код написать :))))
(10) > и да есть тут кто ниб с возрастом и IQ больше 10 Нету. Тут только тупые малолетние тролли :))) |
|||
18
aka AMIGO
07.02.12
✎
11:14
|
+16 можно анализировать и "Уровни" для групп справочника.
вообще достаточно много способов и функций предусмотрено в 1с-языке, при полете фантазии можно много чего придумать и сделать :) |
|||
19
Reset
07.02.12
✎
11:15
|
(15) Честно, для меня, и цель-то не ясна. В (0) цель - "перебирать пока родители некончатся"(?!). Ну, можно телепатировать, хочет найти родителя верхненго уровня. Ок. Далее в (8) оказывается, что нужно расшифровать что-то, причем рассуждение ведется, противоположное первому (опускается по иерархии).
В (10) пишет нечитаемый набор слов(строка 2) и обзывает всех ослами(остальные строки). Имхо, ТСу нужно спуститься на землю, проявить уважение к читающим, прочистить свои мысли и внятно сформулировать задачу. P.S. Допускаю, что я плохой телепат. |
|||
20
aka AMIGO
07.02.12
✎
11:16
|
(19) >>цель - "перебирать пока родители некончатся"(?!).<<
пральна, это самый неудобный способ анализа |
|||
21
Reset
07.02.12
✎
11:19
|
(16) ПолныйКод, а тем паче полное наименование - весьма ненадежный инструмент для работы с иерахией (из-за отсутвия гарантиий на постоянную длину кода и отсутвие в нем разделителей)
|
|||
22
aka AMIGO
07.02.12
✎
11:21
|
(21)постоянная длина кода не нужна.
разделители тоже предусмотрены. Можно поискать в 8-ке функцию типа СЗ=глРазделить(ПолныйКод(),"разделительполного кода"), и анализировать эту СЗ. |
|||
23
aka AMIGO
07.02.12
✎
11:22
|
+22 разделитель, вроде как, стандартный "/"
|
|||
24
Serg_1960
07.02.12
✎
11:23
|
(0) Давай я тебе подскажу: кнопочка "Поиск", фраза "Родитель верхнего уровня". Много нового для себя откроешь :))
|
|||
25
Fish
07.02.12
✎
11:23
|
(22) Да что вы спорите о родителях, когда ТС вёл речь о подчинённых справочниках?
|
|||
26
Serg_1960
07.02.12
✎
11:25
|
(25) Соори, но тс позднее уточнил вопрос в (8)
|
|||
27
ИС-2
naïve
07.02.12
✎
11:27
|
есть более быстрый способ выбрать всех родителей - в запросе сделать итоги с иерархии
|
|||
28
aka AMIGO
07.02.12
✎
11:27
|
(25)я и про подчиненные справочники написал в (16) вроде-б прозрачно
если ТС знает точную принадлежность названий |
|||
29
Fish
07.02.12
✎
11:28
|
(26) Ну да, уточнил: "склад такой - то в нем шкаф такой - то в шкафу ящичек а в ящичке з яйца"
Т.е. ты считаешь, что или у него склады это номенклатура, или яйца - это склады :))) |
|||
30
Fish
07.02.12
✎
11:29
|
(29) ИМХО, тут имеет место быть как подчиненность справочников, так и иерархия групп одного справочника. Без ТС не разобраться :)))
|
|||
31
aka AMIGO
07.02.12
✎
11:30
|
(21)вот скрин рабочего документа с анализом иерархии и номеров групп одного справочника. Работает штатно, и сбоев за полтора года не отловлено:
http://img-fotki.yandex.ru/get/4403/22238773.0/0_69485_5619cd29_XL.jpg |
|||
32
palpetrovich
07.02.12
✎
11:31
|
пипец раздули проблему ...балаболы :)
|
|||
33
aka AMIGO
07.02.12
✎
11:32
|
(32) это точно :)
|
|||
34
Reset
07.02.12
✎
11:32
|
(23) Внимательней читаем последние два слова в (21). Если в коде(в содержимом) использован символ "/", глРазделить вылетает в трубу
|
|||
35
Serg_1960
07.02.12
✎
11:33
|
Мда... без уточнений ТС "ху их ху" получается "иголка - в яйце, яйцо - в утке, утка - в зайце, а заяц - в шоке" :)
|
|||
36
aka AMIGO
07.02.12
✎
11:33
|
(34)это я знаю. Специально в справочнике удалил слеши, и ввел контроль кода группы на недопустимый слеш
|
|||
37
Fish
07.02.12
✎
11:34
|
(31) Я так понимаю, что в этом примере уровень вложенности жёстко ограничен 2-мя уровнями?
|
|||
38
aka AMIGO
07.02.12
✎
11:35
|
(34)ты тоже прочти внимательно (22) :))
|
|||
39
aka AMIGO
07.02.12
✎
11:36
|
(37)да, писано под себя.. только не 2 а 3 уровня. Первый уровень имеет номер "0"
|
|||
40
wertyu
07.02.12
✎
11:37
|
(31) и где там яйцы?
|
|||
41
Serg_1960
07.02.12
✎
11:38
|
А вот если приколоться и усложнить... Код - числовой, контроль уникальности - отсутствует :))
|
|||
42
Reset
07.02.12
✎
11:39
|
(38) Прочитал внимательно, остался при своем (правильном) мнении. Ругаться не будем, за резковатый тон приношу извинения.
|
|||
43
Fish
07.02.12
✎
11:39
|
(39) Ну тогда пример несколько некорректен. ИМХО, правильный метод не должен быть привязан к количеству уровней. Тут единственный правильный метод - это (3) :))
|
|||
44
Reset
07.02.12
✎
11:40
|
(43) Цикл! :)
|
|||
45
smaharbA
07.02.12
✎
11:40
|
нет на вас Рупора Абсурда.
|
|||
46
aka AMIGO
07.02.12
✎
11:40
|
(40)в курицце :)
(41) - всё равно сработает. Уникальность не важна в этом документе.. весьма специфиццкий :) |
|||
47
wertyu
07.02.12
✎
11:41
|
(41)
ПолныйКод (FullCode) Синтаксис: ПолныйКод() Возвращаемое значение: Тип: Строка. |
|||
48
Fish
07.02.12
✎
11:42
|
Да уж развели флудильню, а бедный заклёванный ТС давно уже ищет яйца в ящиках шкафа на складе :)))
|
|||
49
aka AMIGO
07.02.12
✎
11:43
|
(43)в общем случае то, что у меня, конечно, некорректно! однозначно. Я потому и написал, что привязка к одному справочнику и только под себя :)
|
|||
50
Serg_1960
07.02.12
✎
11:44
|
(48) +1 От изобилия... ммм... информации на его бедную голову
|
|||
51
smaharbA
07.02.12
✎
11:45
|
не то ?
Функция Верхний(Элемент) Спр = Справочники[Элемент.Метаданные().Имя]; Если Элемент.ПринадлежитЭлементу(Спр.НайтиПоКоду(Элемент.ПолныйКод())) Тогда Возврат Спр.НайтиПоКоду(Элемент.ПолныйКод()).Ссылка; КонецЕсли; Возврат Вычислить("Элемент"+СтрЗаменить(Формат(0,"ЧВН=;ЧЦ="+(Элемент.Уровень())+";ЧГ=0;ЧН="),"0",".Родитель")).Ссылка; Стр = СтрЗаменить(Элемент.ПолныйКод(),"/","" ""); Структура = Новый Структура; Структура.Вставить("Код",СтрПолучитьСтроку(Стр,1)); Для Сч=1 По СтрЧислоСтрок(Стр) Цикл Выборка = Спр.Выбрать(Спр.ПустаяСсылка(),,Структура); Сообщить(Структура.Код); Пока Выборка.Следующий() Цикл Если Элемент.ПринадлежитЭлементу(Выборка.Ссылка) Тогда Возврат Выборка.Ссылка; КонецЕсли; КонецЦикла; Структура.Код = Структура.Код + "/" + СтрПолучитьСтроку(Стр,Сч+1); КонецЦикла; КонецФункции |
|||
52
piffoff
07.02.12
✎
11:48
|
Смиритесь все перед моим великолепием и Высокоайкьюностью!!!
Ячейка = ВыборкаСтрокЗапасы.Ячейка; пТекущийЭлемент = Ячейка; ЯчейкаРасшифровка = пТекущийЭлемент.Наименование; Пока ЗначениеЗаполнено(пТекущийЭлемент.Родитель) Цикл ЯчейкаРасшифровка = ЯчейкаРасшифровка + ", " + пТекущийЭлемент.Родитель.Наименование; пТекущийЭлемент = пТекущийЭлемент.Родитель; КонецЦикла; ОбластьМакета.Параметры.ЯчейкаРасшифровка = ЯчейкаРасшифровка; |
|||
53
piffoff
07.02.12
✎
11:49
|
может кому и понадобиться
|
|||
54
smaharbA
07.02.12
✎
11:49
|
(52)
см (51) внимательно Спр.НайтиПоКоду(Элемент.ПолныйКод()).Ссылка Все. |
|||
55
Serg_1960
07.02.12
✎
11:50
|
(52) "гы-гы"(с)
|
|||
56
Fish
07.02.12
✎
11:51
|
(53) Ну это вряд ли :))))
|
|||
57
aka AMIGO
07.02.12
✎
11:52
|
ну, вы и злыдни!! :)
нет, чтоб поддержать маленьких :) |
|||
58
Reset
07.02.12
✎
11:55
|
Пример в (51), даже, по моему, замечательней, чем пример в (52). Просто феерия.
|
|||
59
Serg_1960
07.02.12
✎
11:57
|
(57) Поддерживаю "маленких" :)
"Браво, бис, гениально, архиважно, эпохально... феерично... преклоняя колени перед высокоайкьюностью, прослезился от избытка благодарственных чуйств" |
|||
60
Fish
07.02.12
✎
11:59
|
(57) Я тоже поддержу маленьких супергениев: а давайте эту ветку в книгу знаний занесём :)))
|
|||
61
aka AMIGO
07.02.12
✎
12:00
|
(59)вооот!! другое дело! :)
полить младую поросль :) |
|||
62
aka AMIGO
07.02.12
✎
12:00
|
(60)давай! какие посты отметить? :)
|
|||
63
Serg_1960
07.02.12
✎
12:01
|
Надеюсь тс обладает чуством юмора, достаточным чтобы пережить эту ветку без глубоких моральных травм :)
|
|||
64
Lama12
07.02.12
✎
12:01
|
(8) УПП. Смотри как там разузлование работает.
|
|||
65
Fish
07.02.12
✎
12:03
|
(62) Ну наверное (0), (8) и конечно же (52). можно еще (10) для полноты картины :))))
|
|||
66
aka AMIGO
07.02.12
✎
12:06
|
(65) :))
|
|||
67
Живой Ископаемый
07.02.12
✎
12:47
|
2(10) не хватило АйКю чтобы понять как получается сразу без циклов самый верхний родитель?
|
|||
68
pumbaEO
07.02.12
✎
13:21
|
Не всегда поможет (7) http://www.screencast.com/t/nLVZ216zYzX
|
|||
69
Живой Ископаемый
07.02.12
✎
13:22
|
2(68) да, есть такое...
|
|||
70
pumbaEO
07.02.12
✎
13:32
|
Прогнал, в (36) уже сказали про это.
|
|||
71
piffoff
07.02.12
✎
14:19
|
бугага
не думал что тема будет такой популярной))) |
|||
72
n koretsky
07.02.12
✎
15:01
|
ТС, у меня стойкое убеждение, что код метод реализации свой задачи твоя гениальная айкьюшность слямзила на govnokod.ru/1c
если нет. то настоятельно рекомендую его туда запостить. страна должна знать своих героев! |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |