7.7 Как програмно присвоить реквезиту документа значение из подчиненного справочника

Тема в разделе "Общие вопросы "1С:Предприятие 7.7"", создана пользователем Aman, 21 янв 2013.

  1. TopicStarter Overlay
    Aman
    Offline

    Aman

    Регистрация:
    21 янв 2013
    Сообщения:
    1
    Симпатии:
    0
    Баллы:
    1
    Здраствуйте Народ. Помогите пожалуйста.

    Как програмно сделать чтобы в реквезит документа вставлялись данные из справочника?
    Что надо сделать: Получить UID? ссылку?
    Есть заполненный данными справчоник Цвета. С реквезитами Код, Наименование и Цвета с кодировками.
    и есть документ с реквезитом цвет.


    Вот код.
    xl = ПолучитьCOMОбъект(,"Excel.Application");
    ВсегоСтрок = xl.Cells.CurrentRegion.Rows.Count;
    ВсегоКолонок = xl.Cells.CurrentRegion.Columns.Count;
    НаборЗаписей = РегистрыСведений.СведенияАвтомобиля.СоздатьНаборЗаписей();
    ДокСвоистваАвто= Документы.УстановкаСвойствАвтомобиля.СоздатьДокумент();
    Для row = 2 По ВсегоСтрок Цикл
    стр3=xl.Cells(row,2).Value;
    Сообщить(стр3);
    Строка = стр3;
    ПеремТипМодели = Справочники.ска_ТипыМоделей.НайтиПоНаименованию("Строка");
    Если ПеремТипМодели = Справочники.ска_ТипыМоделей.ПустаяСсылка() Тогда
    //создаем
    СправочникМодели = Справочники.ска_ТипыМоделей.СоздатьЭлемент();
    СправочникМодели.Наименование = Строка;
    СправочникМодели.Записать();
    НайденнаяМодель = СправочникМодели.Ссылка;
    ДокСвоистваАвто.Дата=ТекущаяДата();
    Сообщить(Справочники.ска_ТипыМоделей.ПолучитьСсылку());
    ДокСвоистваАвто.Дата = ТекущаяДата();
    ДокСвоистваАвто.Заполнить(ДокСвоистваАвто.ТипМодели);
    //ДокСвоистваАвто.Записать(ДокСвоистваАвто.Дата);
    //ДокСвоистваАвто.Записать(ДокСвоистваАвто.ТипМодели);
    ДокСвоистваАвто.Записать();
    ДокСвоистваАвто.Записать(РежимЗаписиДокумента.Проведение,РежимПроведенияДокумента.Неоперативный);
    Иначе
    СправочникМодели = Справочники.ска_ТипыМоделей.СоздатьЭлемент();
    НайденнаяМодель = ПеремТипМодели;
    ДокСвоистваАвто.Дата=ТекущаяДата();
    ДокСвоистваАвто.ТипМодели=Справочники.ска_ТипыМоделей.НайтиПоНаименованию(Строка);
    //ДокСвоистваАвто.ТипМодели=(НайденнаяМодель);
    ДокСвоистваАвто.Заполнить(ДокСвоистваАвто.Дата);
    ДокСвоистваАвто.Заполнить(ДокСвоистваАвто.ТипМодели);
    //ДокСвоистваАвто.Записать(ДокСвоистваАвто.Дата);
    //ДокСвоистваАвто.Записать(ДокСвоистваАвто.ТипМодели);
    Сообщить(Справочники.ска_ТипыМоделей.ПолучитьСсылку());
    ДокСвоистваАвто.Записать();
    ДокСвоистваАвто.Записать(РежимЗаписиДокумента.Проведение,РежимПроведенияДокумента.Неоперативный);
    КонецЕсли;
    КонецЦикла;

Поделиться этой страницей