Kategoriarkiv: IT-programmering

Wiki

Når man siger ordet Wiki, så falder tanken automatisk på Wikipedia – det store online leksikon.

Men Wiki er mere end online leksikonet. Det er en softwarepakke, som man kan installere på sin egen hjemmeside eller på virksomhedens Intranet for på den måde at lave en vidensdatabase over hvad man nu har brug for.

Jeg har en del erfaring med dette sprog.

Tilbage i 2008 blev jeg kontaktet af en menneskerettighedsgruppe som arbejdede via et debatforum som hedder Fornits. Deres fokusområde var anbragte børns velfærd. Et område som jeg har en interesse i da der i familien er børn som må bo ude på grund af deres sygdom.

Opgaven var så at sige at lave en opslagsdatabase hvor de forskellige opholdssteder og andre residentielle løsninger kunne registreres hvis der de pågældende steder havde fundet overgreb sted.

Resultatet blev Fornits Wiki, som desværre ikke er blevet specielt vedligeholdt siden 2012. Mit brugerid of dæknavn er “Bot maintainer” da jeg ikke ønskede at blive mål for nogle af de mere ekstreme grupper grænsende til sekter som havde slået sig på at finde sårbare børn som de kunne rekruttere til deres religiøse aktiviteter.

Systematisk registrering af dødsfald og overgreb førte på den lange bane til en senatshøring og skærpet lovgivning i en række delstater. Mange af de behandlings- og opholdssteder som er registrerede på Fornits Wiki er nu heldigvis lukket. Siden kontaktede andre menneskerettighedsgrupper mig vedr. opgaver i WordPress, men det er en anden historie.

Jeg har i parantes bemærket også tilføjet information til selve Wikipedia. Information som vel at mærke er blevet stående, hvilket viser at kilderne har været i orden.

Har De brug for en intern vidensdatabase på Deres arbejdplads på basis af en Wikimedia installation, står jeg gerne til rådighed med hensyn til rådgivning om opbygning og indsættelse af indlæg, samt undervisning af brugere.

Link til Fornits Wiki: her

Kald til Windows fra et DOS program

Da Microsoft Dynamics XAL eller Concorde XAL som blev det blev kaldt i 1991 da det blev lanceret, var Internettet ikke udbredt. Hvad gør man så anno 2008 når ledelsen gerne vil se et track and trace kaldt inde fra økonomi-programmet.

Vi anvendte et program som idag hedder Consignor til at printe pakke lables ud. Jeg havde lavet det således et andet sted i XAL at der blev lagt en tekst-fil ned i et bestemt område på en server som Consignor programmet så læste.

Denne fil rummede ordre-nummer og informationer om kunde, forsendelse. Da vi på det tidspunkt lod lagerfolkene veje og indtaste de sidste oplysninger i forbindelse med forsendelsen var der i filen kun angivet vægt på lagervarerne. Produktionsvarer vejede lageret.

Consignor fungerer på den måde at programmet foruden label-printning også sender en besked til fragtleverandøren om at der er varer til afhentning. Når varerne er afhentet og de er læst ind i fragtleveradørens system, så kan man trække en fil med forsendelses-id og eget ordrenummer ud til indlæstning i ens økonomi-system, så medarbejderen kan trykke på en knap og på internettet kan lave en Track & Trace funktion hos den pågældende fragtleverandører (Man kunne have mange forskellige). Nemt og hurtigt. Men udfordringen lå selvfølgelig i at XAL dybest set kørte på en DOS-kerne. Så tilbage til start-spørgsmålet: Hvad gør man?

Man programmerer det.

Jeg lavede et kartotek med få felter. SalesNumber (Ordrens nummer), TranportFirm (En kode for transportfirmaet skabt ved indlæsningen af filen), samt en felt til selve track & trace koden TransportID. For min egen skyld læste jeg også datoen ind. På ordrer som blev sendt over nogle omgange viste det sig at være en hjælp for ordremedarbejderen.

Det bringer os til selv ordrebilledet.

Hvis vi starter fra toppen:

Billedet havde en funktion hvor man kunne importere filen fra Consignor. Jeg lavede en ekstern XAL-kørsel til dette formål som jeg kan beskrive en anden gang. I NAV vil dette være en CodeUnit.Firmaet var på dette tidspunkt ved at opdatere fra Windows XP til Windows 7. Der var endvidere både danske og engelske udgaver af Windows. Jeg var derfor nød til at lave to nye grupper som registerede om der var tale om en dansk eller engelsk Windows, da programmet er installeret forskelligt alt efter hvilken version vi taler om.

Koden som den så ud i 2010. Klik på billedet for at kunne læse koden.
ShipmentURLcallXAL
Ja, jeg ved det. Jeg kunne også lave et kartotek til dette formål. Mange veje fører til ROM.

Hjemmesider ændrer sig. Jeg måtte en gang imellem ind og ændre på koden, hvis en af fragtleverandørerne lavede deres hjemmeside om.

Jeg overvejede om jeg skulle lægge hele URL kaldet ud til et kartotek styret af Transportfirm koden, men fravalgte det fordi at nogle hjemmesider krævede at den variable transport kode blev lagt midt i kaldet.

Hvis vi starter fra oven. Parameterkaldet IMPORTEDI startede den eksterne import-funktion.

Parameterkaldet URLHOP er starten til den aktuelle kode.

IF UserInGroup kaldte den funktion som identificerede om brugeren brugte en danske eller engelsk Windows version.

Derefter kommer der 3 IF-sætninger. 1 pr. fragtleverandøren. Også her er der en grad af metode-frihed. Man kunne have valgt en form for CASE-funktion.

Færdig finale. Sådan kan et DOS-program kalde Internet baserede hjemmesider i en Windows tid. Hvorfor trak man i det hele taget XAL tilbage? Jeg forstår det ikke.

Telexpuncher. Hvad er det?

Jeg husker en opgave jeg fik for et firma, der hed SORENCO ude på Islevdalvej. De handlede en del med Kina og da vi talte om de tidlige 90’ere så var telefax ustabilt og Internettet kendte man ikke engang.

Man brugte en telex-maskine. Teksten skrev man i Wordperfect 5.1 som var det førende tekstbehandlingsanlæg på daværende tidspunkt. Min opgave var så at skrive en printerdriver til en telexpuncher, som var et apparat der spyttede en hul-strimmel ud som kunne sættes ind i Telex-maskinen.

Det var en sjov og interessant opgave.

Se: Hvad betyder T/T og FOB (betaligsbetingelse) ? (Debatindlæg på en USENET-gruppe cirka 12 år efter jeg lavede opgaven)