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

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Gerry, 1 июн 2016.

  1. TopicStarter Overlay
    Gerry
    Offline

    Gerry

    Регистрация:
    1 июн 2016
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    Здравствуйте, помогите с кодом, есть справочник "Договоры" с несколькими реквизитами и табличной частью и есть документ "Расходная накладная" в котором есть реквизит договор с ссылкой на справочник "Договоры", необходимо чтобы в документе, при выборе договора(например Договор 1), который уже создан в справочнике, и заполнена значениями табличная часть,нужно чтобы автоматически заполнялась табличная часть в документе "Расходная Накладная" из этого справочника
  2. nomad_irk
    Offline

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.580
    Симпатии:
    717
    Баллы:
    204
    Что именно не получается сделать?
  3. TopicStarter Overlay
    Gerry
    Offline

    Gerry

    Регистрация:
    1 июн 2016
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    &НаСервере
    Процедура ДоговорПриИзмененииНаСервере()

    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | Договоры.СуммаПоДокументу,
    | Договоры.УсловияПоставок.(
    | Номенклатура,
    | Серия,
    | ЕдиницаИзмерения,
    | Валюта,
    | Количество,
    | Цена,
    | Сумма
    | )
    |ИЗ
    | Справочник.Договоры КАК Договоры";

    РезультатЗапроса = Запрос.Выполнить();

    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();

    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
    // Вставить обработку выборки ВыборкаДетальныеЗаписи
    КонецЦикла;

    КонецПроцедуры

    остановился на каркасе, плыву не могу сообразить что делать
  4. nomad_irk
    Offline

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.580
    Симпатии:
    717
    Баллы:
    204
    Можно напрямую к табличной части объекта обращаться, если нужны значения реквизитов шапки, то можно делать левое соединение, либо не делать и платформа сделает это сама.
  5. TopicStarter Overlay
    Gerry
    Offline

    Gerry

    Регистрация:
    1 июн 2016
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    и к справочнику можно обратиться? нужен один реквизит шапки
  6. nomad_irk
    Offline

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.580
    Симпатии:
    717
    Баллы:
    204
    Код:
    Выбрать
    ТЧ.РеквизитТЧ1,
    Спр.РеквизитШапки
    ИЗ
    Справочник.МойСправочник.ТЧ КАК ТЧ
    ЛЕВОЕ Соединение Справочние.МойСправочник КАК Спр
    ПО ТЧ.ССылка = Спр.Ссылка
  7. TopicStarter Overlay
    Gerry
    Offline

    Gerry

    Регистрация:
    1 июн 2016
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    1
    Последнее редактирование: 1 июн 2016
  8. TopicStarter Overlay
    Gerry
    Offline

    Gerry

    Регистрация:
    1 июн 2016
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    &НаСервере
    Процедура ДоговорПриИзмененииНаСервере()

    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | Договоры.УсловияПоставок.(
    | Номенклатура,
    | Серия,
    | ЕдиницаИзмерения,
    | Валюта,
    | Количество,
    | Цена,
    | Сумма
    | ),
    | РасходнаяНакладная.Договор
    |ИЗ
    | Документ.РасходнаяНакладная КАК РасходнаяНакладная
    | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Договоры КАК Договоры
    | ПО РасходнаяНакладная.Договор = Договоры.Ссылка
    |ГДЕ
    | Договоры.Ссылка = &Договор";

    Запрос.УстановитьПараметр("Договор", Объект.Договор);

    РезультатЗапроса = Запрос.Выполнить();

    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();

    Для Каждого ВыборкаДетальныеЗаписи.Следующий() Цикл

    НоваяСтрока = Объект.СписокНоменклатуры.Добавить();
    НоваяСтрока.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура;
    НоваяСтрока.Серия = ВыборкаДетальныеЗаписи.Серия;
    НоваяСтрока.ЕдиницаИзмерения = ВыборкаДетальныеЗаписи.ЕдиницаИзмерения;
    НоваяСтрока.Валюта = ВыборкаДетальныеЗаписи.Валюта;
    НоваяСтрока.Количество = ВыборкаДетальныеЗаписи.Количество;
    НоваяСтрока.Цена = ВыборкаДетальныеЗаписи.Цена;
    НоваяСтрока.Сумма = ВыборкаДетальныеЗаписи.Сумма;

    КонецЦикла

    КонецПроцедуры

    на это выдает ошибку поле объекта не обнаружено, помогите пожалуйста исправить
    --- Объединение сообщений, 1 июн 2016 ---
    Для каждого случайно написал, там стандартный Пока

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