As you have seen, it is possible to write highly functional web pages using only items, reports, and charts. But to implement anything more complex, you have to be able to perform calculations and interact with the database more generally. The notion of a process addresses both issues. This chapter examines some typical situations that require the use of processes, and introduces the basics of PL/SQL so that you can write your own code to implement these processes. It also examines the pitfalls you might encounter with writing PL/SQL code, such as the possibility of lost updates. Finally, the chapter discusses the built-in processes and forms provided by APEX. You will learn how to make use of them in your pages, what their limitations are, and how to customize them to achieve the functionality you want.