Имя: Пароль:
1C
1С v8
Выбрать объекты которые НЕ входят в план обмена
,
0 sergey0703ua
 
15.05.13
10:48
Здравствуйте, кодом ниже в 1С8 можно получить объекты которые входят в определенный план обмена(у них разрешена Авторегистрация), а как можно выбрать объекты которые НЕ включены в план обмена?
Для каждого Элемент из Метаданные.ПланыОбмена.Найти("Полный").Состав Цикл
   Сообщить(Элемент.Метаданные.Имя);
КонецЦикла;
1 NcSteel
 
15.05.13
10:49
Перебрать все объекты метаданных и проверять "содержит" ли состав плана обмена данный объект.
2 Волшебник
 
15.05.13
10:50
Для каждого Элемент из Метаданные.Справочники Цикл
Если НЕ ПланыОбмена.Полный.Состав.Содержит(Элемент) Тогда
   Сообщить(Элемент.Метаданные.Имя);
КонецЕсли
КонецЦикла;
3 NcSteel
 
15.05.13
10:59
(2) зачем давать готовые алгоритмы. Так ничему и не научится.
4 sergey0703ua
 
15.05.13
11:16
Спасибо тебе добрый "Волшебник" и тебе злой " NcSteel" тоже спасибо))) может кому еще пригодиться(собрал тут по форуму):

МассивКлассовМетаданных = Новый Массив;
МассивКлассовМетаданных.Добавить("Константы");
МассивКлассовМетаданных.Добавить("Справочники");
МассивКлассовМетаданных.Добавить("Документы");
МассивКлассовМетаданных.Добавить("Отчеты");
МассивКлассовМетаданных.Добавить("Обработки");


Для каждого КлассМетаданных Из МассивКлассовМетаданных Цикл

    Для Каждого ОбъектМетаданных Из Метаданные[КлассМетаданных] Цикл
            Если НЕ Метаданные.ПланыОбмена["Полный"].Состав.Содержит(ОбъектМетаданных) Тогда
      Сообщить(ОбъектМетаданных.ПолноеИмя());
      КонецЕсли

    КонецЦикла;
КонецЦикла;
 
КонецПроцедуры
5 Rovan
 
гуру
15.05.13
11:20
(4) ты забыл ПВХ !
6 Волшебник
 
15.05.13
11:21
(5) и регистры
7 Maxus43
 
15.05.13
11:21
(4) ОБРАБОТКИ не МОГУТ быть в планах,
нет регистров ещё и т.д.
8 Волшебник
 
15.05.13
11:21
Отчеты и Обработки не могут входить в состав плана обмена
9 mikecool
 
15.05.13
11:22
(4) волшебник? добрый? с каких пор?
10 Волшебник
 
15.05.13
11:23
(9) как ипотеку выплатил
11 sergey0703ua
 
15.05.13
11:29
Теперь все красиво:)

МассивКлассовМетаданных = Новый Массив;
МассивКлассовМетаданных.Добавить("Константы");
МассивКлассовМетаданных.Добавить("Справочники");
МассивКлассовМетаданных.Добавить("Документы");
МассивКлассовМетаданных.Добавить("ПланыВидовХарактеристик");

МассивКлассовМетаданных.Добавить("ПланыСчетов");
МассивКлассовМетаданных.Добавить("ПланыВидовРасчета");

МассивКлассовМетаданных.Добавить("РегистрыСведений");
МассивКлассовМетаданных.Добавить("РегистрыНакопления");
МассивКлассовМетаданных.Добавить("РегистрыБухгалтерии");
МассивКлассовМетаданных.Добавить("РегистрыРасчета");


Для каждого КлассМетаданных Из МассивКлассовМетаданных Цикл

    Для Каждого ОбъектМетаданных Из Метаданные[КлассМетаданных] Цикл
     
      Если НЕ Метаданные.ПланыОбмена["Полный"].Состав.Содержит(ОбъектМетаданных) Тогда
      Сообщить(ОбъектМетаданных.ПолноеИмя());
      КонецЕсли

    КонецЦикла;
КонецЦикла;
12 Maxus43
 
15.05.13
11:30
(11) и бессмысленно. зачем это надо то?
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn