assemble composite applications

56
Assemble Composite Applications Getting Started Tutorial #3

Upload: others

Post on 12-Sep-2021

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Assemble Composite Applications

Assemble Composite Applications

Getting Started Tutorial

#3

Page 2: Assemble Composite Applications

Getting Started Tutorial

Copyright Copyright © 2006 Above All Software, Inc. All Rights Reserved.

Restricted Rights Legend This software and documentation is subject to and made available only pursuant to the terms of the Above All Software Evaluation License Agreement and may be used or copied only in accordance with the terms of that agreement.

Information in this document is subject to change without notice and does not represent a commitment on the part of Above All Software.

Trademarks or Service Marks Above All Software, Above All Studio, Above All SOA Repository, Above All Knowledge Packs, Above All Multi-channel Deployment are registered trademarks of Above All Software, Inc.

All other trademarks are the property of their respective companies.

Document Code GST301182007

Above All Software 2

Page 3: Assemble Composite Applications

Getting Started Tutorial

Table of Contents Before you begin.....................................................................................................................4 Scope of this tutorial................................................................................................................5 Step by step lessons...............................................................................................................6

Lesson 1: Create relationships...........................................................................................................6 Lesson 2: Explore an indirect relationship .......................................................................................17 Lesson 3: Create a composite operation for an indirect relationship...............................................18 Lesson 4: Create an indirect relationship.........................................................................................27 Lesson 5: Assemble a composite application ..................................................................................29 Lesson 6: Test and modify the composite application .....................................................................39 Lesson 7: Use join to add business services to a composite application ........................................44 On-your-own Exercises....................................................................................................................51 Extra credit Exercises.......................................................................................................................52

Appendix A............................................................................................................................53 Visual Keys.......................................................................................................................................53

Toolbar Icon Map ........................................................................................................................................53 Dictionaries Toolbar Map.............................................................................................................................53 Dictionaries Window Component Display Options Map...............................................................................54 Complex Object Editor Toolbar Map............................................................................................................55

Appendix B............................................................................................................................56 Adobe Reader Navigation ................................................................................................................56

3 Above All Software

Page 4: Assemble Composite Applications

Getting Started Tutorial

Before you begin Install and complete the Above All Getting Started Tutorials #1 and #2 including the On-your-own Exercises. Getting Started Tutorial #3: Assemble Composite Applications requires that the PlayYourGame and ThePerfectToy services provided with Tutorial #1 have been mined and added to the Above All Studio Dictionary and that the new complex object type and composite operation described in Tutorial #2 have been created and tested. For step-by-step solutions visit Tutorial 2 Getting Started Solutions.

Icons are used within this tutorial to highlight key points and assist you in navigating to additional information:

Visual Key These are pointers to graphic descriptions of the screens, icons, and navigation aids in this tutorial.

Use Adobe Reader Previous View button to return to tutorial This will return you back to your place in the tutorial.

In Depth This is a pointer to additional information on the topic on the web.

Decision Point This icon indicates a choice of approach or strategy is needed.

Error Alert This icon points out a potential error and provides advice on avoiding it.

AAS Help: KeywordsThis icon provides keywords to use to search for additional information on the topic in Above All Studio Help.

This tutorial is provided in Adobe PDF format, intended to be read with the Adobe Reader. Click on the icon for a quick guide to Adobe Reader navigation.

Above All Software 4

Page 5: Assemble Composite Applications

Getting Started Tutorial

Scope of this tutorial This tutorial is designed to introduce the user to the Above All Assemble step. It will include a description of the user interface and controls for the Assemble process. Assembling composite applications is often an iterative process. Previous tutorials have introduced Refine concepts that will be expanded upon and examined in more depth during the Assemble phase. This tutorial will step you through the creation of new relationships within complex objects and will use wizards, joins, and transforms, and forms to help you assemble and test a composite application.

This tutorial will:

• Introduce the Above All Studio environment and basic operations

• Provide practice and further exploration of Refine concepts introduced in the previous tutorial

• Demonstrate the assembly of a composite application using a wizard

• Demonstrate how to use the integrated runtime environment to test the composite application

• Demonstrate the form modeler’s representation of the user interface

• Provide the environment to be used in subsequent tutorials

Click on this Getting Started Tutorial Scenario link to learn more about the scenarios used for Above All tutorials.

This tutorial is designed to take about 60 minutes to complete.

5 Above All Software

Page 6: Assemble Composite Applications

Getting Started Tutorial

Step by step lessons

Lesson 1: Create relationships In this activity, we will create relationships between complex object types in the ThePerfectToy folder. Relationships are a key feature that drives productivity in Above All Studio. A relationship is a link between a primary object type and a related object type. It is analogous to relating two or more tables through a key field in a relational database. The relationships we establish in this section powerfully assist us in creating composite applications in the Above All Assemble step. We will be creating relationships between The Perfect Toy’s complex objects Account and Order, Account and Contacts, Order and OrderItems, and Account and Calls.

Above All Software 6

Page 7: Assemble Composite Applications

Getting Started Tutorial

1. Double-click on the complex object Account in the ThePerfectToy folder to examine the object in the complex object editor.

If you recall, we used the ODBC Knowledge Pack to mine The Perfect Toy database. The Knowledge Pack was able to create a comprehensive set of objects and operations on those objects, but it did not establish the relationships between the objects. Here, we see that the Account complex object has all the operations needed to manipulate and examine account data, but no relationships with other complex object types. We will use the Add Relationship Wizard from the Composite Object Editor to establish the relationships between Account and the other objects.

7 Above All Software

Page 8: Assemble Composite Applications

Getting Started Tutorial

2. Right-click in the Composite Object Editor on the Relationships icon to open the Relationship Pop-up.

3. Select Add relationship… to open the Relationship Wizard.

4. Select the Orders complex object in the Relationship Wizard and Type “Account to Order relationship” in the Description field to annotate the relationship we are establishing.

Above All Software 8

Page 9: Assemble Composite Applications

Getting Started Tutorial

5. Select the Next button to continue defining the relationship.

Relationships between objects are established through operations. Here we are presented with a list of the Orders’ operations that could be used to establish the relationship.

6. Select the Query_Orders operation in the Relationship Wizard as the operation to be used to create the relationship.

9 Above All Software

Page 10: Assemble Composite Applications

Getting Started Tutorial 7. Select the Next button to continue defining the relationship.

This will open a transform editor where you can visually create the correlations between the Account complex object and the Orders.Query_Order operation that we selected as the linking operation. Additional transforms that may be needed can also be created here.

Above All Software 10

Page 11: Assemble Composite Applications

Getting Started Tutorial

8. Click and Drag in the Relationship Wizard between the Account complex object’s AccountCode element and the Orders.Query_Orders operation’s Inputs AccountCode element to create the input correlation.

9. Select the Finish button to complete the relationship definition and close the Relationship Wizard.

This completes the definition of the AccountToOrders relationship for the Account complex object. Next we will define a relationship between Account and Contacts.

10. Right-click on the Relationships icon in the Complex Object Editor for Account to open the Relationship Pop-up.

11 Above All Software

Page 12: Assemble Composite Applications

Getting Started Tutorial 11. Select Add relationship… to open the Relationship Wizard.

12. Select the Contacts complex object in the Relationship Wizard and Type “Account to Contacts relationship” in the Description field to provide a description of the relationship.

Above All Software 12

Page 13: Assemble Composite Applications

Getting Started Tutorial

13. Select the Next button to continue defining the relationship.

Relationships between objects are established through operations. Here we are presented with a list of the Contacts’ operations that could be used to establish the relationship.

14. Select the Query_Contacts operation in the Relationship Wizard as the operation to be used to create the relationship.

13 Above All Software

Page 14: Assemble Composite Applications

Getting Started Tutorial 15. Select the Next button to continue defining the relationship.

This will open a transform editor where you can visually create the correlations between the Account complex object and the Contacts.Query_Order operation that we selected as the linking operation. Additional transforms that may be needed can also be created here.

Above All Software 14

Page 15: Assemble Composite Applications

Getting Started Tutorial

16. Click and Drag between the Account complex object’s AccountCode element and the Contacts.Query_Contacts operation’s Inputs AccountCode element to create the input correlation.

17. Select the Finish button to complete the relationship definition and close the Add Relationship Wizard.

This completes the definition of the AccountToContacts relationship for the Account complex object. Next we will define a relationship between Order and OrderItems.

18. Click to close the Complex Object Editor for Account.

19. Select the Yes button to save changes to the Account complex object.

20. Double-click Orders in the ThePerfectToy folder to open the Complex Object Editor for this object.

21. Right-click on the Relationships icon to open the Relationship Pop-up.

22. Select Add relationship… to open the Relationship Wizard.

23. Select the OrderItems complex object in the Relationship Wizard and Type “Order to OrderItems relationship” in the Description field to provide a description of the relationship.

24. Select the Next button to continue defining the relationship.

15 Above All Software

Page 16: Assemble Composite Applications

Getting Started Tutorial 25. Select the Query_OrderItems operation in the Relationship Wizard as the operation to be used to

create the relationship.

26. Select the Next button to continue defining the relationship.

This will open a transform editor where you can visually create the correlations between the Orders complex object and the OrderItems.Query_OrderItems operation that we selected as the linking operation. Additional transforms that may be needed can also be created here.

27. Click and Drag between the Orders complex object’s OrderNumber element and the OrderItems Query_OrderItems operation’s Inputs OrderNumber element to create the input correlation.

28. Select the Finish button to complete the relationship definition and close the Relationship Wizard.

29. Click to close the Complex Object Editor for the Order object. 30. Select the Yes button to save changes.

This completes the definition of the OrderToOrderItems relationship for the Order complex object. Next we will define a relationship between Account and Calls.

Above All Software 16

Page 17: Assemble Composite Applications

Getting Started Tutorial

Lesson 2: Explore an indirect relationship The Account to Calls relationship is more complex and will require us to create a composite operation that will provide the connection. In this section we will examine the objects first to determine how this relationship can be created.

1. Double-click on the Account and the Calls complex objects in ThePerfectToy folder to open them in the Complex Object Editor to examine them.

Note that there are no elements in the Calls complex object that will directly relate Calls with Account. There is a ContactId element in Calls that relates Calls to Contacts. We know that there is a direct relationship between Contacts and Accounts since we already established that relationship. So, perhaps there is a way to relate Calls to Account via the Contacts complex object.

2. Click to close the Complex Object Editor for Account.

3. Double-click on the Contacts complex object in ThePerfectToy folder to examine it in the Complex Object Editor.

Both AccountCode and ContactID are in the elements of the Contacts complex object.

4. Double-click on the Query_Contacts operation in the Contacts complex object to examine it. AccountCode is among the list of inputs and outputs for this operation, it can take an input of AccountCode and return ContactID. This is the operation we can use to help us build a composite operation that will relate Account with Contacts with Calls.

5. Double-click on the Query_Calls operation in the Calls complex object to examine it. Among the inputs Query_Calls can take an input of ContactID and return a list of Calls. This is the operation we can use to help us build a composite operation that will relate Account with Contacts with Calls.

6. Click to close the Contacts and Calls Complex Object Editors as well as the Query_Contacts and Query_Calls Operation Editors.

In order to establish the relationship we will first need to create a composite operation that will make the connection from Account through Contacts to Calls.

17 Above All Software

Page 18: Assemble Composite Applications

Getting Started Tutorial

Lesson 3: Create a composite operation for an indirect relationship 1. Click New Operation on the Above All Studio toolbar and Select New Composite Operation

on the dropdown list to open the New Composite Operation Editor in the work area.

2. Click the Maximize Window icon to maximize the New Operation Editor in order to allow the greatest flexibility in using screen real estate.

In this composite operation we will use the AccountCode to look-up a set of Contacts for the account that could possibly create a support Call. We will then look up the Calls for each Contact found for the Account. The input to this operation is AccountCode.

3. Click to expand the Account folder as well as Elements under Account to make all the objects and operations we will need in the Account complex object visible.

4. Click and Drag AccountCode to the Inputs box of the new composite operation.

The output for this operation is a list of Calls.

5. Click and Drag the Calls complex object from ThePerfectToy folder to the Outputs box of the new composite operation.

Above All Software 18

Page 19: Assemble Composite Applications

Getting Started Tutorial

Since an Account may have multiple Contacts who have multiple Calls, we will need our composite operation output to be a list of Calls.

6. Right-Click on Calls in the Outputs box to open the drop down menu of the Complex Object Editor.

Because we want a query on an Account to return all related Calls, we want to change the cardinality from 1 to many by making Calls a list.

7. Scroll to Make element a list and Click to make Calls a list.

8. Click to expand the Calls folder as well as Operations under Calls to make the Query_Calls operation visible.

19 Above All Software

Page 20: Assemble Composite Applications

Getting Started Tutorial 9. Click and Drag the Query_Calls operation into the workspace.

10. Click to expand the Contacts folder as well as Operations under Contacts to make the Query_Contacts operation visible.

11. Click and Drag the Query_Contacts operation into the workspace.

Now we can make the connections to flow the information from AccountCode through the two query operations to produce a list of Calls for Account.

12. Click and Drag in the Composite Operation Editor between Inputs AccountCode and the Account_Code input in Query_Contacts.

Above All Software 20

Page 21: Assemble Composite Applications

Getting Started Tutorial

13. Click and Drag between the ContactID output in Query_Contacts and the input ContactID in Query_Calls.

Now that we have that we have a path from Account to Case, we can link the output lists.

21 Above All Software

Page 22: Assemble Composite Applications

Getting Started Tutorial 14. Click and Drag from the output of Query_Calls.Query_CallsResponse (List) to the Outputs Calls

(List)

We have now completed the definition of the new composite operation.

15. Click to close the New Operation Editor.

Above All Software 22

Page 23: Assemble Composite Applications

Getting Started Tutorial

16. Click the Save button to save the new operation.

The new operation should be saved with the Calls complex object in ThePerfectToy folder as it is associated with Calls through the ContactID object within Calls.

17. Select the Calls complex object as the destination and Type the file name QueryCallsForAccount so that the operation’s purpose will be clear.

23 Above All Software

Page 24: Assemble Composite Applications

Getting Started Tutorial 18. Select the Save button to save the new complex object.

This will open the Add Operation Wizard to allow us to define the purpose for the operation. In this screen you can see that we have chosen Query.

Above All Software 24

Page 25: Assemble Composite Applications

Getting Started Tutorial

19. Click the Query radio button to define the operation purpose.

The Add Operation Wizard shows the Calls complex object and the new QueryCallsForAccount operation and prompts us to add data transformations that will bind the new operation with the complex object type. On the left, the Add Operation Wizard presents the Calls complex object. On the right, it presents the new operation we created, QueryCallsForAccount, with its inputs and outputs. In order to associate the operation with the complex object type, we must map the elements of the object type to the input or output elements of the operation. This creates a bound operation.

25 Above All Software

Page 26: Assemble Composite Applications

Getting Started Tutorial 20. Click and Drag between the QueryCallsForAccount output Calls (Calls List) and the Calls (Calls)

complex object to create the transformation.

21. Select the Finish button to complete the new operation definition.

Now we can move forward to create the relationship between Account and Calls. We want this relationship’s primary object to be Account, so we will create the relationship there.

Above All Software 26

Page 27: Assemble Composite Applications

Getting Started Tutorial

Lesson 4: Create an indirect relationship 1. Double-click Account in the ThePerfectToy folder to open the Complex Object Editor for this

object.

2. Right-click on the Relationship icon to open the Relationship Pop-up.

3. Select Add relationship… to open the Relationship Wizard.

4. Select the Calls complex object in the Relationship Wizard and Type “Account to Calls relationship” in the Description field to provide a description of the relationship.

5. Select the Next button to continue defining the relationship.

The operation we have just defined is the one we want to use here.

6. Select the QueryCallsForAccount operation in the Relationship Wizard as the operation to be used to create the relationship.

27 Above All Software

Page 28: Assemble Composite Applications

Getting Started Tutorial 7. Select the Next button to continue defining the relationship.

This will open a transform editor where you can visually create the correlations between the Account complex object and the Calls.QueryCallsForAccount operation that we selected as the linking operation. Additional transforms that may be needed can also be created here.

8. Click and Drag between the Account object AccountCode and the Calls.QueryCallsForAccount input AccountCode to provide the necessary input correlation.

9. Select the Finish button to complete the relationship definition and close the Add Relationship Wizard.

This completes the definition of the AccountToCalls relationship for the Account complex object.

10. Click to close the Complex Object Editor for Account.

11. Select the Yes button to save changes to the Account complex object.

Above All Software 28

Page 29: Assemble Composite Applications

Getting Started Tutorial

Lesson 5: Assemble a composite application In this activity we will assemble a composite application from existing services and generate a user interface for our application. Our composite application will bring together all of the information we have for our The Perfect Toy accounts. From this composite application, we will be able not just to see the account, contacts, orders, and calls, but we will be able to manipulate them. The relationships we have created in the Accounts and Orders complex objects will do a lot of the work for us. Our composite application will provide the following operations: AccountQuery, AccountUpdate, ContactQuery, ContactUpdate, and OrderQuery. The Above All Studio Form Wizard makes this easy. Once our composite application is designed, we can run it to test the results.

1. Select File>New Form (Using Wizard) from the Above All Studio Menu Bar to begin assembly of the composite application.

29 Above All Software

Page 30: Assemble Composite Applications

Getting Started Tutorial

2. Click to expand the My Dictionary dictionary and the ThePerfectToy folder to expose the complex objects. Since we want to create a comprehensive composite application for an account, we will select the Account complex object as the basis for our assembly.

3. Select the Account complex object type in the New Form Wizard as the primary object type.

Above All Software 30

Page 31: Assemble Composite Applications

Getting Started Tutorial

4. Select the Next button to continue to the next step. Next, we will be prompted to select the Account operations we want to assemble into our composite application.

5. Click the check box next to the Query_Account operation to include the Account Query operation in our composite application.

31 Above All Software

Page 32: Assemble Composite Applications

Getting Started Tutorial 6. Select the Next button to go to the third step.

We would like to include an update operation for Account in our composite application.

7. Click the check box next to the Update_Account_SingleUserStyle operation to include it in our composite application.

For more information on differentiation between the SingleUserStyle update operation and other update operations see AAS Help: Operations ODBC.

Above All Software 32

Page 33: Assemble Composite Applications

Getting Started Tutorial

8. Select the Next button to continue to the next step.

Here is where we make our relationships work for us. The wizard uses the relationships we have established between the different complex object types to enable us to easily assemble other related operations into our composite application.

9. Click the check box next to AccountToContacts relationship so that we can assemble in operations for the Contacts complex object type.

10. Click the check box next to the AccountToOrders relationship so that we can assemble in operations for the Orders complex object type.

As you click on the check box next to AccountToOrders, notice that this expands the relationships to show the OrdersToOrderItems relationship that is defined in the Orders complex object.

11. Select the Next button to continue our composite application assembly.

33 Above All Software

Page 34: Assemble Composite Applications

Getting Started Tutorial 12. Select the check box next to the Update_Contacts_SingleUserStyle operation under the Contacts

complex object in the New Form Wizard to include it in our composite application.

Because the query operations for Contacts and for Orders were defined in the relationship between their complex object types and the Account complex object type, they are automatically included in the composite application. They are not presented to us in the operation lists.

Above All Software 34

Page 35: Assemble Composite Applications

Getting Started Tutorial

13. Select the Next button to continue our composite application assembly.

This form provides an opportunity to choose the style in which your data will appear, as a grid, as fields, or in both forms. For this exercise, we will accept the defaults.

35 Above All Software

Page 36: Assemble Composite Applications

Getting Started Tutorial 14. Select the Next button to choose more style options for the form.

Since there are multiple operations on this form, we will choose the Direct Invocation style this time. In addition, the single set of inputs that we need for our query and update operations will be generated by the primary operation Query_Account and can drive the coordinated view of the data.

Above All Software 36

Page 37: Assemble Composite Applications

Getting Started Tutorial

15. Click on the Direct Invocation (Invoke button per operation) radio button to choose this form style.

16. Uncheck the check box for Create input controls for all related operations to create a form with a single set of inputs.

37 Above All Software

Page 38: Assemble Composite Applications

Getting Started Tutorial 17. Select the Finish button to finalize the form style and generate the composite application user

interface.

Upon exit from the New Form Wizard the user interface for the composite application – our form – is displayed in Run Mode . Our user interface generation used the wizard settings and complex object definitions to create grids for our query and update results. A set of inputs that drive our Account selection are at the top of the form. Because we chose to share input fields in our wizard, the Account query results and subsequent user selection within the grids drive the changing display in the related grids. We can make changes to the properties for all of the user interface elements in Design Mode .

18. Click on the Maximize Window button to allow best usage of screen real estate.

Above All Software 38

Page 39: Assemble Composite Applications

Getting Started Tutorial

Lesson 6: Test and modify the composite application In this activity we will run the composite application to see the results and learn how we can modify the layout of the user interface elements on the form.

1. Select the Query_Account button in our new form to run the query operation and examine the results.

Upon execution of the Account query operation, the first result in the Account grid is the selected account as annotated by the arrowhead to the left. The related Contacts and Orders for the selected account are displayed in their corresponding grids.

39 Above All Software

Page 40: Assemble Composite Applications

Getting Started Tutorial 2. Scroll the form down using the scroll bar at the right of the form to display all the grids

completely.

3. Click the grid to the left of Account Id equal to 3 to select this account.

The arrowhead on the grid indicates the account selected and the change in selection results in new queries for Contacts and Orders being executed behind the scenes. This illustrates the power of the work the relationships have done for us.

4. Click Design Mode on the Above All Studio toolbar to modify the form.

Above All Software 40

Page 41: Assemble Composite Applications

Getting Started Tutorial

The design grid appears behind the form to assist in placement during design. Properties for all of the form’s user interface components can now be modified.

5. Click and Drag the interactive selection box around the input fields for the Account grid.

Each Account query input has an associated label and an input field user interface component. They should all be selected now.

6. Press the Delete key on the keyboard to remove these fields.

With these user interface components removed, we now want to rearrange the remaining user interface components on our form real estate.

7. Click on the Account grid to select the grid on the form.

8. Scroll down in the Form Window to the Contacts grid.

9. Press the control key on the keyboard and Click on the Contacts dataset grid to add this grid to the editing selection.

10. Scroll down to the Orders grid.

41 Above All Software

Page 42: Assemble Composite Applications

Getting Started Tutorial 11. Press the control key on the keyboard and Click on the Orders dataset grid to add this grid to

the editing selection.

12. Click and Drag on the sizing tab at the right of any of the selected grids to resize all of the selected grids at the same time.

The select, drag, resize, and delete functions work as is customary in visual editors. We are not using the input fields for our query operation. In the next steps we will eliminate them to remove the clutter from the form.

Above All Software 42

Page 43: Assemble Composite Applications

Getting Started Tutorial

13. Click and Drag the selected grids to the top of the form.

This makes the form more readable. Now we will add another function.

43 Above All Software

Page 44: Assemble Composite Applications

Getting Started Tutorial

Lesson 7: Use join to add business services to a composite application In this activity, we will demonstrate the use of the Form’s Join function to add operations to our composite application. Though we normally would have selected the operations during the New Form Wizard steps, we can alternatively use the Join function to add operations that we have forgotten after the form has been created.

You may recall that when we built our composite application for Account, we did not include Calls as identified from our account relationships. We will use the Join function to assemble it into our composite application.

1. Click to expand the ThePerfectToy folder, the Calls complex object and its Operations.

Above All Software 44

Page 45: Assemble Composite Applications

Getting Started Tutorial

2. Click and Drag the QueryCallsForAccount operation to the form.

Note that the pointer’s position when you release your click will become the top leftmost location for the addition of the user interface elements for the added operation.

A new QueryCallsForAccount button has been added at the bottom of the form. User interface components (label and input fields) are included for the new operation. QueryCallsForAccount requires only Account Code for input. A grid for the QueryCallsForAccount operation’s results is also added. At this point, the QueryCallsForAccount operation has been added to the form, but it is not related to the existing operations.

45 Above All Software

Page 46: Assemble Composite Applications

Getting Started Tutorial

3. Click Join Mode on the Above All Studio toolbar to change our manipulation mode.

We want to link the appropriate output from one of the existing operations to an input for the new QueryCallsForAccount operation to create a form-based relationship that drives the same type of integrated behavior already established between the rest of the form’s operations. In this case, we will specify the relationship between the Account dataset and the Calls dataset.

Above All Software 46

Page 47: Assemble Composite Applications

Getting Started Tutorial

4. Click and Drag between the AccountCode column header in the Account grid and the AccountCode input field for the new QueryCallsForAccounts operation.

This establishes the relationship in this composite application between the account identifier and the calls query operation. Though this is a relationship similar to that defined in the AccountToCalls relationship in the Account complex object type, this relationship exists only in this form. It cannot be reused like the AccountToCalls relationship.

47 Above All Software

Page 48: Assemble Composite Applications

Getting Started Tutorial

5. Click Design Mode on the Above All Studio toolbar to change our manipulation mode back to design.

Now that we have established the Account to QueryCallsForAccount relationship in the form using the user interface components to assist us, we can return to modify the form to improve the user experience. We can now remove the QueryCallsForAccount’s input components from the form.

6. Scroll down, if necessary, to the input fields for the QueryCallsForAccount operation that we added and joined.

7. Click on the Account Code user interface component label to select it.

8. Press the control key on the keyboard and Click on the Account Code input field box to add this to the editing selection.

9. Press the Delete key on the keyboard to remove these fields.

Though these fields are visually removed from the user interface, the join relationship that we created using them remains.

10. Click to select the Calls grid.

11. Drag the Calls grid up the form to position it just below the Orders grid.

12. Select Run Mode on the Above All Studio toolbar to change our manipulation mode so that we can test the composite application.

Above All Software 48

Page 49: Assemble Composite Applications

Getting Started Tutorial

13. Select the Query Account button to execute the query.

14. Choose entries in the Account grid to observe the data in each account appear in all of the grids. The entry with AccountId equal to 3 has a contact, an order, and a call.

15. Click to close the form.

16. Select the Yes button to save the composite application.

49 Above All Software

Page 50: Assemble Composite Applications

Getting Started Tutorial 17. Select ThePerfectToy in the Save As dialog as the folder in which to locate the new composite

application form. 18. Enter Account360 in the Save As dialog’s File name field for the name of the new composite

application form. 19. Select the Save button to save the new composite application form named Account360 in the

ThePerfectToy folder.

Above All Software 50

Page 51: Assemble Composite Applications

Getting Started Tutorial

On-your-own Exercises Use the skills just practiced to establish a new relationship and Assemble a composite application to test the implementation. Using the Forms Wizard to create a user interface, Assemble a composite application for Perfect Play’s new ProductCatalog complex object to test the InsertProduct operation.

1. Establish a relationship in the PlayYourGame Customer complex object between it and the Order complex object.

2. Assemble a composite application to test the relationship using the Forms Wizard to generate a composite application user interface (form) for the PlayYourGame Customer.

3. Run the composite application to see the results.

4. Assemble a composite application to test the PerfectPlay InsertProduct operation by using the QueryProductCatalog operation to observe the additions to the database.

For step-by-step instructions see Tutorial 3 Getting Started Solutions.

51 Above All Software

Page 52: Assemble Composite Applications

Getting Started Tutorial

Extra credit Exercises Use the techniques in this tutorial to create relationships and Assemble a composite application for your own Mined and Refined system.

1. Examine the relationships for a central complex object in your own Mined system.

2. Create appropriate relationships if none exist.

3. Assemble a composite application to generate the user interface for a central complex object in your own system.

4. Run the composite application to test functionality.

Above All Software 52

Page 53: Assemble Composite Applications

Getting Started Tutorial

Appendix A

Visual Keys

Toolbar Icon Map

Use Adobe Reader Previous View button to return to tutorial

Dictionaries Toolbar Map

Use Adobe Reader Previous View button to return to tutorial

53 Above All Software

Page 54: Assemble Composite Applications

Getting Started Tutorial

Dictionaries Window Component Display Options Map

Use Adobe Reader Previous View button to return to tutorial

Above All Software 54

Page 55: Assemble Composite Applications

Getting Started Tutorial

Complex Object Editor Toolbar Map

Use Adobe Reader Previous View button to return to tutorial

55 Above All Software

Page 56: Assemble Composite Applications

Getting Started Tutorial

Appendix B

Adobe Reader Navigation There are several ways to navigate this document using Adobe Acrobat Reader. The left side of the window contains the navigation pane which displays tabs to provide navigation methods. We have created bookmarks which can be used as a table of contents allowing the user to navigate directly to a section of interest.

The buttons at the bottom of the document pane allow navigation through the Tutorial as does the vertical scroll bar at the right.

This document also contains links within the text and graphics that will take you to locations within the document, to other documents on the web, or to help topics for additional information. As you mouse over areas of the document with links, the cursor shape will change to a pointer to indicate a link is defined at that place in the document.

Use Adobe Reader Previous View button to return to tutorial

Above All Software 56