• Die Clint, het is me

    Die Clint, het is me er eentje.

    The Distinction ?You are not your box,? becomes remarkably useful as soon as you turn it around and apply it to the people closest to you in your work and your home life.

    We react to someone because when we encounter his or her unpleasant manifestations we take it personally. We react to them because we think that ?they? are doing it to ?us.?

    But if we make the distinction between the other person and their Box (if we disidentify them for ourselves), then we have options for relating and communicating with them that were not available to us before.

    We can start over. We do not need to conclude that the unpleasantness is coming from them, but rather from their Box.

    All of a sudden, they can be okay with us again. Here is the experiment. Within the next few minutes, you are almost certain to judge someone critically and get offended. In that moment, before you generate a negative story about that person, tell yourself, ?They are not their Box!?

    Notice what you suddenly experience.

  • Netwerkproblemen blijkbaar opgelost geraakt, en dev32gent2 herstart en alles.

  • Netwerkproblemen, stom.

    Netwerkproblemen, stom.

  • Of neen, ik ga er

    Of neen, ik ga er toch maar niet naar kijken. Nieuw form is nieuwe files in Delphi, en naamgevingen en alles, en ik kan mij inbeelden dat Stijn daar liever zelf in ingrijpt.

    Alla dus. Ik ga de computer van Stijn achterlaten en naar mijn eigen bureau verhuizen.

  • Bon, ik ga nog eventjes

    Bon, ik ga nog eventjes kijken naar een zoekscherm voor die statussen in Delphi.

  • Getver. Het was te verwachten

    Getver. Het was te verwachten natuurlijk. Dev32gent2 is ook zo dood als een pier door die //-xpath.

    Oh well, wachten tot straks dus, want ik kan er niet naar terminalservicen, dus ’t zal een kwestie zijn van laten uitrazen…

  • Pfuh. Het moest er ooit

    Pfuh. Het moest er ooit eens van komen natuurlijk: xmlsearch(thisevent,”//t_Gemeentenaam”), en dat in een loop van alle events. Gevolg: 1500×1500 keer alle t_Gemeentenaam-nodes ge-cfdumpt. En de computer zo vast als een mug in honing natuurlijk.

    Zucht. En dat allemaal omdat ik één puntje vergeten was (“.//t_Gemeentenaam”).

  • ’t Is echt wel een

    ’t Is echt wel een soep van XPath en structKeyExists en list-operaties aan het worden, die conversie van events. Bah.

  • Ik ben natuurlijk niet de

    Ik ben natuurlijk niet de wereldspecialist van XML, maar er is volgens mij toch echt wel iets mis met een schema waar de gemeente waarin een evenement plaatsvindt zit onder

    Evenement_Basis
        FK_Evenement__
          Evenement_Basis
            FK_Basis__
              Basis_Adres
                FK_Basis__
                  Basis_Adres
                    FK_Adres__
                      Gemeente_Adres
                        FK_Adres__
                          Gemeente_Adres
                            FK_Gemeente__
                              t_Gemeentenaam

    Misschien net iets teveel van het goede.

  • Euh, ja, waar was ik?

    Euh, ja, waar was ik?

    Juist: die evenementen in de juiste tabellen krijgen dus.

  • Feh. Die werkt dan wel

    Feh. Die werkt dan wel weer. Tja, dan zal het zo maar moeten gaan zeker?

  • The mind positively boggles. Ik

    The mind positively boggles. Ik geraak van nergens meer aan die computer. noch als mezelf, noch als Stijn, noch via mijn computer, noch via een andere. Maar alle services draaien nog en de websites zijn zonder problemen toegankelijk.

    Weird. Eens kijken of RDS nog aan staat.

  • …maar nu is er weer

    …maar nu is er weer iets met de ontwikkelserver. Stom ding is nog altijd beschikbaar om op te surfen, maar filesharing is gelijk afgezet. Ik kan er niet meer op, noch via een share, noch via terminal services. Dammit. Eens kijken in het serverkot waar dat ding fysiek staat.

  • Ha! Het lukt! ’t Is

    Ha! Het lukt! ’t Is gewoon gelukt om uit die XML de jpegs te halen, ha! Nooit gedacht dat het zo simpel zou zijn. Eerst een functie definiëren voor he wegschrijven naar een file:

    <cffunction name=“writeBase64File” access=“private”>
      <cfargument name=“filename” type=“string” required=“yes”>
      <cfargument name=“content” type=“string” required=“yes”>
      <cffile action=“WRITE” file=“#arguments.filename#” output=“#toBinary(arguments.content)#”>
    </cffunction>

    En dan de loop over de XML, met lelijke kludge als er meer dan alleen DATA:BASE64 in het <data>-ding staat:

    <cfscript>
      eventXML=xmlparse(eventXML);
      numEvents=arraylen(eventXML.xmlRoot.xmlchildren);
      request.fnInstall.installMsg(“parsing eventXML took #gettickcount()-temp# ticks”);
      request.fnInstall.installMsg(“eventXML contains #numEvents# events”);
      
      request.fnInstall.installMsg(“looping over events”, “head”);
      temp=gettickcount();   

      for (iEvent=1; iEvent LTE numevents; iEvent=iEvent+1) {
        thisEvent=eventXML.xmlRoot.xmlChildren[iEvent];
        eventName=thisEvent.T_NAAM.xmlText;
        eventImg=thisEvent.SYS_composite_268304.data.xmlText;
        request.fnInstall.installMsg(“#eventName#”);
        if (len(eventImg) GT 12) {
          eventImg=right(eventImg,len(eventImg)-find(“BASE64”,eventImg)-5);
          eventImgName=listlast(thisEvent.SYS_composite_268304.path.xmlText,“/”);
          writeBase64File(“#expandpath(../products/events/images/“&eventImgName)#”,“#eventImg#”);
          request.fnInstall.installMsg(“—created file #eventImgName#”);
        }
      }

     
      request.fnInstall.installMsg(looping over #numEvents# events took #gettickcount()-temp# ticks”);
    </cfscript>

    Jawel, die ColdFusion is wel een stuk geëvolueerd sinds pakweg 1999. Het kan natuurlijk nog altijd lelijk, daar niet van:

    <cfset eventXML=xmlparse(eventXML)>
    <cfloop from=”1″ to=”#arraylen(eventXML.xmlRoot.xmlchildren)#” index=”i”>
    <cfif len(eventXML.xmlRoot.xmlChildren[iEvent].SYS_composite_268304.data.xmlText) GT 12>
    <cffile action=”WRITE” file=”#expandpath(“../products/events/images/”&listlast(eventXML.xmlRoot.xmlChildren[iEvent].SYS_composite_268304.path.xmlText,”/”))#” output=”#toBinary(right(eventXML.xmlRoot.xmlChildren[iEvent].SYS_composite_268304.data.xmlText,len(eventXML.xmlRoot.xmlChildren[iEvent].SYS_composite_268304.data.xmlText)-find(“BASE64″,eventXML.xmlRoot.xmlChildren[iEvent].SYS_composite_268304.data.xmlText)-5))#”></cfif></cfloop>

    …maar voor wie wil, kan het ook proper. En objectgeoriënteerdachtig. En al.

  • Te mooi om waar te

    Te mooi om waar te zijn:

    The parameter 1 of function ToBinary, which is now “DATA:image/jpeg:BASE64/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0a HBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIy MjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCABIAE8DAREA AhEBAxEB/8QAGwAAAgIDAQAAAAAAAAAAAAAAAwQBBQACBgf/xAAwEAACAQMDAwIFBAEFAAAAAAAB AgMABBEFEiExQVETIgYUYXGBMkKRsaEVI1JTkv/EABoBAAMBAQEBAAAAAAAAAAAAAAECAwQFAAb/ Ex9PhbK/G9Ccup2nZ+3p9q3n5nb2Dx8SJEbI29aIPzA+M9hGI0Ece3lj1PNIZZECCoIKuNuDgd68 YizTAH980YPMghTkAV6EgEETs4IjPpT6ku1h8ojooI3CaAMuMdT1BrB6gD+l9f4M+dyY+GQrKawn so72A2hjaRj7SBliCORID1/PfpxWp1LCm7TQA9cajmlOLlna19S7uDbPI4Zm3eoUIHXgcnHHbPio oKrLk37h8gn+oOTcrJnGtcO8gKjIA4rqhaE6gyMWFSrFxvJWQZYnAXtVeNCxMHrc9PDpOUBhR3ye DhjgUhUHZEfhjB4gTUCOJ8KvtPO4HoaJJYbhGLGjceOpsDDHLjoSM4B4NeIZu8bhhDVU1jZDOzO+ MDgZNGjVCIi4i5LVCtskUlOD1B8mgLHeWbHicWomuUaPIUK6djXgCDuT44mTQqpMawn3BBjx2okt GRMTDlxmSSRIpTaC3OFPNeCmBziTQG4s10zRqQemcj60/ETK2Zitgz//2Q== ” must be a Base-64 encoded string.

    Tja, natuurlijk. Die DATA:image/jpeg:BASE64 staat er teveel. Afkappen die handel.