Показать сообщение отдельно
Старый 11.09.2007, 15:57   #4  
RedFox is offline
RedFox
Участник
 
1,441 / 10 (0) +
Регистрация: 28.12.2004
Адрес: Киев
Цитата:
Сообщение от VasVovec Посмотреть сообщение
Интересует как работает навижен в следующей ситуации:

Код:
...отфильтровали мы какие-то записи
IF Record.FIND('-') THEN
  REPEAT
	...
	обработка записей
	...
	UNTIL Record.NEXT = 0;
вот такой вот стандартный код.
Меня интересует как будет срабатывать NEXT, если поле записи входящее в ключ сортировки, в цикле обработки было измененно
(варианты: выходит за рамки фильтра, остается в рамках фильтра, но меняет свою позицию из-за сортировки)

В моем конкретном случае, надо у каждой записи поставить дату закрытия, и создать новую запись с датой открытия = дата закрытия + 1 день.
Если Record вне фильтра = выходит за рамки фильтра, иначе меняет позицию (см. как ведет себя запись в рамках какой-нибудь формы).

Внутри цикла:
1. Rec.INIT;
2. Rec.TRANSFERFIELDS(Record);
3. Rec."датa открытия" :=Record."датa закрытия" + 1; // не знаю какой тип поля, поэтому пишу просто увеличение;
4. Rec.INSERT;
5. // Copy record for change from cycle to another "Temp" variable NewRecord.
6. NewRecord."датa закрытия" := ...
7. Newrecord.MOFIDY;