Tag Archives

Archive of posts published in the tag: 4D Code

Xojo.app auf iOS an 4D-Backend

April-Werkstatt in Hamburg: Bernd Fröhlich berichtet. Hier der Mitschnitt: die4Dwerkstatt April 2017 from Ozett on Vimeo. Das sieht auf den ersten Blick gut aus. Ich habe ein wenig gegoogelt und bin auf diese Caveats gestoßen: Xojo hat keinen eigenen Zugriff auf die Location-Services dito…

display msg-body inside a 4D-webarea

extract eMail-body

Summary Those little snippets of code sometimes are real timesaver. The timesaver of this week is a base html-page to display the message-body extracted by MSG_GetBody from the IC Downloaded Mail-theme of 4D Internet Commands this is the raw HTML as used in $rawHTML <html><head><title></title></head><body><pre>…

WebArea as a TextEditor

Summary [Updated] While waiting for 4D Write to earn it’s Pro-badge I evaluate options to use the WebArea as a writing field. These days I stumbled across bold.io. Simple, clear looking and gave it a try. You should too, I suppose. Ich warte…

[Feedback] parse textfiles

Summary Parsing text is one of the annoyances of daily life of a developer. I wrote an article about my way of parsing text and asked for feedback. Johannes Leidheiser did just that. If you like to read about his approach, follow the…

parsing JSON

Summary I very much like 4Ds debugger-window to check the contents of a JSON-file. But sometimes I’d like to have a JSON-parser for the runtime-environment. There is none, so I build one myself. Mir gefällt der JSON-Parser im 4D Debugger sehr gut. Habe ich…

Objects and 4D-Pointers

Summary Wondering what 4D-pointers inside objects are good for? For me pointers inside objects are temporary value to make things easier for the developer. If I need to store pointing-values, I’d use table-/fieldnumbers and or names depending on later usage. 4D erlaubt Pointer…

Where to run On Load?

Summary I was wondering, when best to fill the content of a from. Obviously On load-event is the way to go. Alternatively, filling lengthy content in On Timer would first show the form and then fill the content. These days, 4D getting OS-native…

Worker do work

Summary I’m regularly downloading a couple of files. Not to slowdown my 4DOffice.app I start a process and send this process a list of URLs to be downloaded, and might add to this list further URLs while that process is still running. Lots…

Convert value

Summary Every now and then I need to deliver a value. Something like this: $myText:=$myOtherText. Sometimes those datatypes might be different like this: $myText:=$myDate. Not really a problem, make that date a string. Probably test first, if a pointer is not Nil and…

Okt.-Werkstatt mit Thomas Maul

4Dmethod veranstaltete Ende August einen Google-Hangout mit Thomas Maul: August 31st Meeting – Messaging with 4D v16 Hier die Aufzeichnung auf YouTube zum – unbedingt – vorweg ansehen und überdenken, was die Neuerung der V16 für die eigene Anwendung bedeuten. Für unsere Herbst-Werkstatt.nord am 19. Oktober,…

Parse textfiles

Summary Sometimes, importing hundreds of files with millions of lines of text, will take too much time. Maybe the parsing-technique could be enhanced to make that faster. Here is my code, that I do put into a compiled component, to achieve a faster…

Auto-update 4D-app

Summary Keisuke Miyako: Example of automated upgrade of 4D, using curl (FTP), zip, unzip More details at 4Dforum for our convenience repeated here: „build“ phase. before you start you must do the following: 1. put a copy of „4D Volume Desktop“ inside „Engines“…

More useful stylesheets

english preferred Ohne Stilvorlagen, keine 4D-Datenbank. Das ist gut. Doch leider hält die Organisation der Stilvorlagen nicht mit der OS-Entwicklung Schritt. Dieser Screenshot ist vom aktuellen Stand in V15.1 64-Bit. Für OS X braucht es nur einen Eintrag, für Windows sind es zwei, Windows…

On bound variable change

english preferred ich bin vor kurzem über Deinen alten Tipp mit den Unterformularen gestoßen. Und ja, es ist eine coole Sache und funktioniert erstaunlich gut. Aber wozu braucht man den Event „on bound variable change“ ? Es funktioniert bei mir alles in meiner…

Cooking up numbers

english preferred Viel zu häufig muß ich mir eine Nummer ausdenken. Select document nimmt eine Longint als Erinnerung an den letzten Verzeichnispfad. Welche Longint nehme ich? Eindeutig wäre gut, nicht schon an anderer Stelle verwendet. Ehe ich mühsam eine suche, baue ich mir…

Handle 4D Quit gently

Vincent de Lachaux, 4D iNug Technical, 18. Sep 2015 When 4D Quit, all processes are called and you can do something like closing your dialogs: Case of //… : (Form event=On Outside Call) If (Process aborted) //4D wants to quit SET TIMER(0) //Do…

Automatisches Testen

Kaum ist ein Modul fertig, schon kommen die nächsten Ideen. Dies könnte man noch einflechten oder jenes oder zu einem fertigen Modul möchte ein Kunde eine Erweiterung haben. Soweit ist das kein Problem. Dann geht es ans Testen. … weiter Mario Schulz aus…

Assign a value to a form local variable

there is a 4D forums-thread Array to hierarchical list, need code. Main interest is converting a paths-array into a hierarchical-list. Keisuke Miyako build a demonstration. Again using regex to split the path-elements Match regex(„([^/]+)/(.*)“;$item;1;$pos;$len) The Gem for me are these two lines in…

Drag&Drop Mail onto a 4D V14 Listbox

english preferred? In der NUG wurde die Drag & Drop challenge – developer wanted ausgerufen Direct Drag & Drop (not via Desktop) of an eMail from Apple Mail/Outlook Mac to a 4D listbox. Die Aufgabe ist in 4D V14 und Mac OS X.10 Yosemite…

Unique Longints

english preferred Immer mal wieder brauche ich eine eindeutige Longint die mir eigentlich vollkommen egal ist. Positiv, negativ auch egal, aber eindeutig in der Datenbank. Ich nehme dann YYMMTThhmm, also Jahr ohne Jahrhundert + Monat + Tag + Stunde + Minute in der…

XML String-encoding

english preferred? Im XML-String dürfen die Ampersand „&“ und die spitzen Klammern, kleiner als „<“ und größer als „>“, nicht vorkommen. Denn XML ist Text und benutzt die spitzen Klammern um Tags einzurahmen und den Ampersand um codierte Zeichen zu starten. Aus & wird &amp; aus…

Drag & Drop on Subform

english preferred? Ich will die Ausgaben mit Fotos der Belege verknüpfen. Links habe ich die Listbox mit den Journal-Einträgen, rechts ein Subform-Widget für die Beleg-Buchung. Das Beleg-Foto auf das Widget droppen soll beide verbinden. Hier im Screenshot zu sehen, landet das Beleg-Foto im Widget.…

4D WebArea drucken

english preferred Eine 4D WebArea drucken Im Browser ist das einfach, Ablage/Drucken… und die aktuell angezeigte Seite wird gedruckt. Wie kann ich die in 4D WebArea angezeigte Seite drucken? Es braucht eine Zeile Code. Entweder diese WA EXECUTE JAVASCRIPT FUNCTION(*;$wa_AreaObj;“javascript:window.print()“;$Result) oder jene $error_L:=WA Evaluate…

Quicklook für 4Dbase-Pakete mit Versionsnummer

english preferred Ende Oktober habe ich beschrieben, wie man in Mac OS X die Preview-Darstellung einer 4D-App attraktiver gestaltet. Ich stelle das Verfahren inzwischen um von statischen PNGs auf SVG-Templates. Die zur Laufzeit mit der aktuellen Versionsnummer meiner Anwendung versehen und dann als…

Zugriff auf Safari Bookmarks aus 4D

Suppose while using 4D webarea you’d like to have access to Safari-Bookmarks (which are synched between your devices since iOS8 and Yosemite if you opt in). Seems easy, this runs fine in terminal /usr/bin/plutil -convert xml1 -o – ~/Library/Safari/Bookmarks.plist | grep -E -o…