Learn How To Create Master Detail Pages in Oracle APEX - Part 10

Tech Mining
25 Oct 202209:53

Summary

TLDRThis Tech mining video tutorial guides viewers on creating a system for customer order management, featuring interactive reports and professional order forms. It demonstrates setting up a master-detail relationship between 'demo orders' and 'demo order items' tables, with functionalities to view, add, modify, and delete orders and line items. The video also covers navigation preferences, server-side conditions, and the use of triggers and sequences for automatic data population, aiming to enhance user experience and streamline the order processing workflow.

Takeaways

  • πŸ“ The video introduces a setup for taking customer orders and creating professional order forms.
  • πŸ”— The initial page is an interactive report listing all orders, with the order number serving as a link to detailed pages.
  • πŸ” Clicking an order number navigates to a page displaying details of the selected order, with data retrieved from a master table and order details in an interactive grid.
  • ⏭️ Auto-generated buttons on the order details page allow for easy navigation between customer orders.
  • πŸ›’ Orders are taken through a sequence of wizard steps, starting with selecting or creating a customer, then selecting products, and finally reviewing a summary of the order.
  • πŸ–₯️ The setup is based on two database tables: 'demo orders' and 'demo order items'.
  • πŸ”‘ The primary key column for orders is automatically populated using a trigger and sequence, facilitating record navigation.
  • πŸ“Š The detail page reflects a one-to-many relationship between the two tables and includes an interactive grid for line item management.
  • πŸ›‚ The wizard automatically creates pages and processes, including a master-detail page and DML operations for order management.
  • πŸ”„ The interactive grid supports adding, modifying, and deleting line items, with processes to handle these DML operations.
  • πŸ”„ The server processes requests, performs validations, and evaluates navigation branches to determine the landing page after a page submission.
  • πŸ›‚ The order details page includes navigational buttons for browsing orders and controls like a date picker for the order timestamp field.

Q & A

  • What is the main purpose of the video 'Tech mining'?

    -The video 'Tech mining' is designed to teach viewers how to create a setup for taking orders from customers and generating professional-looking order forms.

  • How does the initial page of the setup function in the video?

    -The initial page is an interactive report that lists all orders. Clicking on an order number takes the user to another page showing the details of the selected order.

  • What is the role of the upper and lower pane on the order details page?

    -The upper pane retrieves data from the master table, while the lower pane displays order details in an interactive grid.

  • What are the auto-generated buttons for on the order details page?

    -The auto-generated buttons are for record navigation, allowing users to move from one customer order to another.

  • How are customer orders taken in the described setup?

    -Customer orders are taken through a sequence of wizard steps, starting with selecting an existing customer or creating a new one, followed by selecting ordered products, and ending with a summary of the placed order.

  • How can an order be viewed, modified, or deleted after it is created?

    -Once an order is created, it can be viewed, modified, or deleted through the order details page using the order number link column in the orders main page.

  • What is the relationship between the two tables 'demo orders' and 'demo order items'?

    -The 'demo orders' table and 'demo order items' table have a one-to-many relationship, where the 'demo orders' table is the master table and 'demo order items' is the relational child table carrying line item information for each order.

  • How is the primary key column populated in the 'demo orders' table?

    -The primary key column in the 'demo orders' table is populated automatically using a trigger named 'demo orders' and a sequence named 'demo order sequence'.

  • What is the purpose of the 'demo order items' trigger?

    -The 'demo order items' trigger is used to populate the primary key column of the 'demo order items' table, getting the next primary key values from a sequence named 'demo order item sequence'.

  • What are the navigation preferences set in the setup?

    -The navigation preferences are set to map to an existing entry and set the existing navigation menu entry to 'orders'.

  • How does the interactive grid region on the details page function?

    -The interactive grid region allows users to view, add, modify, and delete line items. It is associated with a process that handles DML operations on the 'demo order items' table.

  • What happens when the 'Next' or 'Previous' buttons are clicked on the order details page?

    -When the 'Next' or 'Previous' buttons are clicked, the page is submitted to get the next or previous order record from the server, and the visibility of these buttons is controlled by a server-side condition.

  • What is the purpose of the 'Save', 'Create', and 'Delete' buttons on the order details page?

    -The 'Save' button is used to record updates to an existing order, the 'Create' button is for new orders to handle the insert operation, and the 'Delete' button removes a complete order, with a confirmation dialog appearing when clicked.

  • How does the Oracle Apex server handle page submissions?

    -When a page is submitted, the Oracle Apex server receives a submit request, performs the associated processes and validations, and then evaluates where to land in the application via branches.

  • What is the significance of the 'Behavior' and 'Server-side condition' properties in the branches?

    -The 'Behavior' property specifies the action to take when a branch is followed, such as redirecting to a different page, while the 'Server-side condition' determines whether a branch is followed based on certain conditions.

  • How can a user add more products to the order details section?

    -A user can add more products to the order details section by clicking the 'Add Row' button in the interactive grid region.

  • What is the issue with the current setup from a professional viewpoint?

    -From a professional viewpoint, the current setup is not user-friendly because adding a new product requires manual entry of its ID, and the interactive grid is not visible when creating a new order.

Outlines

00:00

πŸ“Š Interactive Order Management System Overview

This paragraph introduces a video tutorial on setting up an interactive order management system using Tech mining. It explains the initial setup, which includes an interactive report listing all orders with clickable order numbers that link to detailed order pages. The system allows for viewing, modifying, and deleting orders through a sequence of wizard steps for order creation, including selecting customers, choosing products, and reviewing order summaries. The video also mentions the creation of two main pages and the use of database tables 'demo orders' and 'demo order items' to manage the order data.

05:02

πŸ” Deep Dive into Order Details and Wizard Steps

The second paragraph delves deeper into the order details page, which fetches master row data from the 'demo orders' table and includes a static content region for master information and navigational buttons for record navigation. It discusses the server-side conditions controlling the visibility of navigation buttons and the functionality of the 'cancel', 'delete', 'save', and 'create' buttons. The paragraph also describes the interactive grid region for managing line items and the automatic row processing DML type processes generated by the wizard for handling DML operations. The video script outlines the server's role in processing page submissions, evaluating application navigation, and the use of branches to determine the landing page after processing.

Mindmap

Keywords

πŸ’‘Tech mining

Tech mining refers to the process of extracting valuable insights and trends from technological data. In the context of the video, it likely refers to the process of creating a technological setup for managing customer orders. The script mentions 'Tech mining' at the beginning, setting the stage for the tutorial on creating order forms and systems.

πŸ’‘Order forms

Order forms are documents used to record customer orders, capturing details such as product selections, quantities, and customer information. The video's theme revolves around creating professional-looking order forms, which are essential for managing and processing customer orders effectively.

πŸ’‘Interactive report

An interactive report is a dynamic data presentation tool that allows users to interact with the data, such as sorting, filtering, and navigating through records. In the script, the initial page of the setup is described as an interactive report listing all orders, with the order number column acting as a link to further details.

πŸ’‘Master table

In database terminology, a master table is a primary table that contains key data records, often used as a reference by other tables. The script mentions that the upper pane of the order details page retrieves data from the master table, which in this case is 'demo orders', to display order summary information.

πŸ’‘Detail page

A detail page is a part of a software interface that displays detailed information about a specific record or item. The script describes how clicking an order number leads to a detail page showing the selected order's details, which includes data from both the master and detail tables.

πŸ’‘Auto-generated buttons

Auto-generated buttons are user interface elements that are created automatically by the system to perform specific actions, such as navigation or data manipulation. The script mentions these buttons for record navigation, allowing users to move between different customer orders.

πŸ’‘Wizard steps

Wizard steps refer to a guided process in software applications that leads users through a series of screens to complete a task. The script describes a sequence of wizard steps for taking orders from customers, including selecting or creating a customer, selecting ordered products, and reviewing the order summary.

πŸ’‘One-to-many relationship

A one-to-many relationship is a type of database relationship where one record in a master table can be associated with multiple records in a detail table. The script mentions this relationship in the context of the 'stir detail page', which reflects how each order (master record) can have multiple line items (detail records).

πŸ’‘DML operations

DML stands for Data Manipulation Language, which includes SQL statements like INSERT, UPDATE, and DELETE that manipulate data in a database. The script discusses automatic row processing DML type processes generated by the wizard to handle operations performed on the master and detail tables of the order system.

πŸ’‘Navigation menu entry

A navigation menu entry is an item in a software application's menu that allows users to navigate to different sections or functionalities. The script instructs how to run the setup using an existing entry set in the navigation menu, which is labeled 'orders'.

πŸ’‘Branches

In the context of application flow, branches are decision points that determine the next action or page the user will be directed to. The script explains how branches with specific behaviors and server-side conditions are used to control the application flow after performing actions like saving, deleting, or navigating orders.

Highlights

Introduction to creating a setup for taking customer orders and creating professional order forms.

Interactive report as the initial page lists all orders with clickable order numbers to view details.

Details page shows data from master table and order details in an interactive grid.

Auto-generated buttons for record navigation to move between customer orders.

Order taking process through a sequence of wizard steps for customer selection and product ordering.

Summary of placed order displayed in the last wizard step.

Ability to view, modify, or delete orders through the order details page using order number links.

Creating two main pages using a conventional route for order management.

Master-detail page setup reflecting a one-to-many relationship between database tables.

Setting navigation preferences to map to an existing entry for order management.

Automatic population of primary key columns using triggers and sequences.

Detail page properties configuration for relational child tables carrying line item information.

Master-detail page creation with interactive grid for viewing and managing line items.

Wizard-generated processes for handling DML operations on master and detail tables.

Server-side conditions controlling the visibility of navigation buttons.

Redirect action for cancel button to return to the main orders page without saving.

Delete, save, and create buttons for order management with corresponding database operations.

Branches for application navigation after DML operations with server-side conditions.

Run setup from the orders navigation menu entry for interactive order management.

Upper master region and lower interactive grid region on the order details page for comprehensive order viewing.

Navigational buttons for browsing through orders and a date picker for the order timestamp.

Suggestions for improving user-friendliness and avoiding manual data entry issues.

Transcripts

play00:00

a very warm welcome to Tech mining

play00:02

this video will teach you how to create

play00:04

a setup to take orders from customers

play00:07

and how to create professional looking

play00:09

order forms

play00:10

initial page of this setup is an

play00:13

interactive report that lists all orders

play00:16

first order number column acts as a link

play00:19

when you click an order number you see

play00:21

another page of this setup this page

play00:23

will show details of selected order

play00:26

upper pane of this page retrieves data

play00:28

from master table while lower pane shows

play00:31

order details in an interactive grid

play00:34

page also contains a couple of

play00:36

auto-generated buttons for record

play00:37

navigation

play00:39

you can use these buttons to move from

play00:41

one customer order to another

play00:43

orders from customers will be taken

play00:45

through a sequence of wizard steps

play00:48

this first wizard step will allow you to

play00:50

select an existing customer or create a

play00:52

new one

play00:53

in this second wizard step you will

play00:55

select ordered products

play00:58

after placing order this last wizard

play01:00

step will show summary of placed order

play01:03

once an order is created you can view

play01:06

modify or delete it through order

play01:08

Details page using order number link

play01:10

column in orders main page

play01:12

let's create two main Pages using the

play01:15

conventional route

play01:19

[Music]

play01:24

stir detail page reflects a one-to-many

play01:27

relationship between two tables in a

play01:28

database

play01:30

select the drill down option which opens

play01:32

input form in a separate page

play01:35

fill the page attributes on next screen

play01:43

foreign

play01:47

[Music]

play02:04

this setup is based on two database

play02:07

tables demo orders and demo order items

play02:12

[Music]

play02:29

set navigation preference to map to an

play02:31

existing entry set existing navigation

play02:34

menu entry to orders

play02:35

[Music]

play02:40

click next

play02:42

[Music]

play02:47

primary key column is populated

play02:49

automatically behind the scene using a

play02:51

trigger named demo orders via a sequence

play02:53

named demo order sequence

play02:55

order ID column selected is the

play02:58

navigation order column used by previous

play03:00

and next buttons on the order Details

play03:02

page to navigate to a different Master

play03:03

record

play03:08

click next

play03:09

[Music]

play03:14

set following properties on the detail

play03:17

page screen

play03:17

[Music]

play03:27

foreign

play03:36

[Music]

play03:37

you specify the relational child table

play03:40

which carries line item information for

play03:43

each order

play03:43

[Music]

play03:57

click next

play03:59

[Music]

play04:06

primary key column of this table is

play04:08

populated automatically via a trigger

play04:10

named demo order items which gets the

play04:13

next primary key values from a sequence

play04:15

named demo order item sequence

play04:18

in the master detail foreign key list

play04:20

you select the sole auto-generated

play04:21

foreign key which creates a relationship

play04:24

between the master and detail tables

play04:27

click create page button

play04:29

[Music]

play04:36

Master detail page created

play04:39

before running these Pages let's see

play04:42

what the wizard has done for us

play04:44

this master page page 4 is created with

play04:47

an interactive report to display a list

play04:49

of all order from the orders master

play04:51

table

play04:52

The Details page page 29 on the other

play04:55

hand has many things to reveal

play05:02

this process fetches Master Row from

play05:04

demo orders table

play05:06

if you see a different process name then

play05:08

there is nothing to worry about as it

play05:10

sometimes happens due to change in Apex

play05:12

version

play05:16

this first region is a static content

play05:18

region which displays Master information

play05:21

like customer ID order date and so on

play05:26

[Music]

play05:30

these buttons are added to the master

play05:31

region to fetch previous and next orders

play05:34

respectively

play05:35

for example when you click the next

play05:37

button the page is submitted to get the

play05:40

next order record from the server

play05:42

visibility of the next and previous

play05:44

buttons is controlled by a server-side

play05:46

condition which says that these buttons

play05:48

will be visible only when their

play05:50

corresponding hidden items have some

play05:52

values

play05:53

foreign

play05:54

cancel button closes page 29 and takes

play05:57

you back to page 4 without saving an

play05:59

order

play06:00

for this a redirect action is generated

play06:03

in the behavior section with page 4 set

play06:05

as the target

play06:06

[Music]

play06:07

delete button removes a complete order

play06:10

when this button is clicked a

play06:13

confirmation dialog pops up using its

play06:15

Target property

play06:16

save button records updates to an

play06:19

existing order in the corresponding

play06:20

database table

play06:22

this button is visible when you call an

play06:24

order for modification

play06:26

create button is used for new orders to

play06:28

handle the insert operation

play06:30

this button is visible when you are

play06:32

creating a new order

play06:35

this is an interactive grid region which

play06:38

is generated to view add modify and

play06:40

delete line items

play06:43

[Music]

play06:51

click processing tab

play06:53

this automatic row processing DML type

play06:57

process is generated by the wizard to

play06:59

handle DML operations performed on The

play07:01

Master row of an order which gets into

play07:03

the demo orders table

play07:05

it comes into action when you click

play07:07

delete save or create buttons

play07:10

save interactive grid data processes

play07:12

responsible to handle DML operations on

play07:15

the details table demo order items

play07:18

this process is associated with the

play07:20

details section interactive grid to

play07:22

insert update or delete interactive grid

play07:25

rows

play07:26

when you submit a page Oracle Apex

play07:29

server receives a submit request and

play07:31

performs the processes and validations

play07:32

associated with that request

play07:35

after that it evaluates where to land in

play07:37

the application via these branches

play07:40

by default it selects the current page

play07:42

as the target page

play07:44

a branch has two important properties

play07:46

behavior and server-side condition

play07:49

first two branches are created to keep

play07:51

you on page 29. these branches are

play07:55

associated with next and previous

play07:56

buttons see when button pressed

play07:58

properties of these branches

play08:01

the third one takes you back to page

play08:02

four when you click any other button on

play08:04

this page see the behavior section that

play08:07

specifies the redirect

play08:08

[Music]

play08:17

foreign

play08:24

run this setup from the orders

play08:26

navigation menu entry

play08:28

[Music]

play08:30

the first page page 4uc is an

play08:33

interactive report

play08:35

it has a create button which is used to

play08:37

create a new order

play08:39

click the edit link represented with a

play08:41

pencil icon in front of any record to

play08:43

call the order Details page page 29

play08:47

the order Details page has two regions

play08:50

the upper region which is called the

play08:52

master region displays information from

play08:55

the demo orders table while the lower

play08:57

interactive grid region shows relevant

play08:59

line item information from the demo

play09:01

order items table

play09:03

besides usual buttons the master region

play09:05

has two navigational buttons at the top

play09:08

these buttons help you move forward and

play09:10

backward to browse orders

play09:12

the order timestamp field is

play09:14

supplemented with a date picker control

play09:17

[Music]

play09:22

you can add more products to the details

play09:25

section by clicking the add row button

play09:27

from a professional Viewpoint this page

play09:30

is not user-friendly

play09:31

if you try to add a new product you have

play09:34

to enter its ID manually

play09:36

moreover if you try to create a new

play09:38

order you won't see the interactive grid

play09:41

to avoid all such problems follow the

play09:44

subsequent parts of video to make the

play09:46

setup user-friendly

play09:49

thanks for watching

play09:50

[Music]

Rate This
β˜…
β˜…
β˜…
β˜…
β˜…

5.0 / 5 (0 votes)

Related Tags
Order ManagementCustomer OrdersTech TutorialWizard StepsDatabase TablesInteractive GridOrder DetailsNavigation ButtonsAPEX SetupUser-FriendlyOrder Processing