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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 28.02.2007, 17:08   #61  
moid is offline
moid
Участник
 
84 / 10 (1) +
Регистрация: 05.02.2007
Цитата:
Распишите здесь, вместе поглядим
Если через 30 мин сам ничего не придумаю... тода попытаюсь объяснить подробнее..
Если есть Outlook можно там посмотреть как работает.
Задачи -> Повторения -> Еженедельно -> Первый пункт
Старый 28.02.2007, 17:36   #62  
Gustav is offline
Gustav
Moderator
Аватар для Gustav
SAP
Лучший по профессии 2009
 
1,858 / 1152 (42) ++++++++
Регистрация: 24.01.2006
Адрес: Санкт-Петербург
Записей в блоге: 19
Цитата:
//К примеру: к 28.02.2007 прибавляем 3 недели и ф-я должна вернуть выбранный
// день.
В Global есть функция dateMthFwd, возвращающая дату, отстоящую от заданной на целое кол-во месяцев (вперед или назад). Посмотрите в нее. Для месяцев это действительно не совсем тривиально, потому что месяцы имеют разную продолжительность в днях. Функция для месяцев должна корректно учитывать особенно даты в концах месяцев - с 28 по 31 число. Т.е. 31.01.2007 + 1 месяц должно = 28.02.2007.

Недели же все одинаковые - по 7 дней. Поэтому дата, отстоящая вперед (назад) на заданное кол-во недель, получается простым прибавлением (вычитанием) к заданной дате кол-ва дней, кратного 7.

Хотя, учитывая Ваш шаблон 1100001, Вам, наверное, хочется, чтобы некая функция генерила примерно такую последовательность:
1, 2, 7, 8, 9, 14, 15, 16, 21... Нет?
Старый 28.02.2007, 18:11   #63  
moid is offline
moid
Участник
 
84 / 10 (1) +
Регистрация: 05.02.2007
Я сделал. Глючит время-от времени где-то. Отладчиком еще пройдусь и завтра скину код
Старый 01.03.2007, 09:45   #64  
moid is offline
moid
Участник
 
84 / 10 (1) +
Регистрация: 05.02.2007
PHP код:
static Date WeekSel(date _dateint Counstr ST)
{
    
int a;
    ;
    if(
strRightPos(ST,'1') > dayofwk(_date))
    {
       for(
a=1a<=7a++)
       {
         if((
Substr(ST,a,1) == "1") && dayofwk(_date)) //есть выбранный день
         
{
            return (
mkdate(dayofmth(_date)+ a-dayofwk(_date), mthofyr(_date), year(_date)));
         }
       }
    }
    else
      return(((
_date) + 7*Coun) - dayofwk(_date) + strLeftPos(ST,'1'));

Теги
дата

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Подробный отчет по датам к оплате ax_f DAX: Функционал 3 15.11.2004 17:10

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

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

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