OpenEdge i VS Code
Visual Studio Code (VS Code) jest alternatywą dla tradycyjnego środowiska Progress Developer Studio (PDSOE). Dzięki oficjalnemu wsparciu Progress Software, programiści OpenEdge mogą korzystać z lekkiego i nowoczesnego środowiska IDE.
Konfiguracja VS Code opiera się na pliku konfiguracyjnym w formacie JSON – w głównym folderze projektu musi znajdować się plik openedge-project.json, zawierający definicje OpenEdge jak: wersja OE, ścieżki (PROPATH), połączenia z bazami danych oraz parametry startowe sesji.
Porównując oba środowisku, VS Code jest lżejszy. PDSOE zużywa dużo więcej pamięci i jest wolniejszy. Jednakże za tym drugim środowiskiem przemawia środowisko graficzne (Visual Designer) niezbędne przy tworzenie projektów typu GUI i .NET.
Jeśli chodzi o integrację ze sztuczną inteligencją, to PDSOE ma ograniczone wsparcie w postaci instalacji pluginu AI. VS Code jest silnie zintegrowany z Github Copilot.
Myślę, że niedaleka przyszłość pokaże jak będa się rozwijać oba środowiska.
Zobaczmy teraz jak skonfigurować VS Code żebyśmy mogli tworzyć programy w ABL na przykładzie wspieranego przez Progress rozszerzenia firmy Riverside Software.
Wymaga ono przynajmniej jednej instalacji OpenEdge z licencją deweloperską i jest obecnie testowane z wersjami 11.7, 12.2 i 12.8, choć nie wyklucza się, że może pracować także ze starszymi wersjami.

Po zainstalowaniu pluginu wchodzimy do ustawień klikając ikonę z kołem zębatym (tzw. gear icon). i klikając Settings.

Wybieram z listy zainstalowaną wersję OpenEdge i klikam na Edit in settings.json. Dodaję ścieżkę do katalogu DLC. Powinno to wyglądać m.w. tak:
"abl.configuration.defaultRuntime": "12.8",
"abl.configuration.runtimes": [
{
"name": "12.8",
"path": "C:\\OpenEdge128"
}
],
W katalogu projektu należy umieścić plik openedge-project.json zawierający ustawienia sesji openedge.
Na początku najłatwiej go utworzyć z poziomu sesji ABL, wykonując procedurę utworzoną przez Carla Verbiesta.
Uruchamiamy zatem sesję mpro, prowin czy PDSOE z podłączoną bazą danych i uruchamiamy powyższą procedurę. Teraz trzeba dopasować ścieżki poprawiając znaki “/” i “\” w zależności od systemu operacyjnego. Ja mam dla Windows.
Po małej edycji mój plik openedge-project.json wygląda tak:
{
"name": "application",
"version": "1.0",
"oeversion": "12.8",
"graphicalMode": true,
"charset": "ISO8859-1",
"extraParameters": "-basekey ini",
"workingDirectory": "C:\\vsProject",
"numThreads": 1,
"buildPath": [
{
"type": "propath",
"path": "."
},
{
"type": "propath",
"path": "C:\\OpenEdge128\\gui"
},
{
"type": "propath",
"path": "C:\\OpenEdge128"
},
{
"type": "propath",
"path": "C:\\OpenEdge128\\bin"
},
{
"type": "propath",
"path": "C:\\OpenEdge128\\gui"
},
{
"type": "propath",
"path": "C:\\OPENED~1"
},
{
"type": "propath",
"path": "C:\\OpenEdge128\\bin"
}
],
"dbConnections": [
{
"name": "t",
"connect": "-db C:\\WrkOpenEdge128\\db\\t -S 10001",
"schemaFile": "dump\\t.df",
"aliases": [
"dictdb"
]
}
]
}
Teraz trzeba utworzyć w projekcie podkatalog dump i umieścić tam plik t.df ze schematem bazy.

Gotowe. Teraz wystarczy stworzyć plik z rozszerzeniem .p i napisać kod procedury. Wybieramy Ctrl + Shift + p i wpisujemy komendę ABL: Run with prowin. Jeśli kod jest poprawny to zostaje wykonany.
Jeśli napiszemy tylko ABL: to zobaczymy całą listę dostępnych komend.
Powodzenia.