Input an expression in the debugger 
3633
Views
27
Comments
On our RadarOn our Radar
Debugger
Ability to input an expression while the debugger is running and have it evaluate it and display the results.
2014-02-07 17-02-43
Vasco Pessanha
Merged this idea with 'Evaluate Expression while debugging' (created on 06 Nov 2015 04:34:42 by Sagar Nannaware)

Hi Team,


Can we add feature to evaluate expression while debugging an application?


Description:

Currently in Debugger window we have "In Use", "Locals" etc tabs where we can see the values from current context. Apart from this we may add new tab i.e. "Immediate Window" where we can write an expression and it will get evaluated on button click. Please refer attached screenshot for more details.


This feature will be very useful for developers to troubleshoot an application while debugging.


Let me know if you need more inputs on this idea.


Regards,

Sagar Nannaware



Merged from 'Evaluate Expression while debugging' (idea created on 06 Nov 2015 04:34:42 by Sagar Nannaware), on 29 Jul 2018 15:45:47 by Vasco Pessanha
Duplicate of/should be merged with:
https://www.outsystems.com/ideas/1074/input-an-expression-in-the-debugger

J.Ja


Merged from 'Evaluate Expression while debugging' (idea created on 06 Nov 2015 04:34:42 by Sagar Nannaware), on 29 Jul 2018 15:45:47 by Vasco Pessanha
Thanks Justin :-)

Outsystems team has not yet addressed this idea. Expecting reply from Outsystems.

Regards,
Sagar Nannaware


Merged from 'Evaluate Expression while debugging' (idea created on 06 Nov 2015 04:34:42 by Sagar Nannaware), on 29 Jul 2018 15:45:47 by Vasco Pessanha
Thanks Justin :-)

Outsystems team has not yet addressed this idea. Expecting reply from Outsystems.

Regards,
Sagar Nannaware


Merged from 'Evaluate Expression while debugging' (idea created on 06 Nov 2015 04:34:42 by Sagar Nannaware), on 29 Jul 2018 15:45:47 by Vasco Pessanha

There's a workaround, an ugly one, but works. Whenever you stop on a breakpoint in debugger mode, add an aggregate to a function that returns any result. Then add a new column with an expression (the one you need to evaluate), and there it is. You can see the results. This means that an evaluation method would not be that difficult to implement. By the way, i'm using version 9.0.1.55 of service studio. Don't know if it's already implemented so far in newer versions.



Merged from 'Evaluate Expression while debugging' (idea created on 06 Nov 2015 04:34:42 by Sagar Nannaware), on 29 Jul 2018 15:45:47 by Vasco Pessanha
2014-02-07 17-02-43
Vasco Pessanha
Changed the category to
Debugger


Merged from 'Evaluate Expression while debugging' (idea created on 06 Nov 2015 04:34:42 by Sagar Nannaware), on 29 Jul 2018 15:45:47 by Vasco Pessanha
2014-02-07 17-02-43
Vasco Pessanha
Merged this idea with 'An Immediates window for better debugging functionality' (created on 19 Aug 2014 15:58:49 by Isaac Blaise)
2012-06-22 18-51-27
Isaac Blaise
Staff
Hi everyone,

I love our debugger because it shows so much information as I'm debugging complex apps, but I can think of a way to make it better, that is, have an immediates window (similar to Visual Studio). just like with the watches window, you can see the value of something, but you can also embed test code (if I'm at a break point, and I want to see what the result of my string function Substr(foo, index(foo, bar), 4) is, then I have to put it in the code, assign it to a variable, and view it in the watches. If I could just plug it into an 'immediates' window, the platform could then evaluate my function call and return the result. Then I could tweak my function call until I get my desired result. This would take MUCH less time than re-uploading my model every time I want to test some string manipulation functions.

ALSO, what about CHANGING the value of a variable while in debug session? In Visual Studio I'm debugging and if I don't like the value of my variable and need to change it for some reason, boom, right in the middle of the session it's changed and I can continue debugging. But in the platform if I need to change the value it's a new upload/publish. It would be awesome to add this kind of functionality to avoid repetitive publishes while in debug and test mode.

Cheers,
Isaac

This comment was:
- originally posted on idea 'An Immediates window for better debugging functionality' (created on 19 Aug 2014 by Isaac Blaise)
- merged to idea 'Input an expression in the debugger ' on 15 Feb 2021 09:59:39 by Vasco Pessanha
Isaac -

Immediates window would be good. I know that there has been an idea out here for a long, long time to be able to change the values in the debugger at run time.

There's a related idea out there for a while to have conditional breakpoints.

J.Ja


This comment was:
- originally posted on idea 'An Immediates window for better debugging functionality' (created on 19 Aug 2014 by Isaac Blaise)
- merged to idea 'Input an expression in the debugger ' on 15 Feb 2021 09:59:39 by Vasco Pessanha

Very usefull for all.



This comment was:
- originally posted on idea 'An Immediates window for better debugging functionality' (created on 19 Aug 2014 by Isaac Blaise)
- merged to idea 'Input an expression in the debugger ' on 15 Feb 2021 09:59:39 by Vasco Pessanha
Merged this idea with 'Allow modifying debug watches' (created on 11 Jun 2019 13:16:28 by Mikko Nieminen)

This comment was:
- originally posted on idea 'An Immediates window for better debugging functionality' (created on 19 Aug 2014 by Isaac Blaise)
- merged to idea 'Input an expression in the debugger ' on 15 Feb 2021 09:59:39 by Vasco Pessanha

https://success.outsystems.com/Documentation/11/Developing_an_Application/Troubleshooting_Applications/Debugging_Applications/Watches

Debug watches are nice, especially when debug is missing conditional breakpoints. What I'd like to see/use is a feature where expression editor could be used to modify debug watch. Mostly to edit already existing debug watches, but it could be nice to add new expressions as debug watch.

Currently values at the end of large lists cannot be added to watch list, as service studio limits the list to 150 first entries.



This comment was:
- originally posted on idea 'Allow modifying debug watches' (created on 11 Jun 2019 by Mikko Nieminen)
- merged to idea 'An Immediates window for better debugging functionality' on 18 Oct 2019 08:48:04 by Kilian Hekhuis


This comment was:
- originally posted on idea 'An Immediates window for better debugging functionality' (created on 19 Aug 2014 by Isaac Blaise)
- merged to idea 'Input an expression in the debugger ' on 15 Feb 2021 09:59:39 by Vasco Pessanha
Changed the category to
Debugger


This comment was:
- originally posted on idea 'Allow modifying debug watches' (created on 11 Jun 2019 by Mikko Nieminen)
- merged to idea 'An Immediates window for better debugging functionality' on 18 Oct 2019 08:48:04 by Kilian Hekhuis


This comment was:
- originally posted on idea 'An Immediates window for better debugging functionality' (created on 19 Aug 2014 by Isaac Blaise)
- merged to idea 'Input an expression in the debugger ' on 15 Feb 2021 09:59:39 by Vasco Pessanha

I merged these two ideas, since they're both about being able to create debug expressions viewable somewhere. Whether that's in the Watch Tab or a new Immediates Tab is of less importance, imho.



This comment was:
- originally posted on idea 'An Immediates window for better debugging functionality' (created on 19 Aug 2014 by Isaac Blaise)
- merged to idea 'Input an expression in the debugger ' on 15 Feb 2021 09:59:39 by Vasco Pessanha
UserImage.jpg
Kristyan Rodriguez

Similar to this idea, I would like to test individual functions in service studio.

It would be nice if I could assign input parameters to functions and get an output parameter for those functions directly in Service Studio. Instead of creating a screen to test an individual function…



This comment was:
- originally posted on idea 'An Immediates window for better debugging functionality' (created on 19 Aug 2014 by Isaac Blaise)
- merged to idea 'Input an expression in the debugger ' on 15 Feb 2021 09:59:39 by Vasco Pessanha

Kristyan -

There is a separate idea for that already.

J.Ja



This comment was:
- originally posted on idea 'An Immediates window for better debugging functionality' (created on 19 Aug 2014 by Isaac Blaise)
- merged to idea 'Input an expression in the debugger ' on 15 Feb 2021 09:59:39 by Vasco Pessanha
Merged this idea with 'Need for Command window or Immediate window' (created on 25 Jan 2017 14:27:26 by Vishakha Jaiswal)

Very often i find the need of command / Immediate window, to manipulate values at runtime and see results. We want to try the next function then and there on the data. Then finally implement and publish. As its always publishing on cloud, its difficult to publish multiple time for small data checks. Eg.I want to check 'split','concatenate','compare dates'.

Way more time consuming when entire team is working on same application. Even 'developer tool' of browser allows us to perform small checks via JS JQuery. Imagine if had to run the application for every JS /JQ change. Command /Immediate window/Developer tool etc  is developers' favourite in Visual Studio. Please have for OutSystems also



This comment was:
- originally posted on idea 'Need for Command window or Immediate window' (created on 25 Jan 2017 by Vishakha Jaiswal)
- merged to idea 'Input an expression in the debugger ' on 15 Aug 2021 04:26:35 by Justin James

Duplicate of:

https://www.outsystems.com/ideas/111/debug-change-variable-values

https://www.outsystems.com/ideas/2227/evaluate-expression-while-debugging

https://www.outsystems.com/ideas/1074/input-an-expression-in-the-debugger

https://www.outsystems.com/ideas/1280/advanced-features-in-debug

https://www.outsystems.com/ideas/2277/change-the-variable-value-while-debugging

J.Ja



This comment was:
- originally posted on idea 'Need for Command window or Immediate window' (created on 25 Jan 2017 by Vishakha Jaiswal)
- merged to idea 'Input an expression in the debugger ' on 15 Aug 2021 04:26:35 by Justin James
Merged this idea with 'Able to inspect and execute statements while debugging the code' (created on 14 Aug 2021 13:54:18 by Sandeep K)

This comment was:
- originally posted on idea 'Need for Command window or Immediate window' (created on 25 Jan 2017 by Vishakha Jaiswal)
- merged to idea 'Input an expression in the debugger ' on 15 Aug 2021 04:26:36 by Justin James

It would be great if we can able to inspect & execute statements while debugging the code flow like how we do in Immediate window in Visual Studio



This comment was:
- originally posted on idea 'Able to inspect and execute statements while debugging the code' (created on 14 Aug 2021 by Sandeep K)
- merged to idea 'Need for Command window or Immediate window' on 15 Aug 2021 04:25:05 by Justin James


This comment was:
- originally posted on idea 'Need for Command window or Immediate window' (created on 25 Jan 2017 by Vishakha Jaiswal)
- merged to idea 'Input an expression in the debugger ' on 15 Aug 2021 04:26:36 by Justin James
Merged this idea with 'Add custom expressions in Debug Watches' (created on 14 Oct 2022 15:16:23 by Jared Collier)

It would be great if we could add our own (custom) expressions to a debug watch, rather than having to create a "throw-away" variable. I am thinking of something like what you see in Visual Studio.

Changed the category to
Debugger
Merged this idea with 'Evaluate the expression value at time of debugging ' (created on 16 Dec 2022 12:33:29 by Gaurav Rawat)

The idea behind this feature is that we can able to see the runtime value of the expression, while debugging if I change expression then it will evaluate at that time show the result of that change.

For Ex : If I wrote in expression using text with substr function like.

Substr("This is for test expression",0,8) Result : "This is "

Now I change it to 

Substr("This is for test expression",8,8) Result : for test .


If have this capability at the time of debugging. So it will save time no need to make changes and see after publish.

Above is the small example but it can be benefits when we have chained function so easy to make changes and efficient amount of time can be saved.

Feature will same as like quick watch in Visual studio or like inspect of the browser.


Thanks,

Gaurav Rawat