zondag 27 januari 2013

Reverse Engineering the MELAG Log-files




    1. 28-01-2013 Steenwijk - Melag levert bewust een onvolledig sterilisatie product om zo apart nog te verdienen aan software verkoop. Nergens voor nodig, met een paar trucjes heb je alle data voor een goede registratie in een Excel of Calc spreadsheet. Graag gedaan MELAG.


      De Duitse firma Melag, marktleider als het gaat om kwaliteitsproducten op het gebied van sterilisatie en desinfectie apparatuur, weet als geen ander dat niet alleen het hebben van kwalitatief uitstekende producten, maar ook het bijhouden van een goede sterilisatie administratie /  registratie cruciaal is voor het uitvoeren van een correct HygiĆ«ne protocol.
      Daarom is het des te vreemder dat als je als klant veel geld steekt in een hoogwaardig Melag product, je dan achteraf van Melag of de groothandelaar moet vernemen dat je eigenlijk een onvolledig product hebt gekocht; een programma om de registraties van het apparaat overzichtelijk te maken moet je er nog apart bijkopen. Leuke marketing strategie is dat, Oh, de Demo krijg je natuurlijk wel gratis.

      Dank u wel Melag voor het leveren van een onvolledige product!

      Aangezien ik geen tosties ga bakken met mijn autoclaaf, was het toch op voorhand duidelijk dat ik ook registratie software bij dit product nodig zou hebben; of niet soms?

      De Demo
      Uit interesse heb ik nog wel even gekeken naar de demo en ik was teleurgesteld om te zien dat er niet eens export functies op zaten. Ook geen “afgesloten” export functies dus het product zelf lijkt mij ook van vrij beperkte waarde. Wat echter wel opviel was hoe snel de demo, de ruim 3000+ log bestanden die ik netjes bewaard heb in luttele seconden wist in te lezen.
      Dat kan gewoon niet! Mits natuurlijk de bestanden helemaal niet ingelezen worden maar alleen al aan de bestandsnaam en wat andere “uiterlijke” kenmerken af te lezen wat er in het bestand schuil gaat....... en dat blijkt dus te kloppen.

      Reverse Engineering
      Door de handleidingen te bestuderen blijkt al snel dat er een opbouw is van de bestandsnaam:

      Log-bestandsnaam:  ABCCCDDD.XXX   / Voorbeeld: 71D1J0CK.PRO

      Waarbij:
      A - Jaartal van productie vanaf 2000 in Base36 gecodeerd
      B - Autoclaaf Type
      CCC - Serienummer in Base36 gecodeerd
      DDD - Charge nr. / sterilisatie run nr.  ook in Base36 gecodeerd.
      XXX - Type log bestand volgens onderstaande tabel
      Bestandsgrootte, van belang of het een test is (zo ja welke) of reguliere sterilisatierun.
      Bestandsdatum en tijd, start van het sterilisatie programma
      ExtensieBetekenis
      PROSuccesvol Programma
      GPDGrafisch log bestand
      STRFout opgetreden tijdens sterilisatie
      STBFout opgetreden als apparaat standby
      LOGSysteem log
      STAStatus log
      LEGAfgekorte legenda
      DEMDemo log
      DESDemo fout log


      Jaartal van productie (A)

      Dit is een getal vanaf het jaar 2000 gecodeerd in Base36, oftewel 0 t/m 9 en dan verder tellen met A t/m Z. Waarbij A dan staat voor 13 (+2000 = 2013 productie jaartal).

      Autoclaaf Type (B)

      Dit gaat volgens een schema van Melag dat er als hieronder uitziet:
      Getal / Character (B in het voorbeeld)Betekenis type
      040-B
      141-B
      343-B
      444-B
      ..
      ..
      813-B
      914-B

      Kent u nog andere Autoclaaf typen en bijbehorend nummer??? We zouden dat uiteraard graag willen horen om bovenstaande tabel nog wat aan te passen.

      Serienummer (CCC)

      Dat is het Serienummer gecodeerd in Base36. oftewel 001 = 1 en 00A = 10, tot ZZZ etc.

      Chargenummer (DDD)

      Dit is het Charge nr.  oftewel het nummer van de sterilisatie run en ook dit is in Base36 gecodeerd.

      Bestandsextensie (XXX)

      Hiermee kun je dus sorteren op correct verlopen programma’s of programma’s met fouten en / of andere log bestanden.

      Bestandsgrootte

      Het valt op dat PRO bestanden met afwijkende bestandsgrootte een andere betekenis hebben en wel de volgende:

      1314 bytes = onderhoudsprogramma
      1317 & 1499 bytes = vacuumlektest

      Hoe importeer ik het in Excel of Calc (Open Office = Gratis)

      1. Voorbereiding
      Dat is niet zo moeilijk als je je oude MS-DOS commando’s nog kent. Gelukkig zei mijn informatica docent altijd dat ik geen “Programmeur” maar een “Bidouilleur” was dus die ken ik nog wel; In bureau-accessoires de “Opdrachtprompt” / “Commandline” openen en naar de hoofd Melag directory gaan waar de verschillende sub-mappen op maand in staan.

      Probeer dan eens: C:\ DIR /S / -C >OverzichtLog.csv

      U krijgt dan de gehele DIR / Directory inhoud in het CSV bestand.

      Het is raadzaam om dit eerst op te schonen van alle tekst zodat alleen de bestandsnamen in de lijst staan:
      04-01-2011  09:50            184903 71D1J0BO.GPD
      04-01-2011  09:50              3450 71D1J0BO.PRO
      05-01-2011  09:00            218812 71D1J0BP.GPD

      2. Importeer het in de spreadsheet
      Zowel Excel als Calc hebben de mogelijkheid om CSV bestanden met vaste begrenzing van de tabellen te importeren. Daarbij is het verstandig om de bovenstaande definitielijst in acht te houden en zo het CSV bestand in tabellen te scheiden. Dus door ook de bestandsnaam in stukjes te hakken.

      Met Excel ben ik niet zo bekend maar in Calc bestaat de functie =DECIMAAL waarmee elk Base36 getal naar een decimaal geconverteerd kan worden.

      Vervolgens kun je in zowel Excel als in Calc alle bewerkingen uitvoeren op je dataset om een mooie en overzichtelijke lijst te komen voor een goed sterilisatie kwaliteitsrapportage zonder dat je weer verplicht bij Melag moet shoppen.

      Tenslotte

      Ik hoop dat alle Melag gebruikers die dit lezen blij zullen zijn om te zien dat ondanks dat MELAG je als klant en gebruiker op dit punt in de steek laat, je met een aantal simpele handelingen toch een goede log-registratie kunt maken. Ook nog eens in een spreadsheet dus je kunt het exporteren / importeren waar je maar wilt.

      Wel heb ik nog twee laatste punten van aandacht:

      1. Ik hoop dat er iemand is die dit leest en handig is met Excel of Calc Macro’s en er een paar schrijft. Het kan dan nog simpeler en de Grafische log bestanden zijn ook niet moeilijk naar een grafiek te vertellen maar automatisch is toch een stuk gebruiksvriendelijker dan met de hand. Wie biedt zich aan?
      2. Ik hoop dat MELAG zich realiseert dat ze hun apparatuur aan academici verkopen die niet helemaal van gisteren zijn en in staat zijn om “out of the box” te denken om bepaalde problemen op te lossen, zoals hier het nare marketing beleid van MELAG. Jammer dat jullie je klanten zo ontzettend onderschatten !