Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 10:00

Вычисления в строке документа

Автор Чернов Андрей, 01 мая 2013, 10:34

0 Пользователей и 1 гость просматривают эту тему.

Чернов Андрей

Это не то(
Добавлено: 01 мая 2013, 12:50


Здесь задействуется только текущая строка.

Besart

а вы вообще пробовали, у меня все работает

Чернов Андрей

Это немного не та процедура.
Мне нужно, чтобы при создании новой строки автоматически заполнялось поле "В наличии", значение которого складывается из значения "Остаток" предыдущей строки и значения "Принято" текущей строки.
Ваша процедура работает лишь в пределах одной строки:
Остаток = Принято - Выдано - Забраковано + ВНаличии. Для меня подобные процедуры не составляют проблем, а вот как производить расчёты с данными из разных строк, я не знаю. И такое чувство, что никто не знает.

Besart

тогда запросом нужно выводить данные об Остатке и подставлять эти данные в Вналичии в новой строке, не имея ИБ я не смогу написать запрос, если очень нужно скиньте базу на яндекс-диск

Чернов Андрей

Ладно, я попробую сам разобраться. Благодарю за наводку)

Dethmontt

Цитата: Чернов Андрей от 01 мая 2013, 14:25И такое чувство, что никто не знает.
У всех праздники, все отдыхают =)
======================================================
Цитата: Чернов Андрей от 01 мая 2013, 14:25Это немного не та процедура.
Мне нужно, чтобы при создании новой строки автоматически заполнялось поле "В наличии", значение которого складывается из значения "Остаток" предыдущей строки и значения "Принято" текущей строки.
А если в табличной части 10 строк и например пользователь изменит значение 3й строки что произойдет с 4й строкой и с 10ой?
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Чернов Андрей

Цитата: Dethmontt от 02 мая 2013, 14:18А если в табличной части 10 строк и например пользователь изменит значение 3й строки что произойдет с 4й строкой и с 10ой?
В них значения должны измениться автоматически. А вы не знаете подходящей процедуры, Денис? Мне очень нужно.


Dethmontt

Тогда вам нужно определиться, по смене каких значений в табличной части (нужны имена колонок) должен происходить пересчет во всей табличной части (так же нужны имена колонок в которых будет производиться пересчет)
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Dethmontt

Будет что то типа:
Процедура МояКолонкаПриИзменении(Элемент)
  ТекДанные = ЭлементыФормы.ТабличнаяЧасть.ТекущиеДанные();
  //Нам нужен номер строки, т.е. изменили значение в строке 2 во всех строках ниже должен выполниться пересчет значений
  Если ТекДанные = Неопределено Тогда
     Возврат;
  КонецЕсли;
  Если ТабличнаяЧасть.Количество() <= 1 или ТекДанные.НомерСтроки = ТабличнаяЧасть.Количество() Тогда
     Возврат;
  КонецЕсли;
  Для НомерСтроки = ТекДанные.НомерСтроки По ТабличнаяЧасть.Количество()-1 Цикл
     //Непосредственно пересчет - в каждой строке ниже измененной
     //Пример
     ТабличнаяЧасть[НомерСтроки].Остаток =  ТабличнаяЧасть[НомерСтроки-1].Принято -  ТабличнаяЧасть[НомерСтроки-1].Выдано;
   КонецЦикла;
КонецПроцедуры
     
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

anonimous


Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск