CAPDM Tutorial Applets |
To extend the two period case to multiple periods.
The single period case is rather unreal in that very few investment decisions
have only one period of outlays and one period of income.
Typically investments are made in the expectation of future income streams extending
over several future periods. The principles developed in relation to single
period discounting can be elaborated to include any number of time periods,
thus making it possible to apply the concept of discountingto real world problems.
Remote Control using JavaScriptIt is possible to set the independent variable values in the applet and return strings representing individual values or the status of the applet (ie all independent variable values). Examples |
The applet can be invoked by embedding an APPLET tag into your HTML document (if you look at the source of this document you will see a working example you can copy). The table below details the basic parameters used and additional startup parameters that are specific to this applet.
<APPLET CODEBASE="../../../../classes" ALT="Multiple Period" CODE="applet.capdm.finance.multipleperiod.MultiplePeriodApp" NAME="MultiplePeriod" WIDTH="400" HEIGHT="500"> </APPLET>
| Basic Parameters | Use |
| CODEBASE="../../../../classes" | The CODEBASE of the applet must point at the top-level classes directory in order for the applet to be found. |
| CODE="applet.capdm.finance. multipleperiod.MultiplePeriodApp " |
This required attribute gives the name of the file that contains the applet's compiled Applet subclass. This file is relative to the base URI of the applet. |
| ALT="Multiple Period" | This optional attribute specifies any text that should be displayed if the browser understands the APPLET tag but can't run Java applets. |
| NAME="MultiplePeriod" | This optional attribute specifies a name for the applet instance, which makes it possible for applets on the same page to find (and communicate with) each other. If you intend to use JavaScript/Applet scripting then the applet must be named as shown. |
| WIDTH="400" HEIGHT="600" | These required attributes give the initial width and height (in pixels) of the applet display area, not counting any windows or dialogs that the applet brings up. |
| Applet Startup Parameters | Use |
For more information on the use of the APPLET tag and other attributes you can use but which are not listed above, visit the W3.org specification page at: APPLET tag in HTML 4.
This applet can be called into using Javascript 1.1 while running. Although JavaScript can call the Applet directly, some convenient JavaScript functions have been created which deal with the details of the communication. The following table lists the call Names which can be made, and gives examples of their use and results.
| API Call Name | Parameters | Use and Result |
| setValue(name,value) | 'name' can be one of "InterestRate", "CF0",
"CF1", "CF2", "CF3" or "CF4" 'value' is its new value |
Used to set the value of an independent variable in the applet |
| getValue() | none | javascript:document.MultiplePeriod.getValue();
Gets the status of the applet |
| getValue(name) | 'name' can be one of "InterestRate", "CF0", "CF1", "CF2", "CF3", "CF4", "NPV" or "IRR" |
Returns the current value of the variable from the applet. |
| getValue(name,dp) | 'name' can be one of "InterestRate", "CF0",
"CF1", "CF2", "CF3" or "CF4" 'dp' is the number of decimal places of accuracy required |
javascript:getValue("InterestRate",2);
Gets the current value of the variable as a string to the number of decimal
places specified |
| showAbout() | none | javascript:showAbout(); Shows the version dialog
box of this applet. |
| reset() | none | javascript:reset(); resets the applet to initial
starting position |