{"id":44,"date":"2023-01-22T15:29:16","date_gmt":"2023-01-22T15:29:16","guid":{"rendered":"https:\/\/belfasoft.dk\/?page_id=44"},"modified":"2023-01-23T19:42:10","modified_gmt":"2023-01-23T19:42:10","slug":"programmerne","status":"publish","type":"page","link":"https:\/\/belfasoft.dk\/index.php\/programmerne\/","title":{"rendered":"Programmerne"},"content":{"rendered":"\n<h4 class=\"wp-block-heading\">BelfaSoft &#8211; Lidt om hyggeprogrammering &#8211; Blot til lyst<\/h4>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Stock Manager<\/h3>\n\n\n\n<p>Et lille hj\u00e6lpeprogram i mit daglige arbejde med at holde styr p\u00e5 lager, afs\u00e6tning og indk\u00f8b. Salget pr. m\u00e5ned er en dynamisk st\u00f8rrelse, men samtidig b\u00f8r der ikke k\u00f8bes ind for ofte pga. h\u00f8je transportomkostninger. Det er tit s\u00e5dan, at der er en vis m\u00e6ngde p\u00e5 lager samtidig med, at der flere varer i indk\u00f8b. Programmet hj\u00e6lper til at skabe et grafisk overblik over lagerbeholdningen frem i tiden inkl. n\u00e6ste levering. Det fremg\u00e5r ogs\u00e5, hvorn\u00e5r en kommende bestilling b\u00f8r effektueres for at v\u00e6re &#8216;up to date&#8217;. Der tages hensyn til et reserveret sample lager samt et bufferlager svarende til f.eks. en halv m\u00e5neds oms\u00e6tning. Det g\u00e6lder om altid at have varer p\u00e5 lager, men uden at det er for mange. Et lille overlap er fint, da det giver ekstra sikkerhed.<br>Programmet er skrevet i C#\/.NET<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/StockManager.png\" alt=\"\" class=\"wp-image-89\" width=\"685\" height=\"356\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/StockManager.png 913w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/StockManager-300x156.png 300w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/StockManager-768x400.png 768w\" sizes=\"auto, (max-width: 685px) 100vw, 685px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">HiFi4Sale<\/h3>\n\n\n\n<p>Sidste skud p\u00e5 stammen mht. hjemmesidedesign. Form\u00e5let var blot at afpr\u00f8ve Surftown Creator, som er en nedskaleret (og ret fastl\u00e5st) version af WordPress. Whiskyklubben har tit v\u00e6ret efter mig i forhold til at lave en ny hjemmeside til klubben, s\u00e5 nu har jeg i hvert fald taget de indledende kn\u00e6b\u00f8jninger. Det bliver imidlertid ikke Surftown Creator, der f\u00e5r lov til at l\u00e6gge v\u00e6rkt\u00f8jskasse til pga. forskellige begr\u00e6nsninger som f.eks., at det ikke er muligt selv at installere plug-ins &#8211; Og jeg skal i hvert fald bruge TablePress. S\u00e5 der er nok ingen vej uden om en komplet WordPress installation. Har h\u00f8rt at der kommer en ny v. 5.0 i for\u00e5ret, som bla. indbefatter en ny editor, s\u00e5 m\u00e5ske jeg vil afvente den &#8211; Er sidenhen implementeret i WordPress 6.1.1.<\/p>\n\n\n\n<p>N\u00e5r jeg alligevel lavede siden, kunne jeg lige s\u00e5 godt reklamere for lidt hi-fi, som jeg pt. har til salg.<br><br>Er du interesseret kig da her: <a href=\"https:\/\/hifi4sale.dk\/\">https:\/\/hifi4sale.dk\/<\/a><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"930\" height=\"606\" src=\"http:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/hifi-2.jpg\" alt=\"\" class=\"wp-image-90\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/hifi-2.jpg 930w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/hifi-2-300x195.jpg 300w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/hifi-2-768x500.jpg 768w\" sizes=\"auto, (max-width: 930px) 100vw, 930px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">N\u00f8glepungen<\/h3>\n\n\n\n<p>N\u00f8glepungen (KeyControl.exe) er inspireret af et program, der hed KeyKeeper, og som var lavet af Steen Hjelmstrand. En nyttig lille sag til at opbevare alleh\u00e5nde oplysninger s\u00e5som brugernavne, adgangskoder osv.<br>Programmet mistede desv\u00e6rre data fra tid til anden, og s\u00e5 var der nogle muligheder, som jeg savnede. F.eks. at kunne kopiere eller flytte en folder med data fra et sted til et andet. KeyKeeper, der var fra \u00e5r 2000, var heller ikke fokuseret p\u00e5 datasikkerhed dvs. st\u00e6rk kryptering. Endelig var det af \u00e6ldre dato og tilpasset sk\u00e6rme med mindre opl\u00f8sning, hvilket bet\u00f8d at al tekst blev lidt sm\u00e5t &#8211; Ikke optimalt, n\u00e5r jeg samtidig bliver \u00e6ldre.<br>Mit eget program gav mulighed for at rette op p\u00e5 dette. Jeg ville gerne beholde den simple form fra KeyKeeper, nemlig med et to-delt vindue, \u00e9t med en tr\u00e6stuktur til venstre og \u00e9t med data h\u00f8rende til den aktuelt valgte folder til h\u00f8jre. Desuden gav det mulighed for at tilf\u00f8je ekstra funktionalitet som backup\/restore samt eksport\/import af foldere med data. Indf\u00f8relse af 256 bit AES kryptering gav ogs\u00e5 den \u00f8nskede sikkerhed.<br>Programmet er skrevet i C#\/.NET &#8211; Du er velkommen til at benytte det. Det kan hentes som en zip-fil, der indeholder selve programmet samt en brugervejledning.<br><br>Den nuv\u00e6rende version er 1.4 (2022), og der kan komme en opdatering, hvis der er en feature, jeg finder nyttig. Programmet kr\u00e6ver ingen form for installation, s\u00e6rlig placering eller medie.<\/p>\n\n\n\n<p>Hent det her: <a href=\"https:\/\/www.dropbox.com\/s\/o4uqhepneopvuvk\/KeyControl.zip?dl=0\">https:\/\/www.dropbox.com\/s\/o4uqhepneopvuvk\/KeyControl.zip?dl=0<\/a><br><\/p>\n\n\n\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-ad2f72ca wp-block-group-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"370\" height=\"248\" src=\"http:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/KeyControl-About.jpg\" alt=\"\" class=\"wp-image-95\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/KeyControl-About.jpg 370w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/KeyControl-About-300x201.jpg 300w\" sizes=\"auto, (max-width: 370px) 100vw, 370px\" \/><figcaption class=\"wp-element-caption\">Om N\u00f8glepungen<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/ExcelOutput-1024x696.jpg\" alt=\"\" class=\"wp-image-96\" width=\"512\" height=\"348\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/ExcelOutput-1024x696.jpg 1024w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/ExcelOutput-300x204.jpg 300w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/ExcelOutput-768x522.jpg 768w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/ExcelOutput.jpg 1163w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><figcaption class=\"wp-element-caption\">Eksporter foldere og records til Excel<\/figcaption><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-ad2f72ca wp-block-group-is-layout-flex\">\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/KeyControl.jpg\" alt=\"\" class=\"wp-image-98\" width=\"430\" height=\"280\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/KeyControl.jpg 860w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/KeyControl-300x195.jpg 300w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/KeyControl-768x499.jpg 768w\" sizes=\"auto, (max-width: 430px) 100vw, 430px\" \/><figcaption class=\"wp-element-caption\">Overblik over folderstrukturen<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"280\" height=\"230\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/KeyControl-LogIn.jpg\" alt=\"\" class=\"wp-image-99\"\/><figcaption class=\"wp-element-caption\">Logon<\/figcaption><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-ad2f72ca wp-block-group-is-layout-flex\">\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/KeyControl-Backup.jpg\" alt=\"\" class=\"wp-image-100\" width=\"438\" height=\"338\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/KeyControl-Backup.jpg 584w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/KeyControl-Backup-300x231.jpg 300w\" sizes=\"auto, (max-width: 438px) 100vw, 438px\" \/><figcaption class=\"wp-element-caption\">Backup destinationer<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/KeyControl-Export.jpg\" alt=\"\" class=\"wp-image-101\" width=\"296\" height=\"273\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/KeyControl-Export.jpg 395w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/KeyControl-Export-300x276.jpg 300w\" sizes=\"auto, (max-width: 296px) 100vw, 296px\" \/><figcaption class=\"wp-element-caption\">Eksporter foldere og records, der kan bruges af en anden<\/figcaption><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-ad2f72ca wp-block-group-is-layout-flex\">\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/KeyControl-PasswordGen.jpg\" alt=\"\" class=\"wp-image-102\" width=\"380\" height=\"279\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/KeyControl-PasswordGen.jpg 506w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/KeyControl-PasswordGen-300x221.jpg 300w\" sizes=\"auto, (max-width: 380px) 100vw, 380px\" \/><figcaption class=\"wp-element-caption\">Password generator<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"331\" height=\"239\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/KeyControl-PasswordEstimate.jpg\" alt=\"\" class=\"wp-image-103\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/KeyControl-PasswordEstimate.jpg 331w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/KeyControl-PasswordEstimate-300x217.jpg 300w\" sizes=\"auto, (max-width: 331px) 100vw, 331px\" \/><figcaption class=\"wp-element-caption\">Estimer sikkerheden<\/figcaption><\/figure>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Job\u00b4beren<\/h3>\n\n\n\n<p>I forbindelse med min jobs\u00f8gning, havde jeg brug for et sted, hvor jeg kunne gemme informationer om virksomheder, relevante kontaktpersoner, links til annoncer osv. samt at samle op p\u00e5 min egne aktivitet.<br>Det skulle vise sig, at det i det store og hele ikke var andet, end hvad jeg kunne g\u00f8re p\u00e5 f.eks. JobNet &#8211; Men det var da sjovt at lave det.<br>Programmet er skrevet i C#\/.NET, og det er baseret p\u00e5 en lokal SQL database. Du er velkommen til at benytte det, selvom det nok ikke giver meget mening.<br><br>Hent det her: <a href=\"https:\/\/www.dropbox.com\/s\/ijyrpg864q7uc2h\/Jobberen.zip?dl=0\">https:\/\/www.dropbox.com\/s\/ijyrpg864q7uc2h\/Jobberen.zip?dl=0<\/a><br>Programmet kr\u00e6ver ingen form for installation, s\u00e6rlig placering eller medie.<\/p>\n\n\n\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-ad2f72ca wp-block-group-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"653\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Jobberen-1024x653.jpg\" alt=\"\" class=\"wp-image-118\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Jobberen-1024x653.jpg 1024w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Jobberen-300x191.jpg 300w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Jobberen-768x490.jpg 768w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Jobberen.jpg 1179w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Job&#8217;beren<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"732\" height=\"722\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Jobemner.png\" alt=\"\" class=\"wp-image-114\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Jobemner.png 732w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Jobemner-300x296.png 300w\" sizes=\"auto, (max-width: 732px) 100vw, 732px\" \/><figcaption class=\"wp-element-caption\">Jobemner<\/figcaption><\/figure>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">ExcelCleaner<\/h3>\n\n\n\n<p>Jeg arbejdede et sted, hvor der var behov for at uploade lagerlister til forskellige sites, hvor der kunne findes\/s\u00e6lges\/k\u00f8bes elektronikkomponenter. Det anvendte administrative system var Navision, hvorfra der kunne genereres en Excel-fil indeholdende en komplet fortegnelse over alle varer samt deres lokationer mv. Filen dannede grundlag for den interne lagerliste, men inden den kunne publiceres, skulle der fjernes en m\u00e6ngde varer fra lagerlokationer, der ikke m\u00e5tte v\u00e6re generelt tilg\u00e6ngelige, ligesom visse kolonner skulle fjernes og endelig skulle de resterende kolonner omrokeres. Noget tilsvarende gjorde sig g\u00e6ldende for en ekstern lagerliste, der ogs\u00e5 var repr\u00e6senteret ved en Excel-fil. De to lagerlister skulle imidlertid ikke have helt samme format.<br>Sluttelig skulle der dannes b\u00e5de en xls og en xlsx udgave af listerne, da ikke alle sites kunne h\u00e5ndtere xlsx-formatet. N\u00e5r lagerlisterne var f\u00e6rdige blev de uploaded til de respektive sites via ftp.<br>Ovenst\u00e5ende var en opgave som tidligere tog mange mandetimer, og derfor blev det kun gjort ca. hver anden uge. Nu tog opgaven h\u00f8jst 10 sekunder, og kunne dermed g\u00f8res til et dagligt g\u00f8rem\u00e5l.<br>En sjov lille opgave, der gav mig erfaring med at interface til Excel fra en C# applikation samt hvorledes ftp anvendes og integreres.<\/p>\n\n\n\n<p>Programmet er skrevet i C#\/.NET<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/CleanExcel.jpg\" alt=\"\" class=\"wp-image-117\" width=\"373\" height=\"301\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/CleanExcel.jpg 745w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/CleanExcel-300x242.jpg 300w\" sizes=\"auto, (max-width: 373px) 100vw, 373px\" \/><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">MyClints<\/h3>\n\n\n\n<p>Programmet er lavet til min kone, der havde afsluttet en till\u00e6gsuddannelse som psykoterapeut. Hun sad s\u00e5 og n\u00f8rklede med papirer og blyanter, n\u00e5r hun skulle holde styr p\u00e5 aftaler om terapi og supervisioner (et vist antal sessioner kalder p\u00e5 en supervision). Tilsvarende n\u00e5r hus skulle tage imod betaling &#8211; Og p\u00e5 sigt m\u00e5ske en momsregistreret virksomhed?<br>Der findes gratis programmer til hhv. regnskabsf\u00f8ring og til aftaler, men jeg kunne ikke finde noget, der kombinerede tingene p\u00e5 en m\u00e5de, som kunne bruges i dette tilf\u00e6lde. S\u00e5 er der ikke andet for end selv at lave et program.<br>Det er imidlertid aldrig blevet f\u00e6rdigt, dels fordi min kone ikke har taget det i brug og dels fordi, at et regnskabsprogram foruds\u00e6tter stor indsigt i regnskabsf\u00f8ring, hvad jeg ikke har &#8211; Og det interesserer mig heller ikke. S\u00e5 skulle jeg forts\u00e6tte med at arbejde p\u00e5 programmet, skulle jeg have en slags kravspecifikation og regels\u00e6t serveret. N\u00e5, men det har v\u00e6ret sjovt, mens det stod p\u00e5, og det gav mig mere indsigt i anvendelse af databaser og SQL, s\u00e5 det har ikke v\u00e6ret uden v\u00e6rdi \ud83d\ude42<br>Programmet er skrevet i C#\/.NET og er baseret p\u00e5 en lokal SQL database.<\/p>\n\n\n\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-ad2f72ca wp-block-group-is-layout-flex\">\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/MyClients-1024x644.jpg\" alt=\"\" class=\"wp-image-119\" width=\"512\" height=\"322\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/MyClients-1024x644.jpg 1024w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/MyClients-300x189.jpg 300w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/MyClients-768x483.jpg 768w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/MyClients.jpg 1027w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"644\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Regnskab-1024x644.jpg\" alt=\"\" class=\"wp-image-120\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Regnskab-1024x644.jpg 1024w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Regnskab-300x189.jpg 300w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Regnskab-768x483.jpg 768w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Regnskab.jpg 1027w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-ad2f72ca wp-block-group-is-layout-flex\">\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Aftaler.jpg\" alt=\"\" class=\"wp-image-121\" width=\"350\" height=\"285\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Aftaler.jpg 700w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Aftaler-300x244.jpg 300w\" sizes=\"auto, (max-width: 350px) 100vw, 350px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Opsaetning.jpg\" alt=\"\" class=\"wp-image-122\" width=\"442\" height=\"285\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Opsaetning.jpg 883w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Opsaetning-300x193.jpg 300w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Opsaetning-768x495.jpg 768w\" sizes=\"auto, (max-width: 442px) 100vw, 442px\" \/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-ad2f72ca wp-block-group-is-layout-flex\">\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Salgsordre.jpg\" alt=\"\" class=\"wp-image-123\" width=\"416\" height=\"329\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Salgsordre.jpg 831w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Salgsordre-300x238.jpg 300w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Salgsordre-768x608.jpg 768w\" sizes=\"auto, (max-width: 416px) 100vw, 416px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Bogfoerte-Salgsfakturaer-1024x616.jpg\" alt=\"\" class=\"wp-image-124\" width=\"512\" height=\"308\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Bogfoerte-Salgsfakturaer-1024x616.jpg 1024w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Bogfoerte-Salgsfakturaer-300x181.jpg 300w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Bogfoerte-Salgsfakturaer-768x462.jpg 768w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Bogfoerte-Salgsfakturaer.jpg 1065w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-ad2f72ca wp-block-group-is-layout-flex\">\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Supervisioner-opdater.jpg\" alt=\"\" class=\"wp-image-125\" width=\"327\" height=\"216\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Supervisioner-opdater.jpg 654w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Supervisioner-opdater-300x198.jpg 300w\" sizes=\"auto, (max-width: 327px) 100vw, 327px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Supervisioner.jpg\" alt=\"\" class=\"wp-image-126\" width=\"383\" height=\"319\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Supervisioner.jpg 766w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Supervisioner-300x249.jpg 300w\" sizes=\"auto, (max-width: 383px) 100vw, 383px\" \/><\/figure>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Skovlunde Psykoterapi<\/h3>\n\n\n\n<p>Dette er ikke et program, men en hjemmeside lavet til min s\u00f8de kone i forbindelse med hendes uddannelse som Psykoterapeut. Den er lavet ved hj\u00e6lp af applikationen iWeb p\u00e5 en Mac computer. At det lige blev iWeb var blot for at pr\u00f8ve det af, og s\u00e5 er det s\u00e6rdeles let at arbejde i. Synd at Apple stoppede udviklingen af det.<\/p>\n\n\n\n<p>Bes\u00f8g siden: <a href=\"https:\/\/www.skovlunde-psykoterapi.dk\/Velkommen.html\">https:\/\/www.skovlunde-psykoterapi.dk\/Velkommen.html<\/a><br><br><\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Skovlunde-Psyk.png\" alt=\"\" class=\"wp-image-129\" width=\"542\" height=\"665\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Skovlunde-Psyk.png 722w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Skovlunde-Psyk-244x300.png 244w\" sizes=\"auto, (max-width: 542px) 100vw, 542px\" \/><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Korrektioner p\u00e5 en TC monitor<\/h3>\n\n\n\n<p>M\u00e5lingen af gennemtr\u00e6ngning af ilt fra huden p\u00e5 en TCM400 monitor indebar en vis un\u00f8jagtighed p\u00e5 m\u00e5lingen afh\u00e6ngig af temperatur og luftfugtighed. Det skyldtes sensorernes f\u00f8lsomhed over for disse faktorer. Disse faktorer kunne justeres, men brugeren kunne ikke se, hvilken un\u00f8jagtighed det gav anledning til samt korrektionsfaktoren. Det skulle udregnes manuelt af brugeren via givne formler. S\u00e5 dette program var en lille hj\u00e6lp til dette.<br><br>Programmet er skrevet i C++\/MFC til WindowsCE<br><br><\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/TCM400.jpg\" alt=\"\" class=\"wp-image-134\" width=\"302\" height=\"237\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/TCM400.jpg 604w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/TCM400-300x235.jpg 300w\" sizes=\"auto, (max-width: 302px) 100vw, 302px\" \/><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Whiskyklubben<\/h3>\n\n\n\n<p>Det blev min opgave at lave en hjemmeside, s\u00e5 vi i klubben kunne f\u00f8lge begivenhederne. Vigtigheden af dette voksede i takt med, at vi smagte flere og flere whiskies, is\u00e6r fordi det s\u00e6dvanligvis ikke er tilladt at medbringe noget til et m\u00f8de, som vi tidligere har smagt.<br>Siden er lavet i det hedengangne Microsoft Frontpage, men den st\u00e5r foran en ny implementering i WordPress.<\/p>\n\n\n\n<p>Bes\u00f8g siden: <a href=\"http:\/\/www.maltmates.dk\/whiskyklubben\/\">http:\/\/www.maltmates.dk\/whiskyklubben\/<\/a><br><br><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1002\" height=\"465\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Klubben.jpg\" alt=\"\" class=\"wp-image-136\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Klubben.jpg 1002w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Klubben-300x139.jpg 300w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Klubben-768x356.jpg 768w\" sizes=\"auto, (max-width: 1002px) 100vw, 1002px\" \/><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">CTMS &#8211; Styring af digitalt multimeter<\/h3>\n\n\n\n<p>I forbindelse med udvikling af arbejdspladser til laboranter, var der behov for at kunne m\u00e5le p\u00e5 de enheder, der regulerede temperaturen i arbejdspladserne. Her blev anvendt et digitalt multimeter med to kanaler, der p\u00e5 forskellig vis kunne s\u00e6ttes op til m\u00e5leforl\u00f8b, der omfattede kanaler, temperaturer, sampletider, m\u00e5letider osv. Kommunikation med multimeteret var et RS232 interface. Ideen var s\u00e5, at man via programmet opsatte de \u00f8nskede m\u00e5linger og efter start fik en realtidsvisning af data enten i nummerisk eller grafisk display. Samtidig blev data logget og kunne senere tages frem og analyseres.<br>Programmet er skrevet til DOS i Borland C og med anvendelse af biblioteket CXL (lavet af Mike Smedley). Dette var et shareware bibliotek, og det underst\u00f8ttede kun Small Memory Model p\u00e5 64 KB &#8211; Det var noget af en udfordring med s\u00e5 lidt plads, men det lykkedes.<br>Jeg har desv\u00e6rre ikke andre billeder fra programmet, da det kun er den tekstbaserede del (herunder ops\u00e6tning af m\u00e5lesekvenser), der kan k\u00f8re under Windows 7.<br><br>Programmet var skrevet i 1993 til DOS i Borland C samt med brug af CXL lib (C Programmers Extended Library).<br><br><\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/CTMS-1.jpg\" alt=\"\" class=\"wp-image-140\" width=\"495\" height=\"257\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/CTMS-1.jpg 660w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/CTMS-1-300x155.jpg 300w\" sizes=\"auto, (max-width: 495px) 100vw, 495px\" \/><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Visualisering af X-25 protokollen<\/h3>\n\n\n\n<p>Dette program blev til, da jeg sammen med en studiekammerat skulle lave en opgave i faget LAN under vores studietid. Form\u00e5let var at visualiserer kommunikationen i forbindelse med anvendelse af X-25 p\u00e5 lag 3. Man kan sige, at det var en slags bestillingsarbejde, fordi vores l\u00e6rer ville bruge det i sin undervisning.<br>Programmet er skrevet i 1992 i Borland C og med Shareware biblioteket CXL til at st\u00f8tte den menu og dialog baserede brugerflade. De besynderlige farver p\u00e5 \u00e5bningsk\u00e6rmen skyldes, at vi begge kun havde en sort\/hvid sk\u00e6rm og derfor ikke klar over det farveladepr\u00e6gede udseende. Det opdagede vi f\u00f8rst ved demonstrationen i selve eksamenssituationen &#8211; Og det blev der grinet en del af.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"660\" height=\"342\" src=\"http:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/X25.png\" alt=\"\" class=\"wp-image-150\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/X25.png 660w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/X25-300x155.png 300w\" sizes=\"auto, (max-width: 660px) 100vw, 660px\" \/><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">MasterMind<\/h3>\n\n\n\n<p>Jeg havde l\u00e6rt spillet MasterMind at kende, og det syntes jeg godt om. Det involverer 2 personer, men den ene persons rolle er blot at v\u00e6lge 5 farve samt for hvert tr\u00e6k at evaluere status. Det var derfor oplagt at benytte en computer til det. F\u00f8rst kiggede p\u00e5 nettet efter en implementering, men jeg kunne kun finde nogle tekstbaserede l\u00f8sninger, og da jeg lige havde f\u00e5et en farvesk\u00e6rm (ja vi er tilbage i 1992), var opgaven ligesom givet. En anden udfordring var s\u00e5 at lave en grafisk baseret udgave med inspiration i Microsoft Windows.<br>Programmet er skrevet til DOS i Borland C med anvendelse af Borlands indbyggede grafikbibliotek. I f\u00f8rste omgang virkede det kun med anvendelse af keyboard, derfor har knapperne bogstaver og tal. Efterf\u00f8lgende lavede jeg en musestyring i ASM, men jeg fik aldrig lagt det ind i programmet.<br>Ideen f\u00f8rte til, at jeg senere lavede jeg et objektorienteret (C++) grafikbibliotek til operativsystemet WxWorks. Her indgik ogs\u00e5 knapper, ikoner, input boxes, ListViews og meget andet sjovt.<\/p>\n\n\n\n<p>Biblioteket blev brugt til at implementere brugerfladen p\u00e5 en NPT7 blodgas analysator.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"758\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/SMM-1024x758.jpg\" alt=\"\" class=\"wp-image-151\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/SMM-1024x758.jpg 1024w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/SMM-300x222.jpg 300w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/SMM-768x568.jpg 768w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/SMM-1536x1137.jpg 1536w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/SMM-2048x1516.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">M\u00e5ling af minkpels<\/h3>\n\n\n\n<p>Programmet var en del af mit afgangsprojekt p\u00e5 Ingeni\u00f8rskolen. Projektet var f\u00f8rst t\u00e6nkt som et rent softwareprojekt, men allerede i opstarten blev det til et kombineret software- og hardwareprojekt (10% \/ 90%), hvilket var helt fint &#8211; Mit linjefag var egentlig &#8220;Programmering af parallelle systemer&#8221;.<br>Det gik ud p\u00e5 at m\u00e5le l\u00e6ngderne af h\u00e5rlagene (uldh\u00e5r og d\u00e6kh\u00e5r) i minkpels via et optisk m\u00e5lesystem baseret p\u00e5 en He-Ne laser, fotodioder og en GaAs fotomultiplier &#8211; Med en opl\u00f8sning p\u00e5 0,1 mm. Min opgave var at konstrueret hardware til styring af m\u00e5linger og opsamling af data samt software til pr\u00e6sentation af m\u00e5ledata.<br>Projektet kom desv\u00e6rre ikke i m\u00e5l, men jeg l\u00e6ste mange \u00e5r senere en artikel i ugebladet &#8220;Ingeni\u00f8ren&#8221;, hvoraf det fremgik, at man stadig baksede med problemet uden at have fundet en l\u00f8sning.<\/p>\n\n\n\n<p>Programmet blev skrevet til DOS i sproget C<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"660\" height=\"342\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Force.jpg\" alt=\"\" class=\"wp-image-154\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Force.jpg 660w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Force-300x155.jpg 300w\" sizes=\"auto, (max-width: 660px) 100vw, 660px\" \/><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Lotto<\/h3>\n\n\n\n<p>Her er et gammelt program, s\u00e5 gammelt at det blev lavet og til en sort\/hvid 14&#8243; Philips Monitor. Det blev lavet i 1990 som en slags julesjov. Ideen var, at man kunne generere lottor\u00e6kker med tilf\u00e6ldige tal. Desuden kunne man tilf\u00f8je gevinstr\u00e6kker fra tidligere spil og derefter genere r\u00e6kker baseret p\u00e5 disse tal (de hyppigst udkomne tal). Det prim\u00e6re form\u00e5l var at lege lidt med C-sproget, som var nyt for mig dengang.<br>Om der nogensinde er nogen, der har brugt programmet, endsige vundet noget via det, st\u00e5r hen i det uvisse &#8211; Der er i hvert fald aldrig faldet noget af p\u00e5 mig.<\/p>\n\n\n\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-ad2f72ca wp-block-group-is-layout-flex\">\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Lotto.png\" alt=\"\" class=\"wp-image-158\" width=\"495\" height=\"257\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Lotto.png 660w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Lotto-300x155.png 300w\" sizes=\"auto, (max-width: 495px) 100vw, 495px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"660\" height=\"342\" src=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Lotto-2.png\" alt=\"\" class=\"wp-image-159\" srcset=\"https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Lotto-2.png 660w, https:\/\/belfasoft.dk\/wp-content\/uploads\/2023\/01\/Lotto-2-300x155.png 300w\" sizes=\"auto, (max-width: 660px) 100vw, 660px\" \/><\/figure>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Og alt det andet &#8230;<\/h3>\n\n\n\n<p>Ud over de ovenst\u00e5ende er det blevet til et utal af sm\u00e5programmer, v\u00e6rkt\u00f8jer osv. b\u00e5de til privat brug og i arbejdsm\u00e6ssige sammenh\u00e6nge. Men det er ikke noget jeg har gemt dokumentation p\u00e5.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h4 class=\"has-text-align-center wp-block-heading\">Copyright \u00a9 BelfaSoft 2023<\/h4>\n","protected":false},"excerpt":{"rendered":"<p>BelfaSoft &#8211; Lidt om hyggeprogrammering &#8211; Blot til lyst Stock Manager Et lille hj\u00e6lpeprogram i mit daglige arbejde med at holde styr p\u00e5 lager, afs\u00e6tning og indk\u00f8b. Salget pr. m\u00e5ned &#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-44","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/belfasoft.dk\/index.php\/wp-json\/wp\/v2\/pages\/44","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/belfasoft.dk\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/belfasoft.dk\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/belfasoft.dk\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/belfasoft.dk\/index.php\/wp-json\/wp\/v2\/comments?post=44"}],"version-history":[{"count":31,"href":"https:\/\/belfasoft.dk\/index.php\/wp-json\/wp\/v2\/pages\/44\/revisions"}],"predecessor-version":[{"id":174,"href":"https:\/\/belfasoft.dk\/index.php\/wp-json\/wp\/v2\/pages\/44\/revisions\/174"}],"wp:attachment":[{"href":"https:\/\/belfasoft.dk\/index.php\/wp-json\/wp\/v2\/media?parent=44"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}