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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 29.08.2011, 11:23   #1  
mira is offline
mira
Участник
Аватар для mira
 
140 / 25 (1) +++
Регистрация: 18.03.2007
Адрес: Москва
Доброго дня!

Эта ф-ия отвечает за названия столбцов –дат в матричной форме ( кодюнит PeriodFormManagement).
Заинтересовал меня выделенный кусок. Выполняется не засереный код.
А тут идет присвоение, а потом поиск. Засеренный код не выполняется.
и работает и без Calendar.SETRANGE("Period Type",PeriodType);

FindDate(SearchString : Text[3];VAR Calendar : Record Date;PeriodType : 'Day,Week,Month,Quarter,Year,Accounting Period') : Boolean

Calendar.SETRANGE("Period Type",PeriodType);

// вот здесь! >>
Calendar."Period Type" := PeriodType;
IF Calendar."Period Start" = 0D THEN
Calendar."Period Start" := WORKDATE;

// вот здесь! <<

IF SearchString IN ['','=><'] THEN
SearchString := '=<>';
IF PeriodType = PeriodType::"Accounting Period" THEN BEGIN
SetAccountingPeriodFilter(Calendar);
Found := AccountingPeriod.FIND(SearchString);
IF Found THEN
CopyAccountingPeriod(Calendar);
END ELSE BEGIN
Found := Calendar.FIND(SearchString);
IF Found THEN
Calendar."Period End" := NORMALDATE(Calendar."Period End");
END;
EXIT(Found);

Я не понимаю его логику.
Предположительно выполняется присвоение ключевых полей делается для поиска FIND('=><').

Подскажите, пжл, кто глубже понимает Нав, в чем фишка?
 


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

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

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