Advanced Developer Boot Camp 1
o
o
o
o
Advanced Developer Boot Camp 2
Advanced Developer Boot Camp 3
Advanced Developer Boot Camp 4
Architecture
Integration
DevelopmentUser Experience
Life-cycle
Developer Adv. Developer
Advanced Developer Boot Camp 5
Advanced Developer Boot Camp 6
Advanced Developer Boot Camp 7
Advanced Developer Boot Camp 8
o
o
Advanced Developer Boot Camp 9
Advanced Developer Boot Camp 10
o
o
Advanced Developer Boot Camp 11
Advanced Developer Boot Camp 12
Advanced Developer Boot Camp 13
Advanced Developer Boot Camp 14
Advanced Developer Boot Camp 15
Advanced Developer Boot Camp 16
Advanced Developer Boot Camp 17
Advanced Developer Boot Camp 18
o
o
o
Advanced Developer Boot Camp 19
Advanced Developer Boot Camp 20
o
o
✔
✖
Advanced Developer Boot Camp 21
Advanced Developer Boot Camp 22
o
o
Advanced Developer Boot Camp 23
Advanced Developer Boot Camp 24
o
o
Advanced Developer Boot Camp 25
Advanced Developer Boot Camp 26
o
o
o
Advanced Developer Boot Camp 27
Advanced Developer Boot Camp 28
Advanced Developer Boot Camp 29
SELECT column_names
FROM table_joins
WHERE conditions
SELECT column_names
FROM table_joins
WHERE ROWNUM <= @maxrows AND conditionsChange to
SELECT column_names
FROM table_joins
WHERE conditions
SELECT TOP @maxrows column_names
FROM table_joins
WHERE conditionsChange to
SELECT column_names
FROM table_joins
WHERE conditions
SELECT column_names
FROM table_joins
WHERE conditions
LIMIT maxrows
Change to
Advanced Developer Boot Camp 30
Advanced Developer Boot Camp 31
SELECT column_names
FROM table_joins
WHERE conditions
ORDER BY order_by_list
SELECT Count(1)
FROM Simplified_table_joins
WHERE conditionsAdapt to
Advanced Developer Boot Camp 32
.
.
.
Advanced Developer Boot Camp 33
Advanced Developer Boot Camp 34
Advanced Developer Boot Camp 35
Advanced Developer Boot Camp 36
Advanced Developer Boot Camp 37
Advanced Developer Boot Camp 38
Advanced Developer Boot Camp 39
Advanced Developer Boot Camp 40
Advanced Developer Boot Camp 41
Advanced Developer Boot Camp 42
Advanced Developer Boot Camp 43
Same conditions evaluated per column, and according to the
result a query is made individually per cell
Solution #1:
Make the decision in the preparation to perform a different specialized query, joining
with the required tables and returning the same Output structure.
Solution #2:
Implement 2 or more specialized screens and make the decision to call the correct
screen, in situations where the conditional content outweighs common content
Advanced Developer Boot Camp 44
Advanced Developer Boot Camp 45
Advanced Developer Boot Camp 46
In this example, GetInConditionsCounters computes two IN conditions that
are injected in query GetCounters to avoid complex sub-queries inside
GetCounters
Although more complex to code, in terms of efficiency it is better to implement
the sub-queries and let the DB Engine optimize the entire query
Advanced Developer Boot Camp 47
Advanced Developer Boot Camp 48
o
o
Advanced Developer Boot Camp 49
Advanced Developer Boot Camp 50
Advanced Developer Boot Camp 51
Advanced Developer Boot Camp 52
Advanced Developer Boot Camp 53
o
Advanced Developer Boot Camp 54
Advanced Developer Boot Camp 55
Advanced Developer Boot Camp 56
Advanced Developer Boot Camp 57
Advanced Developer Boot Camp 58
Advanced Developer Boot Camp 59
Advanced Developer Boot Camp 60
Screen preparation is faster because data preparation is made in each webblock.
Use caching mechanisms when repeating the same action/query on different webblocks
Advanced Developer Boot Camp 61
Advanced Developer Boot Camp 62
Compression
rate of 83%
Potential
savings of
100KB per
screen
Advanced Developer Boot Camp 63
o
Advanced Developer Boot Camp 64
o
Advanced Developer Boot Camp 65
o
o
Advanced Developer Boot Camp 66
Advanced Developer Boot Camp 67
Advanced Developer Boot Camp 68
•
•
•
•
•
Advanced Developer Boot Camp 69
•
•
•
•
•
•
•
•
•
Advanced Developer Boot Camp 70
Example - Top slow screens
Screens
to check
Advanced Developer Boot Camp 71
•
•
•
•
•
•
•
Advanced Developer Boot Camp 72
•
•
Advanced Developer Boot Camp 73
Advanced Developer Boot Camp 74
Advanced Developer Boot Camp 75
•
•
•
Advanced Developer Boot Camp 76
Advanced Developer Boot Camp 77
•
•
•
•
Advanced Developer Boot Camp 78
o
Advanced Developer Boot Camp 79
Advanced Developer Boot Camp 80
Advanced Developer Boot Camp 81
Advanced Developer Boot Camp 82
Advanced Developer Boot Camp 83
o
Advanced Developer Boot Camp 84
Advanced Developer Boot Camp 85
o
o
Advanced Developer Boot Camp 86
o
o
o
o
Advanced Developer Boot Camp 87
o
o
o
o
o
Advanced Developer Boot Camp 88
Advanced Developer Boot Camp 89
o
o
o