WEB форумы на jedi
[Форум] [Помощь] [Поиск] [Выйти]
Добро пожаловать, [info]User

WEB форумы на jedi [ПОИСК] [Архив до 03.2006]

Тема Че за хрень? К предыдущему сообщению На следующее сообщение Бухгалтерский и т.п. софт

Отправил krasnoshapka в 01:09 16.10.2002[Ответить]
В крадце:

СпрК = СоздатьОбъект(Справочник.Контрагенты);
СпрД = СоздатьОбъект(Справочник.Договоры);
СпрК.ВыбратьЭлементы();
Пока СпрК.ПолучитьЭлемент() = 1 Цикл
СпрД.ИспользоватьВладельца(СпрК.ТекущийЭлемент());
СпрД.ВыбратьЭлементы();
Пока СпрД.ПолучитьЭлемент() = 1 Цикл
Сообщить(Уровень + СпрД.Уровень());
КонецЦикла;
КонецЦикла;

Когда цикл переходит на второго контрагента, выдается сообщения
Уровень 2 или Уровень 3, т.е еще обрабатываются подчиненные записи первого и не возможно создать группу.

Может кто сталкивался с таким?





Отправил Coнный в 08:03 16.10.2002[Ответить]
Если попал и при втором контрагенте во внутренний цикл, откуда и выводится СООБЩИТЬ значит и у этого второго контрагента есть договор, но совершенно не значит, что еще обрабатываются подчиненные записи первого и не возможно создать группу


Отправил Peps в 10:23 16.10.2002[Ответить]
Сталкивался, вечерком посмотрю записи свои (на работу порулил, некогда).


Отправил krasnoshapka в 18:23 16.10.2002[Ответить]
Борода, уже вечер, роди что - нибудь дельное, а то я на грани отчаяния.


Отправил krasnoshapka в 12:28 17.10.2002[Ответить]
Уже утро следующего дня :)


Отправил Peps в 20:27 17.10.2002[Ответить]
Вчера убегал, прочитал не очень внимательно. Кому ты группу созавать собираешься ? Все должно работать. Проверь релиз или возможно в справочнике договора разрешен один уровень... И поточней желательно, а то я так довно тебы не видел и не слушал, что стал плохо понимать.


Отправил Baтт в 16:39 16.10.2002[Ответить]
Сообщить(СпрК.Наименование); в начале цикла по контрагентам может быть прояснит ситуацию?
У второго контрагента есть группа договоров (иначе откуда уровни 2, 3), а значит у него должен наблюдаться и уровень 1.
Если это не так тогда и верно хрень, и без GOTO там (в реальном алгоритме, а не примере) не обошлось :)


Отправил krasnoshapka в 18:25 16.10.2002[Ответить]
В том-то вся фишка, что у второго еще нет ни одной записи в подчиненом справочнике и мне надо програмно создать группу, но получается, что я создаю погруппу для первого контрагента.


Отправил Magic Eagle в 00:49 17.10.2002[Ответить]
На сонную голову могу посоветовать вот так:

СпрК = СоздатьОбъект(Справочник.Контрагенты);
СпрК.ВыбратьЭлементы();
Пока СпрК.ПолучитьЭлемент() = 1 Цикл
СпрД = СоздатьОбъект(Справочник.Договоры);
СпрД.ИспользоватьВладельца(СпрК.ТекущийЭлемент());
СпрД.ВыбратьЭлементы();
Пока СпрД.ПолучитьЭлемент() = 1 Цикл
Сообщить(Уровень + СпрД.Уровень());
КонецЦикла;
КонецЦикла;




Отправил krasnoshapka в 12:28 17.10.2002[Ответить]
Я понял твою идею: сделать движение по договорам, что бы соскочить со старого владельца, но если там записей еще нет, то цикл проходит вхолостую и ничего от этого не меняется.

Хотя идею с созданием объекта внутри, а не снаружи первого цикла надо попробовать.


Отправил Blaki в 12:38 17.10.2002[Ответить]
Не смог повторить вашу ситуацию, у меня нормально создавались группы первого уровня. Может просто что то не понял. Возможно создавать группу внутри первого цикла и не стоит, может будет достаточно сделать выборку без учета владельца? перед использовать владельца?


Отправил Oldman в 15:00 17.10.2002[Ответить]
Шапка, а может релиз глючный? Поставь другой.
А еще похоже что индексы дурят.



Отправил krasnoshapka в 23:07 17.10.2002[Ответить]
Спасибо всем за участие идея Мэйджика пришлась впору. Создавать каждый раз подчиненный объект внутри цикла.



Отправил Peps в 23:38 17.10.2002[Ответить]
Релиз у тебя старый...


Отправил krasnoshapka в 12:23 19.10.2002[Ответить]
18. А с 19 Цитрикс не дружит.


Отправил Oldman в 12:21 18.10.2002[Ответить]
Так это работу замедлит, если много создавать будешь....


Отправил krasnoshapka в 12:24 19.10.2002[Ответить]
Раз в месяц 4 минуты можно подождать.