Имя: Пароль:
1C
1С v8
Ошибка при создании группы справочника
0 Pit0n_08
 
17.05.12
12:51
В обработке пытаюсь создать группу справочника выдает ошибку "Количество уровней справочника о". Проявляется это не всегда.
1 Wobland
 
17.05.12
12:51
спасибо, записал
2 DrShad
 
17.05.12
12:52
(0) продолжайте наблюдение!
3 Pit0n_08
 
17.05.12
12:52
Прошу пардону это по 7.7. В чем причина?
4 Wobland
 
17.05.12
12:52
(3) в количестве уровней иерерхии?
5 Eugene_life
 
17.05.12
12:53
(0) Справочник не поддерживает группы
6 DrShad
 
17.05.12
12:54
а проявляется не всегда, наверняка из-за того что создание ведется в разных справочниках с иерархией и без
7 Pit0n_08
 
17.05.12
12:54
Типовая бух. 7.7 справочник "Договоры", количество уровней 2.
8 DrShad
 
17.05.12
12:56
(7) к сожалению клюшки давно не открывал, а вот в снеговике в Договорах иерархия Элементов и групп нету
9 Pit0n_08
 
17.05.12
13:02
БухДоговоры.ИспользоватьВладельца(БухКонтр);
ТекГруппаДог = ПолучитьПустоеЗначение("Справочник.Договоры");
// ищем (создаем) группу договора
Если ТиС_Договор.Уровень() > 1 Тогда  
   Если БухДоговоры.НайтиПоНаименованию(ТиС_Договор.Родитель.Наименование,0,0) = 1 Тогда
   Если БухДоговоры.ЭтоГруппа() = 1 Тогда
       ТекГруппаДог = БухДоговоры.ТекущийЭлемент();
   Иначе // есть элемент с таким же именем - ищем группу перебором по наименованию
       ЕстьГруппаДог = 0;
       ТекНаимГруппыДоговораТиС = СокрЛП(ТиС_Договор.Родитель.Наименование);
       ТекНаимГруппыДоговораТиС = ВРег(СтрЗаменить(ТекНаимГруппыДоговораТиС," ",""));
       БухДоговоры.ВыбратьЭлементы();
       Пока БухДоговоры.ПолучитьЭлемент() = 1 Цикл
           Если  БухДоговоры.ЭтоГруппа() = 0 Тогда
               Продолжить;
           Иначе
               ТекНаимГруппыДоговораБух = СокрЛП(БухДоговоры.Наименование);
               ТекНаимГруппыДоговораБух = ВРег(СтрЗаменить(ТекНаимГруппыДоговораБух," ",""));
           Если Лев(ТекНаимГруппыДоговораБух,50) = Лев(ТекНаимГруппыДоговораТиС,50) Тогда
               ЕстьГруппаДог = 1;
           ТекГруппаДог = БухДоговоры.ТекущийЭлемент();
           Прервать;
           КонецЕсли;
       КонецЕсли;
       КонецЦикла;
   Если ЕстьГруппаДог = 0 Тогда //создаем группу договора
       Если ТолькоПроверка = 1 Тогда
           ВывестиСообщение("Надо записать группу договора "+СокрЛП(ТиС_Договор.Родитель.Наименование)+" для "+БухКонтр.Наименование,2);
       Иначе
       БухДоговоры.НоваяГруппа();  -  вот тут ошмбка
10 Pit0n_08
 
17.05.12
13:07
Модераторы перенесите в v7
11 Адинэснег
 
17.05.12
13:08
(10) и добавьте в кладезь RP
12 Адинэснег
 
17.05.12
13:08
КЗ
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.