Difference between revisions of "Lab Exercises"

From AgileApps Support Wiki
imported>Aeric
Β 
imported>Aeric
Β 
(7 intermediate revisions by the same user not shown)
Line 3: Line 3:
===Customization Exercises===
===Customization Exercises===
In these exercises, you'll explore an existing application and learn how to do simple customizations with a minimum of coding.
In these exercises, you'll explore an existing application and learn how to do simple customizations with a minimum of coding.
* [[Lab C.1: Install an Application]]
:* [[Lab C.1: Install an Application]]
* [[Lab C.2: Explore the Application]]
:* [[Lab C.2: Explore the Application]]
<!--
<!--
* [[Lab C.3: Customize the Application]]
Add to Lab C.2:
* '''Lab C.n: Give the user choices'''
:*View a list of records. Click the Help link. View a record
** Static data in a pick list (drop down)
Β 
** Multiple selections with a multipicklist
:* Lab C.3 Customize a Report
** Dynamic lookup of another object
Β 
-->
:*; Lab C.4: Customize Your Dashboard
:** Add a report
:** Yahoo Map Component
:** Google Search Component


===Basic Programming Exercises===
:* [[Lab C.5: Customize the Application]]
In these exercises, you'll learn how to build an application from scratch, exploring different facets of the platform as you go.
:** Require: Familiarity with [[List View]] and [[Record View]]


*; [[Lab B.1: Hello World]]
:* '''Lab C.n: Give the user choices'''
** Set up a development environment
:** Static data in a pick list (drop down)
** Create a JSP page
:** Multiple selections with a multipicklist
:** Dynamic lookup of another object


*; [[Lab B.2: Simple Interaction]]
:*;Lab C.N: Create an application
** Controller class
--step 1, design the data structures (Order Processing Sample)
** JSP button
--step 2: Choose a creation method
Β  Β  --point to create from template and create by import
Β  Β  --point out that you


*; [[Lab B.3: Adding Functionality]]
:*; Lab C.N: Import data
**Pass data to the controller
:** For more, see [[Data Import]]
**Pass data from the controller to the next page in the process stream
**Use the Debug Log


<!-- DEPRECATED
:*; Lab C.N: Define a data policy
*; [[Lab B.4: Add to the function Library]]
:** Use an existing policy, if possible
** Display values returned in a hashmap
:** Else define a simple one
** Execute a function, passing parameter values
** Retrieve passed parameters in the function
** Define a randomizing function (rand) to the function library<br/>(sq root of curr time + record ID, normalized to range & offsets specified in argument list)
** Access it from the controller class
-->
-->
===Basic Programming Exercises===
In these exercises, you'll do some basic programming in the platform.


<!--
:*; [[Lab B.1: Hello World]]
*; Lab B.5: Read and store object data
:** Set up a development environment
** Read and store cookies?
:** Create a JSP page
*** how to access user data from login profile
*** ?-define new data dynamically?
*** ?-how to store session data?


*; Lab B.6: Import data
:*; [[Lab B.2: Simple Interaction]]
** For more, see [[Data Import]]
:** Controller class
:** JSP button


*; Lab B.7: Define a data policy
:*; [[Lab B.3: Adding Functionality]]
** Use an existing policy, if possible
:**Pass data to the controller
** Else define a simple one
:**Pass data from the controller to the next page in the process stream
:**Use the Debug Log
<!--
ToDo:
* Show how to make the page into a Web Tab
* Show how to make it into a Widget
* Show how to display the Widget in the Dashboard
* Show how to display the Widget in the Sidebar


*; Lab B.8: Add a Web Page Component
:*; Lab B.4: Read and store object data -- PAGE EXISTS
** Yahoo Map Component
:** Read and store cookies?
** Google Search Component
:*** how to access user data from login profile
:*** ?-define new data dynamically?
:*** ?-how to store session data?


*; Lab B.9: Add an AJAX Control
:*; Lab B.9: Add an AJAX Control
*; Lab B.10: Add a Static Resource
:*; Lab B.10: Add a Static Resource
*; Lab B.11: Deploy an app to a production environment
:*; Lab B.11: Deploy an app to a production environment
** Export a package (choose high-level components, dependencies managed)
:** Export a package (choose high-level components, dependencies managed)
** Import the package on a production or Q/A system
:** Import the package on a production or Q/A system
-->
-->


<!--
===Advanced Exercises===
===Advanced Exercises===
In these exercises, you'll tackle larger tasks.
In these exercises, you'll tackle larger tasks.
<!--
:*'''Lab A.1: REST Interfaces'''
:** Explore the HTTP-based REST interfaces available on the platform
-->
:*[[Lab A.2: Composite Objects]]
:** Add and update a collection of related objects that constitute a single logical "entity"
<!--
:*'''Lab A.3: Override Application Behavior'''
:** Doing it at the application level is one way (see [[Lab C.3: Customize the Support Case Manager Application|Lab C.3]])
:** Overriding class behavior gives you even more power


*'''Lab A.1: REST Interfaces'''
:*'''Lab A.4 Cascade Data Policy'''
** Explore the HTTP-based REST interfaces available on the platform
:** Java fcn to update dependent data in other records<br/> (normal data policies apply only within a record)
*[[Lab A.2: Composite Objects]]
Β 
** Add and update a collection of related objects that constitute a single logical "entity"
:*'''Lab A.5: Blending in with the Standard Look and Feel'''
*'''Lab A.3: Override Application Behavior'''
:** Generate a JSP page using the standard platform styles.
** Doing it at the application level is one way (see [[Lab C.3: Customize the Support Case Manager Application|Lab C.3]])
** Overriding class behavior gives you even more power
*'''Lab A.4 Cascade Data Policy'''
** Java fcn to update dependent data in other records<br/> (normal data policies apply only within a record)
*'''Lab A.5: Blending in with the Standard Look and Feel'''
** Generate a JSP page using the standard platform styles.
-->
-->
<!--
<!--
===Future Exercises===
===Future Exercises===
* '''Create a GUI component'''
:* '''Create a GUI component'''
* '''Build Other Interfaces''' Β 
:* '''Build Other Interfaces''' Β 
** Use [http://www.jquery.com jQuery], [http://code.google.com/webtoolkit/ GWT], [http://developer.yahoo.com/yui/ YUI], and [http://www.adobe.com/products/flex/ Flex].
** Use [http://www.jquery.com jQuery], [http://code.google.com/webtoolkit/ GWT], [http://developer.yahoo.com/yui/ YUI], and [http://www.adobe.com/products/flex/ Flex].
**This [http://www.kylehayes.info/2009/03/29/survey-results-javascript-frameworks Survey] has usage statistics: jQuery 42%, GWT 8%, YUI 7%.<br/>(But Flex was still new when the survey was taken).
**This [http://www.kylehayes.info/2009/03/29/survey-results-javascript-frameworks Survey] has usage statistics: jQuery 42%, GWT 8%, YUI 7%.<br/>(But Flex was still new when the survey was taken).
-->
-->
<noinclude>


[[Category:Development]]
[[Category:Development]]
[[Category:Lab]]
[[Category:Lab]]
<noinclude>

Latest revision as of 00:12, 3 December 2013

These exercises are intended to explore each facet of the platform, using the simplest possible examples, so you can begin using those features in your designs as rapidly as possible.

Customization Exercises

In these exercises, you'll explore an existing application and learn how to do simple customizations with a minimum of coding.

Basic Programming Exercises

In these exercises, you'll do some basic programming in the platform.

Advanced Exercises

In these exercises, you'll tackle larger tasks.