AXForum  
Вернуться   AXForum > Microsoft Dynamics NAV > NAV: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 11.09.2007, 11:49   #1  
VasVovec is offline
VasVovec
Участник
Аватар для VasVovec
 
145 / 10 (1) +
Регистрация: 13.04.2007
:(
Интересует как работает навижен в следующей ситуации:

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

В моем конкретном случае, надо у каждой записи поставить дату закрытия, и создать новую запись с датой открытия = дата закрытия + 1 день.
Старый 11.09.2007, 12:24   #2  
Yoil is offline
Yoil
NavAx
NavAx Club
Лучший по профессии 2017
Лучший по профессии 2009
 
1,574 / 70 (6) ++++
Регистрация: 20.11.2002
Адрес: Msk
Navision Performace Tips

конкретнее - Navision Performace Tips
__________________
"Моей лошадке ядрышком полмордочки снесло..."
А.В.Суворов, письма к дочери
Старый 11.09.2007, 12:25   #3  
Fordewind is offline
Fordewind
Участник
 
1,134 / 10 (3) +
Регистрация: 01.12.2005
Цитата:
Сообщение от VasVovec Посмотреть сообщение
В моем конкретном случае, надо у каждой записи поставить дату закрытия, и создать новую запись с датой открытия = дата закрытия + 1 день.
Что б не экспериментировать: новые записи добавляете в темповую таблицу в вашем цикле, а потом еще один цикл переносит из теповой в реальную...

P.S. Помнится, что он вообще работает некорректно в приведенном вами цикле (я мог с чем то перепутать)
Старый 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;
Старый 12.03.2008, 19:54   #5  
RedFox is offline
RedFox
Участник
 
1,441 / 10 (0) +
Регистрация: 28.12.2004
Адрес: Киев
Цитата:
Сообщение от RedFox Посмотреть сообщение
Если Record вне фильтра = выходит за рамки фильтра, иначе меняет позицию (см. как ведет себя запись в рамках какой-нибудь формы).
Может уже никому не нужно, но при чистке нотника нашел сделанный когда-то скриншотна эту тему.
Миниатюры
Нажмите на изображение для увеличения
Название: Modifying_Filtered_values.JPG
Просмотров: 398
Размер:	104.7 Кб
ID:	10253  
 


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 17:08.