Dokumentation für die VSCode Extension "Bu-Rah Extension Pack"
Übersicht
Die "Bu-Rah Extension Pack" Erweiterung für Visual Studio Code bietet zwei nützliche Funktionen zur Verwaltung und Analyse von .al-Dateien in Ihrem Arbeitsbereich:
- Dateien umbenennen: Automatische Umbenennung von .al-Dateien basierend auf deren Inhalt.
- Erste Zeilen extrahieren: Extrahieren der ersten Zeile jeder .al-Datei und Speicherung dieser Zeilen in einer Textdatei.
Installation
- Voraussetzungen: Stellen Sie sicher, dass Visual Studio Code (VSCode) auf Ihrem Computer installiert ist.
- Erweiterung installieren:
- Öffnen Sie VSCode.
- Navigieren Sie zum Extensions-Panel, indem Sie auf das Extensions-Symbol in der linken Seitenleiste klicken oder Ctrl+Shift+X drücken.
- Geben Sie in der Suchleiste "Bu-Rah Extension Pack" ein.
- Klicken Sie auf die Schaltfläche Installieren, um die Erweiterung zu installieren.
Nutzung
1. Dateien umbenennen
Befehl: bu-rah-extension-pack.renameFiles
- Beschreibung: Diese Funktion durchsucht das src-Verzeichnis Ihres Arbeitsbereichs nach .al-Dateien und benennt diese gemäß dem Inhalt um.
- Vorgehensweise:
- Die Erweiterung liest den Inhalt jeder .al-Datei.
- Sie extrahiert den Objekttyp, die Nummer und den Namen.
- Die Dateien werden umbenannt, um das Format ShortTypeNumber.ObjectName.al zu verwenden.
Beispiel:
- Vorher: pageextension 5176832 ItemGroupEvaluationExt extends Artikelgruppenauswertung.al
- Nachher: Pag-Ext5176832.ItemGroupEvaluationExt.al
2. Erste Zeilen extrahieren
Befehl: bu-rah-extension-pack.extractFirstLine
- Beschreibung: Diese Funktion extrahiert die erste Zeile jeder .al-Datei in Ihrem Arbeitsbereich und speichert alle extrahierten Zeilen in einer Datei namens docu.txt.
- Vorgehensweise:
- Alle .al-Dateien im Arbeitsverzeichnis werden durchsucht.
- Die erste Zeile jeder Datei wird extrahiert.
- Diese Zeilen werden in der Datei docu.txt im Arbeitsverzeichnis gespeichert.
Beispiel:
- Dateien: File1.al, File2.al
- Ergebnisdatei: docu.txt
- Inhalt der docu.txt:
Erste Zeile von File1.al
Erste Zeile von File2.al
3. Erweiterung auf neue Version upgraden und Fenster verschieben
Befehl: bu-rah-extension-pack.upgradeExtension
Beschreibung: Diese Funktion ermöglicht das Kopieren der aktuellen Erweiterung in ein neues Verzeichnis basierend auf der gewählten Version und bietet die Möglichkeit, das Editorfenster auf das neue Verzeichnis zu verschieben.
Vorgehensweise:
- Version auswählen:
- Der Benutzer wird aufgefordert, eine Version (z. B. '21.5.0.0', '22.5.0.0', '23.0.0.0') auszuwählen.
- Verzeichnis vorbereiten:
- Die Erweiterung kopiert die aktuellen Dateien in ein neues Verzeichnis, das auf der gewählten Version basiert.
- app.json aktualisieren:
- Die app.json-Datei im neuen Verzeichnis wird aktualisiert, um die neue Version widerzuspiegeln.
- Alpackages-Ordner leeren:
- Alle Dateien im .alpackages-Ordner des neuen Verzeichnisses werden gelöscht.
- Symbole von Netzwerk kopieren:
- Bei Versionen '21.5.0.0' und '22.5.0.0' werden die Symbole aus einem Netzwerkpfad kopiert, wenn der Benutzer dies wünscht.
- Wechsel zum neuen Verzeichnis:
- Der Benutzer wird gefragt, ob das Editorfenster auf das neue Verzeichnis verschoben werden soll. Wenn dies bejaht wird, wird das Fenster automatisch auf das neue Verzeichnis gewechselt.
Beispiel:
Vorher: Der Arbeitsbereich ist in 'ProjectFolder/IndivExtension'.
- Der Benutzer wählt die Version '22.5.0.0'.
- Die Erweiterung kopiert den Inhalt von 'ProjectFolder/IndivExtension' nach 'ProjectFolder/BC22'.
- app.json wird aktualisiert und der .alpackages-Ordner wird geleert.
- Die Symbole werden vom Netzwerk kopiert (falls der Benutzer zustimmt).
- Nach Abschluss der Operation wird das Editorfenster auf 'ProjectFolder/BC22' verschoben, falls der Benutzer dies wünscht.
Fehlerbehandlung
- Kein Arbeitsbereichsordner gefunden: Beide Funktionen zeigen eine Fehlermeldung an, wenn kein Arbeitsbereichsordner vorhanden ist.
- Fehlender src-Ordner: Beim Umbenennen von Dateien wird eine Fehlermeldung angezeigt, wenn der src-Ordner nicht existiert.
- Fehler beim Lesen oder Schreiben von Dateien: Fehler beim Lesen von .al-Dateien oder beim Schreiben der docu.txt werden als Fehlermeldungen im VSCode angezeigt.
- Fehler beim Kopieren oder Wechseln: Fehler beim Kopieren der Dateien oder beim Verschieben des Editorfensters werden als Fehlermeldungen im VSCode angezeigt.
4. Uppercase zu Lower / Camelcase
Beschreibung:
Diese Funktion durchsucht .al
-Dateien in einem angegebenen Verzeichnis und ersetzt spezifische Schlüsselwörter in Großbuchstaben durch ihre entsprechenden camelCase- oder Kleinbuchstaben-Äquivalente.
Vorgehensweise:
Dateien durchsuchen:
- Die Funktion durchsucht alle
.al
-Dateien im src
-Verzeichnis des aktuellen Arbeitsbereichs.
Schlüsselwörter ersetzen:
- Die folgenden Schlüsselwörter werden ersetzt:
IF
→ if
THEN
→ then
BEGIN
→ begin
END
→ end
EXIT
→ exit
LOCAL
→ local
PROCEDURE
→ procedure
ELSE
→ else
NEXT
→ Next
SETRANGE
→ SetRange
SETFILTER
→ SetFilter
REPEAT
→ repeat
UNTIL
→ until
FINDSET
→ FindSet
FINDFIRST
→ FindFirst
FINDLAST
→ FindLast
FIND
→ Find
STRSUBSTNO
→ StrSubstNo
GET
→ Get
INSERT
→ Insert
DELETE
→ Delete
MODIFY
→ Modify
Dateien aktualisieren:
- Nachdem die Schlüsselwörter ersetzt wurden, werden die geänderten Inhalte in den jeweiligen Dateien gespeichert.
Beispiel:
Vorher: Eine .al
-Datei enthält den Code:
IF someCondition THEN
BEGIN
SETRANGE("Field", 1, 10);
END;
Nachher: Nach Ausführung der Funktion wird der Code in der .al
-Datei folgendermaßen aktualisiert:
if someCondition then
begin
SetRange("Field", 1, 10);
end;
Unterstützung
Für Unterstützung oder weitere Fragen können Sie den Entwickler kontaktieren oder ein Issue auf der GitHub-Seite der Erweiterung melden, falls verfügbar.
Beschreibung:
Diese Funktion durchsucht .al
-Dateien in einem angegebenen Verzeichnis und ersetzt TableData
-IDs durch die entsprechenden Tabellennamen. Die Tabellen-ID und der Name werden aus einer Excel-Datei geladen, die im Verzeichnis der VSCode-Erweiterung abgelegt ist.
Vorgehensweise:
Dateien durchsuchen:
- Die Funktion durchsucht alle
.al
-Dateien im angegebenen Verzeichnis (srcPath
).
TableData-IDs ersetzen:
- Die IDs in
TableData
-Einträgen werden durch die entsprechenden Tabellennamen ersetzt. Die Tabelle mit den Zuordnungen wird aus einer Excel-Datei (table_map.xlsx
) geladen, die sich im Verzeichnis der Erweiterung befindet.
- Wenn ein Tabellenname Sonderzeichen oder Leerzeichen enthält, wird er in Anführungszeichen gesetzt.
Dateien aktualisieren:
- Nachdem die IDs ersetzt wurden, werden die geänderten Inhalte in den jeweiligen
.al
-Dateien gespeichert.
Beispiel:
Vorher: Eine .al
-Datei enthält den Code:
Permissions = TableData 18 = rimd,
TableData 21 = rimd,
TableData 50 = rimd;
Nachher: Nach Ausführung der Funktion wird der Code in der .al
-Datei folgendermaßen aktualisiert:
Permissions = TableData Debitor = rimd,
TableData "Währung" = rimd,
TableData Preisgruppe = rimd;
Implementierungsdetails:
Laden der Tabelle: Die Excel-Datei (table_map.xlsx
) muss im resources
-Verzeichnis der Erweiterung abgelegt sein. Die Datei wird beim Ausführen der Funktion geladen, und eine Zuordnung von IDs zu Namen wird erstellt.
Verarbeitung: Die Funktion ersetzt TableData
gefolgt von einer ID durch den entsprechenden Tabellennamen. Namen mit Sonderzeichen oder Leerzeichen werden in Anführungszeichen gesetzt.
Pfad zur Excel-Datei: Der Pfad zur Excel-Datei wird relativ zum Installationsverzeichnis der VSCode-Erweiterung bestimmt.