Bag om folketinget.dk

Jeg holder meget af websteder med fejl. Ofte giver det et helt andet indblik i den underliggende organisation end fejl i gammeldags programmer. I dag forsøgte jeg at skimme Folketingets liste af skriftlige §20 spørgsmål igennem. Pludselig bliver jeg præsenteret for dette vidunderlige SQL udtryk:

WITH MT AS ( SELECT row_number() over ( ORDER BY CASE WHEN
ftcn_casenumber.ftcn_casetypedesc in ('B ', 'S ', 'L ', 'Aktstk.', 'US') THEN
UPPER(ftcn_casenumber.ftcn_casetypedesc + ' ' + REPLICATE('0', 50 -
len(ftcn_casenumber.ftcn_casenumber)) + ftcn_casenumber.ftcn_casenumber + ' ' +
IsNull(ftcn_casenumber.ftcn_casenosuffix, '') + ' ' + REPLICATE('0', 50 -
len(convert(varchar(10),IsNull(documentParagraphNumber,0)))) +
convert(varchar(10),IsNull(documentParagraphNumber,0))) ELSE ( CASE WHEN
caseTypeRecno=100012 then 'UM-DEL' WHEN caseTypeRecno=100001 THEN 'ALM. DEL ' +
committeeAbbreviation + ' ' + REPLICATE('0', 50 -
len(convert(varchar(10),IsNull(documentParagraphNumber,0)))) +
convert(varchar(10),IsNull(documentParagraphNumber,0)) + ' ' + documentSortPrefix +
REPLICATE('0', 50 - len(documentDisplayNumber)) + documentDisplayNumber WHEN
caseTypeRecNo=100005 THEN 'RÅDSMØDE ' + caseNumber ELSE UPPER(caseNumber) END ) END
desc, committeeAbbreviation desc, documentSortPrefix desc, documentSortNumber desc ) AS
rowid , session, committeeAbbreviation, caseTypeRecno, caseRecno, caseNumber,
documentCategoryRecno, documentParagraphNumber, documentSortPrefix, documentSortNumber,
documentDisplayNumber, documentRestriction, docKey, CASE WHEN caseTypeRecNo=100005 then
'Rådsmøde '+ caseNumber WHEN caseTypeRecno=100012 then 'UM-del' WHEN
caseTypeRecno=100001 THEN 'Alm. del ' + committeeAbbreviation ELSE caseNumber END + '
'+ IsNull(documentDisplayParagraphNumber,'') + IsNull(documentSortPrefix, '') + ' ' +
IsNull(documentDisplayNumber, '') AS cNumber, documentTitle, [dbo].[CapitalizeString
(ct_name3) AS ct_name3, case when answerExists=2 then 'Ikke besvaret' when
answerExists=1 then 'Besvaret' else '' end AS status, documentCategoryDesc,
convert(nvarchar, IsNull(documentDistributionDate, documentDate),104) + ' ('+
sessionUserFriendly +')' AS dokDatoShow FROM (dbo.xWebCaseQuestions20 INNER JOIN
dbo.xWebCaseActivity ON dbo.xWebCaseQuestions20.caseRecno =
dbo.xWebCaseActivity.activityCaseRecno) left outer join ftcn_casenumber on
dbo.xWebCaseQuestions20.caseRecNo = ftcn_casenumber.ftcn_ca_recno WHERE ( (documentDate
between convert(datetime,N'20120227',112) AND convert(datetime,N'20120327',112)) AND
(caseTypeRecno=100007 and activityTypeRecno=100013 and activityStatusRecno in
(16,100060,100061,100062,100063)) ) ) SELECT * FROM MT WHERE rowid between 26 AND 50
FOR XML AUTO, ELEMENTS XSINIL, root('list')

Første observation er at webstedet tilsyneladende har fingrene dybt, dybt nede i Folketingets dokumenthåndteringssystem. Ud af 8 sagstyper er der 3 der skal specialbehandles for at få sorteringen til at virke, det gør vi så lige to gange: En gang for at generere et sorterbart "rowid" med store bogstaver og foranstillede nuller og en gang mere menneskelæsbart. Og endelig skulle man tro at et spørgsmål enten var "Besvaret" eller også var det "Ikke besvaret", men måske er det egentligt ganske fornuftigt at Folketingets IT-system åbner op for andre muligheder, dog uden at turde give mulighederne en beskrivende tekst.

Heldigvis er dette stykke SQL formodentligt maskingenereret. Jeg blev nemlig også præsenteret for 600 linjers XML.

Kommentarene i toppen giver mig indtrykket af tre ting: XML'en er redigeret i hånden, hvad der virker bliver tildels styret i hånden og hvad serverne kører bliver til dels styret i hånden. I det mindste virker det ikke direkte som om der står noget direkte kompromiterende, ud over at kolonnen "documentRestriction" ser interessant ud.

Ovenstående er meget løse gæt, men jeg danner mig uværgeligt et billede af organisationen bagved. Når jeg søger et job er jeg lidt opmærksom på hvordan Google sladrer om mig. Men når jeg søger en ny kollega er jeg så lige bekymret over hvordan mit eget system sladrer om min organisation?

Peter Makholms billede
Peter Makholm er Unix-systemudvikler og har en baggrund som studerende på DIKU. Peter blogger om værktøjer, programmering og generelt IT-verden set som Unix-tekniker.

Kommentarer (4)

Loke Dupont

Kommentarer i toppen om den slags ligner lidt at nogen mangler et revisionsstyringssystem til den slags. Det er også lidt skidt at det ikke er datosorteret i hånden ;)

Måske den omgang XML kan give lidt info folketsting og andre der måtte crawle ft.dk, jeg synes dog stadig det er lidt svagt at de ikke stiller et fornuftigt API til rådighed, men med den slags SQL, så kan jeg godt se det måske er lidt tricky.

Log ind eller opret en konto for at skrive kommentarer

IT Businesses