Vergelyk Datums in 'n Data View Web Deel te bou van 'n WSS KPI

Let daarop: dit was die eerste keer gepos op www.endusersharepoint.com hier: http://www.endusersharepoint.com/2009/11/02/comparing-dates-in-a-data-view-web-part-to-build-a-wss-kpi-in-sharepoint/.

Dit is nog 'n blog boodskap op die datums in die XSL vergelyk in 'n data vertoning web deel in SharePoint.

Dit is my scenario:

  • Ek het 'n persoonlike lys.
  • Die doel van die lys is die idee van 'n nuwe werknemer te ondersteun en om sy / haar take te voltooi word binne 7 dae van die begin van die werk.
  • Hulle is in 'n "waarskuwing" na 4 dae as hulle nie hierdie take voltooi.
  • Ek wil 'n eenvoudige paneelbord wat toon groen is wanneer hulle óf die taak voltooi, of as hulle meer as te skep 4 dae om dit te voltooi.
  • Ek wil die paneelbord te wys geel indien hulle in die waarskuwing sone.
  • Ek wil om te wys rooi as hulle nie die taak voltooi het na die vervaldatum.

Ek geleen uit hierdie artikel op Marc Anderson se blog (http://mdasblog.wordpress.com/2008/02/19/comparing-dates-in-sharepoint-using-xsl/) die vergelyking logika te kry en hierdie artikel op www.endusersharepoint.com vir die basiese idees agter die paneelbord (http://www.endusersharepoint.com/2008/12/09/visual-indicators-for-the-masses-kpis-in-wss/) geskryf deur Toni Frankola.

Jy moet die ondersteunende blogs lees, maar die implementering gaan soos hierdie:

  1. Skep 'n tipe inhoud (kolomme + CT)
  2. Skep 'n persoonlike lys en assosieer dit met die tipe inhoud.
  3. Skep 'n web deel bladsy.
  4. Voeg die persoonlike lys op die web deel bladsy.
  5. Maak die bladsy in SPD.
  6. Skakel die lys na 'n DVWP.
  7. Verander die XSL die paneelbord stukkies op te wek.

Ek het twee datums: a warning date and a due date. To compare the dates, My xsl doen die volgende:

 
 <xsl:kies>
 
 <!-- Wanneer beide handboek en beleid onderteken, Ons is groen, ongeag van die datums. -->
 <xsl:toe toets= "@ Employee_x0020_Handbook_x003F_ = 1 @ Security_x0020_Policies = 1">
 <img src= "/ _layouts / Beelde / KPIDefault--0.GIF" ou= "Geen probleme"/>
 <1 href= "/ Human resources / Lists / nuwe werknemer Checklist / EditForm.aspx?ID ={@ ID}&amp;Bron = / human resources / gedeelde dokumente / nuwe huur Dashboard.aspx"> [Verander]</1>
 </xsl:toe>
 
 <!-- Wys amber aanwyser as ons verby die waarskuwing datum. -->
 <xsl:toe toets= "Ddwrt:FormatDateTime(string(ddwrt:Vandag()), 1033, 'JJJJMMDD ") &gt;= Ddwrt:FormatDateTime(string(@ TaskDueDate), 1033, 'JJJJMMDD ")">
 <img src= "/ _layouts/images/KPIDefault-2.GIF" ou= "Agterstallige"/>
 <1 styl= "Border: 0px" href= "/ Human resources / Lists / nuwe werknemer Checklist / EditForm.aspx?ID ={@ ID}&amp;Bron = / human resources / gedeelde dokumente / nuwe huur Dashboard.aspx"> [Verander]</1>
 </xsl:toe>
 
 <!-- Wys rooi aanwyser as ons verby die vervaldatum. -->
 <xsl:toe toets= "Ddwrt:FormatDateTime(string(ddwrt:Vandag()), 1033, 'JJJJMMDD ") &gt;= Ddwrt:FormatDateTime(string(@ Warning_x0020_Date), 1033, 'JJJJMMDD ")">
 <img src= "/ _layouts/images/KPIDefault-1.GIF" ou= "Waarskuwing"/> 
 <1 href= "/ Human resources / Lists / nuwe werknemer Checklist / EditForm.aspx?ID ={@ ID}&amp;Bron = / human resources / gedeelde dokumente / nuwe huur Dashboard.aspx"> [Verander]</1>
 </xsl:toe>
 
 <!-- As ons hier, ons is vroeër as die datum van waarskuwing, so is ons groen. -->
 <xsl:anders>
 <img src= "/ _layouts / Beelde / KPIDefault--0.GIF" ou= "Geen probleme"/>
 <1 href= "/ Human resources / Lists / nuwe werknemer Checklist / EditForm.aspx?ID ={@ ID}&amp;Bron = / human resources / gedeelde dokumente / nuwe huur Dashboard.aspx"> [Verander]</1>
 </xsl:anders>
 
 </xsl:kies>

'N Paar belangrike punte van bo:

  • I tried to compare dates without using the ddwrt functionality and got nowhere. I still don’t understand that. They dates displayed correctly, maar beide ">"En"<” comparisons always failed. Op die ou end, ddwrt het tot my redding (dankie, weer, Marc).
  • Ek is ook vertoon 'n [Verander] link to the item. I mainly did this so that I could easily test this out. The link itself may be useful to someone trying to figure it out.
  • Dit is in SharePoint aanlyn geïmplementeer en werk mooi.
  • Die beelde wat ek verwys in die _layouts gids (/_layouts / beelde / KPI ...) beskikbaar is uit die boks in my omgewing, sodat hulle is waarskynlik beskikbaar vir jou as goed.

Hier is 'n skerm prent van hoe dit lyk vir my:

image

</einde>

Skryf in op my blog.

Volg my op Twitter http://www.twitter.com/pagalvin

Laat 'n antwoord

Jou e-posadres sal nie gepubliseer word nie. Verpligte velde gemerk *