26 augusti 2010

Stockholmsresa och Integration till lönesystem

Tänkte använda dagens blogg till en kombinerad reseskildring och förberedande av dokumentation som jag lovat skriva om mitt arbete.

Igår reste jag upp till Stockholm, tillsammans med vår chef Bo Johansson, för att träffa berörda parter i Lidingö som vill ha en integration till sitt lönesystem. De vill att den ska vara klar om två veckor. Vi åkte upp för att få lite fart på det.

Mitt arbete har gått lite segt den senaste tiden. Jag är ingen van Delphi-programmerare utan har fått ganska mycket hjälp, först av Fredrik Bäckman och sedan av chefen Bosse för att få fart på själva integrationen. Jag tyckte det var komplicerat jämfört med den kommunikation mellan program som vi är vana med. Mitt program ska läsa av vår databas på uppgifter och skicka in dem till lönesystemet. Läsa vår databas är naturligtvis enkel. Det är skicka till lönesystemet-biten som blir komplicerad. Egentligen är det vanliga anrop med XML till en webbservice. Men jag missade den kursen på högskolan, så jag tycker det var ganska komplicerat också. Vi har fått gott om dokumentation ifrån företaget som tillverkat lönesystemet.

Det är tre webbservicar som ska anropas, en för varje typ av data man vill komma åt i lönesystemet. I Delphi är det en SOAP-komponent som ska anslutas till en viss adress med data uppbyggt på ett viss sätt. Före användandet av komponenten får man förbereda datan så att den kommer i rätt XML-format, skicka med lösenord som kommer från en fjärde webbservice. Efter man skickat datan får man ett svar, antingen en lång lista med t.ex. anställda eller arbetsplatser eller en klarsignal att datan vi importerat in i lönesystemet är okej. Det här fick jag slita med i några månader för att få det rätt. Och jag är ändå ganska osäker eftersom det inte är testat mot mer än ett fåtal testuppgifter.

Det var därför vi ville åka upp till Lidingö, för att se hur det hela fungerade när man först testkör "mitt" program och sedan ser vilka uppgifter som kommer in i lönesystemet. Det var på många sätt fel tänkt:
  • Vi hade inte verifierat med lönesystemet om integrationen skulle fungera mot Lidingös data.
  • Lönesystemet kommer inte låta oss testa ett halvfärdigt program och riska att få in skräp i sitt system.
  • Vi har ingen kontaktperson i Lidingö som förstår hur det hela skulle fungera.
  • IT-enheten i Lidingö hade knappt fått någon information, fram till mötet, om vad som skulle installeras.
I måndags satt vi och jobbade till klockan 20 för att få klart vårat ovan nämnda program. På tisdagen jobbade jag hemifrån och var jättestressad, svor massa åt programmet och Delphi som inte fungerar som jag vill och kom egentligen ingen vart. Först vid 16-tiden fick jag tag på Bosse som kunde reda upp mina tankar lite och säga vem jag skulle ringa. När jag väl fick tag på en kontaktperson ifrån lönesystemet blev jag än mer orolig. Han frågade om de ens hade installerat [integrationsprogrammet] där. Ehm nån sa något om VPN och IT har gjort det tror jag, svarade jag ungefär. Sen skulle vi behöva ett lösenord för att komma in i Heroma. Ett problem jag har är att prata i telefon. Jag föredrar klart mail eller MSN. När jag skriver försöker jag få med så mycket information som möjligt. När jag pratar försöker jag avsluta samtalet så fort som möjligt. Jag ringde därefter till vår IT-kontakt i Lidingö. De hade inte heller så mycket koll. Någon hade sagt att de skulle sätta upp en VPN-tunnel. Mycket mer än så visste de inte. Däremot sa hon att hon hade ett lösenord som vi skulle få på onsdagen. Fast det var naivt att tro att just det lösenordet skulle vara rätt lösenord. Senare skulle det visa sig att de inte ens lagt in användaren i systemet.

På tåget upp fick jag ändå lite mer optimism då chefen hjälpte mig att avsluta vår del av integrationsprogrammet. Åtminstone hjälpligt så vi har något att visa under dagen. Chefen är positiv och tror det löser sig när man väl är däruppe och i grunden är det en bra inställning att ha. Jag är mer försiktig realist... Första timmarna i Lidingö gick det också jättebra, när vi visade våra nyheter i programmet var de hur positiva som helst. Sen kom den svåra biten.

För att få åtkomst mot Internet fick vi ett gästkonto av receptionen (t o m IT-avdelningen måste be receptionen om uppgifter för att få trådlöst Internet!). Vi försökte köra vårat program på vår egen laptop i tron om att vi lite halvt var i kontakt med Heromas server. Först kom vi åt uppgifter, men kom på att det fortfarande var testdatat vi arbetade mot. Någon hade hört någon säga att vi skulle byta URL-adress i vårat program. Vi visste bara ett ställe där det låg en URL och testade den adressen som IT hade fått. Ingen lycka. Chefen kom på att det kunde vara gästkontot vi loggade in på som var fel. Så vi lade in en stor (flera 100 MB) WinLas-installation på en av Lidingös datorer. Det fungerade inte heller.

Nu försökte vi få tag på rätt person som kunde hjälpa oss. Det är en ganska stor apparat då utanför WinLas fanns väldigt många personer som har koll på en väldigt liten del. I vårt företag är vi vana vid att Bosse kan allt och har koll på allt. Så fungerar inte inte företaget som sköter lönesystemet. Och så fungerar inte Heroma. De här personerna försökte vi kontakta under dagen:
  • Fredrik, vår kundkontakt för lönesystemet. Satt i möte hela dagen.
  • Niklas, som har koll på programmeringen i samband med integrationen. Visste dock inget om tekniken för att sätta upp det.
  • Patrick, som vill ha dokumentation inför integrationen. Pratade med honom dagen innan.
  • Mats, vars nummer jag fick av Patrick för att vi skulle ha någon kontakt inom lönesystemet under dagen. Men han visste inget.
  • Mikael, vars namn stod på en pärm med integrationspapper. Han svarade inte.
  • Krister, som var driftansvarig för integrationen.
  • Charlotte, som stod som kontaktperson för VPN-uppkopplingen. Svarade inte heller.
  • Tomas i Lidingö, som skulle sätta upp en VPN-koppling. Och gjorde det men inte hade någon mer Info.
  • Stefan i Lidingö, som installerat ett stödprogram för integrationen.
  • Agneta i Lidingö, som gav oss ID-nummer som skulle koppla ihop verksamheterna i lönesystemet med arbetsplatserna i vårat system. Men så långt kom vi inte idag.
När vi inte fick tag på någon som visste hur det skulle gå till fortsatte vi envist testa oss fram med att byta ut en liten variabel i vårat integrationsprogram. Resten av dagen försökte vi runt 20 olika kombinationer genom att öppna portnummer samt olika varianter av adresser. Vid varje ändring vi fick kopiera in vår programfil (2 MB) på Lidingös dator. Jag var nog på lite dåligt humör vid den här tiden och hoppas det inte märkte för tydligt. När jag programmerar vill jag se någon tendens till att komma framåt eller målet inom synhåll för att det ska vara givande. Vi gav upp strax före tre då chefen också kände att vi inte kom längre. Det vi gjort var dock tillräckligt för att vi skulle kunna fortsätta hemifrån, nu när vi kunde lägga upp nya versioner av vårt program via en fjärranslutning. På tunnelbanan kom Bosse på att det kunde vara något trivalt som att vi hade skrivit HTTP istället för HTTPS. Men vi var betydligt längre ifrån än vad vi trodde.

På tåget hem fick vi mailsvar ifrån Fredrik. Det som saknades för integrationen var:
  • Installation av webbservice i Lidingö
  • Lönesystemet ska öppna funktionaliteten för Lidingö
  • En användare för Lidingö ska skapas i lönesystemets sida av integrationen
  • Uppdatera arbetsplatserna i lönesystemet
Alla fyra stora uppgifter som IT i Lidingö och lönesystemet behöver samarbeta för att lösa. Mycket möjligt att det tar flera veckor innan folk har tid, rätt folk kontaktas, ev utbildas och beställningar göras. Vi som trodde var nästan var klara om vi bara pillade lite mer i en parameter...