1С 8.2 Заполнение табличной части программно

Тема в разделе "1C и всё что с ней связано", создана пользователем SaschaL, 14 мар 2011.

Статус темы:
Закрыта.
  1. SaschaL

    SaschaL Гость

    Добрый день!
    есть проблема , конфигурация самописная на 1С 8.2, интерфейс управляемый.
    Есть документ который заполняется путем подбора из справочника товаров. Иногда возникает такая необходимость что нужно автоматически заполнить документ данными из некой группы справочника.

    Все данные извлекаются из справочника в серверной процедуре. Подскажите как из серверной процедуры заполнить табличную часть данными из справочника.

    Навоял вот такой код:

    Код ( (Unknown Language)):
    &НаКлиенте
    Процедура СобрНоменкл(Команда)
    СобратьМатериалы();
    КонецПроцедуры

    &НаСервере
    Процедура СобратьМатериалы()
    Для каждого Стр из Объект.Продукция цикл
    ТекСтрока = Стр.Продукция;
    Сообщить(ТекСтрока);
    Для Каждого стрМ из ТекСтрока.Спецификация цикл
    НоваяСтрока = Объект.Материалы.Добавить();
    НоваяСтрока.Номенклатура = СтрМ.Номеклатура;         
    КонецЦикла;
    КонецЦикла;
    КонецПроцедуры

    Даю пояснения. В документе 2 табличных части Одна из них продукция, вторая Материалы.
    Смысл такой из табличной части продукция выбирается по циклу продукция, нахотящаяся данной табличной части. У каждого вида продукции имеется (Тип Справочник.Изделия) имеется табличная часть, в которой находятся затраты на эту продукцию. Табличная часть называется Спецификация, обхожу её по циклу, все нормально данные извлекаются, теперь необходимо закинуть эти затраты в Табличную часть Материалы, которая находится в этом документе при добавлении программно выдается ошибка что "Поле объекта не обнаружено (Номенклатура)" и указывает на строку
    НоваяСтрока.Номенклатура = СтрМ.Номеклатура;

    не может найти в заполняемой табличной части реквизит Номенклатура, как впрочем и все остальные, хотя пустая строка создается.

    Не могу понять в чем тут дело.
     
  2. unknown181538

    unknown181538 НеГуру
    1C Team

    Регистрация:
    28 дек 2008
    Сообщения:
    1.418
    Симпатии:
    0
    Не понятно... а какая номенклатура не обнаружена из НоваяСтрока или из СтрМ?
     
  3. SaschaL

    SaschaL Гость

    Не обнаружена НоваяСтрока, все что связано с СтрМ выполняется, по всяком случае выводить и в отладчике и в Сообщение если такое использовать
     
  4. unknown181538

    unknown181538 НеГуру
    1C Team

    Регистрация:
    28 дек 2008
    Сообщения:
    1.418
    Симпатии:
    0
    Может все ее реквизиты созданы только на форме?
     
  5. Гость

    а как программно заполнить табличную часть справочника данными из регистра? есть регистр сведений "АналогиНоменклатуры" и справочник "Номенклатура". При открытии справочника из регистра в табличную часть "Номенклатуры" заносятся данные по определенному значению измерения "Продукция". Мне нужно, чтобы оно выгружало данные еще и в случае, если значение "Продукция" равно пустой строке.
    Код ( (Unknown Language)):
    Если НЕ ПустаяСтрока(АналогиНоменклатуры.Отбор.Продукция)Тогда
    ЭлементыФормы.АналогиНоменклатуры.Значение.Отбор.Продукция.Установить(Ссылка);
    Иначе ................??
    КонецЕсли;
     
Загрузка...
Статус темы:
Закрыта.

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