Hi Community,

I would like to share with you my experience regarding to debugging via Atelier.

I'm developing a REST API and would like to attach to a process when I call the API via a REST Client tool, for example Postman. The purpose is to inspect values from HEADER and BODY of the HTTP request during the debugging process.

Come on! How am I doing? I am going to demonstrate that by using a class from SAMPLES namespace.

1 - Open Atelier;

2 - Open your REST Service class;

3 - Go to the method related to the URI that you need to debug;

9 3
0 1.3K

Only a few days to go until the Global Summit! George James Software will be on hand to talk about any projects you may have on the horizon, such as application development, data and platform migration, system integration, training, and support – we can work with you to find practical and maintainable solutions that support the growing needs of your organization.

We're also running a User Group Session on Wednesday, July 22nd at 12pm. It's a great opportunity to find out more about our tools and ask us (and current users!) any questions.

3 0
0 177

Come and say hi to us in the Partner Pavilion at the Global Summit!

We’ll be showcasing our Serenji on-the-spot debugger which has undergone some big changes in the last year—users can now enjoy a seamless debugging experience with zero configuration, along with taking advantage of the latest features in VS Code itself, enabling users to smoothly identify and quickly fix errors in your code, contributing to the production of quality, maintainable code.

If you want to see Serenji in action look for us in the Partner Pavilion, we'll be on hand to show you a demo. Prospective users are also welcome to join our User Group Session during the lunchtime session on Wednesday, June 22nd. Email laurelj@georgejames.com to let us know you'll be there.

2 0
0 215

From time to time, we get the previous question in support, something or someone is using more licenses than expected, and we need to find what.

We have two scenarios. The first scenario is when we realize that the licenses are exhausted when the application does not work or when we try to connect through the terminal and get the "lovely"

<LICENSE LIMIT EXCEEDED> message:

7 1
0 806

While I love using VSCode for IRIS development work, one of the persistent frustrations with it has been the inability to display an object hierarch in the variables window while debugging. Only the object's reference identifier is displayed. Cache Studio's handling of the same issue is a little clunky, but it does at least have the option to display something as an object.

For now, I make do with a combination of the watch window and the command line in the debugging console -- but this feels just a step away from log.debug()/console.log() level debugging sometimes.

0 2
0 474
Article
· Jun 13, 2016 1m read
Debug: using locks for breakpoints

Hi, Community!

Want to share with you one debugging approach from the Russian forum.

Suppose I want to debug the application and I want it to stop the execution on a particular line.

I add in code this line:

l +d,-d

When I want to start debugging in this line I block d in terminal

USER> l +d

And execute the app.

The app stops on this line and lets me connect to it with Studio debugger.

0 8
1 661

SET ^||fruit(1)="apple",^||fruit(4)="banana",^||fruit(8)="cherry"
SET ^||fruit(1,1)="Macintosh",^||fruit(1,2)="Delicious",^||fruit(1,3)="Granny Smith"
SET ^||fruit(1,2,1)="Red Delicious",^||fruit(1,2,2)="Golden Delicious"
SET ^||fruit="Fruits"
ZWRITE ^||fruit

^||fruit="Fruits"
^||fruit(1)="apple"
^||fruit(1,1)="Macintosh"
^||fruit(1,2)="Delicious"
^||fruit(1,2,1)="Red Delicious"
^||fruit(1,2,2)="Golden Delicious"
^||fruit(1,3)="Granny Smith"
^||fruit(4)="banana"
^||fruit(8)="cherry"

0 4
0 666

I am experiencing a problem with an EDI process that uses a SQL Batch Service to connect to our DEV environment. However, when we point the EDI service to our TEST server, it errors out.

I have checked every single property on our TEST and DEV servers as well as the properties on the associated tables. They are identical. Nothing has changed in the SQL either.

0 1
0 322

Hey Developers,

In this video, you will learn how to use VS Code with Python:

Using VS Code with Python

https://www.youtube.com/embed/PipmxjiMqfM
[This is an embedded link, but you cannot view embedded content directly on the site because you have declined the cookies necessary to access it. To view embedded content, you would need to accept all cookies in your Cookies Settings]

2 0
0 345

InterSystems technologies are renowned for their high performing databases, which support the systems and operations of many organisations. However a key ingredient to this success is the quality and maintainability of their code.

The quality of code can impact everything from speed and ease of fixing bugs and making enhancements, to the overall performance of your organization and your ability to get ahead in the marketplace.

By ensuring your code is maintainable, you can reduce approximately 75% of the systems life cycle costs*. This is why, at George James Software, the solutions we build are always straightforward and written in high quality code - because we know that this solid foundation can positively impact the rest of your organization.

With a maintainable system you're able to reduce your overall maintenance as any issues that occur are significantly faster to identify and fix. This means you're free to allocate that time and budget to enhancements, enabling you to get the most value out of your applications and ultimately better support your organization.

Keep an eye out for our next few posts about what a maintainable system looks like and the tools that can help you keep your code maintainable, in order to help you to reduce those maintenance costs.

3 1
1 423

Hello,

I don't know if the title is accurate enough. I have a legacy code that I need to optimize. It's a routine written in objectscript. It accepts 4 parameters and runs 6 nested FOR...$ORDER reading a big global.

The thing is when I run the routine the first time it takes around 60 seconds to run. If I run it again it takes 5 seconds. If I wait around 6 to 10 minutes to run it again, it takes 60 seconds again, but if I run it every 1, 2, 3... minutes it still takes only 5 seconds to run.

0 9
0 556

We're hosting our Deltanji and Serenji user group session tomorrow - there's still time to register, if you haven't already.

We'll be showcasing some advanced features of Deltanji and Serenji in VS Code with time for a discussion - so feel free to bring along any problems you need help solving or share your feedback on our tools. We'd love to hear your thoughts. If you're interested in our tools this is a great chance to hear what others have to say, as well as asking your own questions.

Date: Wednesday, November 3rd

Time: 11-12pm EDT / 3-4pm GMT.

Let us know you'll be attending on Eventbrite.

We hope to see you tomorrow, but if you're unable to make it you can email me at laurelj@georgejames.com and I can share a recording of the session.

0 0
0 157

Hi developers,

We're hosting a User Group session for our Deltanji source control and Serenji debugger users on Wednesday, November 3rd at 11-12pm EDT / 3-4pm GMT.

We'll be showcasing some advanced features of Deltanji and Serenji in VS Code with time for a discussion - so feel free to bring along any problems you need help solving or share your feedback on our tools. We'd love to hear your thoughts.

You can find out more on Eventbrite.

Everyone is welcome. If you're interested in our tools this is a great chance to hear what others have to say, as well as asking your own questions.

We hope to see you on November 3rd!

3 0
0 144

If I open a terminal and type the following commands, sc is an error:

set validator = "sc = ##class(%Library.Numeric).IsValid(""BLAH"")"
set @validator
write sc

At the end, when I write sc I get:

0 L'BLAH9
             DOCXT010,#e^zIsValid+1^%Library.Numeric.1^1e^^^1

However, if I call the following class method using the arguments "%Library.Numeric" and "BLAH", sc is undefined

0 12
0 469

The latest release of Serenji focuses on the debug experience. Not only can you now debug on the spot, no matter where you are or what you're doing, but we've also added some smaller features that will make debugging more straightforward. 

  • Run and Debug CodeLenses - clickable links above each class method, procedure, subroutine or extrinsic function.
  • Intuitive prompting for entrypoints and arguments - when debugging a class method, produce, subroutine or extrinsic function. 
  • Shaded read-only background - to clearly differentiate between documents which are editable and those that are read-only. 
  • Program output in debug console - output is shown in the debug console. 
  • Serenji commands on Server Manager's namespace trees - allowing you to launch Serenji through Server Manager. 

Find out more in our release notes here

1 0
1 257

Hi developers, 

We've incorporated VS Code's support for multiple concurrent debug sessions and consoles into the latest release of Serenji

So if you're working with processes that relate or are dependent on each other, you can now debug them together. Just launch a second Serenji debug session (F5) whilst the first one is still active. 

This short video below shows how it works. We hope you find this feature useful! 

Laurel 

Serenji 3.2 multiple concurrent debug sessions

0 0
0 193

The most recent release of Serenji features our innovative gj::locate technology. It was a standalone tool we originally created for a Developer Community contest earlier this year, but we've incorporated it into our debugger after some great feedback from developers. 

It works by navigating you directly to the source of your server-side errors in just a couple of clicks - enabling you to quickly fix errors without the need to count tedious lines of code... and let's be real, who has got time for that when you're under pressure to fix this bug? 

It's simple and straightforward to use:

1. Click on the gj::locate panel in the status bar

2. Enter the ObjectScript error message or line reference from a class/.mac routine..

3. gj::locate then does the work for you by taking you straight to the corresponding line in your source code.

Easy peasy... and with time to spare to make yourself a coffee before your deadline! 

The video below shows it in action - let us know if you've already given it a go. Or, if you're interested in trying it out we offer a free 30 day trial license, just drop me a message through the Developer Community or email us at info@georgejames.com.

Serenji 3.2.0 utilising gj::locate technology

2 0
0 208

Hi developers, 

Serenji 3.2.0, the latest version from George James Software, was released last week and our current users have been enjoying trying out the new features (which you can find more about here). 

If you're thinking about trying Serenji for the first time, we've made it easier to get set up by adding a walkthrough on the VS Code Welcome page. It takes you through: 

  • Setting up the server components.
  • Selecting a server namespace.
  • Saving and extending your workspace.
  • Requesting a debug license (don't forget we offer a free 30 day trial!) 

We've also added prompts and guidance throughout VS Code to open and add Serenji folders to your workspace and when going to run and debug code. 

This is just one of the ways we've enhanced the Serenji debugger to make straightforward and easy to use - so all you need to do is focus on your code. 

Serenji 3.2.0 Welcome Page Walkthrough

1 0
0 200
Article
· Sep 23, 2021 1m read
Zero configuration debugging

The latest release of Serenji by George James Software introduces zero configuration debugging, so it's ready to go in just one click - no matter where you are or what you're doing, your on-the-spot debugger is ready to go. 

We have introduced a host of new features to enhance the debugging experience so you can focus on identifying and fixing errors, without losing focus by spending time setting up a launch configuration. 

Check out the new features in our release notes

If you've already started using Serenji 3.2.0 let us know how you're getting on! 

3 0
2 230

gj :: locate was the entry from George James Software for the Developer Tools competition back in April 2021. When an ObjectScript error is reported, gj :: locate takes the .int line location and navigates you directly to the line in the source file where the error originated. Over the past few months we've found it a very useful tool when it comes to debugging, especially when used alongside the Serenji debugger in Visual Studio Code.

Our first update, version 1.1.0, now includes support for multi-root workspaces. This enables gj :: locate to be used with every workspace folder. If your VS Code workspace has more than one root level folder, connecting to different namespaces or perhaps different servers, then gj :: locate will determine which workspace folder is current and locate the source code in that folder. If your workspace doesn't have any files open then gj :: locate will prompt you to select a folder from a pick-list.

This will particularly benefit VS Code power users who have workspaces with simultaneous connections to multiple namespaces, on multiple different IRIS and Caché servers.

If you would like to try it out then you can download it from the VS Code marketplace. Or if you’re already a user, then gj :: locate will automatically update. Let us know how you're getting on with it!

2 0
1 190
Announcement
· Jun 10, 2021
Serenji v3.1.4 update

We’ve published an update to the Serenji debug extension for Visual Studio Code, making it ready for the Workplace Trust feature in VS Code 1.57.

This allows the Serenji ObjectScript editor to work without restrictions across all workspaces and, by bringing it in line with the VS Code update, only allows the debugging feature to be used in trusted workspaces.

3 0
1 132

Hi,

I'm getting thousands of errors like the ones below:

2021-05-03 14:11:44 [SQLCODE: <-400>:<Ocorreu um erro fatal>] [Cache Error: <<READ>Dispatch+14^%SYS.BINDSRV>] [Location: <ServerLoop>] [Client info: <Username: KIORAS, Node Name: 3IK0VLS5UU, IP Address: 192.168.1.223, Executable Name: EXTRService.exe, Internal Function: B0>] [%protocol: <52>] $Id: //ce/2018.1.2/kernel/common/src/aclass.c#1 $ 23468 104

0 1
0 605