Erstatning for rapportsenteret i Optimizely CMS 12
I Optimizely (tidligere Episerver) CMS til og med versjon 11 hadde vi tilgang til et rapportsenter med følgende innebyggede rapporter.
Disse rapportene var bygget på, den nå utdaterte, teknologien Web Forms og ble fjernet da Optimizely CMS ble lansert på ny og moderne plattform; .NET 6.
Selv synes jeg flere av funksjonene i rapportsenteret var svært nyttige, men med modulen SqlStudio for Optimizely CMS kan man kjøre SQL spørringer direkte mot databasen og oppnå akkurat det samme i CMS 12.
For informasjon om hvordan man lagrer spørringer, sjekk dokumentasjonen for modulen. Hvis du lagrer de som vist under, kan det se slik ut i SqlStudio-modulen.
SQL-spørringer
Her lister jeg opp ulike SQL-spørringer som samlet kan brukes som erstatning for hele rapportsenteret slik vi kjenner det fra CMS 11. For hver spørring er det to varianter. En variant for å kjøre rapporten, og en variant for å lagre spørringen slik at du kan kjøre rapporten senere.
Ikke publiserte sider
SQL for å vise rapporten
SELECT
c.pkID AS "Side ID",
cl.Name AS "Sidenavn",
FORMAT(cl.StartPublish, 'dd.MM.yyyy') AS "Publiseringsdato",
FORMAT(cl.Changed, 'dd.MM.yyyy') AS "Sist endret",
cl.ChangedByName AS "Endret av",
lb.LanguageID AS "Språk"
FROM
tblContent c,
tblWorkContent wc,
tblContentLanguage cl,
tblLanguageBranch lb
WHERE
c.pkID = cl.fkContentID AND
c.pkID = wc.fkContentID AND
wc.fkLanguageBranchID = cl.fkLanguageBranchID AND
cl.fkLanguageBranchID = lb.pkID AND
wc.StartPublish IS NULL
SQL for å lagre spørringen
INSERT INTO SqlQueries (Name, Category, Query)
VALUES ('[1] Ikke publiserte sider', 'Rapportsenter', 'SELECT
c.pkID AS "Side ID",
cl.Name AS "Sidenavn",
FORMAT(cl.StartPublish, ''dd.MM.yyyy'') AS "Publiseringsdato",
FORMAT(cl.Changed, ''dd.MM.yyyy'') AS "Sist endret",
cl.ChangedByName AS "Endret av",
lb.LanguageID AS "Språk"
FROM
tblContent c,
tblWorkContent wc,
tblContentLanguage cl,
tblLanguageBranch lb
WHERE
c.pkID = cl.fkContentID AND
c.pkID = wc.fkContentID AND
wc.fkLanguageBranchID = cl.fkLanguageBranchID AND
cl.fkLanguageBranchID = lb.pkID AND
wc.StartPublish IS NULL')
Publiserte sider
Viser sider publisert siste 7 dager. Endre på siste linje for å endre intervallet.
SQL for å vise rapporten
SELECT
c.pkID AS "Side ID",
cl.Name AS "Sidenavn",
FORMAT(cl.StartPublish, 'dd.MM.yyyy') AS "Publiseringsdato",
FORMAT(cl.StopPublish, 'dd.MM.yyyy') AS "Publisering stoppet",
FORMAT(cl.Changed, 'dd.MM.yyyy') AS "Sist endret",
cl.ChangedByName AS "Endret av",
lb.LanguageID AS "Språk",
ct.Name as "Sidetype"
FROM
tblContent c,
tblContentType ct,
tblContentLanguage cl,
tblLanguageBranch lb
WHERE
c.pkID = cl.fkContentID AND
c.fkContentTypeID = ct.pkID AND
cl.fkLanguageBranchID = lb.pkID AND
cl.StartPublish > DateAdd(DD,-7,GETDATE())
SQL for å lagre spørringen
INSERT INTO SqlQueries (Name, Category, Query)
VALUES ('[2] Publiserte sider', 'Rapportsenter', 'SELECT
c.pkID AS "Side ID",
cl.Name AS "Sidenavn",
FORMAT(cl.StartPublish, ''dd.MM.yyyy'') AS "Publiseringsdato",
FORMAT(cl.StopPublish, ''dd.MM.yyyy'') AS "Publisering stoppet",
FORMAT(cl.Changed, ''dd.MM.yyyy'') AS "Sist endret",
cl.ChangedByName AS "Endret av",
lb.LanguageID AS "Språk",
ct.Name as "Sidetype"
FROM
tblContent c,
tblContentType ct,
tblContentLanguage cl,
tblLanguageBranch lb
WHERE
c.pkID = cl.fkContentID AND
c.fkContentTypeID = ct.pkID AND
cl.fkLanguageBranchID = lb.pkID AND
cl.StartPublish > DateAdd(DD,-7,GETDATE())')
Endrede sider
Viser sider endret siste 7 dager. Endre på siste linje for å endre intervallet.
SQL for å vise rapporten
SELECT
c.pkID AS "Side ID",
cl.Name AS "Sidenavn",
FORMAT(cl.Changed, 'dd.MM.yyyy') AS "Sist endret",
cl.ChangedByName AS "Endret av",
lb.LanguageID AS "Språk",
ct.Name as "Sidetype"
FROM
tblContent c,
tblContentType ct,
tblContentLanguage cl,
tblLanguageBranch lb
WHERE
c.pkID = cl.fkContentID AND
c.fkContentTypeID = ct.pkID AND
cl.fkLanguageBranchID = lb.pkID AND
cl.Changed > DateAdd(DD,-7,GETDATE())
SQL for å lagre spørringen
INSERT INTO SqlQueries (Name, Category, Query)
VALUES ('[3] Endrede sider', 'Rapportsenter', 'SELECT
c.pkID AS "Side ID",
cl.Name AS "Sidenavn",
FORMAT(cl.Changed, ''dd.MM.yyyy'') AS "Sist endret",
cl.ChangedByName AS "Endret av",
lb.LanguageID AS "Språk",
ct.Name as "Sidetype"
FROM
tblContent c,
tblContentType ct,
tblContentLanguage cl,
tblLanguageBranch lb
WHERE
c.pkID = cl.fkContentID AND
c.fkContentTypeID = ct.pkID AND
cl.fkLanguageBranchID = lb.pkID AND
cl.Changed > DateAdd(DD,-7,GETDATE())')
Utløpte sider
Viser sider utløpt siste 7 dager. Endre på siste linje for å endre intervallet.
SQL for å vise rapporten
SELECT
c.pkID AS "Side ID",
cl.Name AS "Sidenavn",
FORMAT(cl.StartPublish, 'dd.MM.yyyy') AS "Publiseringsdato",
FORMAT(cl.StopPublish, 'dd.MM.yyyy') AS "Publisering stoppet",
FORMAT(cl.Changed, 'dd.MM.yyyy') AS "Sist endret",
cl.ChangedByName AS "Endret av",
lb.LanguageID AS "Språk",
ct.Name as "Sidetype"
FROM
tblContent c,
tblContentType ct,
tblContentLanguage cl,
tblLanguageBranch lb
WHERE
c.pkID = cl.fkContentID AND
c.fkContentTypeID = ct.pkID AND
cl.fkLanguageBranchID = lb.pkID AND
cl.StopPublish > DateAdd(DD,-7,GETDATE())
SQL for å lagre spørringen
INSERT INTO SqlQueries (Name, Category, Query)
VALUES ('[4] Utløpte sider', 'Rapportsenter', 'SELECT
c.pkID AS "Side ID",
cl.Name AS "Sidenavn",
FORMAT(cl.StartPublish, ''dd.MM.yyyy'') AS "Publiseringsdato",
FORMAT(cl.StopPublish, ''dd.MM.yyyy'') AS "Publisering stoppet",
FORMAT(cl.Changed, ''dd.MM.yyyy'') AS "Sist endret",
cl.ChangedByName AS "Endret av",
lb.LanguageID AS "Språk",
ct.Name as "Sidetype"
FROM
tblContent c,
tblContentType ct,
tblContentLanguage cl,
tblLanguageBranch lb
WHERE
c.pkID = cl.fkContentID AND
c.fkContentTypeID = ct.pkID AND
cl.fkLanguageBranchID = lb.pkID AND
cl.StopPublish > DateAdd(DD,-7,GETDATE())')
Enkle adresser
SQL for å vise rapporten
SELECT
c.pkID AS "Side ID",
cl.Name AS "Sidenavn",
cl.ExternalURL as "Enkel adresse",
cl.ChangedByName AS "Endret av",
lb.LanguageID AS "Språk",
c.VisibleInMenu AS "Vises på menyer"
FROM
tblContent c,
tblContentLanguage cl,
tblLanguageBranch lb
WHERE
c.pkID = cl.fkContentID AND
cl.fkLanguageBranchID = lb.pkID AND
cl.ExternalURL IS NOT NULL
SQL for å lagre spørringen
INSERT INTO SqlQueries (Name, Category, Query)
VALUES ('[5] Enkle adresser', 'Rapportsenter', 'SELECT
c.pkID AS "Side ID",
cl.Name AS "Sidenavn",
cl.ExternalURL as "Enkel adresse",
cl.ChangedByName AS "Endret av",
lb.LanguageID AS "Språk",
c.VisibleInMenu AS "Vises på menyer"
FROM
tblContent c,
tblContentLanguage cl,
tblLanguageBranch lb
WHERE
c.pkID = cl.fkContentID AND
cl.fkLanguageBranchID = lb.pkID AND
cl.ExternalURL IS NOT NULL')
Koblingsstatus
SQL for å vise rapporten
SELECT
cl.fkContentID AS "Side ID",
cl.Name AS "Sidenavn",
lb.LanguageID AS "Språk",
csl.LinkURL as "Brutt URL-adresse",
csl.HttpStatusCode AS "Koblingsstatus",
csl.FirstDateBroken AS "Brutt siden",
csl.LastCheckedDate AS "Sist kontrollert"
FROM
tblContentSoftlink csl,
tblLanguageBranch lb,
tblContentLanguage cl
WHERE
csl.OwnerLanguageID = lb.pkID AND
csl.fkOwnerContentID = cl.fkContentId AND
csl.OwnerLanguageID = cl.fkLanguageBranchID AND
csl.FirstDateBroken IS NOT NULL
SQL for å lagre spørringen
INSERT INTO SqlQueries (Name, Category, Query)
VALUES ('[6] Koblingsstatus', 'Rapportsenter', 'SELECT
cl.fkContentID AS "Side ID",
cl.Name AS "Sidenavn",
lb.LanguageID AS "Språk",
csl.LinkURL as "Brutt URL-adresse",
csl.HttpStatusCode AS "Koblingsstatus",
csl.FirstDateBroken AS "Brutt siden",
csl.LastCheckedDate AS "Sist kontrollert"
FROM
tblContentSoftlink csl,
tblLanguageBranch lb,
tblContentLanguage cl
WHERE
csl.OwnerLanguageID = lb.pkID AND
csl.fkOwnerContentID = cl.fkContentId AND
csl.OwnerLanguageID = cl.fkLanguageBranchID AND
csl.FirstDateBroken IS NOT NULL')
Disse spørringene er bare et kjapt utgangspunkt som gir omtrent det samme som rapportene i det gamle rapportsenteret. Noen av rapportene hadde flere inputmuligheter, men ved behov klarer du sikkert å utvide spørringene så de dekker dine behov.
Oppdatering: I Episerver.CMS.UI 12.12.0 er rapportsenteret tilbake. Men, du kan allikevel bruke denne modulen til å lage dine egne rapporter.
Lykke til!