OS Reactive
OS Reactive
A
Change the existing Join to With or without and create a Count over the User MovieComment Id
attribute.
B
Remove the Join between Movie and UserMovieComment Entities and create a Count over User
MovieComment ld attribute
C
Change the existing Join to With or without, create a Group By over the Movie Id attribute, and a
Count over the UserMovieComment ld attribute
D
Create a Group By over the Movie Id attribute and a Count over the UserMovieComment Id attribute.
2.
Consider the following Action, that calculates the square root (sqrt) of a positive
decimal number (N). Knowing that the function was called with N =-1, and the
debugger is stopped at the Start node, what will happen when the developer
selects the Continue (F9) option highlighted in the picture?
Review
A
The debugger will stop at the Invalid Number Exception Handler flow.
B
The debugger will stop at the N<0 If node.
C
The Action will end, with sqrt=0, and an error message will appear on the Screen
D
The Action will end with sqrt=1
3.
Consider the following data model with the Status Static Entity, and the Customer,
Order Shipping Detail, Order Product and Product Entities. Why is this data model
wrong?
Review
A
The Quantity attribute cannot be in the Order Product Entity, since it is an Entity supporting the
relationship between Order and Product
B
The Id attribute of the Shipping Detail cannot reference the Order Entity, since ld attributes cannot
be of type Entity Identifier
C
The Statusld attribute cannot be in the Order Entity, since the Order Entity already has another
reference attribute (Customerid)
D
The Orderid attribute cannot be in the Status Entity since a Static Entity can only have a reference
attribute to other Static Entities
4.
Consider the following Entity and the following Excel file. What will happen when
we create an action to Bootstrap data from this Excel file to the Contact Entity?
Review
A
No data will be bootstrapped, because all the Entity attributes must match all the columns in the
Excel file.
B
The Name and Email columns in the Excel file will match with the Name and Email attributes in the
Contact Entity. The Phone Number and the Address columns will be ignored.
C
The Name, Email and Phone Number columns in the Excel file will match with the Name, Email and
Phone attributes in the Contact Entity. The Address column will be ignored.
D
The Name, Email and Phone Number columns in the Excel file will match with the Name, Email and
Phone attributes in the Contact Entity. The Address attribute will be created by the platform
5.
Considering the Change Status Client Action in the screenshot, which of the
following options is correct?
A
The Change Status Action can be used in an Expression on a Screen.
B
The Change Status Action can be called from a Screen Action.
C
The Change Status Action can be called from another module.
D
The ChangeStatus Action can be called from a Server Action.
6.
Considering the scenario in the picture, which of the following options is an
important step to guarantee that the cities will only be fetched when a user selects
a country?
A
Call the GetCountries followed by the GetCities Aggregate in a Data Action
B
Call the GetCities Aggregate when the On Render event is triggered,
C
Call the GetCities Aggregate in the OnAfterFetch event of the GetCountries Aggregate.
D
Set the Fetch property of the GetCities Aggregate to Only On Demand
7.
Complete the following sentence: "By setting the Valid property of the Name
input field to False…
A
...the Valid property of the Employee Form will automatically be set to False
B
...it is mandatory to programmatically set the Valid property of the EmployeeForm to False"
C
...the Valid properties of the other input fields will also be set to False
D
...it is mandatory to set a message in the Validation Message property of the input
8.
Which of the following data types can be used in Client Variables?
A
Entity Identifier
B
Binary Data
C
List of Text
D
Structure
9.
Consider the following Action, which is set as Destination of a Save button within
a Form to edit information about Employees. What will happen when the user
inserts an employee with 17 years old?
A
The Employee_CreateOrUpdate Action will not run and a message will appear next to the Birth Date
input
B
The Employee_CreateOrUpdate Action will not run and no message will appear on the Screen
C
The Employee_Create OrUpdate Action will run and a Success Message will appear on the Screen
D
The Employee_CreateOr Update Action will run and a Database Exception will be thrown.
10.
Consider the following two Entities: Contact and Group. Contacts are grouped
together in groups (e.g. "Work Contacts", "Family Contacts") using these two
Entities, and each contact only belongs to a single group at a time. What do we
need to do to create the missing one-to-many relationship between these two
Entities?
A
Create a new attribute in Contact of data type Group.
B
Create a new attribute in Group of data type Contact Identifier.
C
Create a new Entity with two attributes, one with data type Contact Identifier and the other with data
type Group Identifier
D
Create a new attribute in Contact of data type Group Identifier
11.
Consider the scenario in the picture with a List widget that has the output of the
GetEmployees Aggregate as Source, and a ButtonGroup widget with three items.
This ButtonGroup allows the end-user to sort the employees in the List, when one
of its items is clicked. However, when a user clicks on a Button Group Item, the List
is not changing. What is the problem with this implementation?
Review
A
The developer forgot to assign the ListSort Local Variable to the respective option chosen in the Sort
Action
B
The developer forgot to trigger an Event on the Sort Action to execute the sort on the List.
C
The developer forgot to explicitly refresh the List widget in the Sort Action
D
The developer forgot to add a Dynamic Sort to the Aggregate based on the List Sort Local Variable
12.
Consider the next picture with a Button Group widget and the Priority Entity. The
Button Group Variable property is set with the Priorityld Local Variable of type
Priority Identifier. What should be set in the Value property of the leftmost Button
Group Item?
Review
A
Entities.Priority
B
Entities.Priority.Label
C
Entities.Priority.Low
D
Entities.Priority.Id
13.
Entities and Attributes created in OutSystems are mapped to …
A
... Database Tables and Columns
B
... Structures and Enumerates
C
... Classes and Attributes.
D
... Lists and Records.
14.
Considering the On Click Destination of Links and Buttons, what is the main
difference between these widgets?
A
Links can have the On Click Destination set to a Screen, while Buttons cannot
B
Links can have the On Click Destination set to an Event inside Blocks, while Buttons cannot
C
There is no difference between the two widgets in terms of their On Click Destination
D
Buttons can have the On Click Destination set to an Action, while Links cannot.
15.
Which attributes are returned in the output of the following Aggregate?
A
Not yet defined. You need to add an Output Structure / Entity to the Aggregate
B
The Product and Order Product Entity attributes, plus a PriceWithoutVAT attribute
C
Only the Price Without VAT attribute
D
Only the Product and Order Product Entity attributes
16.
Setting the Public property of a Client Action to No restricts it…
A
... to just being used in Screen Expressions.
B
... to just being used in other Client Actions
C
.. to just being used in the context of the module where it is defined
D
... to just being used in the context of the application where it is defined.
17.
What is the main advantage of using the Form Widget?
A
Save in the database all the attributes of a record at once.
B
Easily validate the input widgets that are inside the Form.
C
Apply a common style to all the input widgets inside the Form.
D
It's the only way to edit a record from an Entity
18.
Considering the CheckRegistered Role Action, which of the following options is
true?
A
I can use the Action on a Screen Expression
B
I can use the Action in an If condition inside a Client Action
C
I can use the Action to hide a widget on a Screen
D
I can use the Action on a Screen Data Action flow.
19.
Regarding Blocks, which of the following options is correct?
A
A Block can only be instantiated inside Screens.
B
A Block can have Client Actions defined in its scope.
C
A Block can be nested inside itself.
D
A Block can have its own Output Parameters.
20.
Consider the following scenario, where there is a list of Employees that should be
searchable by Name. What is required on the OnChange_Search Action to
implement the search?
A
Explicitly refresh the List widget.
B
Assign the Search Keyword with the user inserted value
C
Refresh the GetEmployees Aggregate.
D
Create a new query to filter Employees.
.21
Consider the Save Client Action (on the left), where the Employee_Create Action
(on the right) is called in the logic flow. What happens if an exception is thrown
during the execution of the CreateEmployee Entity Action?
A
The Exception is not handled
B
The AllExceptions flow in the Save Action is executed.
C
The AllExceptions flow in the Employee_Create Action is executed
D
The DatabaseException flow in the Save Action is executed.
22.
Considering the following Aggregate, what will happen if a developer selects the
Add Sort option and then chooses the Customer.Name attribute?
A
The change will lead to an error in the application, because there is a sorting criteria defined that is
based on an attribute of a different Entity
B
A second sorting criteria will be added to the Aggregate and the records with the same Order.Date
will appear sorted by Customer.Name
C
A second sorting criteria will be added to the Aggregate and the records with the same
Customer.Name will appear sorted by Order.Date
D
The sorting criteria by Order.Date will be replaced by the new Customer.Name sorting criteria.
23.
Which of the following options is a use case for a For Each?
A
To create conditional branches
B
To bulk insert data in a Static Entity
C
To define generic loops.
D
To iterate over a variable of type List.
24.
Consider a Form with a Button with the Built-in validations property set to Yes,
and the On Click Destination set to a SaveOnClick Action. The SaveOnClick Action
sends the Form data to the server, to store it in the database. How should we
prevent the Form data from being sent to the server, if any of the fields contain
data with an unexpected / invalid data type?
A
Nothing needs to be done. Having the built-in validations is sufficient.
B
Query the database, before storing the data.
C
Set the Form Valid property to False, before storing the data.
D
Check if the Form's Valid property is set to True, before storing the data,
25.
Just considering Built-in validations, which of the following scenarios would keep
a Form valid?
A
The user inserts a date on a field that expect an Integer
B
The user inserts a text on a field that expects an Integer
C
The user does not to fill in a mandatory field.
D
The user does not fill a non mandatory field that is used in the logic.
26.
In the image below, the UserMovieRating Entity is being dragged into an
Aggregate that already has a Movie Entity. Considering this scenario, which of the
following statements is correct?
A
A With type of Join will be created between the Movie and UserMovieRating Entities, if the
UserMovieRating.Movield attribute is mandatory
B
An Only With type of Join will be created between the Movie and UserMovieRating Entities, if the
User MovieRating.Movield attribute is non mandatory
C
A With type of Join will be created between the Movie and UserMovieRating Entities, if the
UserMovieRating.Movield attribute is non mandatory.
D
A With or Without type of Join will be created between the movie and UserMovieRating Entities, if
the UserMovieRating.Movield attribute is non mandatory.
27.
Regarding Site Properties, which of the following statements is true?
A
Site Properties values cannot be changed outside Service Studio
B
Site Properties cannot be changed inside a Server Action
C
Site Properties cannot have a Record Data Type.
D
Site Properties cannot be assigned programatically
28.
Regarding Static Entities and its attributes, which of the following options is
correct?
A
It is possible to add new mandatory attributes to the Static Entity, but their values need to be
specified at design time.
B
It is not possible to use the Static Entity Identifier (ID attribute) in another Entity, to create a
relationship.
C
It is not possible to change the Entity's automatically created attributes
D
It is possible to change the value of a Static Entity's attribute in runtime, by using the Update
StaticEntity> Entity Action
29.
Consider the following Server Action containing a Switch, where its conditions are
detailed on the connectors. The assignments are also detailed on the respective
Assign labels. Which of the following options is correct?
A
At runtime, the Otherwise path will never be executed.
B
If the value of the Integer Input Parameter is 2000, the Text Output Parameter will be "<1K".
C
If the value of the Integer Input Parameter is exactly 1000, the Text Output Parameter will be ">1K",
D
If the value of the Integer Input Parameter is higher than 1000, the Text Output Parameter will always
be ">1K".
30.
Considering the following Server Action, which of the following options is correct?
Review
A
If the integerInput has value 2 then the Output value will be equal to 3.
B
The Output value will always be equal to 2.
C
The Output value will either be its default value or equal to the value of IntegerInput.
D
The Output value will always be equal to the IntegerInput value
31.
Consider the following Countdown Block with an OnClickAction Action that
triggers the Start Event. Which of the following options is correct?
A
It is not necessary to create an Event handler for the Start Event, as the OnClickAction will handle the
Event
B
If no Event handler is defined for the Start Event, the trigger Event statement will throw an error at
runtime.
C
An Event handler for the Start Event must be defined on the parent when instantiating the
Countdown Block
D
The Event handler for the Start Event must be defined in the scope of the Countdown Block
32.
In the following Aggregate, we want to filter the results to only return contacts
that have 'John' anywhere in their name. What is the correct expression to put in
the Filter of the Aggregate to achieve the desired result?
A
Contact.Name like "%John%”
B
Contact.Name like "John"
C
Contact.Name = "%John%”
D
Contact.Name = "John"
33.
Which of the following options cannot be used directly in an Expression?
A
The output of a Server Action
B
A numeric calculated attribute in the output of an Aggregate.
C
The result of a mathematical expression
D
Static text
34.
After opening the OSMDb module, the following appears on the Manage
Dependencies dialog. Considering this scenario, select the correct option
A
The OSMDb_Core module has been deleted from the Server
B
The OSMDb_Core module has one or more references to elements in the OSMDb module.
C
Clicking the Apply button will refresh all dependencies
D
A referenced element has been changed in the OSMDb_Core module
35.
Considering the On Parameters Changed lifecycle event, which of the following
options is true?
A
The On Parameters Changed event is triggered anytime the parent of a Block changes one of the
Block's Input Parameters
B
The On Parameters Changed event is triggered when a variable used in a filter of an Aggregate, or an
input parameter of a Data Action, changes.
C
The On Parameters Changed event is available for both Blocks and Screens
D
The On Parameters Changed event are bound to Screen Widgets and are triggered when new data
comes from Screen Aggregates /Data Actions
36.
Considering the On Render lifecycle event, which of the following options is true?
A
The On Render event is the first event triggered when accessing a Screen for the first time.
B
The On Render event is triggered before the Screen or Block are ready
C
The On Render event is triggered every time the underlying data of a Screen or Block changes.
D
The On Render event is only triggered when the application is transitioning from one Screen to
another
37.
The CreateOrUpdate<Entity> Entity Action …
A
...will fail with an exception if the record already exists.
B
...will update an existing record if the Id of the input record is Nullidentifier()
C
...returns the ld of the created or updated Record
D
...returns the Record that was created or updated.
38.
By default, how is data fetched on a Screen?
A
The Aggregates and Data Actions run only when they are explicitly called
B
The Aggregates and Data Actions do not run in any particular order
C
The Aggregates and Data Actions run following their order on the Screen (from top to bottom)
D
The Aggregates run first, then the Data Actions
39.
Modifying the content of a Block …
A
...requires every instance of the Block to throw an Event to the parent, to apply the changes.
B
... is not possible after it has been instantiated in another Block or Screen.
C
...only applies the changes to new instances of the Block. The existing instances remain unchanged.
D
... applies the changes to all the existing instances of that Block.
40.
Which of the following options is not possible to use to fetch data while the screen
is initializing?
A
REST API methods within a Data Action flow.
B
Aggregates defined at the Screen level.
C
Advanced SQL Queries defined at the Screen level.
D
Aggregates within a Data Action flow.
What is the expected output of the following Aggregate, after selecting the
Average option?
A
The Average of the attribute price and the list of products,
B
Only the Average of the attribute Price
C
The list of products, with the average of the attribute Price in each record
D
Only the list of products,
42.
Consider an application with two modules: ModuleUl and ModuleCore.
ModuleCore exposes an Action that was just changed to include a mandatory
Input Parameter. After implementing this change, ModuleCore was published.
Module Ul consumes this Action, but the new changes have not been reflected yet.
Which of the following options would solve this problem?
A
in ModuleUI, open the Manage Dependencies and refresh the dependency to the Action
B
In ModuleCore, open the Manage Dependencies and refresh the Action in all consumers.
C
Republish ModuleCore to refresh the dependencies in the consumers.
D
Publish ModuleUI and the dependencies will be automatically refreshed.
43.
Considering the following scenario, what should be the data type of the option
selected in the Variable property of the dropdown?
A
User Identifier
B
Long Integer
C
User
D
Text
44.
Consider the following scenario where the developer is debugging a Client Action,
defined in the scope of a Screen, and the execution is stopped at the Start node.
Which of the following statements is False?
A
It is possible to inspect and see the values of the Input Parameters of this Action
B
It is possible to inspect and see the value of the GetAge Action output
C
It is possible to inspect and see the value of the Screen's Local Variables.
D
It is possible to inspect and see the values of the Screen widgets.
45.
Consider the following Server Action. In which scenario will the execution move
from the main logic flow to the DatabaseException flow?
A
Never, since the AllExceptions handler takes precedence over the DatabaseException handler.
B
Whenever the Check Permissions If condition is evaluated to False.
C
Whenever the CreateOrUpdate Record Action triggers a DatabaseException.
D
Never, since the DatabaseException is not being triggered in the main logic flow.
46.
Consider that the following Pagination widget will be used to implement the
pagination functionality in a List of Employees. What should be the value of
its MaxRecords property?
Review
A
The total number of attributes used in the List.
B
The number of pages available to navigate to.
C
The number of elements to be displayed per page.
D
The total number of Employees.
47.
Give a reusable Block that allows the user to set a rating between 1 and 5 stars,
how can the rating selected by the user be sent to the parent of the Block?
Review
A
Create a Local Variable in the Block for the selected rating, that can be read from the outside if you
make it Public.
B
Create an event in the parent to receive the selected rating as Input Parameter, that is triggered by
the Block when the rating is selected.
C
Create an event in the Block, containing the selected rating as Input Parameter, that is triggered by
the Block when the rating is selected.
D
Create a Local Variable in the parent for the selected rating, that can be updated by the Block.
48.
When transitioning from the Employees Screen to the EmployeeDetail Screen,
when does the application require accessing the server?
Review
A
For querying the database.
B
For fetching the Employee Detail Screen.
C
For destroying the Employee Screen.
D
For triggering Screen Events.
49.
Consider the following Roles selection of the CinemaDetail Screen. Which users
can access this Screen?
Review
A
All users, regardless of authentication
B
Only authenticated users.
C
Only users with both OSMDbAdmin and OSMDbUser Roles.
D
All users, as long as they have an application specific Role.
50.
Which of the following steps would remove the error in the List widget
represented in the picture?
Review
A
Specify an Entity in the Source property.
B
Specify a list in the Source property.
C
Specify a Structure in the Source property
D
Specify a record in the Source property.