Как проверить поле на наличие в СтрокаТабл?
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(5) так может в функцию ЕстьРеквизитТабЧастиДокумента передаются метаданные документа РеализацияТоваров и имя ТЧ "Товары" и там действительно есть реквизит СкидкаАкция, а в переменной СтрокаТабличнойЧасти у Вас сейчас строка, которая соответствует строке ТЧ Материалы документа ПоступлениеМатериалов
(6)всё,наверное правильно понял что в строке:
сли ТипЗнч(ДокументОбъект) = Тип("ДокументОбъект.ЗаказПокупателя") мне надо было сравнивать не ДокументОбъект,а
СтрокаТабличнойЧасти на Тип : ДокументТабличнаяЧастьСтрока.ЗаказПокупателя.Товары, и тогда бы было гуд.
Но вопрос номер два,почему в строке:
Если ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("СкидкаАкция", МетаданныеДокумента,
ИмяТабличнойЧасти) Тогда оно считает условие истиной во всех ситуациях,не пойму
сли ТипЗнч(ДокументОбъект) = Тип("ДокументОбъект.ЗаказПокупателя") мне надо было сравнивать не ДокументОбъект,а
СтрокаТабличнойЧасти на Тип : ДокументТабличнаяЧастьСтрока.ЗаказПокупателя.Товары, и тогда бы было гуд.
Но вопрос номер два,почему в строке:
Если ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("СкидкаАкция", МетаданныеДокумента,
ИмяТабличнойЧасти) Тогда оно считает условие истиной во всех ситуациях,не пойму
(4)дело было так:
В Заказе покупателя ссоздал Реквизит: СкидкаАкция, далее в ОбщемМодуле ОбработкаТабличных часте в процедуре РассчитатьСуммуТабЧасти,поместил
Так вот и ругается в некоторых моментах,к примеру если зайти в обработкуТЧ через кнопку "Изменить",там делать махинации,сразу ругается что нет такого поля что писал в первом сообщении,и если услугу добавлять,то почему-то тоже иногда ругается(( что не обнаружено поле
В Заказе покупателя ссоздал Реквизит: СкидкаАкция, далее в ОбщемМодуле ОбработкаТабличных часте в процедуре РассчитатьСуммуТабЧасти,поместил
СкидкаАкция = 0;
Если ТипЗнч(ДокументОбъект) = Тип("ДокументОбъект.РеализацияТоваровУслуг") или ТипЗнч(ДокументОбъект) = Тип("ДокументОбъект.ЗаказПокупателя") Тогда
УстановкаАкционнойСкидки(ДокументОбъект,СтрокаТабличнойЧасти);
КонецЕсли;
Если ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("СкидкаАкция", МетаданныеДокумента,
ИмяТабличнойЧасти) Тогда
/////вот здесь оно уже считает что Поле есть и проходит этот этам дальше,как сделать проверку?
СкидкаАкция = СтрокаТабличнойЧасти.СкидкаАкция;
СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * РассчитатьЦенуСоСкидкой(Цена, ПроцентАвтоматическихСкидок, ПроцентСкидкиНаценки,СкидкаАкция, ДокументОбъект);
КонецЕсли;
ПоказатьТак вот и ругается в некоторых моментах,к примеру если зайти в обработкуТЧ через кнопку "Изменить",там делать махинации,сразу ругается что нет такого поля что писал в первом сообщении,и если услугу добавлять,то почему-то тоже иногда ругается(( что не обнаружено поле
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот