Řešení bez použití kódu: zobrazení dny od poslední změny položky seznamu služby SharePoint

Řešení bez použití kódu: zobrazení dny od poslední změny položky seznamu služby SharePoint

Důležité :  Tento článek je strojově přeložený – přečtěte si toto upozornění. Anglickou verzi tohoto článku pro referenci najdete tady.

9/20/2011 3:01 ODP.

podle Jan Joyce LANtek

Poznámka : Tento článek je součástí sady příspěvky z čtyřech letech blogu získat místo pro koncové uživatele služby SharePoint.

Přehled: Vlastní stárnutí sestavy s žádný kód

Jednou z často požadovaného křížového použitelné části webu služby SharePoint je sestava stárnutí pro úkoly nebo položky seznamu. Jinými slovy, kolik dnů/měsíců má od naposledy změnil tuto položku seznamu?

Na ploše to se zdá být žádost o velmi jednoduché. Nakonec máme data pro položky vytvořené a změny, máme možnost uložit vlastní data po některé změny položky proběhnout prostřednictvím události příjemce. Můžeme mít počítaných sloupců místo, kam jsme zahrnout Excel profesionálové vzorce pro práci s naše informace. Zbytečný poměrně přímo dopředu záležitostí. Jsme vyberte pole Datum vytvoření počítaného sloupce a pak udělejte vzorce něco podél řádky [DateField]-[dnes]. AH ne rychle, ale! Jako každý, kdo má pokus o "jednoduché" úkol ví, snaží použít nějak [dnes] způsobuje problémy počítaný sloupec. Pokusu vložit [dnes] do svého počítaného sloupce vzorců vám chybová zpráva něco takto:

Chybová zpráva

Proč je to? Dobře, má dělat s způsob výpočtu počítaného sloupce.

Podívejme se jako příklad jednoduchého vzorce:

= IF ( [sloupců Column1] < = [Column2], "OK", "Není OK")

Všechno nastavuje s textem je, je-li Sloupec1 menší nebo rovna hodnotě Column2 zobrazte OK, jinak zobrazení není v pořádku. Toto je poměrně typické základní vzorce pro počítaný sloupec a chce základní předpokladů o položky seznamu, který obsahuje tyto sloupce: hodnoty Sloupec1 a Column2 nikdy povolit provádění změn bez události aktualizovat položku seznamu.

To je zprava a počítaných sloupců přepočítá pouze seznam aktualizace (nebo vytvořili) od jejich předpokládá informace jsou výpočtu jsou obsaženy v samotné položky. Tím vytvoříte problému, když se pokoušíte použít něco nezměnilo nezávisle na pole na položku, například aktuálnímu datu.

Teď můžu nebyl do schůzky, kde rozhodli, že se jedná o způsobu, jakým počítané sloupce použitelné, ale pokud můžu měli být kvalifikovaně odhad, které můžu by se předpokládá, aby fungovaly tímto způsobem výkon. Představte si, pokud jste měli přehled oddělovačů předmětů, přičemž každý z nich obsažený počítaný sloupec, který potřeby "aktivní" aktualizace. Byste měli mít následující důsledky některé mechanismus, případně úlohy časovače musel iteraci jednotlivé položky, které every tak často obsažené počítané sloupce a aktualizovat jeho hodnotu. To by mohla být velmi ziskového z hlediska výkonu protože s větší nasazení tuto úlohu mohou neustále spuštěný a změna věci. To je právě Moje odhad, ale dává úplně trochu smysl, pokud váš názor.

Existuje několik návrhů podobná řešení plovoucí oddálit tam, které zahrnují, přičemž SharePoint v přijetím hodnotu Dnes tak, že nejdřív vytvořit sloupec s názvem dnes, a pak ho přidáte na vzorec a potom jej odstraní. Tyto všechny dobře a dobrý, ale nezapomeňte, co mám said o aktualizaci počítaných sloupců. Tato hodnota se změní jenom aktualizaci položky, což znamená, že vaše hodnoty již brzy bude nesprávné, zejména v případě výpočtu den.

Můžu, uloží se ostatní pomocí inteligentní JavaScript psát hodnoty na stránku. To taky fungují, ale jsem poměrně mnohem categorically proti klientský skript při můžete vyhnout.

Provedení:

Takže jak postupovat? Počítané sloupce jsou mimo otázka pro tak zvané "stále přepočítávané" funkcí jako dnes. Je možné, že společnost Microsoft může vytvořit vlastní kód starat o to nám jako spočítat sloupce, úlohy časovače, nebo naplánované proces přechodu do a aktualizovat všechny jedné položky, která potřebuje výpočtu udělali. Které nám přesune zpět na problém, můžu podle poslední odstavec přes výkonu a dále je křehká řešení, které má být vysoce specifické pro web / / sloupec seznamu předmětné. Nad těchto dvou pochybnosti by taky musíte přejít najít nerdy hoch, třeba Já, které zná jak kódu a přesvědčit mu se dají toto řešení za vás. Ale jednodušší způsob!

Pokud máte oprávnění vytvářet pole a úprava stránek na webu a máte trochu znalostí o XSLT a vytváření zobrazení, můžete shromáždit šablonu XSL, může být součástí zobrazení seznamu a věrně vypočítá hodnota pokaždé, když požadavku na stránce. Tento scénář odebere naším problémem přes výkonu a nevyžaduje vlastního kódu vyvinuté a nasazení prostřednictvím řešení.

Perfektní. Jak můžeme udělat ho?

  1. Vytvoření nebo vyberte pole, které bude sloužit jako naše zdroje. Musí být typu datum.

  2. Vytvoření naše pole, která bude sloužit jako zástupný symbol pro hodnotu výpočtu.

  3. Obě tato pole přidáte k typu obsahu a přidání typu obsahu do seznamu.

  4. Vytvoření zobrazení tohoto seznamu sloupců do něj zdrojovou a zástupný symbol obsahující.

  5. Nahrání šablony XSL ke knihovně stylů.

  6. Nastavte vlastnost "Odkaz na soubor XSL" webové části zobrazení seznamu prostřednictvím uživatelského rozhraní.

  7. Hotovo.

Pojďme zkoumat případu použití příklad a projděte si postup provedení. Náš zákazník chtěli zobrazit jejich hlavní seznam, který by informujte doby dané položky vám to byl umístěným na její stav. Tento seznam obsahuje vlastní web obsahu typ odvozeno z typ položky a přidají do seznamu. Jste udělali již příjemce události na místě, který popisuje pokaždé, když toto pole stavu u položky seznamu byl změněn a uložit toto datum do sloupce s názvem "Datum stavu změnit". Tento propojení nepožaduje a lze provést pomocí libovolné pole Datum (se to jednoduše tak děje to je naše implementaci ale chování bezplatné experiment). Minimum, jehož byste potřebovali je pole date zdroj a pole zástupný symbol pro uložení výpočtech (Další informace o v další odstavec) přidají do seznamu, i když mám naznačují, že používáte sloupců webu a typy obsahu webu v případě, že chcete znovu použít toto řešení na jiných místech na vašem webu.

Takže máme naše datum zdroje, které můžete použít v naší výpočtu proti aktuálnímu datu. Teď můžeme vytvořit sloupec vlastní nápovědu k webu, který má použít jako kontejner pro naše počítané hodnoty. V tomto případě můžu se rozhodli použít počítaný sloupec od nebudete moci měnit na nové nebo úprava položky formulářů, ale můžete vybrat pro zobrazení v seznamu zobrazení, protože jsme nechcete, aby uživatelé zadávat libovolné hodnoty v tento sloupec. Může to být přehlednější, proč se nezobrazí ve zobrazení atd.

Teď máme naše sloupce webu, doporučujeme přiřadit naše typy obsahu, které se použije v našem seznamu. Pak potřebujeme vytvoření naše zobrazení, které bude dál přizpůsobit pomocí našich XSLT. Zkontrolujte, že vytvoříte standardní zobrazení, která obsahuje sloupec kalendářních dat zdroje a váš nový počítaný sloupec, který bude sloužit jako zástupný symbol pro počítané hodnoty.

Nyní je k dispozici všechno, co na místě, který jsme budou vyžadovat, aby podporoval naše vlastní data splatnosti. Zůstane všeho, co je vytvoření naše XSL šablony, uložení do knihovny stylů na web a odkazy na naše zobrazení seznamu. XSL šablonu, kterou jsme budou používat bude obsahovat některé běžné generované SharePoint značky generování zobrazení, jakož i naší vlastní značky slouží k přepsání určité části tohoto a výpočet naše požadované hodnoty pro nás.

Pojmenování platební se Dal, XSL šablony pro plnění aktuálních výpočtů používám pro toto řešení zdvořile poskytnuté "swirch" na fórech MSDN:
http://social.msdn.microsoft.com/Forums/en-US/sharepointcustomization/thread/aeda905b-9bc6-40c4-bd22-21306c5cb0d2/

Stáhněte si šablonu stylů XSL (aging.zip) jste umístili společně najdete tady:
https://OneDrive.live.com/?cid=c262e8e2d59a86d9&permissionsChanged=1&id=C262E8E2D59A86D9! 104

Otevření to v seznamu Oblíbené textovém editoru uvidíte hodně normální značky SharePoint XSL vykreslování zobrazení, pokud zachovat posouvání dolů na řádku 357, zobrazí se úvodní vlastní šablony, přidané do značky, první z nich je "DateDiff" šablony a za ním uveďte "výpočet juliánský dny" a "FieldRef_printTableCell_EcbAllowed.Days_x0020_At_x0020_Status". Toto jsou naše tři šablony, které budou volání a zobrazení naše výpočtů v naší zobrazení. Pokud se chystáte používat jiné pole názvů, než byl zadán dříve v tomto článku, musíte se absolvovat tyto šablony a nahradit odkazy názvy. Nezapomeňte, že to budete chtít použít interní název pole není zobrazovaný název.

Až budete spokojeni, jestli je připravená přejít, přejděte do knihovny stylů a nahrajte ve složce "Šablony stylů XSL" pak zkopírovat dolů na odkaz na soubor šablony. To bude umožňují snadno ho měnit později nebo ji můžete přidat na různé části webu jako nám prosím.

Potom přejděte na seznam a vyberte zobrazení, které jste vytvořili dříve v tomto článku. Na "Akce webu" nabídky klikněte na "Upravit stránku".

Příkaz Upravit stránku v nabídce Akce webu

Najít webové části zobrazení seznamu na stránce a otevřete kliknutím na malou šipku dolů vystaveného v pravém horním rohu na nabídku Webová část. V této nabídce vyberte "Upravit webovou část".

Příkaz Upravit webovou část v nabídce Webová část

Otevře se nabídka webové části na pravé straně okna prohlížeče.

Nabídka Webová část

Klikněte na oddíl + pro "Různé" a vyhledejte vlastnost "Odkaz na soubor XSL".

Vlastnost Odkaz na data XSL v nabídce Webová část

Vložit odkaz na soubor XSL v knihovně stylů, kterou jste si zkopírovali dolů (to může být absolutní nebo relativní odkaz).

Odkaz na soubor XSL vložený do

Kliknutím na "OK" uložte provedené změny a pak klikněte na tlačítko "Ukončit úpravy" na "Stránka" pásu karet v horní části stránky.

Tlačítko Ukončit úpravy na kartě Stránka

Pokud všechno správně nakonfigurovaný teď byste měli vidět čísla ve sloupci "Stavu ke dni".

Sloupec stavu ke dni zobrazující číslo

A nakonec, co bude výsledek podobný jako s některými testovat data z různých data?

Sestava stárnutí zobrazující testovací data

Shrnutí:

Zde je: dobře formátovaný, robustní a půjde vám ještě snadněji provést způsob, jak vytvořit sestavu stárnutí v Sharepointu podpisu s jednoduchou implementaci bez použití kódu. Tento postup je úplně několik možných aplikacemi kromě toho používají případ, který jsme prozkoumat tady. Jiné běžné situace pro tento typ sestavy je jejich připojení do seznamu úkolů tak, aby bylo vidět, jak dlouho bylo od úkolu byla vytvořená na první pohled.

Využijte!

– Jan

Jan Joyce LANtek

Komentáře

Kroky chybějící
10/8/2012 3:51 dopoledne
ok můžu postupovali, ale musí existovat něco chybějící - jak XSL vědět, datum, které chcete použít nebo které pole pro přidání dní od do? Při vynechání kroky a nerad ho.

Bez použití kódu, schválené.
8/30/2012 12:12 odp
souhlasím - Můžu si to opravdu započten jako "žádný kód".
Interestingly, až některé screwup SharePoint mám pracovní počítaný sloupec pomocí dnes... nevíte, jak a proč nemůžete si to můžu koupit udělat znovu, protože je stále viditelné a je funkční.

Vzorec pro "Dnů při stavu" počítaný sloupec?
5/2/2012 7:39 dopoledne
Jan – co je vzorec použitý pro sloupec počítané webu "Stavu ke dni" (zástupný symbol sloupec)? Bylo "dnes ="?

SharePoint 2007
2/12/2011 11:29 dopoledne
aktuálně můžu ještě pokus o použít toto řešení SharePoint 2007, ale mám hledat do něj. Bohužel neexistuje žádná vlastnost XslLink vytažená ve webové části prostřednictvím uživatelského rozhraní.

Skvělé příspěvek
11/30/2011 9:53 dopoledne
Dobrý den,
skvělé příspěvek.
používám SharePoint 2007.
nemám různé části uvedených výše.
Máte kroků pro konfiguraci SP2007?
Děkujeme.

Nové: Řešení bez použití kódu: zobrazení dny od posledního položky seznamu služby SharePoint změnit
10 nebo 11/2011 8:24 hodin
Hi Chrise.
skvělé najít!
i vložím přečtěte si téma co jste odeslali zpravidla později dnes a zjistěte, pokud lze vytvořit toto řešení trochu robustnější.
i moc rádi vám příspěvek líbil, a i moc velmi rádi bylo možné najít řešení formátu Evropský data. :)
-Jan

Řešení pro Evropský formátů data
10 nebo 11/2011 6:45 dopoledne
Hi znovu Jan
pro informaci, můžu nalezený řešení pro tento problém se jsme zmínili dříve na této stránce.
https://sharepointbydummies.wordpress.com/2011/07/13/possible-work-around-to-date-format-issue-sharepoint-2010/

Evropské formáty data
10/7/2011 3:59:00
Hi Jan
Toto je děkuji dobře řešení a požadovaný typ věc můžu jste vynaloženy posledních dvou dnů hledáte! Ale mám trochu problému s ním a můžu byl ať, že by mi pomohou.
Jste změněn kódu mírně calcultate počet dní, dokud něco se stane, místo, protože přepnutím proměnných v posledním řádku funkce "DateDiff";

< xsl:value – vyberte = "$JulianToday - $JulianStartDate" >< / xsl:value-z >

však jsem pouze dostali na caclulate rozdíl správně polovině čas. Tak například s toto datum (formátu dd/MM/RRRR);

30/12/2011

vypočítá správně, ale s toto datum (stejný formát)

10/12/2011

se vypočítá jako Jestliže 10 prosinec 2011 místo 12. října 2011.
pokusu jednoduše přepínání pozice hodnoty den a měsíc "JulianStartDate" proměnné takto;

< xsl: název pomocí parametrů = "Měsíc" select="substring(ddwrt:FormatDateTime(string($StartDate) 1033,"RRRRMMDD"), 7, 2)" / >
< xsl: název s parametrů = "Den" select="substring(ddwrt:FormatDateTime(string($StartDate), 1033,"RRRRMMDD"), 5 a 2)" / >

a tím odstranit problém s datem druhého však je pak nesprávné pro první datum!
můžu taky vyzkoušel(a) jsem změny hovory FormatDateTime Evropský LCID a různé změnách poslední parametr FormatDateTime (například DDMMRRRR, MMddyyyy) pomocí příslušné úpravy parametry pozice podřetězec neúspěšně.
Výrazně můžu ocení doporučení můžou nabízet.
Děkuji,
Chris

Bez použití kódu
9/21/2011 4:27 dopoledne
můžu myslíte, že XSL nesplňuje jako "bez použití kódu" řešení jako Principy jazyka XSL není pro všechny uživatele –, ale nevyžaduje programování. Kromě,: hodní řešení, Děkujeme!

Poznámka : Upozornění ke strojovému překladu: Tento článek přeložil počítačový systém bez zásahu člověka. Společnost Microsoft nabízí tyto strojové překlady proto, aby umožnila uživatelům, kteří nemluví anglicky, získat informace o produktech, službách a technologiích této společnosti. Protože je tento článek strojově přeložený, může obsahovat slovní, syntaktické nebo gramatické chyby.

Rozšiřte své znalosti a dovednosti
Projít školení
Získejte nové funkce jako první
Připojte se k účastníkům programu Office Insiders

Byly tyto informace užitečné?

Děkujeme vám za zpětnou vazbu.

Děkujeme vám za váš názor. Vypadá to, že bude užitečné, když vás spojíme s některým z našich agentů z podpory Office.

×