Вопрос № 176341: Здравствуйте уважаемые эксперты! Дописываю БухгалтерияПредприятия 8.1. В документе есть табличное поле Работы с реквизитами Работа (тип-СправочникСсылка.НаименованияРабот), Сумма и табл.поле Материалы с реквизитами: У (тип-Булево), Работа(тип-Спра...
Вопрос № 176341:
Здравствуйте уважаемые эксперты! Дописываю БухгалтерияПредприятия 8.1. В документе есть табличное поле Работы с реквизитами Работа (тип-СправочникСсылка.НаименованияРабот), Сумма и табл.поле Материалы с реквизитами: У (тип-Булево), Работа(тип-СправочникСсылка.НаименованияРабот), Цена, в свойствах которого ПриИзмененииФлажка процедура МатериалыПриИзмененииФлажка (см.приложение). Подскажите пожалуйста, как мне реализовать следующее: при установлении флажка найти из табл.поля Работы такую же Работу как в
текущей строке табл.поля Материалы и к Сумме прибавить Цену; и обратно, при снятии флажка. Нужно учесть что флажок будет установлен в нескольких строках.
Отвечает М.Денис, Студент :
Здравствуйте, Darina9. Добавьте в таб.часть Работы реквизит МатериалУчтен, тип Булево. Этот реквизит не нужно отражать на форме. По коду разберетесь зачем он
Приложение:
----- The important thing is not to stop questioning. Albert Einstein
Ответ отправил: М.Денис, Студент
Ответ отправлен: 27.01.2010, 15:45
Номер ответа: 258997
Вам помог ответ? Пожалуйста, поблагодарите эксперта за это! Как сказать этому эксперту "спасибо"?
Отправить SMS#thank 258997
на номер 1151 (Россия) |
Еще номера »
Процедура МатериалыПриИзмененииФлажка(Элемент, Колонка) Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ИмяДокументаМатериалы.Сумма, |ИЗ | ИмяДокументаМатериалы.Материалы КАК ИмяДокументаМатериалы |ГДЕ | ИмяДокументаМатериалы.Ссылка = &ТекДокумент; | и ИмяДокументаМатериалы.У = Истина | и ИмяДокументаМатериалы.Работа = &Работа"; //
Это запрос к табличному полю Материалы
Ответ = Вопрос("Учесть материал ... ?",РежимДиалогаВопрос.ДаНет,0); Если Ответ = КодВозвратаДиалога.Да Тогда // Но я бы этого не делал ^ ЭлементыФормы.Материалы.ТекущиеДанные.У = НЕ ЭлементыФормы.Материалы.ТекущиеДанные.У; Запрос.УстановитьПараметр("ТекДокумент", Ссылка); Запрос.УстановитьПараметр("Работа", Элемент.Работа); Выборка = Запрос.Выполнить
.Выбрать(); Если Выборка.Следующий() Тогда Сумма = Выборка.Сумма; КонецЕсли; Для Каждого СтрокаРаботы Из ЭлементыФормы.Работа Цикл Если СтрокаРаботы.Работа = Элемент.Работа Тогда СтрокаРаботы.Сумма = Сумма; КонецЕсли; КонецЦикла; КонецЕсли; КонецПроцедуры
Ответ отправил: Полозов Олег aka Asher, Студент
Ответ отправлен: 28.01.2010, 08:28
Номер ответа: 259028
Вам помог ответ? Пожалуйста, поблагодарите эксперта за это! Как сказать этому эксперту "спасибо"?
Отправить SMS#thank 259028
на номер 1151 (Россия) |
Еще номера »
Оценить выпуск »
Нам очень важно Ваше мнение об этом выпуске рассылки!
* Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи.
(полный список тарифов)
** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
*** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.