SharePoint Designer 2010 - определите, находится ли сегодняшняя дата в x днях столбца с начальной датой, используя условное форматирование - PullRequest
2 голосов
/ 10 марта 2011

Я использую SPD 2010 и Sharepoint Server 2010.

Используя условное форматирование, я пытаюсь отформатировать список так, чтобы, если сегодняшняя дата превышает 3 дня после столбца начальной даты, ячейка повернуласькрасный.

Сравнение двух столбцов даты напрямую (чтобы увидеть, если сегодня после даты начала) хорошо работает -

ddwrt: DateTimeTick (ddwrt: GenDisplayName (строка ($ thisNode / @ StartDate *)1008 *))) $ Today )))

Но если я добавлю число, оно будет работать в режиме конструктора SPD, но не нафактический сайт SharePoint.

ddwrt: DateTimeTick (ddwrt: GenDisplayName (строка ($ thisNode / @ StartDate ))) + 3 $ Today )))

Я пытался преобразовать 3 в тики -> 8 640 000 / день и использовать это значение, но это тоже не сработало(и не работает в режиме конструктора SPD).

Я могу заставить работать форматирование, если создаю столбец с вычисленной датой «StartDate + 3», а затем сравниваю это напрямую, однако это нене работает, если столбец не виден, и я бы не стал создавать дополнительные столбцы.

Есть идеи?

Спасибо за помощь.

Ответы [ 2 ]

5 голосов
/ 11 марта 2011

У меня сработало следующее:

число (ddwrt: FormatDateTime (ddwrt: FormatDate (строка ($ thisNode / @ StartDate), 1033,1), 1033, 'yyyyMMdd') + 3) <= число (ddwrt: FormatDateTime (ddwrt: FormatDate (строка ( $ сегодня), 1033,1), 1033, 'YYyyMmDd')) </p>

1 голос
/ 01 февраля 2012

Не знаю почему, но у меня это не сработало. Второй параметр FormatDateTime - 'yyyyMMdd' - продолжал выдавать ошибку.

Наконец-то это сработало:

number(translate(substring-before(@StartDate,'T'),'-',''))+3 <= number(translate(substring-before($Today,'T'),'-',''))
...