Разбить период на подпериоды

1. user630155_zaverrr 20.12.16 09:20 Сейчас в теме
Здравствуйте, столкнулся с такой проблемой, есть период с 1.10.16 по 31.10.16, он разбит в таблице значений на дату начала и дату окончания с таким видом:
1.10.16 - 1.10.16;
2.10.16 - 2.10.16;
3.10.16 - 3.10.16;
...и так до 31.10.16, то есть каждый день в новой строке, теперь хочу свернуть этот период по условию, что если была оплата или сумма долга поменялась, хочу что бы свернулся так :
1.10.16 - 12.10.16;
13.10.16 - 23.10.16;
24.10.16 - 31.10.16;
не могу понять как это можно реализовать, подскажите пожалуйста...(
По теме из базы знаний
Ответы
Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. ture 606 20.12.16 09:25 Сейчас в теме
(0) ну просто строки перебирай и втыкай в новую ТЗ
3. user630155_zaverrr 20.12.16 10:21 Сейчас в теме
(2) подскажите как это сделать, перебрать понимаю а как обратиться к значению в строке...
ткните носом в код )
я просто только учу 1с по этому не очень разбераюсь..(
6. GeRon 20.12.16 10:52 Сейчас в теме
Случаем не по неделям разбить надо?
а то можно запросом без заморочек с Таблицей Значений свернуть.
(3) Значение колонки в ТЗ это свойство объекта, почитайте как работать с универсальными коллекциями в частности "Таблица значений"
4. user630155_zaverrr 20.12.16 10:42 Сейчас в теме
(2)Покажите как, я понимаю что пройтись, а вот с условием не очень понимаю, типа
если строка2(значение)<> строка1(значение) тогда
строка1(датаОкончания) = новСтр.ДатаОкончания ...
так типа или нет ?
как правельно поиндексу строку определять, я просто новичек и не очень разбераюсь в этом ..
5. S.V.Y 17 20.12.16 10:51 Сейчас в теме
Для Каждого СТРОКАТЗ из ТвояТЗ Цикл
 Если СТрокаТЗ.Значение <> СтрокаТЗ.Значение Тогда
  .....
 КонецЕсли;
КонецЦикла;


А вообще с такими вопросами не на форум надо, а в гугл.
7. user630155_zaverrr 20.12.16 10:55 Сейчас в теме
(5)гуглил, но ничего толком и не нашел ( спасибо попробую _ )
8. antz 20.12.16 11:06 Сейчас в теме
9. user630155_zaverrr 20.12.16 12:17 Сейчас в теме
наверно я не корректно написал вопрос, мне надо по условию, что если сумма долга поменялась в предыдущей строке тз, ну или в следущей строке тз, то из текущей строки выбрать дату окончания, а в следущуюю строку записать дату начала .. и так дальше.
10. user630155_zaverrr 20.12.16 12:20 Сейчас в теме
как обратиться к предыдущей или к следущей строке, не знаю (
11. antz 20.12.16 12:36 Сейчас в теме
12. user630155_zaverrr 20.12.16 13:41 Сейчас в теме
(11) я так понял в запросе вы и делаете это ?
спасибо буду пробовать )
13. user630155_zaverrr 20.12.16 13:48 Сейчас в теме
(11)Скажите, а как без запроса можно это реализовать?
14. antz 20.12.16 14:47 Сейчас в теме
(13) Аналогично.

Прикрепленные файлы:
Заполнение.epf
15. antz 20.12.16 14:49 Сейчас в теме
(14) Хотя нет, так неправильно. Вот так правильно:
Прикрепленные файлы:
Заполнение.epf
16. Katyushkaa 21.12.16 11:44 Сейчас в теме
ТвояТЗ		= Новый ТаблицаЗначений;
	СвернутаяТЗ	= ТвояТЗ.СкопироватьКолонки();
	
	мЗначениеДляПроверки = "";
	мЗначениеДляПроверки1 = "";
	
	Для Каждого СтрокаТЗ из ТвояТЗ Цикл
		Если Не мЗначениеДляПроверки = СтрокаТЗ.Значение ИЛИ 
			 Не мЗначениеДляПроверки1 = СтрокаТЗ.Значение1 Тогда
			 
			СвернутаяСтрокаТЗ = СвернутаяТЗ.Добавить();
			ЗаполнитьЗначенияСвойств(СвернутаяСтрокаТЗ, СтрокаТЗ);
		Иначе
			СвернутаяСтрокаТЗ.КонПериода = СтрокаТЗ.КонПериода;
		КонецЕсли;
		мЗначениеДляПроверки	= СтрокаТЗ.Значение;
		мЗначениеДляПроверки1	= СтрокаТЗ.Значение1;
	КонецЦикла;
Показать
Оставьте свое сообщение

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