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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 06.10.2004, 10:42   #8  
Uni_DeMoN_imported is offline
Uni_DeMoN_imported
Участник
 
83 / 10 (1) +
Регистрация: 05.04.2004
Цитата:
Сообщение от tyrex
Почему на первый взгляд?
Вот. Получилось за 7 минут

Код:
VAR
 Log: Record 405;

PROCEDURE GetPeriodicValue(Date:Date; TableNo:Integer; FieldNo:Integer) : Text[250];
    BEGIN
      // Функция получения значения периодического реквизита
      // Вход:
      //        Date  - дата, на которую требуется получить значение
      //        TableNo - номер таблицы
      //        FieldNo - номер поля
      // Выход - значение

      Log.RESET;
      Log.SETRANGE("Table No.",TableNo);
      Log.SETRANGE("Field No.",FieldNo);
      //Log.SETFILTER("Primary Key Field 1 Value",Value);
      IF Log.FIND('+') THEN
      REPEAT
         IF DT2DATE(Log."Date and Time")<=Date THEN EXIT(Log."New Value")
      UNTIL Log.NEXT(-1) = 0;
      EXIT('');
    END;
Жалющие могут дополнить фильтрацию по нужному ключу (закомментировано), а также выходное значение при пустой таблице. Алгоритм реализован в лоб. Я уже сейчас вижу как можно его упростить.
спасибо конечно за грамотный исходный код, но Вы забываете, что надо, во первых, перелопатить весь функционал в системе, который отвечает за подтягивание необходимых периодических реквизитов, а это не только отчёты, но по всей вероятности и все остальные обьекты, во вторых, подумайте, если сотрудник уволился а нового нет, скажем неделя выпадает, а документы должен подписывать кто-то, кто исполняет обязанности (временно) этого лица.
Как тут быть?
Реализовать-то можно быстро, а потом всё равно придёться дописывать...
Спасибо всё равно.
 


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

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

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