Tips And Tricks

  
I saw this pattern too many times between co-workers. People don't realize that they can go to a entry point , right click and do "Open in Browser". They always tend to do Run or 1CP in order for the bottom combo to appear with the possible entry points.
Hope this tip help someone. I will try to fill this topic with another good tips and tricks :) .
Good Development.
I have another tips (this time a lot of them) using the debugger.

TIP1 : Use debugger breakpoints has a marker. whenever you would like to pinpoint a place, just hit F8 (a breakpoint will be set), then use the debugger tab and double click those breakpoints to navigate. You can always use the option remove allbreakpoints if you need to reassign real debug breakpoints to do debug.

TIP2 : You have a option in the debug menu to "Suspend all requests", this option is very useful to break in the debugger in the execution place of the application, without setting a debug breakpoint, useful to detect if you're in a infinite loop of some kind.

TIP3 : You can in fact debug a application choosing a entry point from another application that references it.
In the espace Menu, use "select entry espace", and now you can choose a breakpoint on which you want to debug from that espace, using the debugger combo-box near the Run button.

Hope this helps someone.

Regards,
Luis Lopes
Good topic Luis!

I confirm what you said about Run/1CP in order to open the page. This happens a lot with new resources. Maybe a right-click option in the screen itself would ease this (people's focus is on the screen, not the entry point).

Your workaround for navigating in SS using breakpoints is very cool. A long time ago I suggested on the Wishlist forum adding bookmarks in SS for doing exactly this (at the time I was using 3.2, so I didn't have the debugger).

One tip I find handy: when opening big eSpaces, the eSpace tree is difficult to navigate, because all nodes are expanded by default. You can Control+Click on the eSpace name (top node) in order to collapse / expand all nodes.
Good topic Luis!!!

And a really good tip Paulo that one of the collapse/expand all nodes!!! That's handy
I have another tip.

This one is a very handy functionality of service studio.
Imagine the following,
you have 2 variables, from recordtypes very similar.
To ilustrate:
you have the following types:
  • structure1 ( attr1, attr2, attr3, attr4, attr5)
  • structure2 ( attr1, attr2, attr3, attr4, attr5, attr6)

and 2 vars: var1 -recordtype structure1, var2 recordtype structure2

and you need to make var1 = var2
var1 recordtype does not match var2 :( , autoassign to the rescue.

in a assign node, simply add in the first variable : var1.structure1.attr1, in the expression use the combobox, probably it will suggest you the var2.structure2.attr1, in the second variable, it will appear a special option in the combobox that says (Auto Assign var1.structure1) ! this will complete the assign node will all needed assignments.
This feature is very cool. Use it wisely.
If instead of using that option you selected the (Select Variable)
- (or double click in the 'Variable x' in the left side, btw, you can also double click the 'Expression X' to open expression editor) it will open a new window that suggests the next field to be assigned and shows you which attributes are already assigned in that assign node.
Regards
Luis Lopes
Here's one that is rarely needed, but can be quite useful in an extreme situation...
If SS crashes, sometimes (if you're lucky), you can find a saved version of the oml on your temp folder - something like:

C:\Documents and Settings\<your user>\Local Settings\Temp\ssTemp (look for a file named Error.oml)

Some notes about this:
- This is not supported / endorsed by OutSystems. It's not guaranteed in any way, so use it at your own risk.
- It was observed in SS 4.0. It may work (or not!) in other versions.
- Even in 4.0, it's not guaranteed to work all the times.
- If you do find the file, load it in SS and perform a full verify (hold Control and click on Verify icon). This may detect and correct corrupted data on the eSpace (maybe).
- Always perform a Submit Feedback on errors, so Support is aware about these issues.
Hi,

Thanks for the tip about right click in the entry point and make "Open in browser". It save me a lot of time!!!

Best regards,
Fernanda Rodrigues
Hi, another useful tip.
I noticed this pattern in a coworker trying to consume a Webreference that needed authentication:
He added the credentials in the browser, copied the wsdl to disk, then added the reference via disk.

Instead of adding the url with something like : http://www.fakeurl.com/EspaceName/WebserviceName.asmx?wsdl, use instead this format in the url
http://user:pass@www.fakeurl.com/EspaceName/WebserviceName.asmx?wsdl

Service Studio will not save the credentials part in the url, but will use it to consume the webreference.
Once consumed, you can manipulate credentials in runtime by using the EnhancedWebReferences extension.
The alternative of putting the credentials in the effective url in service center is not a good practice in my opinion, but it's an alternative to the use of the extension.

Hope this helps.