Имя: Пароль:
1C
1С v8
Столбец состояния ЭСФ добавить в список реализаций товаров!
0 Envoy777
 
02.05.20
10:33
Подскажите пжл , мне нужно добавить в форму списка документов "реализации товаров" столбец "Состояние ЭСФ" он есть в форме списка документов "СчетФактураВыданный" вот процедура которая заполняет состояниеЭСФ:
Процедура ЗаполнитьКолонкуСостояниеЭСФПриПолученииДанных(Знач ЭтоСчетФактураВыданный, Знач СписокСчетовФактур, ОформленияСтрок) Экспорт
    
    Если НЕ СписокСчетовФактур.Колонки.СостояниеЭСФ.Видимость Тогда
        Возврат;
    КонецЕсли;
    
    ИмяКолонкиСпособОбмена = ?(ЭтоСчетФактураВыданный, "СпособВыставления", "СпособПолучения");
    ВидимостьКолонкиСпособОбмена = СписокСчетовФактур.Колонки[ИмяКолонкиСпособОбмена].Видимость;
    
    // Заполнить массив данных счетов-фактур.
    МассивДанныхСчетовФактур = Новый Массив;
    Для Каждого ОформлениеСтроки Из ОформленияСтрок Цикл
        ДанныеСчетаФактуры = Новый Структура;
        ДанныеСчетаФактуры.Вставить("СчетФактура", ОформлениеСтроки.ДанныеСтроки.Ссылка);
        Если ВидимостьКолонкиСпособОбмена Тогда
            ДанныеСчетаФактуры.Вставить("СпособОтправкиПолучения", ОформлениеСтроки.ДанныеСтроки[ИмяКолонкиСпособОбмена]);
        Иначе
            ДанныеСчетаФактуры.Вставить("СпособОтправкиПолучения", ОформлениеСтроки.ДанныеСтроки.Ссылка[ИмяКолонкиСпособОбмена]);    
        КонецЕсли;
        МассивДанныхСчетовФактур.Добавить(ДанныеСчетаФактуры);
    КонецЦикла;
    
    // Получить состояния связанных документов ЭСФ.
    КоллекцияСостоянийЭСФ = ЭСФВызовСервера.НоваяКоллекцияСостоянийЭСФ(МассивДанныхСчетовФактур);
    
    // Заполнить колонку "Состояние ЭСФ".
    Для Каждого ОформлениеСтроки Из ОформленияСтрок Цикл
        ОформлениеСтроки.Ячейки.СостояниеЭСФ.ОтображатьТекст = Истина;
        СостояниеЭСФ = КоллекцияСостоянийЭСФ.Получить(ОформлениеСтроки.ДанныеСтроки.Ссылка);
        Если СостояниеЭСФ <> Неопределено Тогда
            ОформлениеСтроки.Ячейки.СостояниеЭСФ.Текст = СостояниеЭСФ.Представление;
            ОформлениеСтроки.Ячейки.СостояниеЭСФ.ЦветТекста = ЭСФКлиентСервер.ЦветСостоянияЭСФ(СостояниеЭСФ.Состояние);
        Иначе
            ОформлениеСтроки.Ячейки.СостояниеЭСФ.Текст = "";    
        КонецЕсли;
    КонецЦикла
    
КонецПроцедуры
  

Вопрос как мне передать значения документа "СчетФактураВыданный" через форму списка документов "реализации товаров" в эту процедуру чтобы у меня определялась состояниеЭСФ по счет-фактуре привязанной к реализации.
Ошибка: в этой строке ИмяКолонкиСпособОбмена = ?(ЭтоСчетФактураВыданный, "СпособВыставления", "СпособПолучения"); , так у меня нету этих полей в документе реализации.