HomeOracle Data Manipulation and More for HTML DB Applications
Data Manipulation and More for HTML DB Applications
In this conclusion to a three-part series covering the addition of validations, computations, and processes to an HTML DB application, you will learn about data manipulation, manually creating a web services process, and more. This article is excerpted from chapter 13 of the Oracle HTML DB Handbook, written by Lawrence Linnemeyer and Bradley Brown (McGraw-Hill, 2006; ISBN: 0072257687).
The Data Manipulation type processes are called declarative processes because the HTML DB engine will create processes from declarations provided by the developer. These processes perform inserts, updates, and deletes without the developer having to write the actual DML statements. The actual code is generated based on information provided by the developer. These processes are then used with single-row form pages and multirow form pages.
There are several categories of Data Manipulation processes. With a single-row form page, you use an Automated Row Fetch category process to fetch rows and populate your fields on the rendering of the page. You use an Automated Row Processing (DML) category process when the page is submitted—to process inserts, updates, and deletes.
Multirow edit forms are implemented as a variation of a report, so the fetching of data into the form during the page rendering does not require a separate process; it is actually handled by the report region. Several categories of Data Manipulation processes are specifically designed for working with multirow forms. Two categories—Multi Row Update and Multi Row Delete—are used to perform just what their names imply: updates and deletes. The final category of Data Manipulation processes is used to add additional blank rows to the report so that new rows can be inserted into the table.
These processes are limited to operating on a single table or view. Additionally, the table can have at most a two-column primary key. If you are going to use this type of process, it is best to have the wizards create it for you. Invoke the wizards by creating a new page or a new region. If you need to deal with more complex structures than the wizards will allow, take the approach discussed earlier in the section on PL/SQL type processes.
Web Services processes are used to submit parameters to and retrieve results from a Web Service Reference. Web Service References were covered in Chapter 7 as part of the shared components of an application. Once you have a valid Web Service Reference, you can create a process to utilize the web service.
Once again, although you can manually create a process for a web service, it is recommended that you use the wizards to create all the elements needed to use a web service. Once you finish creating a Web Service Reference, you will be given the opportunity to start a wizard either to create a form using the web service or to create a form and a report using the web service. You can also start the wizard by running a page and clicking on the Create link on the Developer’s Toolbar, then selecting the Region on This Page option, selecting the Form option, and finally selecting either the Form on Web Service option or the Form and Report on Web Service option.
If the results of the web service will be single values, you want to use the just the form. If the results of the web service will be multiple rows of results, you want to use the form and report. The wizards will use the information in the Web Service Reference to create the required input fields, the required output fields or report, and the process to submit the input fields and display the output.