Der erste Start in Business Central AL gestaltet sich für viele sehr schwierig. Ganz egal ob man von der Navision-Schiene kommt oder neu einsteigt: Die Hürden sind unglaublich viel höher als noch zu nativen Zeiten.
Das liegt nicht unbedingt daran das Business Central so kompliziert zu programmieren ist. Das liegt eher daran, das die früheren Versionen von Navision so unglaublich einfach zu programmieren waren! Wer einmal wirklich in Navision 3.5x (DOS) oder Navision bis Version 2009R2 entwickelt hat, für den ist alles, was danach kommt, unnötig und schrecklich kompliziert. Und: das ist es auch. Als „netter“ Seiteneffekt bleibt zu vermerken das nun jede noch so kleine Entwicklung / Anpassung mindestens die doppelte Zeit benötigt, verglichen zu den Versionen bis 2009R2. Kommt noch ein Report-Layout knapp über „Liste“ hinzu, so sollte man aus seiner Erfahrung eher mit dem Faktor 3-5 rechnen. Was in den nativen Navisions noch in Sekunden erledigt war (Spalte oder Feld einfügen, schnell eine Auswertung zusammen klicken), benötigt nun -bei bereits eingerichteter Entwicklungsumgebung!- eher 10 Minuten. Sobald es an Belege (Kopf/Zeilen, Seitenwechsel) geht, werden auch schnell Stunden und Tage daraus.
Alleine die Einrichtung der Entwicklungsumgebung benötigt nun bei den ersten Gehversuchen leicht eine Stunde.
Weitere Suchbegriffe: Getting startet with Navision / Business Central 2020, Start Programming with Navision / Business Central AL 2020, Einführung in VisualStudio Code für NAVISION / BUSINESS CENTRAL 2020, Einrichten Visuals Studio Code für Navision / Business Central Extensions.
Einrichtung virtuelle Maschine
Wird nur ein einziges Navision betreut, z.B. das eigene Produktive in der Firma, entfällt dieser Schritt.
Die Zeiten, in denen 5 verschiedene Navisions recht problemlos auf einem Computer liefen, sind vorbei. Die gesamte folgende Einrichtung muss exakt (!) zum installiertem Navision bzw. Business Central passen, am besten sogar zum Patchlevel (CU = Cumulative Update). Meine Empfehlung, gerade für Programmierer & Entwickler: Eine VM pro Installation, z.B. eine VM für eine Demoversion, eine VM für Kundenversion 2019 Second Wave Cu2 usw.
Einrichten einer HyperV mit 4 Kernen und 4096 MB Ram, mindestens 50 GB Harddisk.
Die Einrichtung von Windows 10 oder Windows Server brauche ich hier nicht zu dokumentieren, Sie ist unkritisch. Einfach „einmal wie immer“. Ich empfehle ein Offlinekonto, deaktivieren aller beim Setup angebotenen Features inkl. Cortana, direktes entfernen der Suchleiste, Mail, Microsoft Store aus der Taskleiste.
Direkt nach dem ersten Einrichten bitte prüfen, ob ihr Windows die Wiederherstellungspartition HINTER die Datenpartition gepackt hat:
Löschen der Wiederherstellungspartition
Um weiterhin die Datenpartition vergrößern zu können ist die Aufteilung von Windows mit der Wiederherstellungspartition hinter der Datenpartition äußerst störend. Sie können z.B. nicht einfach für die Wiederherstellung einer Datenbanksicherung mal eben das Laufwerk Vergrößerern und danach einfach wieder verkleinern. Auf einer Vm können Sie aber sehr gut auf die Wiederherstellungspartition verzichten.
3. Schalten Sie mit select disk 0 auf den ersten Datenträger (in der VM gibt es ja nur einen!)
4. Zeigen Sie die Partitionen mit list volume an
Anhand der Größen finden Sie schnell die zu löschenden Volumes (Partitionen), hier Volume 2 und Volume 3.
5. Schalten Sie mit select volume 2 auf das erste zu löschende Volume (Partition), und löschen sie diese mit delete partition override. Wiederholen Sie diesen Schritt, wenn nötig.
Nun können Sie die Datenpartition wie gewohnt vergrößern und verkleinern und damit auch die zugehörige virtuelle Festplatte an den realen Bedarf anpassen.
Wenn Sie Oracle Vm Virtual Box verwenden, können Sie die virtuelle Festplatte nicht grafisch vergrößern. Hier wird die Festplatte generell auf der Kommandozeile verwaltet. Vergrößern Sie diese dann z.B. mit c:\“Programm files\oracle\VBoxManage“ modifyhd „volume.vdi“ –resize 60000.
Windows bootet nicht mehr mit Virtualisierung
Seit Windows 2004 / 2020H2 scheint es eine Inkompatibilität mit der Intel Virtualization zu geben. Zumindest hatte ich das unerfreuliche Erlebnis, das nach einem völlig normalen Rechnerneustart -ohne wissentliches Update/Änderung- mich mein Lenovo Thinkpad P73 nur noch mit Bluescreens of Death (BSOD) begrüßte. Meistens kam die Fehlermeldung IRQL NOT LESS OR EQUAL, seltener Kernel Security Check Failure. Abstecken der USB-C Dockingstation, entfernen von RAM, entfernen anderer Systemplatten, Aktivieren eines Wiederherstellungspunkt, selbst das Neuinstallieren einer über ein eigenes WIMage Script erstellten Datensicherung brachten keine Änderung. Teilweise blieb Windows sogar direkt beim Booten hängen: Der sich unter dem Windows-Logo drehende Punktekreis blieb plötzlich stehen, nach kurzer Zeit startete der Rechner komplett neu.
Hier half auf meiner Maschine einzig das Abschalten der Intel Virtualization Unterstützung!
Im (UEFI-)Bios: Security/Virtualization die beiden Optionen „Intel Virtualization Technology“ und „Intel VT-d Feature“ auf Disabled stellen.
„DMA Memory Protection“ sollte auf der Lenovo-Maschine beim Einsatz einer USB-C Docking Station ohnehin abgeschaltet sein, sonst hat man noch mehr Probleme. Nicht schlecht für eine Profi-Workstation vom Markenhersteller Lenovo, was? Aber dann läuft natürlich auch kein HyperV mehr. Meine einzige Lösung: HyperV & Sandbox unter Windows deinstallieren, und mit Oracle VM Virtual Box weiterarbeiten.
Mit vboxmanage clonehd „Quelle.VHDX“ „Ziel.VDI“ –format VHD kann von einer VHDX-Datei eine VDI Festplatte gezogen werden. Die VHDX kann danach gelöscht werden. über vboxmanage kann auch eine komplette VM initialisiert werden! Damit ist OracleVM Virtualbox vboxmanage insgesamt leistungsfähiger als HyperV… aber eben nicht so elegant integriert wie HyperV.
Einrichtung Navision & Business Central als Demo / Entwicklungsumgebung
Wenn bereits ein produktives System zur Verfügung steht, entfällt dieser Schritt. Führen Sie die Einrichtung nur auf einem Rechner durch, den Sie nicht produktiv für ein 2. Navision nutzen wollen, z.B. Test & Produktiv. Hier empfehle ich Ihnen den Einsatz zweier VM’s.
Mit dieser Anleitung installieren Sie ein 2020 SecondWave out of the box. Die früheren Versionen mit C/AL Side by Side finden Sie sehr kompakt hier.
Mit dieser Anleitung hier werden Sie auch eine Demoversion von Business Central (Navision) erstellen. Ziel ist aber die Einrichtung einer kompletten Umgebung für Business Central / Navision Programmierer/Entwickler/Berater.
Weisen Sie ihrem lokalen Adminkonto das Recht als Dienst anzumelden zu:
2. Starten Sie das Setup von der Business Central CD, akzeptieren Sie die Lizenbedinungen, und wählen Sie „Optionen für die erweiterte Installation“ an:
3. Wählen Sie Benutzerdefiniert an. Achtung: nicht auf „Konfiguration laden“ kommen.
4. Nehmen Sie folgende Einstellungen vor:
Service failed to start. Verify that you have sufficient privileges to start system services
Ja… „normalerweise“ funktioniert ein Setup direkt out of the box. Und wenn Sie ein frisches, einfaches Windows-System haben, dann wird das auch so wie oben funktionieren. Domänemitgliedschaften, Ausführungsrestriktionen, Virenscanner… Es gibt so viele Dinge, die einem das Leben schwer machen können 🙂
Wenn Sie die Fehlermeldung erhalten „Service Microsoft Dynamics 365 Business Central Server (BusinessCentral 140) (MicrosoftDynamicsNavServer$BusinessCentral140) failed to start. Verify that you have sufficient privileges to start system services (wobei an der Stelle 140 jeweils die installierte Versionsnummer stehen wird), so wird es etwas haarig.
Evtl. sind Ports, die Sie für Navision vorgegeben haben (beispielsweise, indem Sie die Standard Ports haben stehen lassen, was durchaus gut ist), bereits belegt.
Probieren Sie folgendes:
Starten Sie eine Eingabeaufforderung mit Admin-rechten, geben Sie dort
netsh http show urlacl
ein. Sie bekommen dann eine längere Liste mit solchen Einträgen:
Reservierte URL : https://*:5358/
Benutzer: VORDEFINIERT\Benutzer
Abhören: Yes
Delegieren: No
Benutzer: NT-AUTORITÄT\Lokaler Dienst
Abhören: Yes
Delegieren: No
SDDL: D:(A;;GX;;;BU)(A;;GX;;;LS)
Solten Sie dort einen Eintrag finden mit der Zahl 7047,7048,7049 bzw. jeweils den Werten, Die sie selber beim Setup vergeben haben, so löschen Sie diese Reservierung, in obigem Beispiel
netsh http delete urlacl url= https://*:5358/
Überprüfen Sie dann bitte, ob der Navision Service Tier installiert wurde. wenn ja, löschen Sie ihn mit der Konfigurationskonsole. Richten Sie dann ein neues NST ein.
Eine andere Methode, Navision / Business Central trotz der Fehlermeldung „Service Microsoft Dynamics 365 Business Central Server (BusinessCentral 150) (MicrosoftDynamicsNavServer$BusinessCentral150) failed to start. Verify that you have sufficient privileges to start system services zum laufen zu bewegen, ist den Installer zu überlisten. Wenn Sie bei dieser Fehlermeldung beim Setup „Cancel“ drücken (und anders kommen Sie ja nicht weiter), deinstalliert Navision oder Business Central den Service wieder.
Probieren Sie bitte folgendes:
Drücken Sie nicht Retry (bringt nichts) oder cancel (deinstalliert alles).
Gehen Sie in die Systemdienste, Sie sollten hier den Navisiondienst sehen:
In diesem Fall haben Sie ja schon 99% der Arbeit erledigt… Nur will das Setup diese Leistung nicht anerkennen.
Ändern Sie in der Diensteeinstellung den Anmeldenamen zu dem eingangs erwähnten Servicedienst, und probieren Sie, den Service zu starten.
Zu diesem Zeitpunkt können Sie auch mit der bereits installierten Microsoft Dynamics 365 Business Central Server Console die Einrichtung ändern, was vorher (mangels Service Ordner) nicht möglich war.
Vermutlich wird der ServiceStart trotzdem nicht funktioneren, aber Sie haben nun erst einmal die Werkzeuge, die Sie benötigen.
Jetzt kommt das ungewöhnlichste: Schießen Sie das Setup ab, ohne ihm die Möglichkeit eines Rollbacks zu geben!
Das geht meistens nicht mit dem Taskmanager (aber Sie können es mal probieren). Meist erkennt das Setup den Systembefehl Close, und macht wieder sein Rollback: Alles ist weg.
Starten Sie statt dessen den Taskmanager, wir brauchen die PID von dem Setup:
Nun starten Sie eine Kommandozeile mit Adminrechten, und geben ein:
taskkill /PID 1644 /T /F (die 1644 haben Sie eben im Taskmanager gefunden, Sie können diese auch mit tasklist auf der Kommandozeile finden. Evtl. haben Sie einen Child-Prozess vom Setup erwischt, dann meldet Ihnen Taskkill: Fehler: Der Prozess mit PID XXXX (untergeordneter Prozess von YYYY) konnte nicht beendet werden.
Dann wiederholen Sie den Taskkill noch einmal mit YYYY. Das kann rekursiv nötig sein.
Wenn Sie so nicht weiter kommen, ziehen Sie den Stecker oder schalten Sie die VM hart aus. Auf keinen Fall drücken Sie „Cancel“!
Nach dem Neustart können Sie dem Navision service tier über die Ereignisanzeige auf die Finger schauen, und sehen, warum es Bäuerchen macht. Mit an Sicherheit grenzender Wahrscheinlichkeit wird es nach dieser Rosskur nämlich immer noch nicht laufen… aber zumindest können Sie es nun einfach beobachten und verwalten.
Lassen Sie sich dabei auch nicht von einem andauernden Status „wird gestartet“ irritieren. Drücken Sie F5 in der Diensteanzeige, der Startversuch dauert immer nur wenige (typisch <30) Sekunden.
Starten Sie den Dienst, nachdem der Rechner komplett frisch hochgefahren ist, einfach einmal neu, und kontrollieren Sie dann die Ereignisanzeige.
Sicherlich finden Sie dann dort den wirklich gültigen Hinweis, was Sie tun sollen.
The connection to SQL server could not be established : Gehen Sie in die nun funktionierende Management Console, und kontrollieren Sie die Servereinstellungen. Natürlich auch mal so nebenbei, ob denn der SQL-Server mit der (Demo-)Datenbank überhaupt läuft.
Hinweis: Sie können auch mit ServiceControll (SC) einen Navision-Serverdienst installieren:
sc \\Computername create MicrosoftDynamicsNAVServer$NAVision binpath= „Programmverzeichnis\140\Service\Microsoft.Dynamics.Nav.Server.exe $NAVision“ DisplayName= „Microsoft Dynamics NAV Server 140“ start= auto type= own depend= NetTcpPortSharing Aber ich empfehle die Konfiguration über die Setup.exe. Wenn Sie erst einmal an diesem Punkt sind, as Sie sc… benutzen müssen, ist die Installation so vergurkt, dass Sie das vermutlich eh nicht mehr zum Laufen bekommen. Evtl. hilft auch einfach: Tief durchatmen, Computer komplett von null neu aufsetzen, von vorne anfangen.
Login failed for user ‚NavServer‘. Reason: An attempt to login using SQL authentication failed. Server is configured for Windows authentication only
Das bekommt man gerne mal, wenn man den Navision / Business Central Serverdienst von Windows-Authentication (z.B. Networkservices bzw. Netzwerkdienst) umschaltet auf SQL Server Authentification, oder auch umgekehrt.
Grund: Das Navision-Setup installiert den SQL Express mit Windows only. Man kann also danach so viel SQL_User im SQL Server anlegen wie man will: Mit Navision lässt der SQL dann trotzdem keine Verbindung zu.
Mit dem MS SQL SMS auf den Server rechte Maustaste klicken, Eigenschaften, Sicherheit, gemischten Modus aktivieren.
Nicht in der Ereignisanzeige suchen! Diesen Hinweis findet man lediglich im SQL_Log.
Extra Tipp: Legen Sie sich gleich zeitnah mindestens diese Programme in die Taskleiste:
Haben Sie bereits einen SQL_Server im Einsatz, der die Navision-Datenbank hosten soll, so können Sie in diesem Schritt auch einfach diesen SQL-Server angeben.
Nach wenigen Minuten wird sich das Setup mit Erfolg zurück melden. Sie haben nun Business Central, einen SQL-Server, die 3-Tier Architektur und einen Link auf ihrem Rechner installiert.
Je nach benutzter Windows-version fehlt ihnen jetzt noch ein Browser, der Navision bzw. Business Central sauber darstellen kann. Hier haben Sie die Wahl zwischen Google Chrome (funktionierte schon sehr früh sehr gut mit Navision, meine Empfehlung), Edge (funktioniert erst mit Business Central, nachdem Microsoft ihre eigene Engine aufgegeben und die von Chromium übernommen hat), Firefox (funktioniert „ganz gut“, ist aber in diesem Zusammenhang 2. Wahl). Der Internet Explorer steht Ihnen nur zur Verfügung wenn Sie sich auch sonst lieber Tabasco und Limettensaft in die Augen tröpfeln. Aber er eignet sich ganz hervorragend dafür Chrome zu installieren :-).
Einrichten Business Central Servertier
Um mit VSC (Visual Studio Code) automatisch die Symbole und den Basis-Code (Base Application) laden zu können, muss der Business Central und Navision DiensteServer für die Entwicklungsumgebung frei gegeben werden. Starten Sie die Business Central Administration, wechseln Sie zur gewünschten Instanz (in dieser Demo hier ist das die BC160), Development
Einrichtung VS-Code
Die Zeiten einer integrierten Entwicklungsumgebung sind vorbei, auch „Low-Code“ oder „Easy-Programming“. Konnten Sie früher noch eine komplette Datenstruktur (allerdings ohne Löschweitergabe, das hat Navision/Microsoft leider nie hingekommen) inkl. Dokumentereport mit Kopf/Zeilenstruktur gänzlich ohne eine Zeile Programmcode erstellen, so können Sie heute nicht einmal ein Editable Ja/Nein ohne so etwas wie Programmcode ändern.
Ich empfehle unbedingt den Verzicht auf „Docker“, außer Sie sind schon mit diesem Thema („Docker“ unter Windows mit Business Central oder Navision) erfahren. In diesem Fall benötigen Sie sicher auch nicht meine Anleitung. Nutzen Sie lieber das Konzept der virtuellen Maschinen wie oben beschrieben, gerade für den Einstieg.
- Laden, Installieren & starten Sie Visual Studio Code von hier (Sie können auch einfach im Browser nach Visual Studio Code suchen).
Empfehlung: Aktivieren Sie alle Optionen.
2. Installieren Sie die AL-Umgebung „AL Language“ (das dauert ein paar Sekunden)
3. Aktivieren der aktuellen Navision und Business Central Umgebung
Mit Shift+Strg+P rufen Sie den Prozess (oder was auch immer das P bedeuten mag) Befehl auf, und starten mit al:go ihr erstes Navision-Objekt. Vorher können Sie die AL-Umgebung nicht laden!
Tipp: Führen Sie einmal das Snippet AL:Go aus, und notieren Sie sich (ja, so mit Bleistift und so) die Abfragen die kommen, zusammen mit den Antworten. Evtl. tragen Sie die Antworten nach. Dann verwerfen Sie dieses erste Projekt, tragen alle fehlenden Antworten in Ihre Notiz ein, und fangen noch mal an.
Sie brauchen: Projektname (gewöhnen Sie sich schnell ein zentrales Verzeichnis an!), TargetPlattform (ihr Server), evtl. Benutzername, Benutzerkennwort, Servername
launch.json und app.json anpassen
Editieren Sie gleich die entstandene launch.json.
Fügen Sie „schemaUpdateMode„:“ForceSync“ hinzu:
(Tipp: Zu diesem Zeitpunkt muss nach der Eingabe von sche bereits der AutoCompleteWizzard erscheinen!)
Fügen Sie „port“:7049 (siehe Development Port weiter oben) hinzu
Ändern Sie die Authentication auf Windows
Editieren Sie die app.json, fügen Sie „target„: „onPrem“ hinzu:
Anmerkung: Natürlich müssen sie für eine reguläre Entwicklung auch ganz viele der anderen Parameter anpassen, aber das ist ein anderes, gaaaaanz weites Thema. Hier geht es nur darum ein erstes Glücksgefühl zu erzeugen.
Anmerkung 2: Warum OnPrem? Nur auf diese Weise können Sie weiter .Net (DotNet) Objekte in Business Central oder Navision integrieren – und das auf so eine professionelle Art, das ihnen das in dem neuen Navision richtig Spaß machen kann. Umgekehrt wird daraus: In allen anderen Zielen (Targets), insbesondere in der Cloud, existiert schlicht kein .Net (DotNet) mehr. Ende. Aus. Punkt. Vorbei. Kein „Aber“ und kein „Ich brauche doch…!“.
OK Ok ok… Über Blazor geht es dann doch wieder, aber auch das ist hier nicht das Thema für eine Einführung.
Symbole laden
Nun können / müssen Sie die Symbole (alle internen Referenzen, Befehle, Funktionen, Tabellennamen, Felder…) laden: STRG+Shift+P, AL:Download Symbols
Nach wenigen Sekunden erscheint die Meldung, das die Symbole korrekt herunter geladen wurden. Die Meldung verschwindet, die Freude bleibt: Die vom Wizzard eingetragene HelloWorld Applikation kompiliert plötzlich fehlerfrei:
Herzlich Willkommen in Ihrer neuen Navision / Business Central Entwicklungsumgebung (Programmierumgebung).
Lizenzverwaltung Fin.flf
Sogar Microsoft empfiehlt 2020 den Navision-Entwicklungsclient zu benutzen um die Lizenz einzusehen und zu aktualisieren. Das ist natürlich nur ein Scherz.. hoffe ich. Denn dieser wird seit Navision & Business Central 2019 second Wave schon gar nicht mehr mitgeliefert. Sie müssen die Powershell dafür benutzen.
Starten Sie die Business Central und Navision Administration Powershell als Admin:
Anzeigen der aktuellen Lizenzinformationen
Tippen Sie „export-navs“ und drücken Sie die TAB-Taste, dann Leertaste und Instanzenname + Enter. In unserem Beispiel also
Export-NAVServerLicenseInformation bc160
Navision oder Business Central zeigt Ihnen die in dieser Lizenz gespeicherte Lizenzinformation an:
Importieren einer neuen Lizenzdatei
In der gleichen Shell tippen Sie bitte Import-NAVS und drücken TAB. Wenn nicht sofort der richtige Befehl angezeigt wird, so schalten Sie mit TAB in der Powershell (wie in der früheren Batchprogrammierung bei den Dateinamen) mit TAB durch die Befehle durch:
Import-NAVServerLicense BC160 -LicenseData ([Byte[]]$(Get-Content -Path „c:\temp\fin.flf“ -Encoding Byte)) -Database NavDatabase
Bitte beachten Sie: BC160 ist ihre Instanz, „c:\temp\fin.flf“ ist der Pfad und Dateiname Ihrer Lizenzdatei. Achtung! Business Central und Navision bzw. die Powershell prüft schon, ob die Lizenz für Ihr System geeignet ist. Wenn nicht, wird eine entsprechende Warnung ausgegeben. Aber die Lizenzdatei wird trotzdem importiert! Bevor Sie also eine neue Lizenzdatei importieren, prüfen Sie immer das Sie die bisherige Lizenzdatei als Datei vorliegen haben. So können Sie im Fehlerfall wieder auf den vorherigen Zustand zurück schalten indem Sie die funktionierende FIN.FLF einfach erneut importieren.
Report Builder was unable to paste successfully
Das gehört jetzt nicht so direkt in Einstieg in AL, sondern eher in Einstieg in RDLC oder in den Report Builder… aber das wird hier zu heftig. Daher nur der kleine Ausschnitt zu diesem echt nervigen Thema vom Microsoft SQL Report Builder, wenn man ein Feld kopieren möchte. Grundsätzlich ist dies ein Bug, not a feature, aber es gibt einen schnellen Workaround.
Szenario: Man will ein Feld im Report Builder (Egal ob der SQL Report Builder, welcher bei jedem Navision/Business Central dabei ist) oder der richtige Visual Studio (nicht: Visual Studio Code!) kopieren, und bekommt diese Fehlermeldung:
Die Ursache ist klar ein Programmfehler, aber aus unserer Sicht ist das hier das Problem: Der „Value“ einer Textbox, zu finden über die Textbox, rechte Maustaste, Text Box Properties, Value, die Formel Schaltfläche, oder, kürzer, Textbox, rechte Maustaste, Expression. Auf beiden Wegen kommt man zu der Expression, welche vom Report Builder als „Custom Code“ erkannt oder bezeichnet wird:
Alles, was wir hier machen müssen, ist in der Expression der Textbox VOR dem Kopieren einen Kommentar anhängen. Echt! Willkommen bei Microsoft.
Die Expression sieht danach z.B. so aus:
Nun kann diese Textbox im Report Builder ohne die Fehlermeldung „Report Builder was unable to paste successfully“ kopiert werden bis zum Sankt Nimmerleinstag.
Im Internet kursiert auch der Tipp, statt des Abostroph (‚) einen Doppel-Slash (//Comment oder was auch immer) zu benutzen. Das funktioniert auch, muss aber nach dem Einfügen wieder entfernt werden, sonst gibt es in Navision die unschöne Fehlermeldung
Microsoft Dynamics NAV Development Environment
Fehler beim Überprüfen von RDL-Inhalt:
Der Value-Ausdruck für das textrun-Objekt ‚FooderMiddle4.Paragraphs[0].TextRuns[0]‘ enthält einen Fehler: [BC30201] Ausdruck erwartet.
Wenn man statt dem //Comment ein ‚Comment benutzt, kann dieser Text einfach drin stehen bleiben. Und gerade bei der recht dämlichen Weise, wie Microsoft Zeilenelemente mit SetData und GetData für den Kopf und den Fuß überträgt, kann man diesen Kommentar ja auch gleich dafür verwenden, etwas sinnvolles (z.B. ‚Rechnungsnummer) zu verwenden.