Study Guide Comprehensive Outline for the
OutSystems 11 Web Associate Application
Developer Certification Course 1st Edition Mark
A. Ciccarelli download
https://textbookfull.com/product/study-guide-comprehensive-
outline-for-the-outsystems-11-web-associate-application-
developer-certification-course-1st-edition-mark-a-ciccarelli/
Download full version ebook from https://textbookfull.com
We believe these products will be a great fit for you. Click
the link to download now, or visit textbookfull.com
to discover even more!
Pivotal Certified Spring Web Application Developer Exam
A Study Guide Cosmina Iuliana
https://textbookfull.com/product/pivotal-certified-spring-web-
application-developer-exam-a-study-guide-cosmina-iuliana/
AWS Certified Developer Associate Guide Your one stop
solution to pass the AWS developer s certification 1st
Edition Vipul Tankariya
https://textbookfull.com/product/aws-certified-developer-
associate-guide-your-one-stop-solution-to-pass-the-aws-developer-
s-certification-1st-edition-vipul-tankariya/
Flight Paramedic Certification A Comprehensive Study
Guide Kyle Faudree
https://textbookfull.com/product/flight-paramedic-certification-
a-comprehensive-study-guide-kyle-faudree/
AWS Certified Developer - Associate Guide: Your One-
Stop Solution to Passing the AWS Developer's 2019
(DVA-C01) Certification Parmar
https://textbookfull.com/product/aws-certified-developer-
associate-guide-your-one-stop-solution-to-passing-the-aws-
developers-2019-dva-c01-certification-parmar/
Water operator certification study guide a guide to
preparing for water treatment and distribution operator
certification exams Giorgi
https://textbookfull.com/product/water-operator-certification-
study-guide-a-guide-to-preparing-for-water-treatment-and-
distribution-operator-certification-exams-giorgi/
Social work ASWB clinical exam guide a comprehensive
study guide for success Apgar
https://textbookfull.com/product/social-work-aswb-clinical-exam-
guide-a-comprehensive-study-guide-for-success-apgar/
Pivotal Certified Professional Spring Developer Exam: A
Study Guide 1st Edition Iuliana Cosmina
https://textbookfull.com/product/pivotal-certified-professional-
spring-developer-exam-a-study-guide-1st-edition-iuliana-cosmina/
Board of Certification Study Guide Clinical Laboratory
Certification Examinations Enhanced 6th Edition Ascp
Board Of Certification
https://textbookfull.com/product/board-of-certification-study-
guide-clinical-laboratory-certification-examinations-
enhanced-6th-edition-ascp-board-of-certification/
Salesforce Platform App Builder Certification A
Practical Study Guide 1st Edition Rakesh Gupta
https://textbookfull.com/product/salesforce-platform-app-builder-
certification-a-practical-study-guide-1st-edition-rakesh-gupta/
Study Guide
&
Comprehensive Outline
for the
OutSystems 11
Web Associate Application Developer
Certification Course
with
Indexed Presentation Detail, Hyperlinks to Video Lectures,
Lab Exercise Notes & Index of Key Terms
Edited by
Mark A. Ciccarelli
Table of Contents
Module Name Module
#
Section Name Section
#
Video
Time
Key Topics Page
#
Course Overview 1.0 5:05 Overview of the Course -
The OutSystems Platform 1 OutSystems Overview 1.1 4:26 What is OutSystems? 5
Forrester & Gartner Analysis 5
Components and Tools 1.2 6:10 The OutSystems Server 5
Service Studio 5
Integration Studio 5
Service Center 5
LifeTime 5
Forge 6
Community Forums 6
OutSystems Capabilities 1.3 4:02 Integrate Existing Code and Data 7
Low-code Application Development 7
Generates Standard & Optimized Code 7
Publish & Deploy Across Environments 7
Integrity Checks for Dependencies 7
Platform Governance & Security 7
App Monitoring & Feedback 7
Flexible Infrastructure 7
Continuous Integration & Delivery 7
Developing in OutSystems 1.4 5:46 Getting Started 8
Workspace Layout 1.5 6:22 Workspace Layout 9
Resources and Tools 1.6 7:45 Process Layer 10
Interface Layer 10
Logic Layer 10
Data Layer 10
Search 10
Menu Bar 11
1-Click Publishing 1.7 5:55 1-Click Publishing 11
Web Development Overview 2 Web Development Overview 2.1 6:12 Client-Side vs. Server-Side 12
Client-Side 12
Server-Side 12
Web Applications in OutSystems 2.2 9:48 Application Types 13
Web Applications in OutSystems 13
Creating Web Applications 13
Modular Programming 13
Producer Modules 14
Consumer Modules 14
Module Name Module
#
Section Name Section
#
Video
Time
Key Topics Page
#
Data Modeling 3 Database Entities 3.1 14:09 Entities 15
Basic Data Types 15
Data Type Inference 15
Entity Actions 15
Static Entities 15
Variables in OutSystems 3.2 8:43 Input Parameters 17
Output Parameters 17
Local Variables 17
Variable Data Types 17
Structures 17
Lists 18
Basic Screen Development 4 Basic Screen Development 4.1 9:32 Screens 19
Screen Variables 19
The Preparation 19
Screen Lifecycle 19
Basic Data Queries - Aggregates 4.2 13:52 Aggregates Overview 20
Creating an Aggregate 20
Sources 20
Filters 20
Sorting 20
Test Values 20
Aggregate Output 21
Properties 21
Widgets I. 4.3 17:03 Widgets 22
Widget Properties 22
Text Widget 22
Expression Widget 22
Image Widget 22
Widgets for Multiple Records 22
Table Records Widget 22
List Records Widget 23
Input Widgets 23
Input Password Widget 23
Label Widget 24
Form Widget 24
Blue Tab Feature 24
Module Name Module
#
Section Name Section
#
Video
Time
Key Topics Page
#
Modeling Data Relationships 5 Building Data Relationships 5.1 19:34 Entity Identifier 25
Referencing Data 25
1-to-1 Relationship 25
Extension Entity 25
1-to-Many Relationship 25
Master-Detail Relationships 26
Many-to-Many Relationships 26
Junction Entities 26
Indexes 26
Referential Integrity 27
The Delete Rule 27
Entity Diagrams 27
Basic Screen Development 6 Screen Interactions – Buttons &
Links
6.1 16:14 Button & Links 28
Navigate Method 28
Submit Method 28
Submitting to a Screen Action 28
Finishing the Screen Action Flow 29
End Node 29
Destination Node 29
Current Screen Destination 29
Ending a Screen Action Flow with
Download
29
Advanced Queries - Aggregates 6.3 14:56 Multiple Sources 30
Joins 30
Only 30
With or Without 30
With 30
Calculated Attributes 30
Hiding Columns 30
Aggregating Records 31
Aggregated Functions 31
Advanced Queries - SQL 6.4 10:31 SQL Tool Overview 32
Inputs & Outputs 32
Testing SQL Tool Queries 32
Executed SQL Tab 32
Non-SELECT Queries 33
Module Name Module
#
Section Name Section
#
Video
Time
Key Topics Page
#
Widgets II. 6.5 14:41 Container Widget 34
If Widget 34
Check-Box Widget 34
Radio Button Widget 34
Combo Box Widget 34
Combo Box Values from Entities & Static
Entities
34
Combo Box Values from Source Records
List
35
Combo Box Values from a Special List 35
Logic and Validations 7 Actions and Exception Handling 7.1 18:20 Actions 36
Code Reusability 36
Screen Actions 36
Server Actions 36
The Preparation 36
Action Flows 37
Assign Statement 37
If Statement 37
Switch Statement 37
For Each Statement 37
Ad-hoc Loop 38
Exception Handler Flows 38
Raising Exceptions 38
Global Exception Handler 38
Input Validations 7.3 12:36 Validating User Inputs 39
Built-in Validations 39
Types of Validations 39
Server-Side Validations 39
Custom Server-Side Validations 40
Client-Side & Server-Side Validations 40
Validation Messages 40
Debugging & Monitoring 7.4 11:54 Troubleshooting 42
Debugging in Service Studio 42
During Debugging 42
Inspecting Variables During Debugging 43
Debugging Producer Modules 43
Debugging in the Personal Area 43
Monitoring in OutSystems 44
Service Center Logs 44
Log Detail 44
Module Name Module
#
Section Name Section
#
Video
Time
Key Topics Page
#
Ajax and Reusable UI 8 Ajax Interactions 8.1 10:36 Ajax Interactions 45
Using Ajax in Screen Actions 45
Ajax Refresh 45
Screen Lifecycle of an Ajax Refreshed
Screen
45
Screen Lifecycle of an Ajax Submit
Screen
46
Refreshing Data 46
Additional Ajax Features 46
Ajax Enabled Widgets 46
Web Blocks 8.3 12:30 Web Blocks 47
Creating Web Blocks 47
Designing Web Blocks 47
Using Web Blocks 47
The Placeholder Widget 47
Web Block Interactions 48
Defining Events 48
Triggering Events 48
Handling Events 48
Different Event Handlers 48
Screen Lifecycle with Web Blocks 48
Web Blocks Events Lifecycle 48
Ajax Refreshing a Web Block 48
Module Name Module
#
Section Name Section
#
Video
Time
Key Topics Page
#
Security and Session Handling 9 Role Based Security 9.1 10:17 Security 49
Access Control 49
Authentication 49
Authorization 49
Users 49
Users Application 49
Roles 50
Checking Permissions 50
Groups 51
Session Handling 9.3 8:38 Sessions 52
Session Data 52
Session Variables 52
Data Types of Session Variables 52
Values of Session Variables 52
User Sessions Start and End 52
Site Properties 53
Site Property Values 53
Web Services 10 Web Services 10.1 19:04 Web Services 54
SOAP 54
Consuming SOAP in OutSystems 54
Using SOAP Methods 54
Exposing SOAP in OutSystems 54
SOAP Endpoints 55
REST 55
Consume a Single REST Method 55
Consuming All REST Methods 56
Using REST Methods 56
REST Callbacks 56
Exposing RESTful Services 57
Logging 57
Service Center – Integration Logs 57
Module Name Module
#
Section Name Section
#
Video
Time
Key Topics Page
#
Themes and Advanced UI 11 Themes and Styling 11.1 18:53 Themes and Styling 58
What is a Theme? 58
Style Sheets in OutSystems 58
Editing CSS 59
Style Sheet Precedence 59
Applying Styles 59
Web Theme Blocks 59
Layout Web Blocks for Screens 60
Menu Block 60
Advanced UI Patterns 11.3 15:59 OutSystems UI 61
Rich Widgets 61
List_Navigation 61
List_SortColumn 62
Accelerating UI Development 11.5 12:48 Accelerators 63
Screen Templates 63
Using a Template to Create a New Screen 63
Sample Data 63
After Replacing Data 63
Scaffolding Patterns 64
5
Section 1. The OutSystems Platform
o 1.1 OutSystems Overview
 The Goal of OutSystems
• To enable and accelerate the development and delivery of enterprise
grade web and mobile applications
 What is OutSystems? Video Link
• Low-code development environment
• Enterprise grade, full stack system
• Integrate with existing systems
• Built-in management & analytics
 Forrester & Gartner Analysis Video Link
• Forrester Wave: Mobile Development Low-Code (Q1)
• Forrester Wave: Low-Code Development Platforms (Q4)
• Gartner MADP Magic Quadrant (Q2)
o Mobile Application Development Platform
o 1.2 Components and Tools Video Link
 The OutSystems Server
• Set of servers that compiles, deploys, manages, runs and monitors
applications
o Connects with Service Studio
 Service Studio
• Low -Code Visual Development Environment for Web and Mobile
application development
o Looks similar to Visual Studio and/or Eclipse IDEs
 Integrated Development Environment = IDE
 Integration Studio
• Integration Studio's purpose is to create representations of existing
external data and code inside of the OutSystem's world. Once these are
published in OutSystems it can be used in Service Studio like any other
resource.
• Integration Studio is the Development Environment for integrating
external resources
o Uses wizards
 External tables or Views
 Importing a .Net assembly to convert it into an
OutSystems Action
o Integrate existing data and code
o Create .Net code extensions
 Service Center
• Platform server management console
• Accessible via browser
• Access to the platform server configuration for administration and
operations teams
 LifeTime
• Manages the application lifecycle across environments via browser
o Typical environments
 Development
 Quality Assurance
 Production
6
 Forge
• Source of downloadable open source components to help speed up
application delivery
o Popular components
 Silk UI Web / Mobile
 OutSystems Now
 Google Maps
 Templates
 Plugins
 Html2PdfConverter
 many, many more
 Community Forums
• Design and development tips
• Search for help
• Useful for beginner and seasoned OutSystems developers alike
7
o 1.3 OutSystems Capabilities Video Link
 Integrate existing code and data
• Applications
• Code
• Data
 Low-code application development
• Visual design and development
• Weave in existing code (Processes and Logic)
• Weave in existing web pages and mobile screens
 Generates Standard and optimized HTML, CSS, JavaScript and .Net code
 Publish and deploy across environments
 Integrity checks for code dependencies
 Platform governance and security
 Application monitoring and feedback
 Infrastructure flexibility – Platform as a Service (PaaS), Hybrid, On-premises
 Continuous integration and delivery
8
• Developing in OutSystems
o 1.4 Getting Started Video Link
 What is Service Studio? Low-code visual development environment that is the
IDE for OutSystems
 Service Studio allows developers to
• create applications and modules on the server
• define the data structures used by the app
• create the user interfaces for web and mobile apps
o modify or create HTML and/or CSS as needed for the
interfaces
• define business logic needed by the apps
• define business processes and timers (batch processes)
• create, edit, update, publish, view and debug apps
 Service Studio install then connect
 Environment tab – Applications
• Lists apps in the server
o Web apps
o Mobile apps
• Create new applications
• Install applications or components from the Forge
• Opens an application
o Get the latest version from the platform server
 Environments tab – Application Details
• Application Info
o Name, description and icon
o Test in browser
• Develop tab
o Modules list
• Native platforms (mobile)
o iOS or Android
• Dependencies
o Modules referenced
 Module Workspace tab
 Module menu – Switch environments
 Forge tab
• Free downloads of open source apps and resources
o Searchable
o Categorized
o Mobile apps
o Web apps
• Resource details
o Ratings
o Downloads
o Featured
o Supported
9
o 1.5 Workspace Layout Video Link
 Elements Area – Elements or Widget Tree area – Right column
• Switch views via < > icon
 Widget Tree – Top of Right Column
 Properties Area – Bottom of Right Column
 Editor Area
• Toolbox – left bar
• Top bar
o Views (form factor views)
o Styles
o Special Features
o Edited Environment
o Show Widget Tree (on click populates Right column area
• Canvas area
• Widget hierarchy (bottom left)
 Debug Area – Bottom footer
 Status Bar – Sub Footer – status info populated in bottom right corner.
10
o 1.6 Resources and Tools Video Link
 Process Layer (Processes and Timers)
• Processes
o Business Processes
o Human & automated Tasks
 Decisions, Events & Wait times
• Timers
o Scheduled actions (specific time)
 Intervals (daily, weekly, etc.)
o Priorities
o Timeouts
 Interface layer
• UI Flows
o Screens
o Patterns
• Images
• Themes
• Scripts – JavaScript resources
 Logic Layer
• Client Actions – run on device
• Server Actions - run on server
• Integrations
o SOAP – Web Services
o REST – RESTful Services
o Connectors to Enterprise Systems
 (e.g., SAP – SAP connector/integration)
• Roles
o Anonymous & Registered
• Exceptions
 Data Layer
• Entity Diagrams
• Entities – persistent storage
o Database – server side
o Local Storage – on device storage
• Structures – in memory representations of data
• Site Properties
• Resources
o Generic resources
 Search Tool
• Search within different scopes
o Screen / Element
o Module
o Community
• Results
o Sorted by layer
o Can “jump to” or open any result from inside search results
11
 Menu Bar
• Menus
o Module, Edit, View, Debugger & Help
• Toolbar
o Back/Forward to (editors)
o Module management
o Manage dependencies
o Compare and merge
o Undo/Redo (changes)
o 1.7 1-Click Publishing Video Link
 Sends the application definition to the Service Center app on the
OutSystems Server
• Service Studio creates an XML description of our application and
sends this version to the OutSystems Server
o Uploading - Stores a new version of the application
o Compiling - generates and compiles optimized ASP.NET C#
and JavaScript code and creates SQL scripts
o Deploying – updating SQL Server database model and
deploys the web application to IIS
o Once done, the app is available on the web and specifies the
URL
 Module Menu – Open other version of an application...
 Compare and Merge
• Opens “Diff Tool”
o Visually displays differences in compared versions of an
application
12
Section 2. Web Development Overview
• 2.1 Web Development Overview Video Link
o Web Development Overview
 Client Side vs. Server Side
• HTTP Requests vs. HTTP Responses
• hypertext transport protocol
 Client Side – HTML, CSS, JavaScript
• client side, the client side is actually a container
• the browser is a container that can run the client-side code that is sent
back inside of the response from the server
• The CSS and JavaScript are referenced
 Server Side – Logic and Database
• listening for these incoming requests, it processes that request by using
logic
o Knowing the type of request and what it's supposed to do, and
often times it needs to retrieve data from the browser to be able to
do that.
o Sometimes information that comes in needs to be stored, other
information needs to be retrieved
o It is very important to control the access to who's allowed to see
what type of information and who can store different types of
information.
o Once the server has processed all of this on the server side, then it
builds and sends the HTTP response back to the browser so the
server can dynamically build the HTML page and it will send that
back as part of the response
13
o 2.2 Web Applications in OutSystems Video Link
 Application Types
• Web applications in OutSystems can:
o Web apps
o Mobile apps
o Service apps
o The reason we need to select one of these application types is
because web apps and mobile apps have different programming
models
• Web applications are the deployment unit
 Web Applications in OutSystems
• Apps will run in a browser
• Apps will be responsive
• Apps will have the Request – Response pattern
 Creating a web application
• Select type of app
o Web, Mobile or Service
• Pick a template
o Side-menu template
o Top-menu template
o Fill in your app's basic info
 Name
 Description
 Icon
• Create the app
o Which type of module will be added to our app
o Every app must have at least 1 Module
 Modules types can be: (select one)
• Web Responsive
• Web Blank
• Service
• Extension
 Create Module
• Modules are where developers
o Create the data model
o Define business logic
o Build web pages
 Modular Programming Video Link
• Software design technique that allows each module to:
o Encapsulate everything necessary to execute one aspect of
functionality
o Separate functionality by independent and (potentially)
replaceable code pieces
o Inside of OutSystems the Application becomes the group or set
of modules that will be deployed
o Modules can be Consumers, Producers or Both
o Producers and Consumers can be in different applications
14
 Producer Modules
• Publicly exposes and shares features (if set to Public in properties)
• Producers features / element can exist in
o Data
 Entities
 Structures
o Logic
 Server Actions
 Roles
o Interface
 Web Blocks, Web Screens
 Images
 Themes
o Processes
 (Business) Processes
 Consumer Modules
• Reuse Public elements made available by Producer modules
o Developers must Manage Dependencies
 Look through all the available Producer modules
 Then select desired elements to be consumed by their
application.
15
Section 3. Data Modeling
• Data Modeling
o 3.1 Database Entities Video Link
 OutSystems manages the creation of the underlying database tables
 OutSystems enables the persisting of data with:
• Entities – An Entity is persisted in a Database Table
o Each new instance or record of an Entity is inserted as a new row
o A different Entity should be created for each application concept
o An Entity is defined by fields called Attributes
o Entity data is stored in its Attributes
 Each Attribute is a column in the table
• Each column will have a specified data type
o Each Entity is created with a special ID Attribute
 Special ID Attribute is the Primary Key
• Supports Relational Databases
o Basic Data Types
 Alphanumeric
 Numeric
 Logic (Boolean)
 Dates and Times
 Large Object (Binary Data)
 Referential (Entity Identifier)
• Default Value = NullIdentifier()
o Data Type Inference
 When naming a new attribute or variable OutSystems
tries to infer its type (if it can) and will automatically
change the data type
o Entity Actions - OutSystems automatically creates 6 Entity
Actions for CRUD data operations
 Create – Create<EntityName>
 Retrieve - Get<EntityName>
 Update - Update<EntityName>
 Delete - Delete<EntityName>
o OutSystems gives us two more special Entity Actions
 CreateOrUpdate<EntityName>
 GetForUpdate<EntityName>
• Static Entities
o Have predefined set of possible values defined at design time
o Each value of a Static Entity is a Record
o Static Entity records cannot be created, updated or deleted – only
retrieved
o Static Entities are often used like enumerations
 A list of things that can't be changed
o Get<StaticEntityName> is the only Entity Action
o Static Entities start with four automatically created attributes by
default
 ID
 Label
 Order
 Is_Active
16
o Developers define each Static Entity record by setting the value of
each Attribute in Service Studio at development time.
o Static Entities can be referenced by record name instead of the
Static Entity's Identifier
17
o 3.2 Variables in OutSystems Video Link
 Variables are locations in memory that can hold data
• Hold data of a particular data type
• Can be any data type
• Variables are defined and exist in a particular scope
o This means that the value for that variable can be accessed and
modified inside of that scope
o If execution leaves that scope, the variable is destroyed.
• Variables can be
o Input Parameters Video Link
 Passes a value from outside the scope into its parent scope
 Input Parameter can be set to Mandatory
 The variable is destroyed when execution leaves the scope
of the parent element (e.g., server action)
o Output Parameters Video Link
 Returns a value from inside its parent's scope to the
outside scope
 A value must be assigned to the Output Parameter inside
its scope
 The variable continues to exist in the outside scope even
after its parent element's scope is gone.
o Local Variables Video Link
 Exists exclusively within the scope of the element where
it lives
 Can be assigned and used "locally" inside that scope
 The variable is destroyed when execution leaves the scope
of where it was created (the parent element)
 Variable Data Types
• OutSystems language is strongly typed
o Every variable must declare its data type
o That data type cannot change
• OutSystems supports
o Basic Types
o Compound Types
 Entities
 Static Entities
 Structures Video Link
• Structures are custom compound data types
• Structures are used to store compound data in
memory
• The Structure is the definition of the data type
o The Structure itself does not really hold
any values but at some point we may
create a variable and that variable would
have the data type of this particular
structure.
 So the structures themselves
are not variables.
o The structures are the definition of the
structure of the type and then the
structure's data type is the collection of
all of the simple and compound data
18
types that have been grouped together
inside of the structure.
• Structures are defined by attributes of any data
type
o Including other Structures, Entities,
Lists or Basic data types
• Structures are highly flexible and allow
developers to create highly customize compound
data types in OutSystems
o Structures are not really variables
• Creating Structures
o Add Structure and set its Properties
 Set its Name
 Can be made Public
o Add Structure Attributes
 Set their Names and Data
Types
 Attributes can be set to
mandatory
 Can have a default value
o Lists
 A collection of elements of the same data type (e.g. List
of Integers)
 Elements of OutSystems Lists can be
• Basic types
• Compound types (Entities or Structures)
• A union record between different types
o example: Integer + Text
o example: Booking + GuestName
 Type of List can be defined in the Data Type Editor
19
Section 4. Basic Screen Development
o 4.1 Basic Screen Development Video Link
 Web Screens are the application's User Interface
• OutSystems lets the developer choose between Empty screens or screen
Templates
 Screens are defined in OutSystems in the hierarchy of the various elements that
make up the screen via the Widget Tree (available in Service Studio by clicking the
< > button)
• As developers we can look at the content that comprises a screen by looking
at the Widget Tree
 Screen Variables - what is displayed to the end user depends on their request
• Screens can have Input Variables
o Parameters that are passed in with the request for a Screen
o Mandatory input variables must have values assigned to them
• Screen can also have Local Variables
o Initialized within the scope of the screen itself
 These variables exist within the scope of the screen itself
 The Scope of the Screen is its complete lifecycle
 The Preparation – Fetching Data Video Link
• Screens may need to display data from sources external to it (e.g.,
databases)
o For this purpose, the Preparation is the special Screen Action
which has access to the Screen Inputs and Local Variables and can
call out to access other data sources external to the screen.
 Data needed to render the screen should be fetched in the
Preparation
• Data can be fetched from Databases
o Aggregates
o SQL
• Data can be fetched from Integrations
o Web Services
o REST
o etc.
• Through the Preparation, the fetched data
becomes a variable for use within the Screen
 Screen Lifecycle Video Link
• When accessing a Screen, it all starts with a request from the browser
o Mandatory Input Parameters are set to the value sent in the
Request
o Empty Non-mandatory Input Parameters and Local Variables are
set to default values
o The Preparation then runs
o A Screen is built (rendered) from top to bottom
o The Response is sent to the browser
 The requested Screen is viewable when it is displayed in
the user's browser
20
o 4.2 Basic Data Queries – Aggregates Video Link
 Aggregates Overview
• Most web applications need to fetch data from the database
• Aggregates allow developers to define database queries in a visual way and
is done through the Aggregate Editor
o Add data Sources
o Create data Filters
o and then define data Sorting
o Then we can conduct some Testing on our query
• Aggregates are easy to create and maintain
o Excel - like display of the data
o SQL knowledge is not required
 Creating an Aggregate (2-Ways) Video Link
1. Drag and Drop an Aggregate tool from the Toolbox
onto an Action flow
• then double click to Edit the Aggregate to define
the query or:
2. Go to the Data tab, then Drag and Drop an Entity
directly onto an Action Flow (accelerator) where
OutSystems turns the Entity into an Aggregate for us
• then double click to edit the Aggregate to define
the query
 Aggregate Sources Video Link
• Aggregates support one or more source Entities
• The sources determine the type of the Aggregate's Output List
o (e.g., Customer List)
• The List's columns display the List's Attributes
 Aggregate Filters Video Link
• Adds one or more conditions to the query to filter the output records
o Support for multiple filters
o Supports logical operators ( =, < >, and, or, ...)
o Support for some built-in functions
 CurrDateTime()
 If(Condition, True, False)
• Using a Filter in the Aggregate is equivalent to using a WHERE clause in a
SQL statement
 Aggregate Sorting Video Link
• Defines the Entity's attribute to sort by and in which direction
o Ascending
o Descending
• Developers can define multiple sorts
o When defining multiple sorts the Order is relevant to the result
• Using a Sort in the Aggregate is equivalent to using a ORDER BY clause
in a SQL statement
 Aggregate Test Values Video Link
• The Aggregate tool allows for the specifying of values for external variables
used in the Filter or Sort conditions
o The tool provides test value input fields for each external variables
used in the Aggregate
 This is used to test the Aggregate and preview the output
records
21
• As these are just test values, there is no influence
on the actual output.
 Aggregates Output Video Link
• The List of records is created with several standard properties
o Length - the number of elements returned
 This can be limited in the Aggregate's Properties by
specifying a Max Records property (which will not
impact the Count) – which is the total number of records
that meet the specified criteria of the query
o Empty - True if no records are returned
o EOF - End of file
o BOF - Beginning of file
o CurrentRowNumber - filled by iterating though the list
o Current - Aggregate Get<Entity> contains a "List.Current"
 The type matches the definition in the query
 The "Current" cursor moves through the List when
iterating through it
• "List.Current" points at the first row returned by
the query by default, then it moves through the
list
o Count - the total number of records that match the criteria defined
in the Aggregate
• Once an Aggregate is run, it becomes a variable that represents the result set
 Aggregate Properties Video Link
• It is possible to limit the Aggregate's output to a maximum number of
records to return in the query
o To do this, use the Max Records property
 This would set the Length property
 Does not impact the Count output
• The Aggregate Editor is SQL-dialect agnostic
o SQL is generated specific to the DBMS used by the application
o The Executed SQL property shows the SQL statement generated
from the Aggregate
o SQL SELECT statements are optimized by the platform
according to the output usage
 It will only retrieve the information or attributes from the
database that is actually used inside the screen
Exploring the Variety of Random
Documents with Different Content
The Thinking of the Body 106
Religious Belief Necessary to Religious Art 109
The Holy Places 113
Poetry and Tradition 116
Preface to the First Edition of John M. Synge’s Poems and
Translations
139
J. M. Synge and the Ireland of his Time 146
The Tragic Theatre 196
John Shawe-Taylor 208
Edmund Spenser 213
THE TREMBLING OF THE VEIL
By W. B. YEATS
CONTENTS
PAGE
Book I
Four Years 1887-1891 3
Book II
Ireland after the Fall of Parnell 83
Book III
Hodos Camelionis 135
Book IV
The Tragic Generation 157
Book V
The Stirring of the Bones 225
RESPONSIBILITIES AND
OTHER POEMS
By William Butler Yeats
CONTENTS
PAGE
Responsibilities, 1912-1914—
Introductory Rhymes 1
The Grey Rock 3
The Two Kings 11
To a Wealthy Man 29
September 1913 32
To a Friend whose Work has come to Nothing 34
Paudeen 35
To a Shade 36
When Helen Lived 39
The Attack on 'The Playboy of the Western World,'—1907 40
The Three Beggars 41
The Three Hermits 45
Beggar to Beggar cried 47
The Well and the Tree 49
Running to Paradise 50
The Hour before Dawn 52
The Player Queen 59
The Realists 61
The Witch 62
The Peacock 63
The Mountain Tomb 64
To a Child dancing in the Wind 66
A Memory of Youth 68
Fallen Majesty 70
Friends 71
The Cold Heaven 73
That the Night come 75
An Appointment 76
The Magi 77
The Dolls 78
A Coat 80
Closing Rhymes 81
From the Green Helmet and other Poems, 1909-
1912—
His Dream 85
A Woman Homer sung 87
The Consolation 89
No Second Troy 91
Reconciliation 92
King and No King 94
Peace 96
Against Unworthy Praise 97
The Fascination of What's Difficult 99
A Drinking Song 101
The Coming of Wisdom with Time 102
On hearing that the Students of our New University have
joined the Ancient Order of Hibernians 103
To a Poet 104
The Mask 105
Upon a House shaken by the Land Agitation 106
At the Abbey Theatre 108
These are the Clouds 110
At Galway Races 112
A Friend's Illness 113
All Things can tempt me 114
The Young Man's Song 115
The Hour-Glass—1912 117
Notes 181
WHERE THERE IS NOTHING
Being Volume One Of Plays For An Irish
Theatre
By W. B. Yeats
CONTENTS
DEDICATION OF VOLUMES ONE AND TWO OF PLAYS FOR
AN IRISH THEATRE
WHERE THERE IS NOTHING.
ACT I.
ACT II.
ACT III.
ACT IV.
ACT V.
POEMS
By W. B. YEATS
CONTENTS
PAGE
The Countess Cathleen 1
The Rose—
To the Rose upon the Rood of Time 109
Fergus and the Druid 111
The Death of Cuchulain 114
The Rose of the World 119
The Rose of Peace 120
The Rose of Battle 121
A Faery Song 123
The Lake Isle of Innisfree 124
A Cradle Song 125
The Pity of Love 126
The Sorrow of Love 127
When You are Old 128
The White Birds 129
A Dream of Death 131
A Dream of a Blessed Spirit 132
Who goes with Fergus 133
The Man who Dreamed of Faeryland 134
The Dedication to a Book of Stories selected from the Irish
Novelists
137
The Lamentation of the Old Pensioner 139
The Ballad of Father Gilligan 140
The Two Trees 143
To Ireland in the Coming Times 145
The Land of Heart's Desire 149
Crossways—
The Song of the Happy Shepherd 197
The Sad Shepherd 200
The Cloak, The Boat, and the Shoes 202
Anashuya and Vijaya 203
The Indian upon God 209
The Indian to his Love 211
The Falling of the Leaves 213
Ephemera 214
The Madness of King Goll 216
The Stolen Child 220
To an Isle in the Water 223
Down by the Salley Gardens 224
The Meditation of the Old Fisherman 225
The Ballad of Father O'Hart 226
The Ballad of Moll Magee 229
The Ballad of the Foxhunter 232
The Wanderings of Usheen 235
Glossary and Notes 299
THE KING'S THRESHOLD;
and ON BAILE'S STRAND
Being Volume Three
Of Plays For An Irish Theatre
By W. B. Yeats
CONTENTS
The King's Threshold
On Baile's Strand
JOHN SHERMAN AND DHOYA
By William Butler Yeats
CONTENTS
GANCONAGH'S APOLOGY. 1
PART I. JOHN SHERMAN LEAVES BALLAH. 3
I 5
II 17
III 27
IV 39
PART II. MARGARET LELAND. 43
I 45
II 51
III 55
IV 60
V 67
VI 70
VII 72
VIII 75
IX 77
PART III. JOHN SHERMAN REVISITS BALLAH. 83
I 85
II 88
III 91
PART IV. THE REV. WILLIAM HOWARD. 101
I 103
II 111
III 114
IV 125
V 134
VI 138
PART V. JOHN SHERMAN RETURNS TO BALLAH. 143
I 145
II 149
III 154
IV 165
DHOYA. 171
I 173
II 182
III 190
*** END OF THE PROJECT GUTENBERG EBOOK INDEX OF THE
PROJECT GUTENBERG WORKS OF WILLIAM BUTLER YEATS ***
Updated editions will replace the previous one—the old editions will
be renamed.
Creating the works from print editions not protected by U.S.
copyright law means that no one owns a United States copyright in
these works, so the Foundation (and you!) can copy and distribute it
in the United States without permission and without paying
copyright royalties. Special rules, set forth in the General Terms of
Use part of this license, apply to copying and distributing Project
Gutenberg™ electronic works to protect the PROJECT GUTENBERG™
concept and trademark. Project Gutenberg is a registered trademark,
and may not be used if you charge for an eBook, except by following
the terms of the trademark license, including paying royalties for use
of the Project Gutenberg trademark. If you do not charge anything
for copies of this eBook, complying with the trademark license is
very easy. You may use this eBook for nearly any purpose such as
creation of derivative works, reports, performances and research.
Project Gutenberg eBooks may be modified and printed and given
away—you may do practically ANYTHING in the United States with
eBooks not protected by U.S. copyright law. Redistribution is subject
to the trademark license, especially commercial redistribution.
START: FULL LICENSE
THE FULL PROJECT GUTENBERG LICENSE
PLEASE READ THIS BEFORE YOU DISTRIBUTE OR USE THIS WORK
To protect the Project Gutenberg™ mission of promoting the free
distribution of electronic works, by using or distributing this work (or
any other work associated in any way with the phrase “Project
Gutenberg”), you agree to comply with all the terms of the Full
Project Gutenberg™ License available with this file or online at
www.gutenberg.org/license.
Section 1. General Terms of Use and
Redistributing Project Gutenberg™
electronic works
1.A. By reading or using any part of this Project Gutenberg™
electronic work, you indicate that you have read, understand, agree
to and accept all the terms of this license and intellectual property
(trademark/copyright) agreement. If you do not agree to abide by all
the terms of this agreement, you must cease using and return or
destroy all copies of Project Gutenberg™ electronic works in your
possession. If you paid a fee for obtaining a copy of or access to a
Project Gutenberg™ electronic work and you do not agree to be
bound by the terms of this agreement, you may obtain a refund
from the person or entity to whom you paid the fee as set forth in
paragraph 1.E.8.
1.B. “Project Gutenberg” is a registered trademark. It may only be
used on or associated in any way with an electronic work by people
who agree to be bound by the terms of this agreement. There are a
few things that you can do with most Project Gutenberg™ electronic
works even without complying with the full terms of this agreement.
See paragraph 1.C below. There are a lot of things you can do with
Project Gutenberg™ electronic works if you follow the terms of this
agreement and help preserve free future access to Project
Gutenberg™ electronic works. See paragraph 1.E below.
1.C. The Project Gutenberg Literary Archive Foundation (“the
Foundation” or PGLAF), owns a compilation copyright in the
collection of Project Gutenberg™ electronic works. Nearly all the
individual works in the collection are in the public domain in the
United States. If an individual work is unprotected by copyright law
in the United States and you are located in the United States, we do
not claim a right to prevent you from copying, distributing,
performing, displaying or creating derivative works based on the
work as long as all references to Project Gutenberg are removed. Of
course, we hope that you will support the Project Gutenberg™
mission of promoting free access to electronic works by freely
sharing Project Gutenberg™ works in compliance with the terms of
this agreement for keeping the Project Gutenberg™ name associated
with the work. You can easily comply with the terms of this
agreement by keeping this work in the same format with its attached
full Project Gutenberg™ License when you share it without charge
with others.
1.D. The copyright laws of the place where you are located also
govern what you can do with this work. Copyright laws in most
countries are in a constant state of change. If you are outside the
United States, check the laws of your country in addition to the
terms of this agreement before downloading, copying, displaying,
performing, distributing or creating derivative works based on this
work or any other Project Gutenberg™ work. The Foundation makes
no representations concerning the copyright status of any work in
any country other than the United States.
1.E. Unless you have removed all references to Project Gutenberg:
1.E.1. The following sentence, with active links to, or other
immediate access to, the full Project Gutenberg™ License must
appear prominently whenever any copy of a Project Gutenberg™
work (any work on which the phrase “Project Gutenberg” appears,
or with which the phrase “Project Gutenberg” is associated) is
accessed, displayed, performed, viewed, copied or distributed:
This eBook is for the use of anyone anywhere in the
United States and most other parts of the world at no
cost and with almost no restrictions whatsoever. You
may copy it, give it away or re-use it under the terms
of the Project Gutenberg License included with this
eBook or online at www.gutenberg.org. If you are not
located in the United States, you will have to check the
laws of the country where you are located before using
this eBook.
1.E.2. If an individual Project Gutenberg™ electronic work is derived
from texts not protected by U.S. copyright law (does not contain a
notice indicating that it is posted with permission of the copyright
holder), the work can be copied and distributed to anyone in the
United States without paying any fees or charges. If you are
redistributing or providing access to a work with the phrase “Project
Gutenberg” associated with or appearing on the work, you must
comply either with the requirements of paragraphs 1.E.1 through
1.E.7 or obtain permission for the use of the work and the Project
Gutenberg™ trademark as set forth in paragraphs 1.E.8 or 1.E.9.
1.E.3. If an individual Project Gutenberg™ electronic work is posted
with the permission of the copyright holder, your use and distribution
must comply with both paragraphs 1.E.1 through 1.E.7 and any
additional terms imposed by the copyright holder. Additional terms
will be linked to the Project Gutenberg™ License for all works posted
with the permission of the copyright holder found at the beginning
of this work.
1.E.4. Do not unlink or detach or remove the full Project
Gutenberg™ License terms from this work, or any files containing a
part of this work or any other work associated with Project
Gutenberg™.
1.E.5. Do not copy, display, perform, distribute or redistribute this
electronic work, or any part of this electronic work, without
prominently displaying the sentence set forth in paragraph 1.E.1
with active links or immediate access to the full terms of the Project
Gutenberg™ License.
1.E.6. You may convert to and distribute this work in any binary,
compressed, marked up, nonproprietary or proprietary form,
including any word processing or hypertext form. However, if you
provide access to or distribute copies of a Project Gutenberg™ work
in a format other than “Plain Vanilla ASCII” or other format used in
the official version posted on the official Project Gutenberg™ website
(www.gutenberg.org), you must, at no additional cost, fee or
expense to the user, provide a copy, a means of exporting a copy, or
a means of obtaining a copy upon request, of the work in its original
“Plain Vanilla ASCII” or other form. Any alternate format must
include the full Project Gutenberg™ License as specified in
paragraph 1.E.1.
1.E.7. Do not charge a fee for access to, viewing, displaying,
performing, copying or distributing any Project Gutenberg™ works
unless you comply with paragraph 1.E.8 or 1.E.9.
1.E.8. You may charge a reasonable fee for copies of or providing
access to or distributing Project Gutenberg™ electronic works
provided that:
• You pay a royalty fee of 20% of the gross profits you derive
from the use of Project Gutenberg™ works calculated using the
method you already use to calculate your applicable taxes. The
fee is owed to the owner of the Project Gutenberg™ trademark,
but he has agreed to donate royalties under this paragraph to
the Project Gutenberg Literary Archive Foundation. Royalty
payments must be paid within 60 days following each date on
which you prepare (or are legally required to prepare) your
periodic tax returns. Royalty payments should be clearly marked
as such and sent to the Project Gutenberg Literary Archive
Foundation at the address specified in Section 4, “Information
about donations to the Project Gutenberg Literary Archive
Foundation.”
• You provide a full refund of any money paid by a user who
notifies you in writing (or by e-mail) within 30 days of receipt
that s/he does not agree to the terms of the full Project
Gutenberg™ License. You must require such a user to return or
destroy all copies of the works possessed in a physical medium
and discontinue all use of and all access to other copies of
Project Gutenberg™ works.
• You provide, in accordance with paragraph 1.F.3, a full refund of
any money paid for a work or a replacement copy, if a defect in
the electronic work is discovered and reported to you within 90
days of receipt of the work.
• You comply with all other terms of this agreement for free
distribution of Project Gutenberg™ works.
1.E.9. If you wish to charge a fee or distribute a Project Gutenberg™
electronic work or group of works on different terms than are set
forth in this agreement, you must obtain permission in writing from
the Project Gutenberg Literary Archive Foundation, the manager of
the Project Gutenberg™ trademark. Contact the Foundation as set
forth in Section 3 below.
1.F.
1.F.1. Project Gutenberg volunteers and employees expend
considerable effort to identify, do copyright research on, transcribe
and proofread works not protected by U.S. copyright law in creating
the Project Gutenberg™ collection. Despite these efforts, Project
Gutenberg™ electronic works, and the medium on which they may
be stored, may contain “Defects,” such as, but not limited to,
incomplete, inaccurate or corrupt data, transcription errors, a
copyright or other intellectual property infringement, a defective or
damaged disk or other medium, a computer virus, or computer
codes that damage or cannot be read by your equipment.
1.F.2. LIMITED WARRANTY, DISCLAIMER OF DAMAGES - Except for
the “Right of Replacement or Refund” described in paragraph 1.F.3,
the Project Gutenberg Literary Archive Foundation, the owner of the
Project Gutenberg™ trademark, and any other party distributing a
Project Gutenberg™ electronic work under this agreement, disclaim
all liability to you for damages, costs and expenses, including legal
fees. YOU AGREE THAT YOU HAVE NO REMEDIES FOR
NEGLIGENCE, STRICT LIABILITY, BREACH OF WARRANTY OR
BREACH OF CONTRACT EXCEPT THOSE PROVIDED IN PARAGRAPH
1.F.3. YOU AGREE THAT THE FOUNDATION, THE TRADEMARK
OWNER, AND ANY DISTRIBUTOR UNDER THIS AGREEMENT WILL
NOT BE LIABLE TO YOU FOR ACTUAL, DIRECT, INDIRECT,
CONSEQUENTIAL, PUNITIVE OR INCIDENTAL DAMAGES EVEN IF
YOU GIVE NOTICE OF THE POSSIBILITY OF SUCH DAMAGE.
1.F.3. LIMITED RIGHT OF REPLACEMENT OR REFUND - If you
discover a defect in this electronic work within 90 days of receiving
it, you can receive a refund of the money (if any) you paid for it by
sending a written explanation to the person you received the work
from. If you received the work on a physical medium, you must
return the medium with your written explanation. The person or
entity that provided you with the defective work may elect to provide
a replacement copy in lieu of a refund. If you received the work
electronically, the person or entity providing it to you may choose to
give you a second opportunity to receive the work electronically in
lieu of a refund. If the second copy is also defective, you may
demand a refund in writing without further opportunities to fix the
problem.
1.F.4. Except for the limited right of replacement or refund set forth
in paragraph 1.F.3, this work is provided to you ‘AS-IS’, WITH NO
OTHER WARRANTIES OF ANY KIND, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO WARRANTIES OF
MERCHANTABILITY OR FITNESS FOR ANY PURPOSE.
1.F.5. Some states do not allow disclaimers of certain implied
warranties or the exclusion or limitation of certain types of damages.
If any disclaimer or limitation set forth in this agreement violates the
law of the state applicable to this agreement, the agreement shall be
interpreted to make the maximum disclaimer or limitation permitted
by the applicable state law. The invalidity or unenforceability of any
provision of this agreement shall not void the remaining provisions.
1.F.6. INDEMNITY - You agree to indemnify and hold the Foundation,
the trademark owner, any agent or employee of the Foundation,
anyone providing copies of Project Gutenberg™ electronic works in
accordance with this agreement, and any volunteers associated with
the production, promotion and distribution of Project Gutenberg™
electronic works, harmless from all liability, costs and expenses,
including legal fees, that arise directly or indirectly from any of the
following which you do or cause to occur: (a) distribution of this or
any Project Gutenberg™ work, (b) alteration, modification, or
additions or deletions to any Project Gutenberg™ work, and (c) any
Defect you cause.
Section 2. Information about the Mission
of Project Gutenberg™
Project Gutenberg™ is synonymous with the free distribution of
electronic works in formats readable by the widest variety of
computers including obsolete, old, middle-aged and new computers.
It exists because of the efforts of hundreds of volunteers and
donations from people in all walks of life.
Volunteers and financial support to provide volunteers with the
assistance they need are critical to reaching Project Gutenberg™’s
goals and ensuring that the Project Gutenberg™ collection will
remain freely available for generations to come. In 2001, the Project
Gutenberg Literary Archive Foundation was created to provide a
secure and permanent future for Project Gutenberg™ and future
generations. To learn more about the Project Gutenberg Literary
Archive Foundation and how your efforts and donations can help,
see Sections 3 and 4 and the Foundation information page at
www.gutenberg.org.
Section 3. Information about the Project
Gutenberg Literary Archive Foundation
The Project Gutenberg Literary Archive Foundation is a non-profit
501(c)(3) educational corporation organized under the laws of the
state of Mississippi and granted tax exempt status by the Internal
Revenue Service. The Foundation’s EIN or federal tax identification
number is 64-6221541. Contributions to the Project Gutenberg
Literary Archive Foundation are tax deductible to the full extent
permitted by U.S. federal laws and your state’s laws.
The Foundation’s business office is located at 809 North 1500 West,
Salt Lake City, UT 84116, (801) 596-1887. Email contact links and up
to date contact information can be found at the Foundation’s website
and official page at www.gutenberg.org/contact
Section 4. Information about Donations to
the Project Gutenberg Literary Archive
Foundation
Project Gutenberg™ depends upon and cannot survive without
widespread public support and donations to carry out its mission of
increasing the number of public domain and licensed works that can
be freely distributed in machine-readable form accessible by the
widest array of equipment including outdated equipment. Many
small donations ($1 to $5,000) are particularly important to
maintaining tax exempt status with the IRS.
The Foundation is committed to complying with the laws regulating
charities and charitable donations in all 50 states of the United
States. Compliance requirements are not uniform and it takes a
considerable effort, much paperwork and many fees to meet and
keep up with these requirements. We do not solicit donations in
locations where we have not received written confirmation of
compliance. To SEND DONATIONS or determine the status of
compliance for any particular state visit www.gutenberg.org/donate.
While we cannot and do not solicit contributions from states where
we have not met the solicitation requirements, we know of no
prohibition against accepting unsolicited donations from donors in
such states who approach us with offers to donate.
International donations are gratefully accepted, but we cannot make
any statements concerning tax treatment of donations received from
outside the United States. U.S. laws alone swamp our small staff.
Please check the Project Gutenberg web pages for current donation
methods and addresses. Donations are accepted in a number of
other ways including checks, online payments and credit card
donations. To donate, please visit: www.gutenberg.org/donate.
Section 5. General Information About
Project Gutenberg™ electronic works
Professor Michael S. Hart was the originator of the Project
Gutenberg™ concept of a library of electronic works that could be
freely shared with anyone. For forty years, he produced and
distributed Project Gutenberg™ eBooks with only a loose network of
volunteer support.
Project Gutenberg™ eBooks are often created from several printed
editions, all of which are confirmed as not protected by copyright in
the U.S. unless a copyright notice is included. Thus, we do not
necessarily keep eBooks in compliance with any particular paper
edition.
Most people start at our website which has the main PG search
facility: www.gutenberg.org.
This website includes information about Project Gutenberg™,
including how to make donations to the Project Gutenberg Literary
Archive Foundation, how to help produce our new eBooks, and how
to subscribe to our email newsletter to hear about new eBooks.
back
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade
Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.
Let us accompany you on the journey of exploring knowledge and
personal growth!
textbookfull.com

Study Guide Comprehensive Outline for the OutSystems 11 Web Associate Application Developer Certification Course 1st Edition Mark A. Ciccarelli

  • 1.
    Study Guide ComprehensiveOutline for the OutSystems 11 Web Associate Application Developer Certification Course 1st Edition Mark A. Ciccarelli download https://textbookfull.com/product/study-guide-comprehensive- outline-for-the-outsystems-11-web-associate-application- developer-certification-course-1st-edition-mark-a-ciccarelli/ Download full version ebook from https://textbookfull.com
  • 2.
    We believe theseproducts will be a great fit for you. Click the link to download now, or visit textbookfull.com to discover even more! Pivotal Certified Spring Web Application Developer Exam A Study Guide Cosmina Iuliana https://textbookfull.com/product/pivotal-certified-spring-web- application-developer-exam-a-study-guide-cosmina-iuliana/ AWS Certified Developer Associate Guide Your one stop solution to pass the AWS developer s certification 1st Edition Vipul Tankariya https://textbookfull.com/product/aws-certified-developer- associate-guide-your-one-stop-solution-to-pass-the-aws-developer- s-certification-1st-edition-vipul-tankariya/ Flight Paramedic Certification A Comprehensive Study Guide Kyle Faudree https://textbookfull.com/product/flight-paramedic-certification- a-comprehensive-study-guide-kyle-faudree/ AWS Certified Developer - Associate Guide: Your One- Stop Solution to Passing the AWS Developer's 2019 (DVA-C01) Certification Parmar https://textbookfull.com/product/aws-certified-developer- associate-guide-your-one-stop-solution-to-passing-the-aws- developers-2019-dva-c01-certification-parmar/
  • 3.
    Water operator certificationstudy guide a guide to preparing for water treatment and distribution operator certification exams Giorgi https://textbookfull.com/product/water-operator-certification- study-guide-a-guide-to-preparing-for-water-treatment-and- distribution-operator-certification-exams-giorgi/ Social work ASWB clinical exam guide a comprehensive study guide for success Apgar https://textbookfull.com/product/social-work-aswb-clinical-exam- guide-a-comprehensive-study-guide-for-success-apgar/ Pivotal Certified Professional Spring Developer Exam: A Study Guide 1st Edition Iuliana Cosmina https://textbookfull.com/product/pivotal-certified-professional- spring-developer-exam-a-study-guide-1st-edition-iuliana-cosmina/ Board of Certification Study Guide Clinical Laboratory Certification Examinations Enhanced 6th Edition Ascp Board Of Certification https://textbookfull.com/product/board-of-certification-study- guide-clinical-laboratory-certification-examinations- enhanced-6th-edition-ascp-board-of-certification/ Salesforce Platform App Builder Certification A Practical Study Guide 1st Edition Rakesh Gupta https://textbookfull.com/product/salesforce-platform-app-builder- certification-a-practical-study-guide-1st-edition-rakesh-gupta/
  • 5.
    Study Guide & Comprehensive Outline forthe OutSystems 11 Web Associate Application Developer Certification Course with Indexed Presentation Detail, Hyperlinks to Video Lectures, Lab Exercise Notes & Index of Key Terms Edited by Mark A. Ciccarelli
  • 6.
    Table of Contents ModuleName Module # Section Name Section # Video Time Key Topics Page # Course Overview 1.0 5:05 Overview of the Course - The OutSystems Platform 1 OutSystems Overview 1.1 4:26 What is OutSystems? 5 Forrester & Gartner Analysis 5 Components and Tools 1.2 6:10 The OutSystems Server 5 Service Studio 5 Integration Studio 5 Service Center 5 LifeTime 5 Forge 6 Community Forums 6 OutSystems Capabilities 1.3 4:02 Integrate Existing Code and Data 7 Low-code Application Development 7 Generates Standard & Optimized Code 7 Publish & Deploy Across Environments 7 Integrity Checks for Dependencies 7 Platform Governance & Security 7 App Monitoring & Feedback 7 Flexible Infrastructure 7 Continuous Integration & Delivery 7 Developing in OutSystems 1.4 5:46 Getting Started 8 Workspace Layout 1.5 6:22 Workspace Layout 9 Resources and Tools 1.6 7:45 Process Layer 10 Interface Layer 10 Logic Layer 10 Data Layer 10 Search 10 Menu Bar 11 1-Click Publishing 1.7 5:55 1-Click Publishing 11 Web Development Overview 2 Web Development Overview 2.1 6:12 Client-Side vs. Server-Side 12 Client-Side 12 Server-Side 12 Web Applications in OutSystems 2.2 9:48 Application Types 13 Web Applications in OutSystems 13 Creating Web Applications 13 Modular Programming 13 Producer Modules 14 Consumer Modules 14
  • 7.
    Module Name Module # SectionName Section # Video Time Key Topics Page # Data Modeling 3 Database Entities 3.1 14:09 Entities 15 Basic Data Types 15 Data Type Inference 15 Entity Actions 15 Static Entities 15 Variables in OutSystems 3.2 8:43 Input Parameters 17 Output Parameters 17 Local Variables 17 Variable Data Types 17 Structures 17 Lists 18 Basic Screen Development 4 Basic Screen Development 4.1 9:32 Screens 19 Screen Variables 19 The Preparation 19 Screen Lifecycle 19 Basic Data Queries - Aggregates 4.2 13:52 Aggregates Overview 20 Creating an Aggregate 20 Sources 20 Filters 20 Sorting 20 Test Values 20 Aggregate Output 21 Properties 21 Widgets I. 4.3 17:03 Widgets 22 Widget Properties 22 Text Widget 22 Expression Widget 22 Image Widget 22 Widgets for Multiple Records 22 Table Records Widget 22 List Records Widget 23 Input Widgets 23 Input Password Widget 23 Label Widget 24 Form Widget 24 Blue Tab Feature 24
  • 8.
    Module Name Module # SectionName Section # Video Time Key Topics Page # Modeling Data Relationships 5 Building Data Relationships 5.1 19:34 Entity Identifier 25 Referencing Data 25 1-to-1 Relationship 25 Extension Entity 25 1-to-Many Relationship 25 Master-Detail Relationships 26 Many-to-Many Relationships 26 Junction Entities 26 Indexes 26 Referential Integrity 27 The Delete Rule 27 Entity Diagrams 27 Basic Screen Development 6 Screen Interactions – Buttons & Links 6.1 16:14 Button & Links 28 Navigate Method 28 Submit Method 28 Submitting to a Screen Action 28 Finishing the Screen Action Flow 29 End Node 29 Destination Node 29 Current Screen Destination 29 Ending a Screen Action Flow with Download 29 Advanced Queries - Aggregates 6.3 14:56 Multiple Sources 30 Joins 30 Only 30 With or Without 30 With 30 Calculated Attributes 30 Hiding Columns 30 Aggregating Records 31 Aggregated Functions 31 Advanced Queries - SQL 6.4 10:31 SQL Tool Overview 32 Inputs & Outputs 32 Testing SQL Tool Queries 32 Executed SQL Tab 32 Non-SELECT Queries 33
  • 9.
    Module Name Module # SectionName Section # Video Time Key Topics Page # Widgets II. 6.5 14:41 Container Widget 34 If Widget 34 Check-Box Widget 34 Radio Button Widget 34 Combo Box Widget 34 Combo Box Values from Entities & Static Entities 34 Combo Box Values from Source Records List 35 Combo Box Values from a Special List 35 Logic and Validations 7 Actions and Exception Handling 7.1 18:20 Actions 36 Code Reusability 36 Screen Actions 36 Server Actions 36 The Preparation 36 Action Flows 37 Assign Statement 37 If Statement 37 Switch Statement 37 For Each Statement 37 Ad-hoc Loop 38 Exception Handler Flows 38 Raising Exceptions 38 Global Exception Handler 38 Input Validations 7.3 12:36 Validating User Inputs 39 Built-in Validations 39 Types of Validations 39 Server-Side Validations 39 Custom Server-Side Validations 40 Client-Side & Server-Side Validations 40 Validation Messages 40 Debugging & Monitoring 7.4 11:54 Troubleshooting 42 Debugging in Service Studio 42 During Debugging 42 Inspecting Variables During Debugging 43 Debugging Producer Modules 43 Debugging in the Personal Area 43 Monitoring in OutSystems 44 Service Center Logs 44 Log Detail 44
  • 10.
    Module Name Module # SectionName Section # Video Time Key Topics Page # Ajax and Reusable UI 8 Ajax Interactions 8.1 10:36 Ajax Interactions 45 Using Ajax in Screen Actions 45 Ajax Refresh 45 Screen Lifecycle of an Ajax Refreshed Screen 45 Screen Lifecycle of an Ajax Submit Screen 46 Refreshing Data 46 Additional Ajax Features 46 Ajax Enabled Widgets 46 Web Blocks 8.3 12:30 Web Blocks 47 Creating Web Blocks 47 Designing Web Blocks 47 Using Web Blocks 47 The Placeholder Widget 47 Web Block Interactions 48 Defining Events 48 Triggering Events 48 Handling Events 48 Different Event Handlers 48 Screen Lifecycle with Web Blocks 48 Web Blocks Events Lifecycle 48 Ajax Refreshing a Web Block 48
  • 11.
    Module Name Module # SectionName Section # Video Time Key Topics Page # Security and Session Handling 9 Role Based Security 9.1 10:17 Security 49 Access Control 49 Authentication 49 Authorization 49 Users 49 Users Application 49 Roles 50 Checking Permissions 50 Groups 51 Session Handling 9.3 8:38 Sessions 52 Session Data 52 Session Variables 52 Data Types of Session Variables 52 Values of Session Variables 52 User Sessions Start and End 52 Site Properties 53 Site Property Values 53 Web Services 10 Web Services 10.1 19:04 Web Services 54 SOAP 54 Consuming SOAP in OutSystems 54 Using SOAP Methods 54 Exposing SOAP in OutSystems 54 SOAP Endpoints 55 REST 55 Consume a Single REST Method 55 Consuming All REST Methods 56 Using REST Methods 56 REST Callbacks 56 Exposing RESTful Services 57 Logging 57 Service Center – Integration Logs 57
  • 12.
    Module Name Module # SectionName Section # Video Time Key Topics Page # Themes and Advanced UI 11 Themes and Styling 11.1 18:53 Themes and Styling 58 What is a Theme? 58 Style Sheets in OutSystems 58 Editing CSS 59 Style Sheet Precedence 59 Applying Styles 59 Web Theme Blocks 59 Layout Web Blocks for Screens 60 Menu Block 60 Advanced UI Patterns 11.3 15:59 OutSystems UI 61 Rich Widgets 61 List_Navigation 61 List_SortColumn 62 Accelerating UI Development 11.5 12:48 Accelerators 63 Screen Templates 63 Using a Template to Create a New Screen 63 Sample Data 63 After Replacing Data 63 Scaffolding Patterns 64
  • 13.
    5 Section 1. TheOutSystems Platform o 1.1 OutSystems Overview  The Goal of OutSystems • To enable and accelerate the development and delivery of enterprise grade web and mobile applications  What is OutSystems? Video Link • Low-code development environment • Enterprise grade, full stack system • Integrate with existing systems • Built-in management & analytics  Forrester & Gartner Analysis Video Link • Forrester Wave: Mobile Development Low-Code (Q1) • Forrester Wave: Low-Code Development Platforms (Q4) • Gartner MADP Magic Quadrant (Q2) o Mobile Application Development Platform o 1.2 Components and Tools Video Link  The OutSystems Server • Set of servers that compiles, deploys, manages, runs and monitors applications o Connects with Service Studio  Service Studio • Low -Code Visual Development Environment for Web and Mobile application development o Looks similar to Visual Studio and/or Eclipse IDEs  Integrated Development Environment = IDE  Integration Studio • Integration Studio's purpose is to create representations of existing external data and code inside of the OutSystem's world. Once these are published in OutSystems it can be used in Service Studio like any other resource. • Integration Studio is the Development Environment for integrating external resources o Uses wizards  External tables or Views  Importing a .Net assembly to convert it into an OutSystems Action o Integrate existing data and code o Create .Net code extensions  Service Center • Platform server management console • Accessible via browser • Access to the platform server configuration for administration and operations teams  LifeTime • Manages the application lifecycle across environments via browser o Typical environments  Development  Quality Assurance  Production
  • 14.
    6  Forge • Sourceof downloadable open source components to help speed up application delivery o Popular components  Silk UI Web / Mobile  OutSystems Now  Google Maps  Templates  Plugins  Html2PdfConverter  many, many more  Community Forums • Design and development tips • Search for help • Useful for beginner and seasoned OutSystems developers alike
  • 15.
    7 o 1.3 OutSystemsCapabilities Video Link  Integrate existing code and data • Applications • Code • Data  Low-code application development • Visual design and development • Weave in existing code (Processes and Logic) • Weave in existing web pages and mobile screens  Generates Standard and optimized HTML, CSS, JavaScript and .Net code  Publish and deploy across environments  Integrity checks for code dependencies  Platform governance and security  Application monitoring and feedback  Infrastructure flexibility – Platform as a Service (PaaS), Hybrid, On-premises  Continuous integration and delivery
  • 16.
    8 • Developing inOutSystems o 1.4 Getting Started Video Link  What is Service Studio? Low-code visual development environment that is the IDE for OutSystems  Service Studio allows developers to • create applications and modules on the server • define the data structures used by the app • create the user interfaces for web and mobile apps o modify or create HTML and/or CSS as needed for the interfaces • define business logic needed by the apps • define business processes and timers (batch processes) • create, edit, update, publish, view and debug apps  Service Studio install then connect  Environment tab – Applications • Lists apps in the server o Web apps o Mobile apps • Create new applications • Install applications or components from the Forge • Opens an application o Get the latest version from the platform server  Environments tab – Application Details • Application Info o Name, description and icon o Test in browser • Develop tab o Modules list • Native platforms (mobile) o iOS or Android • Dependencies o Modules referenced  Module Workspace tab  Module menu – Switch environments  Forge tab • Free downloads of open source apps and resources o Searchable o Categorized o Mobile apps o Web apps • Resource details o Ratings o Downloads o Featured o Supported
  • 17.
    9 o 1.5 WorkspaceLayout Video Link  Elements Area – Elements or Widget Tree area – Right column • Switch views via < > icon  Widget Tree – Top of Right Column  Properties Area – Bottom of Right Column  Editor Area • Toolbox – left bar • Top bar o Views (form factor views) o Styles o Special Features o Edited Environment o Show Widget Tree (on click populates Right column area • Canvas area • Widget hierarchy (bottom left)  Debug Area – Bottom footer  Status Bar – Sub Footer – status info populated in bottom right corner.
  • 18.
    10 o 1.6 Resourcesand Tools Video Link  Process Layer (Processes and Timers) • Processes o Business Processes o Human & automated Tasks  Decisions, Events & Wait times • Timers o Scheduled actions (specific time)  Intervals (daily, weekly, etc.) o Priorities o Timeouts  Interface layer • UI Flows o Screens o Patterns • Images • Themes • Scripts – JavaScript resources  Logic Layer • Client Actions – run on device • Server Actions - run on server • Integrations o SOAP – Web Services o REST – RESTful Services o Connectors to Enterprise Systems  (e.g., SAP – SAP connector/integration) • Roles o Anonymous & Registered • Exceptions  Data Layer • Entity Diagrams • Entities – persistent storage o Database – server side o Local Storage – on device storage • Structures – in memory representations of data • Site Properties • Resources o Generic resources  Search Tool • Search within different scopes o Screen / Element o Module o Community • Results o Sorted by layer o Can “jump to” or open any result from inside search results
  • 19.
    11  Menu Bar •Menus o Module, Edit, View, Debugger & Help • Toolbar o Back/Forward to (editors) o Module management o Manage dependencies o Compare and merge o Undo/Redo (changes) o 1.7 1-Click Publishing Video Link  Sends the application definition to the Service Center app on the OutSystems Server • Service Studio creates an XML description of our application and sends this version to the OutSystems Server o Uploading - Stores a new version of the application o Compiling - generates and compiles optimized ASP.NET C# and JavaScript code and creates SQL scripts o Deploying – updating SQL Server database model and deploys the web application to IIS o Once done, the app is available on the web and specifies the URL  Module Menu – Open other version of an application...  Compare and Merge • Opens “Diff Tool” o Visually displays differences in compared versions of an application
  • 20.
    12 Section 2. WebDevelopment Overview • 2.1 Web Development Overview Video Link o Web Development Overview  Client Side vs. Server Side • HTTP Requests vs. HTTP Responses • hypertext transport protocol  Client Side – HTML, CSS, JavaScript • client side, the client side is actually a container • the browser is a container that can run the client-side code that is sent back inside of the response from the server • The CSS and JavaScript are referenced  Server Side – Logic and Database • listening for these incoming requests, it processes that request by using logic o Knowing the type of request and what it's supposed to do, and often times it needs to retrieve data from the browser to be able to do that. o Sometimes information that comes in needs to be stored, other information needs to be retrieved o It is very important to control the access to who's allowed to see what type of information and who can store different types of information. o Once the server has processed all of this on the server side, then it builds and sends the HTTP response back to the browser so the server can dynamically build the HTML page and it will send that back as part of the response
  • 21.
    13 o 2.2 WebApplications in OutSystems Video Link  Application Types • Web applications in OutSystems can: o Web apps o Mobile apps o Service apps o The reason we need to select one of these application types is because web apps and mobile apps have different programming models • Web applications are the deployment unit  Web Applications in OutSystems • Apps will run in a browser • Apps will be responsive • Apps will have the Request – Response pattern  Creating a web application • Select type of app o Web, Mobile or Service • Pick a template o Side-menu template o Top-menu template o Fill in your app's basic info  Name  Description  Icon • Create the app o Which type of module will be added to our app o Every app must have at least 1 Module  Modules types can be: (select one) • Web Responsive • Web Blank • Service • Extension  Create Module • Modules are where developers o Create the data model o Define business logic o Build web pages  Modular Programming Video Link • Software design technique that allows each module to: o Encapsulate everything necessary to execute one aspect of functionality o Separate functionality by independent and (potentially) replaceable code pieces o Inside of OutSystems the Application becomes the group or set of modules that will be deployed o Modules can be Consumers, Producers or Both o Producers and Consumers can be in different applications
  • 22.
    14  Producer Modules •Publicly exposes and shares features (if set to Public in properties) • Producers features / element can exist in o Data  Entities  Structures o Logic  Server Actions  Roles o Interface  Web Blocks, Web Screens  Images  Themes o Processes  (Business) Processes  Consumer Modules • Reuse Public elements made available by Producer modules o Developers must Manage Dependencies  Look through all the available Producer modules  Then select desired elements to be consumed by their application.
  • 23.
    15 Section 3. DataModeling • Data Modeling o 3.1 Database Entities Video Link  OutSystems manages the creation of the underlying database tables  OutSystems enables the persisting of data with: • Entities – An Entity is persisted in a Database Table o Each new instance or record of an Entity is inserted as a new row o A different Entity should be created for each application concept o An Entity is defined by fields called Attributes o Entity data is stored in its Attributes  Each Attribute is a column in the table • Each column will have a specified data type o Each Entity is created with a special ID Attribute  Special ID Attribute is the Primary Key • Supports Relational Databases o Basic Data Types  Alphanumeric  Numeric  Logic (Boolean)  Dates and Times  Large Object (Binary Data)  Referential (Entity Identifier) • Default Value = NullIdentifier() o Data Type Inference  When naming a new attribute or variable OutSystems tries to infer its type (if it can) and will automatically change the data type o Entity Actions - OutSystems automatically creates 6 Entity Actions for CRUD data operations  Create – Create<EntityName>  Retrieve - Get<EntityName>  Update - Update<EntityName>  Delete - Delete<EntityName> o OutSystems gives us two more special Entity Actions  CreateOrUpdate<EntityName>  GetForUpdate<EntityName> • Static Entities o Have predefined set of possible values defined at design time o Each value of a Static Entity is a Record o Static Entity records cannot be created, updated or deleted – only retrieved o Static Entities are often used like enumerations  A list of things that can't be changed o Get<StaticEntityName> is the only Entity Action o Static Entities start with four automatically created attributes by default  ID  Label  Order  Is_Active
  • 24.
    16 o Developers defineeach Static Entity record by setting the value of each Attribute in Service Studio at development time. o Static Entities can be referenced by record name instead of the Static Entity's Identifier
  • 25.
    17 o 3.2 Variablesin OutSystems Video Link  Variables are locations in memory that can hold data • Hold data of a particular data type • Can be any data type • Variables are defined and exist in a particular scope o This means that the value for that variable can be accessed and modified inside of that scope o If execution leaves that scope, the variable is destroyed. • Variables can be o Input Parameters Video Link  Passes a value from outside the scope into its parent scope  Input Parameter can be set to Mandatory  The variable is destroyed when execution leaves the scope of the parent element (e.g., server action) o Output Parameters Video Link  Returns a value from inside its parent's scope to the outside scope  A value must be assigned to the Output Parameter inside its scope  The variable continues to exist in the outside scope even after its parent element's scope is gone. o Local Variables Video Link  Exists exclusively within the scope of the element where it lives  Can be assigned and used "locally" inside that scope  The variable is destroyed when execution leaves the scope of where it was created (the parent element)  Variable Data Types • OutSystems language is strongly typed o Every variable must declare its data type o That data type cannot change • OutSystems supports o Basic Types o Compound Types  Entities  Static Entities  Structures Video Link • Structures are custom compound data types • Structures are used to store compound data in memory • The Structure is the definition of the data type o The Structure itself does not really hold any values but at some point we may create a variable and that variable would have the data type of this particular structure.  So the structures themselves are not variables. o The structures are the definition of the structure of the type and then the structure's data type is the collection of all of the simple and compound data
  • 26.
    18 types that havebeen grouped together inside of the structure. • Structures are defined by attributes of any data type o Including other Structures, Entities, Lists or Basic data types • Structures are highly flexible and allow developers to create highly customize compound data types in OutSystems o Structures are not really variables • Creating Structures o Add Structure and set its Properties  Set its Name  Can be made Public o Add Structure Attributes  Set their Names and Data Types  Attributes can be set to mandatory  Can have a default value o Lists  A collection of elements of the same data type (e.g. List of Integers)  Elements of OutSystems Lists can be • Basic types • Compound types (Entities or Structures) • A union record between different types o example: Integer + Text o example: Booking + GuestName  Type of List can be defined in the Data Type Editor
  • 27.
    19 Section 4. BasicScreen Development o 4.1 Basic Screen Development Video Link  Web Screens are the application's User Interface • OutSystems lets the developer choose between Empty screens or screen Templates  Screens are defined in OutSystems in the hierarchy of the various elements that make up the screen via the Widget Tree (available in Service Studio by clicking the < > button) • As developers we can look at the content that comprises a screen by looking at the Widget Tree  Screen Variables - what is displayed to the end user depends on their request • Screens can have Input Variables o Parameters that are passed in with the request for a Screen o Mandatory input variables must have values assigned to them • Screen can also have Local Variables o Initialized within the scope of the screen itself  These variables exist within the scope of the screen itself  The Scope of the Screen is its complete lifecycle  The Preparation – Fetching Data Video Link • Screens may need to display data from sources external to it (e.g., databases) o For this purpose, the Preparation is the special Screen Action which has access to the Screen Inputs and Local Variables and can call out to access other data sources external to the screen.  Data needed to render the screen should be fetched in the Preparation • Data can be fetched from Databases o Aggregates o SQL • Data can be fetched from Integrations o Web Services o REST o etc. • Through the Preparation, the fetched data becomes a variable for use within the Screen  Screen Lifecycle Video Link • When accessing a Screen, it all starts with a request from the browser o Mandatory Input Parameters are set to the value sent in the Request o Empty Non-mandatory Input Parameters and Local Variables are set to default values o The Preparation then runs o A Screen is built (rendered) from top to bottom o The Response is sent to the browser  The requested Screen is viewable when it is displayed in the user's browser
  • 28.
    20 o 4.2 BasicData Queries – Aggregates Video Link  Aggregates Overview • Most web applications need to fetch data from the database • Aggregates allow developers to define database queries in a visual way and is done through the Aggregate Editor o Add data Sources o Create data Filters o and then define data Sorting o Then we can conduct some Testing on our query • Aggregates are easy to create and maintain o Excel - like display of the data o SQL knowledge is not required  Creating an Aggregate (2-Ways) Video Link 1. Drag and Drop an Aggregate tool from the Toolbox onto an Action flow • then double click to Edit the Aggregate to define the query or: 2. Go to the Data tab, then Drag and Drop an Entity directly onto an Action Flow (accelerator) where OutSystems turns the Entity into an Aggregate for us • then double click to edit the Aggregate to define the query  Aggregate Sources Video Link • Aggregates support one or more source Entities • The sources determine the type of the Aggregate's Output List o (e.g., Customer List) • The List's columns display the List's Attributes  Aggregate Filters Video Link • Adds one or more conditions to the query to filter the output records o Support for multiple filters o Supports logical operators ( =, < >, and, or, ...) o Support for some built-in functions  CurrDateTime()  If(Condition, True, False) • Using a Filter in the Aggregate is equivalent to using a WHERE clause in a SQL statement  Aggregate Sorting Video Link • Defines the Entity's attribute to sort by and in which direction o Ascending o Descending • Developers can define multiple sorts o When defining multiple sorts the Order is relevant to the result • Using a Sort in the Aggregate is equivalent to using a ORDER BY clause in a SQL statement  Aggregate Test Values Video Link • The Aggregate tool allows for the specifying of values for external variables used in the Filter or Sort conditions o The tool provides test value input fields for each external variables used in the Aggregate  This is used to test the Aggregate and preview the output records
  • 29.
    21 • As theseare just test values, there is no influence on the actual output.  Aggregates Output Video Link • The List of records is created with several standard properties o Length - the number of elements returned  This can be limited in the Aggregate's Properties by specifying a Max Records property (which will not impact the Count) – which is the total number of records that meet the specified criteria of the query o Empty - True if no records are returned o EOF - End of file o BOF - Beginning of file o CurrentRowNumber - filled by iterating though the list o Current - Aggregate Get<Entity> contains a "List.Current"  The type matches the definition in the query  The "Current" cursor moves through the List when iterating through it • "List.Current" points at the first row returned by the query by default, then it moves through the list o Count - the total number of records that match the criteria defined in the Aggregate • Once an Aggregate is run, it becomes a variable that represents the result set  Aggregate Properties Video Link • It is possible to limit the Aggregate's output to a maximum number of records to return in the query o To do this, use the Max Records property  This would set the Length property  Does not impact the Count output • The Aggregate Editor is SQL-dialect agnostic o SQL is generated specific to the DBMS used by the application o The Executed SQL property shows the SQL statement generated from the Aggregate o SQL SELECT statements are optimized by the platform according to the output usage  It will only retrieve the information or attributes from the database that is actually used inside the screen
  • 30.
    Exploring the Varietyof Random Documents with Different Content
  • 31.
    The Thinking ofthe Body 106 Religious Belief Necessary to Religious Art 109 The Holy Places 113 Poetry and Tradition 116 Preface to the First Edition of John M. Synge’s Poems and Translations 139 J. M. Synge and the Ireland of his Time 146 The Tragic Theatre 196 John Shawe-Taylor 208 Edmund Spenser 213 THE TREMBLING OF THE VEIL
  • 32.
    By W. B.YEATS
  • 33.
    CONTENTS PAGE Book I Four Years1887-1891 3 Book II Ireland after the Fall of Parnell 83 Book III Hodos Camelionis 135 Book IV The Tragic Generation 157 Book V The Stirring of the Bones 225 RESPONSIBILITIES AND OTHER POEMS
  • 34.
  • 35.
    CONTENTS PAGE Responsibilities, 1912-1914— Introductory Rhymes1 The Grey Rock 3 The Two Kings 11 To a Wealthy Man 29 September 1913 32 To a Friend whose Work has come to Nothing 34 Paudeen 35 To a Shade 36 When Helen Lived 39 The Attack on 'The Playboy of the Western World,'—1907 40 The Three Beggars 41 The Three Hermits 45 Beggar to Beggar cried 47 The Well and the Tree 49 Running to Paradise 50 The Hour before Dawn 52 The Player Queen 59 The Realists 61 The Witch 62 The Peacock 63 The Mountain Tomb 64 To a Child dancing in the Wind 66 A Memory of Youth 68
  • 36.
    Fallen Majesty 70 Friends71 The Cold Heaven 73 That the Night come 75 An Appointment 76 The Magi 77 The Dolls 78 A Coat 80 Closing Rhymes 81 From the Green Helmet and other Poems, 1909- 1912— His Dream 85 A Woman Homer sung 87 The Consolation 89 No Second Troy 91 Reconciliation 92 King and No King 94 Peace 96 Against Unworthy Praise 97 The Fascination of What's Difficult 99 A Drinking Song 101 The Coming of Wisdom with Time 102 On hearing that the Students of our New University have joined the Ancient Order of Hibernians 103 To a Poet 104 The Mask 105 Upon a House shaken by the Land Agitation 106 At the Abbey Theatre 108 These are the Clouds 110 At Galway Races 112
  • 37.
    A Friend's Illness113 All Things can tempt me 114 The Young Man's Song 115 The Hour-Glass—1912 117 Notes 181 WHERE THERE IS NOTHING Being Volume One Of Plays For An Irish Theatre
  • 38.
    By W. B.Yeats CONTENTS DEDICATION OF VOLUMES ONE AND TWO OF PLAYS FOR AN IRISH THEATRE WHERE THERE IS NOTHING. ACT I. ACT II. ACT III. ACT IV. ACT V. POEMS
  • 39.
    By W. B.YEATS CONTENTS PAGE The Countess Cathleen 1 The Rose— To the Rose upon the Rood of Time 109 Fergus and the Druid 111 The Death of Cuchulain 114 The Rose of the World 119 The Rose of Peace 120 The Rose of Battle 121 A Faery Song 123 The Lake Isle of Innisfree 124 A Cradle Song 125 The Pity of Love 126 The Sorrow of Love 127 When You are Old 128 The White Birds 129 A Dream of Death 131 A Dream of a Blessed Spirit 132 Who goes with Fergus 133 The Man who Dreamed of Faeryland 134 The Dedication to a Book of Stories selected from the Irish Novelists 137 The Lamentation of the Old Pensioner 139 The Ballad of Father Gilligan 140
  • 40.
    The Two Trees143 To Ireland in the Coming Times 145 The Land of Heart's Desire 149 Crossways— The Song of the Happy Shepherd 197 The Sad Shepherd 200 The Cloak, The Boat, and the Shoes 202 Anashuya and Vijaya 203 The Indian upon God 209 The Indian to his Love 211 The Falling of the Leaves 213 Ephemera 214 The Madness of King Goll 216 The Stolen Child 220 To an Isle in the Water 223 Down by the Salley Gardens 224 The Meditation of the Old Fisherman 225 The Ballad of Father O'Hart 226 The Ballad of Moll Magee 229 The Ballad of the Foxhunter 232 The Wanderings of Usheen 235 Glossary and Notes 299
  • 41.
    THE KING'S THRESHOLD; andON BAILE'S STRAND Being Volume Three Of Plays For An Irish Theatre
  • 42.
    By W. B.Yeats CONTENTS The King's Threshold On Baile's Strand JOHN SHERMAN AND DHOYA
  • 43.
    By William ButlerYeats CONTENTS GANCONAGH'S APOLOGY. 1 PART I. JOHN SHERMAN LEAVES BALLAH. 3 I 5 II 17 III 27 IV 39 PART II. MARGARET LELAND. 43 I 45 II 51 III 55 IV 60 V 67 VI 70 VII 72 VIII 75 IX 77 PART III. JOHN SHERMAN REVISITS BALLAH. 83 I 85 II 88 III 91 PART IV. THE REV. WILLIAM HOWARD. 101 I 103 II 111 III 114
  • 44.
    IV 125 V 134 VI138 PART V. JOHN SHERMAN RETURNS TO BALLAH. 143 I 145 II 149 III 154 IV 165 DHOYA. 171 I 173 II 182 III 190
  • 45.
    *** END OFTHE PROJECT GUTENBERG EBOOK INDEX OF THE PROJECT GUTENBERG WORKS OF WILLIAM BUTLER YEATS *** Updated editions will replace the previous one—the old editions will be renamed. Creating the works from print editions not protected by U.S. copyright law means that no one owns a United States copyright in these works, so the Foundation (and you!) can copy and distribute it in the United States without permission and without paying copyright royalties. Special rules, set forth in the General Terms of Use part of this license, apply to copying and distributing Project Gutenberg™ electronic works to protect the PROJECT GUTENBERG™ concept and trademark. Project Gutenberg is a registered trademark, and may not be used if you charge for an eBook, except by following the terms of the trademark license, including paying royalties for use of the Project Gutenberg trademark. If you do not charge anything for copies of this eBook, complying with the trademark license is very easy. You may use this eBook for nearly any purpose such as creation of derivative works, reports, performances and research. Project Gutenberg eBooks may be modified and printed and given away—you may do practically ANYTHING in the United States with eBooks not protected by U.S. copyright law. Redistribution is subject to the trademark license, especially commercial redistribution. START: FULL LICENSE
  • 46.
    THE FULL PROJECTGUTENBERG LICENSE
  • 47.
    PLEASE READ THISBEFORE YOU DISTRIBUTE OR USE THIS WORK To protect the Project Gutenberg™ mission of promoting the free distribution of electronic works, by using or distributing this work (or any other work associated in any way with the phrase “Project Gutenberg”), you agree to comply with all the terms of the Full Project Gutenberg™ License available with this file or online at www.gutenberg.org/license. Section 1. General Terms of Use and Redistributing Project Gutenberg™ electronic works 1.A. By reading or using any part of this Project Gutenberg™ electronic work, you indicate that you have read, understand, agree to and accept all the terms of this license and intellectual property (trademark/copyright) agreement. If you do not agree to abide by all the terms of this agreement, you must cease using and return or destroy all copies of Project Gutenberg™ electronic works in your possession. If you paid a fee for obtaining a copy of or access to a Project Gutenberg™ electronic work and you do not agree to be bound by the terms of this agreement, you may obtain a refund from the person or entity to whom you paid the fee as set forth in paragraph 1.E.8. 1.B. “Project Gutenberg” is a registered trademark. It may only be used on or associated in any way with an electronic work by people who agree to be bound by the terms of this agreement. There are a few things that you can do with most Project Gutenberg™ electronic works even without complying with the full terms of this agreement. See paragraph 1.C below. There are a lot of things you can do with Project Gutenberg™ electronic works if you follow the terms of this agreement and help preserve free future access to Project Gutenberg™ electronic works. See paragraph 1.E below.
  • 48.
    1.C. The ProjectGutenberg Literary Archive Foundation (“the Foundation” or PGLAF), owns a compilation copyright in the collection of Project Gutenberg™ electronic works. Nearly all the individual works in the collection are in the public domain in the United States. If an individual work is unprotected by copyright law in the United States and you are located in the United States, we do not claim a right to prevent you from copying, distributing, performing, displaying or creating derivative works based on the work as long as all references to Project Gutenberg are removed. Of course, we hope that you will support the Project Gutenberg™ mission of promoting free access to electronic works by freely sharing Project Gutenberg™ works in compliance with the terms of this agreement for keeping the Project Gutenberg™ name associated with the work. You can easily comply with the terms of this agreement by keeping this work in the same format with its attached full Project Gutenberg™ License when you share it without charge with others. 1.D. The copyright laws of the place where you are located also govern what you can do with this work. Copyright laws in most countries are in a constant state of change. If you are outside the United States, check the laws of your country in addition to the terms of this agreement before downloading, copying, displaying, performing, distributing or creating derivative works based on this work or any other Project Gutenberg™ work. The Foundation makes no representations concerning the copyright status of any work in any country other than the United States. 1.E. Unless you have removed all references to Project Gutenberg: 1.E.1. The following sentence, with active links to, or other immediate access to, the full Project Gutenberg™ License must appear prominently whenever any copy of a Project Gutenberg™ work (any work on which the phrase “Project Gutenberg” appears, or with which the phrase “Project Gutenberg” is associated) is accessed, displayed, performed, viewed, copied or distributed:
  • 49.
    This eBook isfor the use of anyone anywhere in the United States and most other parts of the world at no cost and with almost no restrictions whatsoever. You may copy it, give it away or re-use it under the terms of the Project Gutenberg License included with this eBook or online at www.gutenberg.org. If you are not located in the United States, you will have to check the laws of the country where you are located before using this eBook. 1.E.2. If an individual Project Gutenberg™ electronic work is derived from texts not protected by U.S. copyright law (does not contain a notice indicating that it is posted with permission of the copyright holder), the work can be copied and distributed to anyone in the United States without paying any fees or charges. If you are redistributing or providing access to a work with the phrase “Project Gutenberg” associated with or appearing on the work, you must comply either with the requirements of paragraphs 1.E.1 through 1.E.7 or obtain permission for the use of the work and the Project Gutenberg™ trademark as set forth in paragraphs 1.E.8 or 1.E.9. 1.E.3. If an individual Project Gutenberg™ electronic work is posted with the permission of the copyright holder, your use and distribution must comply with both paragraphs 1.E.1 through 1.E.7 and any additional terms imposed by the copyright holder. Additional terms will be linked to the Project Gutenberg™ License for all works posted with the permission of the copyright holder found at the beginning of this work. 1.E.4. Do not unlink or detach or remove the full Project Gutenberg™ License terms from this work, or any files containing a part of this work or any other work associated with Project Gutenberg™. 1.E.5. Do not copy, display, perform, distribute or redistribute this electronic work, or any part of this electronic work, without
  • 50.
    prominently displaying thesentence set forth in paragraph 1.E.1 with active links or immediate access to the full terms of the Project Gutenberg™ License. 1.E.6. You may convert to and distribute this work in any binary, compressed, marked up, nonproprietary or proprietary form, including any word processing or hypertext form. However, if you provide access to or distribute copies of a Project Gutenberg™ work in a format other than “Plain Vanilla ASCII” or other format used in the official version posted on the official Project Gutenberg™ website (www.gutenberg.org), you must, at no additional cost, fee or expense to the user, provide a copy, a means of exporting a copy, or a means of obtaining a copy upon request, of the work in its original “Plain Vanilla ASCII” or other form. Any alternate format must include the full Project Gutenberg™ License as specified in paragraph 1.E.1. 1.E.7. Do not charge a fee for access to, viewing, displaying, performing, copying or distributing any Project Gutenberg™ works unless you comply with paragraph 1.E.8 or 1.E.9. 1.E.8. You may charge a reasonable fee for copies of or providing access to or distributing Project Gutenberg™ electronic works provided that: • You pay a royalty fee of 20% of the gross profits you derive from the use of Project Gutenberg™ works calculated using the method you already use to calculate your applicable taxes. The fee is owed to the owner of the Project Gutenberg™ trademark, but he has agreed to donate royalties under this paragraph to the Project Gutenberg Literary Archive Foundation. Royalty payments must be paid within 60 days following each date on which you prepare (or are legally required to prepare) your periodic tax returns. Royalty payments should be clearly marked as such and sent to the Project Gutenberg Literary Archive Foundation at the address specified in Section 4, “Information
  • 51.
    about donations tothe Project Gutenberg Literary Archive Foundation.” • You provide a full refund of any money paid by a user who notifies you in writing (or by e-mail) within 30 days of receipt that s/he does not agree to the terms of the full Project Gutenberg™ License. You must require such a user to return or destroy all copies of the works possessed in a physical medium and discontinue all use of and all access to other copies of Project Gutenberg™ works. • You provide, in accordance with paragraph 1.F.3, a full refund of any money paid for a work or a replacement copy, if a defect in the electronic work is discovered and reported to you within 90 days of receipt of the work. • You comply with all other terms of this agreement for free distribution of Project Gutenberg™ works. 1.E.9. If you wish to charge a fee or distribute a Project Gutenberg™ electronic work or group of works on different terms than are set forth in this agreement, you must obtain permission in writing from the Project Gutenberg Literary Archive Foundation, the manager of the Project Gutenberg™ trademark. Contact the Foundation as set forth in Section 3 below. 1.F. 1.F.1. Project Gutenberg volunteers and employees expend considerable effort to identify, do copyright research on, transcribe and proofread works not protected by U.S. copyright law in creating the Project Gutenberg™ collection. Despite these efforts, Project Gutenberg™ electronic works, and the medium on which they may be stored, may contain “Defects,” such as, but not limited to, incomplete, inaccurate or corrupt data, transcription errors, a copyright or other intellectual property infringement, a defective or
  • 52.
    damaged disk orother medium, a computer virus, or computer codes that damage or cannot be read by your equipment. 1.F.2. LIMITED WARRANTY, DISCLAIMER OF DAMAGES - Except for the “Right of Replacement or Refund” described in paragraph 1.F.3, the Project Gutenberg Literary Archive Foundation, the owner of the Project Gutenberg™ trademark, and any other party distributing a Project Gutenberg™ electronic work under this agreement, disclaim all liability to you for damages, costs and expenses, including legal fees. YOU AGREE THAT YOU HAVE NO REMEDIES FOR NEGLIGENCE, STRICT LIABILITY, BREACH OF WARRANTY OR BREACH OF CONTRACT EXCEPT THOSE PROVIDED IN PARAGRAPH 1.F.3. YOU AGREE THAT THE FOUNDATION, THE TRADEMARK OWNER, AND ANY DISTRIBUTOR UNDER THIS AGREEMENT WILL NOT BE LIABLE TO YOU FOR ACTUAL, DIRECT, INDIRECT, CONSEQUENTIAL, PUNITIVE OR INCIDENTAL DAMAGES EVEN IF YOU GIVE NOTICE OF THE POSSIBILITY OF SUCH DAMAGE. 1.F.3. LIMITED RIGHT OF REPLACEMENT OR REFUND - If you discover a defect in this electronic work within 90 days of receiving it, you can receive a refund of the money (if any) you paid for it by sending a written explanation to the person you received the work from. If you received the work on a physical medium, you must return the medium with your written explanation. The person or entity that provided you with the defective work may elect to provide a replacement copy in lieu of a refund. If you received the work electronically, the person or entity providing it to you may choose to give you a second opportunity to receive the work electronically in lieu of a refund. If the second copy is also defective, you may demand a refund in writing without further opportunities to fix the problem. 1.F.4. Except for the limited right of replacement or refund set forth in paragraph 1.F.3, this work is provided to you ‘AS-IS’, WITH NO OTHER WARRANTIES OF ANY KIND, EXPRESS OR IMPLIED,
  • 53.
    INCLUDING BUT NOTLIMITED TO WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PURPOSE. 1.F.5. Some states do not allow disclaimers of certain implied warranties or the exclusion or limitation of certain types of damages. If any disclaimer or limitation set forth in this agreement violates the law of the state applicable to this agreement, the agreement shall be interpreted to make the maximum disclaimer or limitation permitted by the applicable state law. The invalidity or unenforceability of any provision of this agreement shall not void the remaining provisions. 1.F.6. INDEMNITY - You agree to indemnify and hold the Foundation, the trademark owner, any agent or employee of the Foundation, anyone providing copies of Project Gutenberg™ electronic works in accordance with this agreement, and any volunteers associated with the production, promotion and distribution of Project Gutenberg™ electronic works, harmless from all liability, costs and expenses, including legal fees, that arise directly or indirectly from any of the following which you do or cause to occur: (a) distribution of this or any Project Gutenberg™ work, (b) alteration, modification, or additions or deletions to any Project Gutenberg™ work, and (c) any Defect you cause. Section 2. Information about the Mission of Project Gutenberg™ Project Gutenberg™ is synonymous with the free distribution of electronic works in formats readable by the widest variety of computers including obsolete, old, middle-aged and new computers. It exists because of the efforts of hundreds of volunteers and donations from people in all walks of life. Volunteers and financial support to provide volunteers with the assistance they need are critical to reaching Project Gutenberg™’s goals and ensuring that the Project Gutenberg™ collection will
  • 54.
    remain freely availablefor generations to come. In 2001, the Project Gutenberg Literary Archive Foundation was created to provide a secure and permanent future for Project Gutenberg™ and future generations. To learn more about the Project Gutenberg Literary Archive Foundation and how your efforts and donations can help, see Sections 3 and 4 and the Foundation information page at www.gutenberg.org. Section 3. Information about the Project Gutenberg Literary Archive Foundation The Project Gutenberg Literary Archive Foundation is a non-profit 501(c)(3) educational corporation organized under the laws of the state of Mississippi and granted tax exempt status by the Internal Revenue Service. The Foundation’s EIN or federal tax identification number is 64-6221541. Contributions to the Project Gutenberg Literary Archive Foundation are tax deductible to the full extent permitted by U.S. federal laws and your state’s laws. The Foundation’s business office is located at 809 North 1500 West, Salt Lake City, UT 84116, (801) 596-1887. Email contact links and up to date contact information can be found at the Foundation’s website and official page at www.gutenberg.org/contact Section 4. Information about Donations to the Project Gutenberg Literary Archive Foundation Project Gutenberg™ depends upon and cannot survive without widespread public support and donations to carry out its mission of increasing the number of public domain and licensed works that can be freely distributed in machine-readable form accessible by the widest array of equipment including outdated equipment. Many
  • 55.
    small donations ($1to $5,000) are particularly important to maintaining tax exempt status with the IRS. The Foundation is committed to complying with the laws regulating charities and charitable donations in all 50 states of the United States. Compliance requirements are not uniform and it takes a considerable effort, much paperwork and many fees to meet and keep up with these requirements. We do not solicit donations in locations where we have not received written confirmation of compliance. To SEND DONATIONS or determine the status of compliance for any particular state visit www.gutenberg.org/donate. While we cannot and do not solicit contributions from states where we have not met the solicitation requirements, we know of no prohibition against accepting unsolicited donations from donors in such states who approach us with offers to donate. International donations are gratefully accepted, but we cannot make any statements concerning tax treatment of donations received from outside the United States. U.S. laws alone swamp our small staff. Please check the Project Gutenberg web pages for current donation methods and addresses. Donations are accepted in a number of other ways including checks, online payments and credit card donations. To donate, please visit: www.gutenberg.org/donate. Section 5. General Information About Project Gutenberg™ electronic works Professor Michael S. Hart was the originator of the Project Gutenberg™ concept of a library of electronic works that could be freely shared with anyone. For forty years, he produced and distributed Project Gutenberg™ eBooks with only a loose network of volunteer support.
  • 56.
    Project Gutenberg™ eBooksare often created from several printed editions, all of which are confirmed as not protected by copyright in the U.S. unless a copyright notice is included. Thus, we do not necessarily keep eBooks in compliance with any particular paper edition. Most people start at our website which has the main PG search facility: www.gutenberg.org. This website includes information about Project Gutenberg™, including how to make donations to the Project Gutenberg Literary Archive Foundation, how to help produce our new eBooks, and how to subscribe to our email newsletter to hear about new eBooks.
  • 57.
  • 58.
    Welcome to ourwebsite – the ideal destination for book lovers and knowledge seekers. With a mission to inspire endlessly, we offer a vast collection of books, ranging from classic literary works to specialized publications, self-development books, and children's literature. Each book is a new journey of discovery, expanding knowledge and enriching the soul of the reade Our website is not just a platform for buying books, but a bridge connecting readers to the timeless values of culture and wisdom. With an elegant, user-friendly interface and an intelligent search system, we are committed to providing a quick and convenient shopping experience. Additionally, our special promotions and home delivery services ensure that you save time and fully enjoy the joy of reading. Let us accompany you on the journey of exploring knowledge and personal growth! textbookfull.com