RSS feed voor documentbeoordeling

Standaard

Soms is het nodig om externen op de hoogte te brengen van een wijziging in Relatics, zonder dat de externe regelmatig in Relatics werkt. Via een RSS feed is het dan mogelijk om met standaard software van de eindgebruiker (lees hier bijvoorbeeld Outlook of Thunderbird) een bericht te sturen. Via dit bericht kan bijvoorbeeld duidelijk gemaakt worden dat er een nieuwe versie van een document beschikbaar is in Relatics.

Uitdaging

Het is belangrijk om voor degene die publiceert duidelijk te hebben wanneer zijn informatie (in dit geval dus de versie) de wereld in gestuurd wordt. Hij moet daar grip op kunnen hebben. In dit geval gebeurt dat dus door een status wijziging. Daarnaast zal er ook een beperking moeten zijn, dat niet alle versies elke keer getoond worden. Er is dus nog een extra restrictie nodig (wijziging is binnen afgelopen 30 dagen gedaan).

Toepassing van Relatics technieken

RSS Feeds: een RSS feed is een eenvoudige manier om aan derden duidelijk te maken dat er iets nieuws is op je website (wordt ook veel door alle nieuwssites gebruikt). Deze techniek is ook in Relatics beschikbaar om naar buiten toe actief informatie te geven over wijzigingen.

Oplossing

Het model rondom indieningen is relatief eenvoudig. Allereerst wordt er een library element ā€œindieningā€ aangemaakt die een select 0:1 relatie heeft naar een versie. Op dit type relatie is het mogelijk om een CreateR1Object te activeren (je kan dan in tegengestelde richting van de relatie een object aanmaken), zodat je vanuit een versie een indiening kan aanmaken. Onder indiening is het dan mogelijk om verschillende soorten als type element op te nemen, zoals bijvoorbeeld ā€œter informatieā€ of ā€œter beoordelingā€.

Realisatie

Wanneer de eindgebruiker nu een indiening aanmaakt bij een document versie, is het dus de bedoeling dat deze tevoorschijn komt in de RSS Feed. Hiervoor zal allereerst een query gemaakt moeten worden die deze indiening oppakt.

De query begint met een indiening en legt de restrictie op dat deze niet ouder mag zijn dan 60 dagen (Ā±2 maanden):

[code language=”javascript”]object.CreatedOn >= @Formula(AddDays(Today(),-60))
[/code]

Vanuit deze indiening kunnen we nu de query verder opbouwen. Wat belangrijk is bij een RSS feed is dat uiteindelijk er vier velden zijn die gevuld moeten:

  • Title: het onderwerp van het document
  • Description: een beschrijving van de inhoud van de indiening
  • Pubdate: de datum dat deze indiening is gepubliceerd
  • Author (optional): wie de indieining heeft aangemaakt

Alle informatie die je wilt doorgeven moet in deze vier velden gepast worden.

De titel van de RSS Feed wordt in Outlook hetzelfde getoond als het onderwerp van een email. Het is dus belangrijk om in Ć©Ć©n oogopslag te zien waar het over gaat. De titel wordt in dit geval dan ook samengesteld uit:

  • De naam van de workspace: dan is het duidelijk over welk project het gaat
  • De naam van de indiening: die geeft aan wat er verwacht wordt (ter informatie, ter beoordeling)
  • Titel, kenmerk en versie van het document, zodat duidelijk is om welk document het gaat

In de description wordt vooral de informatie getoond rondom de opvolging van de indiening. Voor welke datum wordt er een reactie verwacht, van wie wordt er een reactie verwacht en wat is de huidige status van de indiening.

Zowel de titel als de description worden samengesteld in een derived field. Door dit te doen op het element indiening wordt ervoor gezorgd dat Relatics in de RSS Feed een link toevoegt naar de indienings-instantie. Waren de derived fields vastgesteld op de versie, dan had de link in de RSS Feed doorverwezen naar de versie waar de indiening over gaat.

Nu is het dan mogelijk om de velden die actief zijn in de query te koppelen met de vier velden die beschikbaar zijn voor de RSS Feed. In dit geval zijn de namen van de derived fields synonym gemaakt met de namen van de velden in de RSS Feed.

Via de link van de RSS Feed kan er nu getest worden of de feed werkt:

Wanneer op de link geklikt wordt komt de eindgebruiker weer in Relatics terecht. Zo is het mogelijk om toch alle administraties rondom documenten in Relatics te verwerken, terwijl de eindgebruiker via Outlook automatisch zijn berichten binnen krijgt.