[<10>] ====== "Reserve Item" operation ====== This operation is very similar to the "[[6000_case_study:0400_configuration:0700_operations:0900_borrow_items|Borrow Item]]" operation. The ''ReserveItem'' operation will be invoked from the following screens: - When a member is being edited and a user sees the form of the member - When an item is being viewed/edited and a user sees the form of the item - When the "Item" query has been run and a user sees a list with one or more items Just like with the ''BorrowItem'' operation we will need to define two processes – ''ReserveItem'' and ''ReserveItem2''. The ''ReserveItem'' process will require the Member object as process input; it will run the query to find an item and then will create the ''Reservation'' object (properly initialized): PICK FROM Item CREATE Reservation WITH Reservation.Item=Item, Reservation.Member=Member The ''ReserveItem2'' process will require the Item object as process input; it will run the query to find a member and then will also create the ''Reservation'' object: PICK FROM Member CREATE Reservation WITH Reservation.Item=Item, Reservation.Member=Member //**AwareIM**// will automatically define operations that will invoke the ''ReserveItem'' process from the Member form and the ''ReserveItem2'' process from the ''Item'' form. We will also define the ''Reserve'' operation for the ''Item'' query to handle scenario 3 above.