want to redirect from screen from app A to screen to app B
whats the best practice?
1. add external site in on click of the button click, adfd site property to main different urls for differtent environments?
or 2. make screen public in producder and, add destination in consumer and add?
which approach is best practice according to outsystems, i belive screens will be considered as an weak reference.
Hello @Priya Naveen,
I would not recommend Option 1 (Site Properties for URLs) here's why:
If any invalidation happens, environment changes occur, or the app gets renamed/moved, you'll have to manually update every site property across all environments, which quickly becomes chaotic.
Option 2 is the correct. Making the screen public in the producer and adding it as a destination in the consumer creates a weak reference as you mentioned which is perfectly fine from an architecture standpoint so there is no side references between end user apps/moduels. OutSystems resolves the URL automatically per environment, so there's no hardcoding involved and it survives redeployments cleanly without any manual intervention. You can use External Site but in that case you hardcode it in the code itself not in site property.
Hello,
Yes, screens are weak references.
For ODC, as long as you don't have any strong references from APP B to APP A and don't change the screen signature (input parameters), changes in APP B will not have any impact in APP A. For O11, the same, but at the module level.
I think there is no "official best practice" here, but I would adopt this solution, because it's easier to maintain and deploy than working with URLs/site properties.
It also makes the connection between both applications visible. In the end, there is a dependence between them, and you will be able to "discover" it from inside the Studio.
Cheers!
Best practice in OutSystems is option 2 — make the screen public in Producer app and consume it in Consumer app through dependencies.
This is more maintainable, environment-independent, and platform-supported. Using External Site URLs is usually preferred only for external systems or deep-link scenarios.