Как выполнить арифметические операции с колонками в форме документа? 1С 8.3 УТ11.3

1. Shurik_M 2 14.02.18 15:58 Сейчас в теме
В форме документа есть табличная часть, создал новый реквизит и привязал к поле. Хочу выполнить арифметические операции, т.е. делить значение одного поле на другого и вывести на новой поле. как правильно написать формулу?
+
Найденные решения
9. FesenkoA 57 14.02.18 18:23 Сейчас в теме
(7) Нет, смотри на ответ №5. Если у тебя таблица ты должен сделать єто для всех
Для каждого строка Из Объект.таблица цикл
Строка.полуформула=Строка.Поле1/Строка.Поле2
Конеццикла

или при изменении строки изменять так как я чуть выше уже описал :)
+
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Shurik_M 2 14.02.18 16:10 Сейчас в теме
Элементы.ПолеФормула = Элементы.Поле1 / Элементы.Поле2 не принимает, выдает ошибку...
+
3. FesenkoA 57 14.02.18 16:13 Сейчас в теме
в каком случае должна выполняться операция?
а) при открытии документа
- в процедуре "при создании на сервере" или "при открытии" сделай Объект.ПолеФормула=Объект.Поле1/Объект.Поле2;
б) при изменении реквизита ххх
- создай/найди процедуру "при изменении" на форме, зайди в нее, и пропиши формулу
Объект.ПолеФормула=Объект.Поле1/Объект.Поле2;
ц) при проведении
- в модуле объекта найди процедуру "перед записью" и туда впиши ПолеФормула=Поле1/Поле2;
sergpogo; +1
5. FesenkoA 57 14.02.18 16:15 Сейчас в теме
(3) или в табличную часть добавил? Тогда тебе еще понадобится в случае "а" и "ц" - цикл, а в случае б - получить А= Элементы.ТвояТаблличнаяЧасть.текущиеДанные,
А.ПолеФормула = А.Поле1/А.Поле2;
+
7. Shurik_M 2 14.02.18 16:59 Сейчас в теме
(3) почему то не получается, написал формулу приизменении... у меня поля берутся вот таким образом: Объект.Таблица.ПолеФормула
а написал вот такую формулу:
Объект.Таблица.ПолеФормула = Объект.Таблица.Поле1 / Объект.Таблица.Поле2
заполнил поля 1 и 2 а итога нет.
+
8. Shurik_M 2 14.02.18 17:01 Сейчас в теме
(7) Пишет: поле объекта не обнаружен
+
9. FesenkoA 57 14.02.18 18:23 Сейчас в теме
(7) Нет, смотри на ответ №5. Если у тебя таблица ты должен сделать єто для всех
Для каждого строка Из Объект.таблица цикл
Строка.полуформула=Строка.Поле1/Строка.Поле2
Конеццикла

или при изменении строки изменять так как я чуть выше уже описал :)
+
10. Shurik_M 2 16.02.18 16:10 Сейчас в теме
(9) Спасибо огромное!!! Все получилось!!!
+
11. Shurik_M 2 20.02.18 20:55 Сейчас в теме
(9) Здравствуйте Алекс. Еще раз спасибо за помощь, Ваш ответ мне очень помог решать задачу. Есть еще один вопрос, если не трудно, каким образом можно получить значение Объект.Товары.Номенклатура.КоэффициентЕдиницыДляОтчетов в модуле формы документа РеализацияТоваровУслуг. Хочу использовать эту значению в формуле табличной части.
Прикрепленные файлы:
+
12. FesenkoA 57 21.02.18 13:23 Сейчас в теме
(11) аналогичнім образом. Если для всех строк то

Для каждого строка Из Объект.таблица цикл
Строка.полуформула=Строка.Поле1/Строка.Поле2 *Строка.Номенклатура.коєфициентЕдиниціДляОтчета
Конеццикла

А если для текущей строки (то есть ты стал на строку, поменял значение поля 1 и хочешь чтобы поле формулы тоже поменялось) тогда используешь процедуру ПриОкончанииРедактирования у ТЧ или при изменении у каждого зависимого реквизита в ТЧ и пишешь в ней

А= Элементы.ТвояТаблличнаяЧасть.текущиеДанные; // выбираешь ЭТУ строку
А.ПолеФормула = А.Поле1/А.Поле2*А.Номенклатура.коєфициентЕдиниціДляОтчета; //меняешь данные в ней
+
4. necropunk 9 14.02.18 16:15 Сейчас в теме
УФ же? Делайте операции не с Элементы.ТабЧасть, а с Объект.ТабЧасть, данные лежат там.
+
6. Shurik_M 2 14.02.18 16:24 Сейчас в теме
спасибо за ответы, сейчас попробую :)
+
Внимание! Тема сдана в архив

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот