Добрый день. Подскажате, как при записи нового элемента справочника, записать его в определенную группу.
//Данная обработка заполняет справочник Места Хранения из файла ДБФ
//******************************
Процедура Выполнить()
СпрМеста = СоздатьОбъект("Справочник.МестаХранения");
Попытка
ДБФ=СоздатьОбъект("XBase");
Исключение
Предупреждение("Не удачная попытка создания файла.","!");
Возврат;
КонецПопытки;
ДБФ.ОткрытьФайл(ИмяФайла);
Если ДБФ.Открыта()=0 тогда
Предупреждение("Не могу открыть базу");
Возврат;
КонецЕсли;
Если ДБФ.Открыта()=1 Тогда
ДБФ.ДобавитьИндекс("sklad","kod",0,0,"");
ДБФ.СоздатьИндексныйФайл("C:\user\1c\dbf\sklad.CDX");
ДБФ.ТекущийИндекс("sklad");
//**устанавливаем указатель на первую запись
ДБФ.Первая();
Пока ДБФ.ВКонце() = 0 Цикл
код = Строка(ДБФ.KOD);
наим = ДБФ.NAME;
СтрокаПоиска1=Лев(код,2);
//=================Создание групп
Если СпрМеста.НайтиПоКоду(СтрокаПоиска1, 0)=0 Тогда
СпрМеста.НоваяГруппа();
СпрМеста.Код = СтрокаПоиска1;
СпрМеста.Наименование = наим;
СпрМеста.Записать();
КонецЕсли;
//=================В созданой группе создаем элементы
СтрокаПоиска=Лев(код,4);
Если спрМеста.НайтиПоКоду(СтрокаПоиска, 0) <> 1 Тогда
СпрМеста.Новый();
Босс = СоздатьОбъект("Справочник.МестаХранения");
Босс.НайтиПоКоду(СтрокаПоиска1, 0);
СпрМеста.Родитель = Босс.ТекущийЭлемент();
СпрМеста.Код = СтрокаПоиска;
СпрМеста.Наименование = ДБФ.Name;
СпрМеста.ВидСклада = Перечисление.ВидыСкладов.Оптовый;
СпрМеста.Тип = Перечисление.ТипыМестХранения.Склад;
СпрМеста.Записать();
КонецЕсли;
ДБФ.Следующая();
КонецЕсли;
ДБФ.ЗакрытьФайл();
Предупреждение("Склады заведены!");
КонецЦикла;
denis84 @ Сегодня, 10:00
,
Мне нужно после записи элемента справочника поместить его в определенную Группу
kostya77 @ Сегодня, 10:03
,
почему После Записи ? а не сразу - при создании?
sava1 @ Сегодня, 10:08
,
а как при создании? Элемент создается из формы списка справочника
kostya77 @ Сегодня, 10:03
,
Ось код, яким я переношу записаний елелемент справочника в конкретну групу (непотрібні єлементи переношу в групу "мусор")
клиент= ТекущийЭлемент();
груп=СоздатьОбъект("Справочник.Контрагенти");
ТекСпр=СоздатьОбъект("Справочник.Контрагенти");
Если груп.найтипоКоду("__",0) =1 тогда
Група=Груп.ТекущийЭлемент();
ТекСпр.найтиЭлемент(клиент);
ТекСпр.Родитель=Група;
ТекСпр.Записать();
КонецЕсли;
Процедура ВводНового(ПризнКопирования)
volodya1122 @ Сегодня, 10:53
,
на формі елемента є реквізит Группа. Користувач буде його заповняти "руками". Як зробити щоб єлемент записався в вибрану групу?
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua