Wandelt markiertes SQL in SAP CAP CQL um — als Fluent-API (Standard)
oder als CQL-String. Gedacht als Helfer für SQL-Umsteiger, die sich die
Fluent-Syntax (SELECT.from().columns().where()) nicht merken wollen.
Funktionen
- Markiertes SQL umwandeln (oder das ganze Dokument, wenn nichts markiert ist)
- Mehrere durch
;getrennte Statements auf einmal - Unterstützt
SELECT(mitWHERE,GROUP BY,HAVING,ORDER BY,LIMIT/OFFSET,DISTINCT, Aggregaten),INSERT,UPDATE,DELETE - Zwei Ausgabewege: Ergebnis daneben anzeigen oder Auswahl direkt ersetzen
Befehle
| Befehl | Beschreibung |
|---|---|
SQL → CQL: Auswahl umwandeln |
Format wählen, Ergebnis in neuem Editor daneben |
SQL → CQL: Auswahl ersetzen (Fluent) |
Markierung direkt durch Fluent-Form ersetzen |
Tastenkürzel: Ctrl+Shift+Q (macOS: Cmd+Shift+Q) bei aktiver Auswahl.
Auch im Rechtsklick-Kontextmenü verfügbar.
Lokal ausführen / testen
- Ordner in VS Code öffnen.
F5drücken → ein zweites VS-Code-Fenster („Extension Development Host") startet mit geladener Extension.- Dort eine Datei mit SQL öffnen, SQL markieren, Befehlspalette
(
Ctrl+Shift+P) → „SQL → CQL: Auswahl umwandeln".
Engine-Tests (ohne VS Code): npm test
Grenzen (MVP)
- Der Parser ist pragmatisch (regex-/klammerbasiert), kein vollwertiger
SQL-Parser. Komplexe Joins, verschachtelte Subqueries und CTEs werden noch
nicht in idiomatisches CQL übersetzt — die
WHERE-Klausel wird in solchen Fällen als String übernommen. - Tabellennamen werden 1:1 als Entitätsnamen übernommen; ggf. an dein CDS-Modell anpassen.
- Für den robusten Ausbau lässt sich die Engine (
src/convert.js) später durch einen echten SQL-Parser wienode-sql-parser(AST → CQL) ersetzen, ohne dass sichextension.jsändert.
Verpacken (optional)
Mit vsce package lässt sich eine .vsix erzeugen und über
„Extensions → … → Install from VSIX" installieren.