class %ZEN.Template.ZENFormWizard
extends %ZEN.Template.studioTemplate
Studio Template: New ZEN Form
This is a Zen Page class.
parameter DOMAIN = "%ZEN";
Domain used for localization.
parameter HELPID = "GZCP_forms";
DOCBOOK Topic Id that offers help for this template.
parameter TEMPLATEDESCRIPTION = "Creates a Zen page with a data entry form whose fields are based on a class definition.";
Short description of the template to show in Studio.
If DOMAIN is defined this will be localized.
parameter TEMPLATEGROUP = "Zen";
If this is a TEMPLATEMODE="new" then this is the name of the tab
in Studio this template is dispayed on. If none specified then
it displays on 'Custom' tab.
parameter TEMPLATEMODE = "new";
What type of template.
parameter TEMPLATENAME = "New Zen Form";
Name of the template to show in Studio.
If DOMAIN is defined this will be localized.
parameter TEMPLATETITLE = "Zen Form Wizard";
Title of the template to show in the template window.
parameter TEMPLATETYPE = "cls";
Comma separated list of 'CSP', 'CSR', 'MAC', 'INT', 'INC',
'BAS', 'CLS' to say what type of code this template
generates; CSP, CSR, Routine, or Class code.
You can also specify '*' for all types.
method %GetDescHTML(pSeed As %String)
as %Status
Provide contents of description component on the first tab.
method %GetDescHTML2(pSeed As %String)
as %Status
Provide contents of description component on the second tab.
method %OnAfterCreatePage()
as %Status
This callback is called after the server-side page
object and all of its children are created.
Subclasses can override this to add, remove, or modify
items within the page object model, or to provide values
for controls.
method %OnTemplateAction()
as %Status
This method is called when the template is complete. Any
output to the principal device is returned to the Studio.
method CreateApplicationRS(Output tSC As %Status, pInfo As %ZEN.Auxiliary.QueryInfo)
as %ResultSet
Create the result set used by the Application dataCombo.
method CreateDataClassRS(Output tSC As %Status, pInfo As %ZEN.Auxiliary.QueryInfo)
as %ResultSet
Create the result set used by the DataClass dataCombo.
method CreatePackageRS(Output tSC As %Status, pInfo As %ZEN.Auxiliary.QueryInfo)
as %ResultSet
Create the result set used by the Package dataCombo.
classmethod CreatePage(dataClassName As %String, appName As %String, pkgName As %String, newClassName As %String, formName As %String, cssNames As %String, clsComment As %String)
as %Status
classmethod CreateZenApp(appName As %String)
as %Status
classmethod GetRangeText(prop As %Dictionary.PropertyDefinition, p1 As %String, p2 As %String)
as %String
Get appropriate text to use when testing ranges for strings (length) and for integers (values).
method IsValidDataClass(pCls As %String)
as %String
[ ZenMethod ]
Validate that the given class name is valid to use as the class on which to base the form.
Returns an error message if invalid.
method canGoBack()
[ Language = javascript ]
Return true if this template can go to the previous page (i.e., enable
the Back button).
method canGoNext()
[ Language = javascript ]
Return true if this template can go to the next page (i.e., enable
the Next button).
method formValidationHandler()
[ Language = javascript ]
Validation handler for form built-into template.
method hasMultiplePages()
[ Language = javascript ]
Return true if this template has more than one "page".
This will display Back and Next buttons.
This is implemented by subclasses.
method nextPage()
[ Language = javascript ]
Go to the next page of the template (if there is one).
method onstartHandler()
[ Language = javascript ]
This is called when the template is first displayed;
This provides a chance to set focus etc.
method previousPage()
[ Language = javascript ]
Go to the previous page of the template (if there is one).
method updateForm()
[ Language = javascript ]
Update state of controls on the wizard form.
method validateTab1(speak)
[ Language = javascript ]
If speak is true, output an alert message with results of validation.
If speak is false, do not output an alert. In both cases return
true if the package name and class name are valid, false if invalid.
method validateTab2(speak)
[ Language = javascript ]
If speak is true, output an alert message with results of validation.
If speak is false, do not output an alert. In both cases return
true if the data class name is valid, false if invalid.