8.х Документ ПеремещениеТоваров

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

  1. TopicStarter Overlay
    lanna_oops
    Offline

    lanna_oops

    Регистрация:
    8 окт 2008
    Сообщения:
    30
    Симпатии:
    0
    Баллы:
    1
    Здравствуйте! Помогите, пожалуйста, в решении вопроса...
    есть документ ПеремещениеТоваров. на форме и на печатной форме выводится таблица, состоящая из колонок: номер, номенклатура товара и количество. необходимо добавить колонку номенклатурная группа. но нужно чтобы при выборе номенклатуры товара автоматически выводилась номенклатурная группа этого товара.
    я добавила колонку номенклатурная группа и написала следующую процедуру:
    *********************************************************************************
    Код:
    Процедура ТоварыПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)
    
    СтрокаТЧ=ЭлементыФормы.Товары.ТекущиеДанные;
    Если не ЗначениеЗаполнено(СтрокаТЧ.НоменклатурнаяГруппа) Тогда
    Группа = Справочники.Номенклатура.Выбрать(СтрокаТЧ.Номенклатура.Ссылка);
    СтрокаТЧ.НоменклатурнаяГруппа = Группа.НоменклатурнаяГруппа;
    КонецЕсли;
    
    КонецПроцедуры
    
    **************************************************************************************
    в итоге, данные в колонке Номенклатурная группа так и не выводятся. что не так делаю?... :unsure:
  2. Senya
    Offline

    Senya Опытный в 1С

    Регистрация:
    6 июн 2006
    Сообщения:
    594
    Симпатии:
    0
    Баллы:
    26
    Да почти всё так:

    *********************************************************************************
    Код:
    Процедура ТоварыПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)
    
    СтрокаТЧ=ЭлементыФормы.Товары.ТекущиеДанные;
    Если не ЗначениеЗаполнено(СтрокаТЧ.НоменклатурнаяГруппа) Тогда
    // Групппа = Справочники.Номенклатура.Выбрать(СтрокаТЧ.Номенклатура.Ссылка); - это лишнее
    СтрокаТЧ.НоменклатурнаяГруппа = СтрокаТЧ.Номенклатура.НоменклатурнаяГруппа;
    КонецЕсли;
    
    КонецПроцедуры
    
    
    **************************************************************************************
    Только эту процедурку нужно привязать не к событию ВыводСтроки , а к событию колонки Номенклатура - При изменении. Ну и ещё добавить в процедуру ОбработкаПодбора (или ОбработкаВыбора) - там где добавляется номенклатура по кнопке Подбор.
  3. TopicStarter Overlay
    lanna_oops
    Offline

    lanna_oops

    Регистрация:
    8 окт 2008
    Сообщения:
    30
    Симпатии:
    0
    Баллы:
    1
    Все сделала - ошибок нет, но все-равно не выводит!
  4. Senya
    Offline

    Senya Опытный в 1С

    Регистрация:
    6 июн 2006
    Сообщения:
    594
    Симпатии:
    0
    Баллы:
    26
    Теперь понял - Вы не добавляли реквизит в документ, а на форму добавили новую колонку, где хотите выводить номенклатурную группу. Тогда попробуйте так:

    Код:
    Процедура ТоварыПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)
    
    //  Если процедура была раньше здесь её код
    // если нет добавьте её (событие - при выводе строки)
    
    // Выводим номенклатурную группу
    Если ДанныеСтроки.Номенклатура <> Неопределено Тогда
    ОформлениеСтроки.Ячейки.<Имя Вашей ячейки (то биишь колонки)>.УстановитьТекст(ДанныеСтроки.Номенклатура.НоменклатурнаяГруппа.Наименование);
    Иначе
    ОформлениеСтроки.Ячейки.<Имя Вашей ячейки (то биишь колонки)>.УстановитьТекст("");
    КонецЕсли;
    
    КонецПроцедуры
    

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