Помощь - Поиск - Пользователи - Календарь
Полная версия: Документ ПеремещениеТоваров
1C-PRO - Форум по 1С > Форумы по платформе "1С:Предприятие 8.x" > (8.х) Конфигурирование на платформе "1С:Предприятие 8.x"
lanna_oops
Здравствуйте! Помогите, пожалуйста, в решении вопроса...
есть документ ПеремещениеТоваров. на форме и на печатной форме выводится таблица, состоящая из колонок: номер, номенклатура товара и количество. необходимо добавить колонку номенклатурная группа. но нужно чтобы при выборе номенклатуры товара автоматически выводилась номенклатурная группа этого товара.
я добавила колонку номенклатурная группа и написала следующую процедуру:
*********************************************************************************
Код
Процедура ТоварыПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)

СтрокаТЧ=ЭлементыФормы.Товары.ТекущиеДанные;
Если не ЗначениеЗаполнено(СтрокаТЧ.НоменклатурнаяГруппа) Тогда
Группа = Справочники.Номенклатура.Выбрать(СтрокаТЧ.Номенклатура.Ссылка);
СтрокаТЧ.НоменклатурнаяГруппа = Группа.НоменклатурнаяГруппа;
КонецЕсли;

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

**************************************************************************************
в итоге, данные в колонке Номенклатурная группа так и не выводятся. что не так делаю?... sm_razz.gif
Senya
Да почти всё так:

*********************************************************************************
Код
Процедура ТоварыПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)

СтрокаТЧ=ЭлементыФормы.Товары.ТекущиеДанные;
Если не ЗначениеЗаполнено(СтрокаТЧ.НоменклатурнаяГруппа) Тогда
// Групппа = Справочники.Номенклатура.Выбрать(СтрокаТЧ.Номенклатура.Ссылка); - это лишнее
СтрокаТЧ.НоменклатурнаяГруппа = СтрокаТЧ.Номенклатура.НоменклатурнаяГруппа;
КонецЕсли;

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


**************************************************************************************
Только эту процедурку нужно привязать не к событию ВыводСтроки , а к событию колонки Номенклатура - При изменении. Ну и ещё добавить в процедуру ОбработкаПодбора (или ОбработкаВыбора) - там где добавляется номенклатура по кнопке Подбор.
lanna_oops
Цитата(Senya @ 10.10.2008, 13:56) *

Да почти всё так:

*********************************************************************************
Код
Процедура ТоварыПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)

СтрокаТЧ=ЭлементыФормы.Товары.ТекущиеДанные;
Если не ЗначениеЗаполнено(СтрокаТЧ.НоменклатурнаяГруппа) Тогда
// Групппа = Справочники.Номенклатура.Выбрать(СтрокаТЧ.Номенклатура.Ссылка); - это лишнее
СтрокаТЧ.НоменклатурнаяГруппа = СтрокаТЧ.Номенклатура.НоменклатурнаяГруппа;
КонецЕсли;

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



**************************************************************************************
Только эту процедурку нужно привязать не к событию ВыводСтроки , а к событию колонки Номенклатура - При изменении. Ну и ещё добавить в процедуру ОбработкаПодбора (или ОбработкаВыбора) - там где добавляется номенклатура по кнопке Подбор.


Все сделала - ошибок нет, но все-равно не выводит!
Senya
Цитата(lanna_oops @ 10.10.2008, 15:45) *

Все сделала - ошибок нет, но все-равно не выводит!

Теперь понял - Вы не добавляли реквизит в документ, а на форму добавили новую колонку, где хотите выводить номенклатурную группу. Тогда попробуйте так:

Код
Процедура ТоварыПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)

// Если процедура была раньше здесь её код
// если нет добавьте её (событие - при выводе строки)

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

КонецПроцедуры
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Русская версия Invision Power Board © 2001-2009 Invision Power Services, Inc.