Reuse Functionality between Application Modules
Change an Element Reused in Another Module
This lesson is part of the Developer Online Class for OutSystems 9 course.

In this lesson we will add a new attribute to the Supplier
Entity, in the Supplier module and we will see how to reflect this change
in the eBidding module. So let's go into the Suppliers
application and open the Suppliers module. I will
and a new attribute in the Supplier Entity and this will be
the TaxIdNumber
and I'm going to change the data type to
Text and this will be 50 character
long attribute and I want to use this attribute in the screens
that I have in my application. So in the Supplier_Show
let me drag-and-drop the attribute
into the ShowRecord and
also on the Supplier_Edit
drag-and-drop the attribute again
there. Okay let's
publish this change in the supplier module
One thing that you'll notice
in this operation we just did
is that there is a new message there's a warning message
here in the one-click publish tab that we haven't seen before
and what happened here is that when a Public
element changes modifications are not
automatically propagated to the other modules. The OutSystems Platform
issues a warning to refresh the references in those models
so these changes that we did in the Supplier Entity
has impact in this case in the eBidding module
that becomes outdated and we need to refresh this references
So we need to open that eBidding application
Let me just go here into the eBidding and you'll notice that
also on the module we have the same warning here
and if we open this module we have
a new message here and again
when changes to public elements may have
impact on your module the OutSystems platform
prompts you to update those elements. And that's what I'm going to do, so I'm going
to answer Yes
here on this prompt, and as you can see here
in that add/remove references window I have the indication that the Suppliers
module is outdated and has
elements that have been modified on this module
This elements are in this case, it's just one element that was changed
is the the Supplier Entity and even if I
expand here the Supplier entity, I can see that this was
the TaxIdAttribute was
added so we have all this information to
to see what happened to this module and for us to take action
What I want to do now is to refresh
all these references. So I'm going to refresh using this
option, and I'm going to confirm this with the OK button
and now
I want to use this new attribute
that will appear here in the Supplier
Entity, here it is, TaxIdNumber, I want to use this
in the pop-up InfoBalloon that we created in the previous lesson. So I'm going to
the attribute into the ShowRecords
there it is and now we'll be able
to see this information in the eBiddings application. So let me just
publish and then we'll go into the browser
and we will test all this
First the whole before we test the eBidding application, we need to test the
changes in the Suppliers application, so let me open here
the suppliers application. I'll need to log in
I'm going to the Abbott Laboratories Show page
There you have it, TaxIdNumber. I need to
edit this information So let me edit here
the TaxIdNumber, so let me feel this with
a value like 36 - 069
840 and let me save it
Okay, we have that information stored. Now let me go back here
and open the eBidding application
I'll need to login
and remembered that we stored
a bid for this first product request
and this bid was by Abbott Labooratories
So if we open the InfoBalloon
there we have it now have the TaxIdNumber
in our eBidding application
And that's it