NTree 1.0

ntree1_0

Så er jeg klar med en ny version af mit NTree træ-menu.

Denne nye version indeholder en hel del opdateringer, foredringer og features som jeg har tænkt over skulle med i lang tid.

Af nye features kan nævnes:

  • Lettere kodning af onSelect-callback metoden.
  • Alle nødvendige oplysninger bliver sendt med.
  • Lettere adgang til den absolutte sti.
    • Den absolutte sti til det valgte element, følger med i callback funktionen.
  • En række bugs er rettet i forhold til Chrome.
  • Automatisk scroll til elementer udenfor synsfeltet.
    • Stærkt inspireret af den lækre funktionalitet, der findes i Windows menuen i Windows vista +, har jeg lavet en lignende funktion, der gør menuen mere overskuelig og brugervenlig.

    Test endelig NTree menuen ud på den sædvanlige test side.

    Du kan hente NTree 1.0 ved at klikke her:

    Download NTree 1.0 javascript menu.

    DBTesting

    Efter lang tids stilhed kommer her en lille opdatering på hvad jeg har gang i for tiden.

    Jeg arbejder på et database-testnings system, DBTesting, til at oprette og køre automatiserede tests af en database under udvikling, så man sikre sig, at de data man får ud, er præcis som de skal være og ikke bliver ændret på nogen måder.

    Jeg vil ikke gå så meget i dybden her, men du kan læse mere på hjemmesiden:

    http://dbtesting.ndesoft.dk

    Start ny mail i MS Outlook fra MS Access

    Dette er en mindre fortsættelse til “Start Skype fra MS Access” som jeg skrev for leden.

    1. Opret tabel

    Vi bruger blot den samme tabel som sidst, denne gang tilføjer vi bare et nyt felt med navnet e-mail:

    2. Opret formular

    Hvis du har læst foregående guide, vil du have en formular hvor du blot skal tilføje et nyt felt til e-mailen. Hvis du ikke har nogen formular, så opretter du bare en fra guiden. Det er nemmest.

    3.  Tilføj knap

    De næste trin er nemme nok, du gør blot som i trin 3-5 i “Start Skype fra Access” guiden. Den eneste forskel er blot, at du skal vælge “Kuvert”, “Brev”, “Envelope” eller hvad den hedder som billede.

    4. Tilføj VB kode

    Du skulle gerne nu have noget kode, der ser nogenlunde sådanne ud:

    <span class="kwrd">Private</span> <span class="kwrd">Sub</span> Command20_Click()
    
    <span class="kwrd">End</span> Sub

    I mellemrummet tilføjer du denne kode:

    <span class="kwrd">Dim</span> Cmd <span class="kwrd">As</span> <span class="kwrd">String</span>
    <span class="kwrd">Dim</span> Dir64 <span class="kwrd">As</span> <span class="kwrd">String</span>
    <span class="kwrd">Dim</span> Dir32 <span class="kwrd">As</span> <span class="kwrd">String</span>
    <span class="kwrd">Dim</span> EmailField <span class="kwrd">As</span> <span class="kwrd">String</span>
    
    <span class="rem">' Name of the field, containing the phonenumber:</span>
    EmailField = <span class="str">"email"</span>
    
    <span class="rem">' Outlook default install dir, on both 32 and 64 bit Windows.</span>
    <span class="rem">' Change "Office14" to your Office version. 11 = 2003, 12 = 2007, 14 = 2010</span>
    Dir32 = <span class="str">"C:Program FilesMicrosoft OfficeOffice14OUTLOOK.exe"</span>
    Dir64 = <span class="str">"C:Program Files (x86)Microsoft OfficeOffice14OUTLOOK.exe"</span>
    
    <span class="rem">' Do not edit below this line!</span>
    
    <span class="kwrd">Me</span>(EmailField).SetFocus
    
    Cmd = <span class="str">" /c ipm.note /m "</span> + <span class="kwrd">Me</span>(EmailField).Text
    
    <span class="kwrd">If</span> Dir$(Dir32) &lt;&gt; <span class="str">""</span> <span class="kwrd">Then</span>
    
        Shell (Dir32 + Cmd)
    <span class="kwrd">Else</span>
    <span class="kwrd">If</span> Dir$(Dir64) &lt;&gt; <span class="str">""</span> <span class="kwrd">Then</span>
    
        Shell (Dir64 + Cmd)
    
    <span class="kwrd">Else</span>
        MsgBox (<span class="str">"Microsoft Outlook was not found in default install dir!"</span> &amp; vbCrLf &amp; <span class="str">"Check Office version and/or dir!"</span>)
    <span class="kwrd">End</span> <span class="kwrd">If</span>
    <span class="kwrd">End</span> If

    Den minder lidt om den fra sidst, det du skal ligge mærke til her er felterne “EmailField”, “Dir32/” og “Dir64”. “EmailField” skal selvfølgelig indeholde navnet på det felt, der indeholder e-mail adressen.

    “Dir32” og “Dir64” skal tilpasses din version af Office, dvs. teksten “Office14” skal erstattes med “Office11” for Office 2003, “Office 12” for Office 2007 og “Office14” for Office 2010.

    Scriptet kan udvides med flere funktioner, læs mere her:

    http://office.microsoft.com/en-us/outlook/HP010031101033.aspx

    Start Skype fra MS Access

    For leden fik kom en af mine kollegaer og beklagede sig over at han ikke var i stand til at klikke på en knap i Microsoft Access, som så åbnede Skype og ringede op til et telefon nummer, der er angivet i et felt på formularen.

    Jeg fandt, så hurtigt på en løsning. Ved at tilføje en lille stump VB kode til en knap, kan jeg starte Skype og ringe op, helt uden at skulle klippe eller klistre.

    Metoden er ganske simpel:

    1. Starter med en tabel:

    Først opretter vi en tabel med to felter: ID (autonummereret) og telephonenumber (datatypen er underordnet!)

    2. Opret formular:

    Så opretter vi en formular til at indtaste vores data og vise vores data. Du kan bare bruge auto genereringen hvis ikke du vil designe den fra bunden.

    3. Tilføj knap:

    Så tilføjer vi en knap på formen, lettest at gøre i layout visningen.

    4. Tilpasser knappen:

    Gør knappen mere brugervenlig med et lille ikon, fremfor teksten:

    I egenskabsfeltet, slet teksten i "Caption" eller "Tekst" feltet, alt efter versionen af Access du har (Der skulle gerne stå noget i stil med "Command" eller "Kommando" efterfulgt af et nummer.

    Klik på knappen med de tre prikker ud for feltet "Picture" eller "Billede" og vælg "Phone" eller "Telefon" på listen.

    Klik OK.

    5. Tilføj handling (Event):

    Klik på fanen handling, eller event, og klik på knappen med tre prikker ud for feltet "on click" eller "ved klik".

    6. Tilføj VB script, og du er kørende:

    Du skulle gerne få et vindue, hvor indholdet minder om dette:

    <span class="kwrd">Private</span> <span class="kwrd">Sub</span> Command14_Click()
    
    <span class="kwrd">End</span> Sub

    .csharpcode, .csharpcode pre
    {
    font-size: small;
    color: black;
    font-family: consolas, “Courier New”, courier, monospace;
    background-color: #ffffff;
    /*white-space: pre;*/
    }
    .csharpcode pre { margin: 0em; }
    .csharpcode .rem { color: #008000; }
    .csharpcode .kwrd { color: #0000ff; }
    .csharpcode .str { color: #006080; }
    .csharpcode .op { color: #0000c0; }
    .csharpcode .preproc { color: #cc6633; }
    .csharpcode .asp { background-color: #ffff00; }
    .csharpcode .html { color: #800000; }
    .csharpcode .attr { color: #ff0000; }
    .csharpcode .alt
    {
    background-color: #f4f4f4;
    width: 100%;
    margin: 0em;
    }
    .csharpcode .lnum { color: #606060; }
    .csharpcode, .csharpcode pre
    {
    font-size: small;
    color: black;
    font-family: consolas, “Courier New”, courier, monospace;
    background-color: #ffffff;
    /*white-space: pre;*/
    }
    .csharpcode pre { margin: 0em; }
    .csharpcode .rem { color: #008000; }
    .csharpcode .kwrd { color: #0000ff; }
    .csharpcode .str { color: #006080; }
    .csharpcode .op { color: #0000c0; }
    .csharpcode .preproc { color: #cc6633; }
    .csharpcode .asp { background-color: #ffff00; }
    .csharpcode .html { color: #800000; }
    .csharpcode .attr { color: #ff0000; }
    .csharpcode .alt
    {
    background-color: #f4f4f4;
    width: 100%;
    margin: 0em;
    }
    .csharpcode .lnum { color: #606060; }


    I mellemrummet skal du tilføje denne kode:

    <span class="kwrd">Dim</span> Cmd <span class="kwrd">As</span> <span class="kwrd">String</span>
    <span class="kwrd">Dim</span> Dir64 <span class="kwrd">As</span> <span class="kwrd">String</span>
    <span class="kwrd">Dim</span> Dir32 <span class="kwrd">As</span> <span class="kwrd">String</span>
    <span class="kwrd">Dim</span> CountryCode <span class="kwrd">As</span> <span class="kwrd">String</span>
    <span class="kwrd">Dim</span> PhoneNumberField <span class="kwrd">As</span> <span class="kwrd">String</span>
    
    <span class="rem">' Name of the field, containing the phonenumber:</span>
    PhoneNumberField = <span class="str">&quot;telephone&quot;</span>
    
    <span class="rem">' Country code. +45 for Denmark.</span>
    CountryCode = <span class="str">&quot;+45&quot;</span>
    
    <span class="rem">' Skype default install dir, on both 32 and 64 bit Windows.</span>
    Dir32 = <span class="str">&quot;C:Program FilesSkypePhoneSkype.exe&quot;</span>
    Dir64 = <span class="str">&quot;C:Program Files (x86)SkypePhoneSkype.exe&quot;</span>
    
    <span class="rem">' Do not edit below this line!</span>
    
    <span class="kwrd">Me</span>(PhoneNumberField).SetFocus
    
    Cmd = <span class="str">&quot; /callto:&quot;</span> + CountryCode + <span class="kwrd">Me</span>(PhoneNumberField).Text
    
    <span class="kwrd">If</span> Dir$(Dir32) &lt;&gt; <span class="str">&quot;&quot;</span> <span class="kwrd">Then</span>
    
        Shell (Dir32 + Cmd)
    <span class="kwrd">Else</span>
    <span class="kwrd">If</span> Dir$(Dir64) &lt;&gt; <span class="str">&quot;&quot;</span> <span class="kwrd">Then</span>
    
        Shell (Dir64 + Cmd)
    
    <span class="kwrd">Else</span>
        MsgBox (<span class="str">&quot;Skype Client was not found in default install dir!&quot;</span>)
    <span class="kwrd">End</span> <span class="kwrd">If</span>
    <span class="kwrd">End</span> If

    .csharpcode, .csharpcode pre
    {
    font-size: small;
    color: black;
    font-family: consolas, “Courier New”, courier, monospace;
    background-color: #ffffff;
    /*white-space: pre;*/
    }
    .csharpcode pre { margin: 0em; }
    .csharpcode .rem { color: #008000; }
    .csharpcode .kwrd { color: #0000ff; }
    .csharpcode .str { color: #006080; }
    .csharpcode .op { color: #0000c0; }
    .csharpcode .preproc { color: #cc6633; }
    .csharpcode .asp { background-color: #ffff00; }
    .csharpcode .html { color: #800000; }
    .csharpcode .attr { color: #ff0000; }
    .csharpcode .alt
    {
    background-color: #f4f4f4;
    width: 100%;
    margin: 0em;
    }
    .csharpcode .lnum { color: #606060; }

    Lig mærke til felterne PhoneNumberField og CountryCode.

    PhoneNumberField, skal være navnet på det felt, hvor telefonnummeret findes, i dette tilfælde “telephone” og CountryCode, skal være landekoden for modtageren af opkaldet. Skype spørger dog selv, om landekoden, men vil ikke starte uden.

    Hovedopgave

    hovedopgave screendump

    Så er jeg endelig kommet i gang med min hovedopgave, efter en re-re-eksamen i System Udviklings Metoder.

    Min gruppe og jeg har i den forbindelse, valgt at lave en blog, hvor vi ligger alle vores aktiviteter og alle vores dagrapporter op, så hvis der skulle være en interesse, så kig endelig forbi og følg med.

    Vi bliver ved med at opdatere bloggen indtil d. 10/12 2009.

    Se hovedopgavebloggen her.

    NMapper v2.0

    NMapper Logo

    NMapper Logo

    Så er jeg i gang med version 2 af min NMapper.

    NMapper v2.0 kommer til at have følgende features:

    • Alt fra de foregående versioner.
    • Forbedret cache system.
    • Nyt DB Manager system.
      • Ansvaret flyttes fra managerne til NMapperen.
    • Mulighed for at lave instanser af datamapperen så man kan bruge flere DB managere.
    • Helt ny indre struktur.
    • Forbedret ydelse.
    • Flere generelle og automatiserede metoder.
    • Mulighed for at få taget tid på SQL kaldene.
    • Og meget mere.

    Håber at blive færdig om 2-3 måneder. Hvis du har idéer eller ønsker til yderligere funktionalitet så må du gerne smide en kommentar herunder.

    XML DBManager

    commentxml1[1]Så er min XML Manager til NMapperen, ved at være godt moden. Jeg bruger den på mit arbejde, sammen med NMapperen, selvfølgelig, og har i den forbindelse fundet en hel del svagheder i den. I den seneste version er de fleste af de svagheder blevet helbredt.

    Et af mine problemer opstod da jeg ville indsætte 9445 rækker i en tabel (xml fil) navigate to these guys. Den insisterede på at gemme filen for hver indsættelse. Det tog evigheder, sad i en halv time og ventede.

    Så slog det mig. Indsæt en buffer, der indeholder alle XML-filer fra de oprettes eller indlæses, og så lade en tråd gemme de filer en gang i mellem.

    På den måde skal der faktisk kun læses een gang fra harddisken og kun skrives til disken samtidig med at cachen renser sig selv.

    Ny Blog.. igen..?

    Hej alle sammen.

    Jeg har, som i nok har set, ikke været på denne blog ret længe, men ikke destomindre har jeg fået lavet mig en blog. Den handler kort om meget. Den er kun i startfasen, men den udvikler sig dag for dag.

    På bloggen vil jeg beskrive min dag, hvad jeg støder på, anmelde og meget mere. I kan læse mere om den under “hvad for noget?”

    Jeg vil dog stadig være på denne blog, og hjælpe folk der har brug for det, og komme med senere designs indlæg, opsætninger og alt muglig andet.

    Min blog finder I på daniel.ndesoft.dk, hvor I kan læse mere, og stille evt. spørgsmål.

    Daniel

    Ny Blog…

    Hej igen,

    Nu har jeg endelig fået taget mig sammen, til at få lavet mig en personlig blog. Dvs. en blog der er mere personlig end denne du er på lige nu.

    Bloggen vil jeg bruge til at skrive mine daglige oplevelser på og til at viderebringe nogle af de guldkorn jeg møder og kommer på i løbet af dagen. Check den ud, der kommer meget på den.

    http://nick cialis overnight delivery online.ndesoft.dk/