InterSystems ObjectScript language support for Visual Studio Code.
CaretDev provides commercial support services. Request a Quote.
On-line course from CaretDev - Developing with VSCode ObjectScript – Easy Start.
- InterSystems ObjectScript code highlighting support.
- Debugging ObjectScript code
- Intellisense support for commands, system functions, and class members.
- Export existing sources to the working directory: press Cmd/Ctrl+Shift+P, type 'ObjectScript', press Enter.
- Save and compile a class: press Ctrl+F7 (⌘+F7) or select "ObjectScript: Save and compile" from Cmd/Ctrl+Shift+P menu.
- Server Explorer with possibility to export items
- Edit directly on server
Install Visual Studio Code first.
Open VSCode. Go to extensions and search for "ObjectScript" like it is shown on the attached screenshot and install it.
Or install from ObjectScript extension page on Visual Studio Marketplace
To be able to use many plugin features, you need to configure the connection to Caché/IRIS server first. You can create or edit existing .vscode/settings.json
file. So, your settings file may look something like this.
"objectscript.conn": {
"active": true,
"label": "LOCAL",
"host": "127.0.0.1",
"port": 52773,
"username": "user",
"password": "password",
"ns": "USER",
"https": false
}
Or you can edit it through settings editor. Which you can open from menu Code > Preferences > Settings for macOS or File > Preferences > Settings for Windows, search for "workspace settings" through Command Palette [⌘⇧P/Ctrl+Shift+P] or by shortcut [⌘+,/Ctrl+,].
- Find a 'objectscript', do not forget to set
active
totrue
port
should follow to web port of instance (usually by default,57772
for Caché/Ensemble,52773
for IRIS) - Change settings according to your Caché/IRIS instance
- You will see related output in "Output" while switched to "ObjectScript" channel (right drop-down menu on top of the output window)
For Caché/IRIS instance with maximum security level, add %Development
role for /api/atelier/
web-application ( More )
If you are getting ERROR #5540: SQLCODE: -99 Message: User xxx is not privileged for the operation
when you try to get/refresh class/routine/includes lists, grant a following SQL Procedure to your user on target namespace.
GRANT EXECUTE ON %Library.RoutineMgr_StudioOpenDialog TO xxx