Рішення без написання коду: відображення днів, оскільки елемента списку SharePoint останньої зміни

Рішення без написання коду: відображення днів, оскільки елемента списку SharePoint останньої зміни

Примітка.:  Ми хочемо надавати найновіший вміст довідки рідною мовою користувачів якомога швидше. Цю сторінку перекладено за допомогою засобу автоматичного перекладу, тому вона може містити смислові, синтаксичні або граматичні помилки. Ми вважаємо, що цей вміст стане вам у пригоді. Повідомте нас, чи була інформація корисною, унизу цієї сторінки. Для зручності цю статтю можна переглянути англійською мовою .

20/9/2011 3:01 PM

за Джастін кредитні карти, LANtek

Примітка.: Ця стаття входить до колекції повідомлення від чотири роки в блозі отримати місця для кінцевих користувачів служби SharePoint.

Огляд: Настроюваний старіння звітів за допомогою коду

Одна з найчастіше потрібні функціональної частини сайту SharePoint – звіту про старіння для завдання або елементів списку. Іншими словами, скільки днів і місяців свідчить, оскільки цей елемент списку було змінено?

На поверхні видається запит дуже просто. Зрештою, ми маємо дати для елементів, що створені та змінені, у нас є можливість зберігати настроювані дати, коли деякі зміни до елементів відбуваються через приймачів подій. Ми є обчислювані стовпці, де можна включити Excel як формули, щоб працювати з нашою інформацією. Це здається досить прямо вперед пропозиції. Ми виберіть поле дати, створити обчислюваний стовпець а потім виконайте формули щось на кшталт [DateField]-[сьогодні]. А, не так швидко, хоча! Як тих, хто має спроби "простий" завдання знала, намагається використати щось на зразок [сьогодні] в обчислюваний стовпець причини проблем. Спробуйте вставити [сьогодні] у до обчислюваного стовпця "Формула" допоможе вам щось на зразок цього повідомлення про помилку:

Повідомлення про помилку

Чому це? Належним чином, він має з спосіб обчислення обчислювані стовпці.

Давайте як приклад простої формули:

= IF ( [Стовпець1] < = [Стовпці2], "ОК", "Погано")

Це сказано, якщо Стовпець1 менше або дорівнює Стовпці2, потім відображення OK, в іншому разі відображення погано. Це досить типові базову формулу для обчислюваного стовпця, і це робить базові припущення про елемент списку, який містить такі стовпці: значення для Стовпець1 і Стовпці2 ніколи не зможе змінити без події оновлення для елемента списку.

Правильно, обчислювані стовпці лише переобчислення списку оновлення (або створено) після того, як вони вважати, що відомості, які мають обчислення містяться в сам елемент. Це створює проблема, якщо ви намагаєтеся використовувати те, що змінює незалежно від елемента в полях, зокрема сьогоднішню дату.

Тепер можна не під час наради, де вони вирішили саме таким чином, щоб обчислюваних стовпців буде працювати, проте, якби зробити припущення, що буде вважати, що вони працювати таким чином, для виконання. Уявіть, якщо у вас список тисяч кілька елементів, кожен із яких містяться обчислюваний стовпець, який потрібно оновлення "live". Б означає, що деякі механізм, може бути таймера, доведеться вдосконалюємо через усі елементи, які містяться цей обчислюваний стовпець так часто й оновлювати його значення. Це може бути дуже оподаткування з точки зору продуктивності з більші розгортання це завдання може постійно підтримці роботи та змінення елементів. Це лише мої припущення, але це робить трохи вимогам, якщо ви вважаєте, про це.

Існує кілька рекомендацій для схожі переміщуваних там рішень, які передбачають обманюючи у службі SharePoint на прийняття значення сьогодні, спочатку створити стовпець із назвою сьогодні, а потім додайте її до вашої формули, а потім видалити його. Це все добре, але пам'ятайте, що я сказав про під час оновлення обчислюваних стовпців. Це значення лише змінюватимуться, якщо елемент оновлюється, що означає, що значення незабаром буде неправильний, особливо для обчислення дня.

Я побачили іншим користувачам за допомогою розумна JavaScript записування значення до сторінки. Це також буде працювати, але я майже категорично проти сценарій клієнта під час його можна уникнути.

Виконання:

Тому, що робити? Обчислювані стовпці не йдеться для так званий "мінливі" функцій, таких як сьогодні. Це можливо, ми могли б розробити настроюваних код, щоб подбайте про це для нас, як обчислити стовпця, завдання таймера, або заплановано процес і оновлювати кожні одного елемента, які потребують обчислення, внесені. Який повертає нас до проблеми продуктивності можна описані в останній абзацу, хоча, і додатково це ламкими рішення, які мають бути специфічні до сайту або списку або стовпця в. На ці дві проблеми також потрібно перейти, знайдіть nerdy хлопцем, наприклад самостійно, що вміє код і переконати його розробити це рішення для вас. Але простіше!

Якщо ви маєте права для створення поля та редагування сторінок на сайті і трохи знань про XSLT та створення подань, ви можете зібрати XSL-шаблону, які можуть бути включені в поданні списку та повагою обчислюватимуться до значення під час кожного запиту на сторінці. У цьому сценарії видаляє нашою турботою через продуктивності а не потребує настроюваного коду для розроблені та розгортання за допомогою рішення.

Ідеальний. Так, як це зробити його?

  1. Створіть або виберіть поле, яке буде діяти як наші джерела. Він має бути типу дати.

  2. Створення наші поле, яке буде діяти як покажчик місця заповнення для значення, що обчислення.

  3. Додавання обидві ці поля до вмісту введення та додавання цього типу вмісту до списку.

  4. Створення подання списку, що містить стовпці джерело і покажчика місця заповнення.

  5. Завантаження шаблону в XSL до бібліотеки стилів.

  6. Властивість «Посилання на XSL» для веб-частині подання списку за допомогою інтерфейсу користувача.

  7. Готово!

Давайте дослідження інциденту приклад використання та виконати виконання. Клієнта потрібен подання в головному списку, потрібно визначити їх як довго елемента певного списку сидить за його стан. Наведений нижче список міститься настроюваного сайту вмісту, тип походить від тип елемента та додаються до списку. Вже на подію одержувача в місці, які записуються під час кожного стану поля для елемента списку було змінено та збережено дата на стовпець під назвою "Дата стан змінено". Усі цей електропроводки не вимагається і можна зробити за допомогою будь-якого поля дати (виявляється, це наша впровадження, але ви можете експериментувати). Мінімум, вам потрібно буде до джерела поля дати та покажчик місця заповнення провести обчисленнях (Докладніше про це в наступного абзацу) додано до вашого списку, хоча припустити, що ви використовуєте стовпці сайту та типи вмісту сайту у випадку, якщо ви хочете, щоб повторно використовувати це рішення в інших ВР тузи на сайті.

Так, у нас є наші джерела дати, яке можна використати наші обчислення від сьогоднішньої дати. Тепер можна створити настроювані сайту стовпець для використання як контейнер для наших обчислене значення. У цьому випадку вибрана використання обчислюваного стовпця, тому його не можна змінити на новий або редагувати елемент форми, але можна вибрати для відображення в поданнях після того, як ми заборонити користувачам вводити довільні значення для цього стовпця. Це може бути заплутаним про те, чому вона не відображається подання тощо.

Тепер, коли у нас є наші стовпець сайту, ми можна додати до нашого типів вмісту, який буде використовуватися у списку. Далі потрібно створення наші подання, які згодом можна настроювати за допомогою наші XSLT. Переконайтеся, що створюється стандартне подання, що містить джерела стовпця дат і ваш новий обчислюваний стовпець, який буде діяти як покажчик місця заповнення для обчислення значення.

Тепер у нас є все, що в місці, яке потрібно буде підтримують наші custom старіння звіту. Все, що залишається створює наші XSL-шаблону, передавання його до бібліотеки стилів на сайті і зв'язування його з наших подання списку. Ми будемо використовувати XSL-шаблону буде містити деякі звичайний SharePoint, створені для створення подання, а також власного розмітку звикли перевизначити певні частини і обчислення наші потрібне значення для нас.

Даючи кредитні де кредит термін, XSL-шаблони для виконання фактичні обчислень, які я використовую для цього рішення були люб'язно надані "swirch" на форумах MSDN:
http://social.msdn.microsoft.com/Forums/en-US/ sharepointcustomization або ланцюжком або aeda905b-9bc6-40c4-bd22-21306c5cb0d2 /

Завантаження XSL стилів (aging.zip) я поставив разом знаходиться тут:
https://OneDrive.live.com/?cid=c262e8e2d59a86d9&permissionsChanged=1&id=C262E8E2D59A86D9! 104

Відкриття це в ваші улюблені текстовому редакторі, ви побачите багато звичайний SharePoint XSL розмітки для відтворення подання, якщо ви тримати прокручування вниз, щоб лінія 357, ви побачите початку Настроювані шаблони, які можна додати до виправлення, перше, що "DateDiff" температура пізніше йде "обчислення Лілія день" і "FieldRef_printTableCell_EcbAllowed.Days_x0020_At_x0020_Status". Нижче наведено наші три шаблони, які буде здійснення та відображення наших в наші подання. Якщо ви збираєтеся використовувати імена різних полів не вказано вище в цій статті, потрібно буде оброблено ці шаблони та замінити посилання на будь-які інші імена. Пам'ятайте, що для цього потрібно буде використовувати ВНУТРІШНЄ ім'я поля не коротке ім'я.

Якщо Вас влаштовує чи готові перейти, перейдіть до бібліотеки стилів і передати його в папці «Списки стилів XSL» а потім скопіюйте посилання на файл шаблону. Це дають можливість легко вносити зміни до неї пізніше або додайте її до різних частин сайту, як ми, будь ласка.

Потім перейдіть до списку та виберіть подання, створене вище в цій статті. "Дії сайту" на "Редагувати сторінку" клацніть меню.

Команда "Редагувати сторінку" в меню "Дії сайту"

Знайдіть свій веб-частини подання списку на сторінці і відкрийте меню веб-частини, натиснувши на маленьку стрілку вниз перед у верхньому правому куті. У цьому меню виберіть пункт «Змінити веб-частину».

Команда "Змінити веб-частину" в меню "Веб-частина"

Відкриється меню веб-частини на у правій частині вікна браузера.

Меню веб-частини

Клацніть на + для "Різне" розділу та знайдіть властивість "Посилання на XSL".

Властивість "Посилання на XSL" у меню "Веб-частина"

Вставити посилання на XSL-файл у бібліотеці стилі, яке ви скопіювали вниз раніше (це можуть бути відносне або абсолютні посилання).

Посилання на вставлений XSL-файл

Натисніть кнопку "OK", щоб зберегти внесені зміни, а потім натисніть кнопку "Припинити редагування" на стрічці "Сторінки" у верхній частині сторінки.

Кнопка "Припинити редагування" на вкладці "Сторінка"

Якщо все правильно настроєно тепер ви повинні побачити чисел у стовпці "Дні в цьому стані".

Стовпець "Дні в цьому стані", у якому відображаються числа

І нарешті, ось що вона виглядатиме, як з деякими перевірка даних різних дат.

Звіт про старіння, у якому відображено тестові дані

Зведення:

Він існує: виглядати відформатовані надійним та більш ефективні спосіб створення звіту про старіння в SharePoint. в комплекті з простий готовими впровадження. Це настроєно досить кілька потенційних програми Крім один сценарій ми вивчити тут. Інший загальний сценарій для цього типу звіт – це вкладенням до списку завдань, щоб побачити, як довго це було завдання було створено із першого погляду.

Насолоджуйтесь!

– Джастін

Джастін кредитні карти, LANtek

Примітки

Кроки відсутні
8/10/2012 3:51 AM
ОК я всі кроки, але потрібно щось відсутні - як XSL знатимете, які дати для використання, або які полів для додавання днів з моменту в? ненавиджу, коли пропустили дії.

Без написання коду, прийняли!
30/8/2012 12:12 PM
я погоджуюся - не схоже, це дійсно враховується як "ні коду".
Цікаво, за допомогою деяких screwup SharePoint, я роботу обчислюваний стовпець, за допомогою сьогодні... не знаєте, як і в чому тому, що я не можу отримати його, щоб зробити його знову, але це все ще там і працювати.

Формула для "Дні в стан" обчислюваний стовпець?
5 і 2/2012 7:39 AM
Джастін: що таке формула використовується для свого "Дні в цьому стані" обчислюваного стовпця сайту (покажчик місця заповнення стовпця)? Це «= сьогодні»?

Від SharePoint 2007
2/12/2011 11:29 AM
зараз я не записували застосування цього рішення SharePoint 2007, однак мені потрібно знайти до нього. На жаль, є не XslLink властивість на веб-частини за допомогою інтерфейсу користувача.

Велике повідомлення
30/11/2011 9:53 AM
Привіт,
велике повідомлення.
я використовую SharePoint 2007.
Немає Різне розділу, як зазначено вище.
У вас є кроки для SP2007 конфігурації?
Дякую.

Зміна: Рішення без написання коду: відображення днів після останнього елемента списку SharePoint змінено
11/10/2011 8:24 AM
Привіт Кріс.
великий знайти!
я збираюся Погляньте на те, що ви розмістили ' Hopefully ' пізніше сьогодні і відображається, якщо я можу зробити це рішення дещо надійніший.
я рада, що вам сподобався допис, і я дуже рада, що ви змогли знайти рішення на формат Європи дати. :)
-Джастін

Рішення для Європи форматів дати
11/10/2011 6:45 AM
Привіт знову Джастін
Довідкове, можна знайти вирішення проблеми проблеми, які я ще раз Нагадаємо: на цій сторінці;
https://sharepointbydummies.wordpress.com/2011/07/13/possible-work-around-to-date-format-issue-sharepoint-2010/

Європейська форматів дати
7/10/2011 3:59 AM
Джастін Привіт,
це дуже добре рішення Дякую, а лише такі речі я витратили останніх двох днів, шукає! Однак, я стикаюся трохи проблем з ним, і я сподівався, який може допомогти мені.
я вже змінив свій код дещо calcultate кількість днів, поки щось відбувається, а не так, створивши змінних в останньому рядку функцію "DateDiff";

< xsl:value – виберіть = "$JulianToday - $JulianStartDate" >< / xsl:value-з >

Однак я лише перехід до caclulate різницю правильно половина часу. Так, наприклад з цього дня (формат ДД/ММ/РРРР);

30/12/2011

обчислення правильно, але ця дата (однаковим форматуванням)

10/12/2011

обчислення як if, якщо 10 грудня 2011 замість 12 Жовтень 2011.
я намагалася, просто перемикання позиції місяць і значення в змінна «JulianStartDate», таким чином;

< xsl: з парам ім'я = select="substring(ddwrt:FormatDateTime(string($StartDate)"Місяць", 1033,"РРРРММДД"), 7, 2)» та >
< xsl: з парам ім'я ="День"виберіть ="підрядок (ddwrt:FormatDateTime (рядок ($ Дата _ початку), 1033 "РРРРММДД"); 5; 2) "та >

і це виправити цю проблему з другого дати, Однак саме тоді неправильний для першого дня!
можна також випробувані зміни до FormatDateTime викликів у використанні Європи кодів і різні зміни до останнього параметра FormatDateTime (наприклад ddMMyyyy, MMddyyyy) з відповідних змін до підрядок позиції параметрів без успіху.
можна буде значно вдячні Вам за будь-які поради, які може запропонувати.
Дякую,
Кріс

Готовими
21/9/2011 4:27 AM
не схоже, що дає змогу XSL як "готовими" рішення, як розуміння XSL мови не для всіх користувачів – проте він не передбачає програмування. Крім того, що: хороший рішення, Дякуємо!

Удосконалення навичок роботи з Office
Ознайомтеся з навчальними матеріалами
Отримуйте нові функції раніше за інших
Приєднайтеся до оцінювачів Office

Ця інформація корисна?

Дякуємо за ваш відгук!

Дякуємо за відгук! Схоже, вам може стати в нагоді допомога одного з наших спеціалістів служби підтримки Office, з яким ми вас можемо з’єднати.

×