FormsPublisher: FormAPI Developer s Guide Release 6.5

Size: px
Start display at page:

Download "FormsPublisher: FormAPI Developer s Guide Release 6.5"

Transcription

1 FormsPublisher: FormAPI Developer s Guide Release 6.5

2 Interwoven, Inc. All rights reserved. No part of this publication (hardcopy or electronic form) may be reproduced, translated into another language, or transmitted, in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, without the prior written consent of Interwoven. Information in this manual is furnished under license by Interwoven, Inc. and may only be used in accordance with the terms of the license agreement. If this software or documentation directs you to copy materials, you must first have permission from the copyright owner of the materials to avoid violating the law which could result in damages or other remedies. Interwoven, TeamSite, Content Networks, OpenDeploy, MetaTagger, DataDeploy, DeskSite, imanage, MailSite, MediaBin, MetaCode, MetaFinder, MetaSource, OpenTransform, Primera, TeamPortal, TeamXML, TeamXpress, VisualAnnotate, WorkKnowledge, WorkDocs, WorkPortal, WorkRoute, WorkTeam, the respective taglines, logos and service marks are trademarks of Interwoven, Inc., which may be registered in certain jurisdictions. All other trademarks are owned by their respective owners. Some or all of the information contained herein may be protected by patent numbers: US # 6,505,212, EP / ATRA / BELG / DENM / FINL / FRAN / GBRI / GREC / IREL / ITAL / LUXE / NETH / PORT / SPAI / SWED / SWIT # , US # 6,480,944, US# 5,845,270, US #5,384,867, US #5,430,812, US #5,754,704, US #5,347,600, AUS #735365, GB #GB , US #5,845,067, US #6,675,299, US #5,835,037, AUS #632333, BEL #480941, BRAZ #PI , CAN #2,062,965, DENM / EPC / FRAN / GRBI / ITAL / LUXE / NETH / SPAI / SWED / SWIT #480941, GERM # , JAPA # , NORW #301860, US #5,065,447, US #6,609,184, US #6,141,017, US #5,990,950, US #5,821,999, US #5,805,217, US #5,838,832, US #5,867,221, US #5,923,376, US #6,434,273, US #5,867,603, US #4,941,193, US #5,822,721, US #5,845,270, US #5,923,785, US #5,982,938, US #5,790,131, US #5,721,543, US #5,982,441, US #5,857,036, GERM # or other patents pending application for Interwoven, Inc. This Interwoven product utilizes third-party components under the following copyrights with all rights reserved: Copyright 1997 Eric Young; , Apache Software Foundation ( Copyright 1999, ExoLab Group; Copyright , Intalio, Inc. If you are interested in using these components for other purposes, contact the appropriate vendor. Interwoven, Inc th Ave. Sunnyvale, CA Printed in the United States of America Release 6.5 Part # October 2004

3 Table of Contents Chapter 1: Overview 7 Chapter 2: Using FormAPI 9 The DCT <script> tag Addressing Addressing Syntax Using Item Addresses Addressing Examples Getting and Setting Item Values Restoring Dynamic Options Empty Options Events onitemchange Save Events Visibility and Read-Only Validation and Highlight Mode Remote Server Calls Auto-DCR Functionality How FormAPI Changes FormsPublisher Hidden vs. Invisible <readonly> vs setreadonly() CGI Callouts Chapter 3: FormAPI Reference 35 API object - IWAPI string IWAPI.getTSTVersion () string IWAPI.getVersion () Data Capture Form - IWDatacapture IWDatacapture.callServer (url, data, isget) IWDatacapture.close (confirmclose) IWDatacapture.displayMessage (message) void IWDatacapture.enableImagePreview (enable) number IWDatacapture.getCurrentPageNumber () string IWDatacapture.getDCRPath () string IWDatacapture.getDCTPath () string IWDatacapture.getFormType () IWItem IWDatacapture.getItem (name) number IWDatacapture.getPageCount () string IWDatacapture.getRole () IWItem[] IWDatacapture.getRootItems () Frame (top level of data capture form/parent).getscriptframe () string IWDatacapture.getUser () string IWDatacapture.getWorkarea () IWDatacapture.gotoPage (pagenumber) boolean IWDatacapture.isHighlightMode () boolean IWDatacapture.isModified ()

4 IWDatacapture.save () IWDatacapture.setHighlightMode (highlightmode) IWDatacapture.setIsModified () DCT Items - IWItem IWItem.addInstance (index, [choice_name]) IWItem.addOption (option) boolean IWItem.deleteInstance (index) IwItem IWItem.getChildByName (name) IWItem[] IWItem.getChildren () string IWItem.getName () Option[] IWItem.getOptions () RegExp IWItem.getRegex () string IWItem.getType () string, number, or number[] IWItem.getValue () IWItem.isCollapsed () boolean IWItem.isMultiSelect () boolean IWItem.isReadOnly () boolean IWItem.isRequired () boolean IWItem.isValid () boolean IWItem.isVisible () boolean IWItem.isVisualFormat () boolean IWItem.moveInstance (from_index, to_index) IWItem.removeOption (index) IWItem.setCollapsed (boolean) IWItem.setFocus () IWItem.setOptions (options) boolean IWItem.setReadOnly (readonly, [optional recursive]) IWItem.setRegex (regex) IWItem.setRequired (required) IWItem.setValid (value) IWItem.setValue (value) IWItem.setVisible (visible) string IWItem.toString () Event Registry - IWEventRegistry IWEventRegistry.addFormHandler (eventname func) IWEventRegistry.addItemHandler (itemname eventname func) IWEventRegistry.removeFormHandler (eventname) IWEventRegistry.removeItemHandler (itemname eventname) DCR Information - IWDCRInfo string IWDCRInfo.getDCRName () number IWDCRInfo.getFileSize () Date IWDCRInfo.getModificationDate () string IWDCRInfo.getOwner () number IWDCRInfo.getStatus () boolean IWDCRInfo.isModifiedInWA () boolean IWDCRInfo.setDCRName (path callback) Name Factory - IWNameFactory void IWNameFactory.setAutoDCRPathGenerator (function) function IWNameFactory.getAutoDCRPathGenerator () FormsPublisher: FormAPI Developer s Guide

5 Page Generation - IWPageGeneration IWPresentationTemplate IWPageGeneration.getPresentationTemplate() IWPresentationTemplate.getName[] IWPageGeneration.getValidPresentationTemplates () string IWPageGeneration.getOutputFile () IWPageGeneration.setOutputFile (filename create_directories) boolean IWPageGeneration.setPresentationTemplate (template) Presentation Template - IWPresentationTemplate string IWPresentationTemplate.getExtension () string IWPresentationTemplate.getName () string IWPresentationTemplate.getPath () Appendix A: Sample User Scripts 67 The Contact User Script The Script The DCT The Contact DTD Element The Location User Script Installation The Script The DCT The Location DTD Element The Organization User Script The Script The DCT The Organization DTD Element The Position User Script The Script The DCT The Position DTD Element Index 83 5

6 6 FormsPublisher: FormAPI Developer s Guide

7 Chapter 1 Overview FormsPublisher FormAPI allows you, as a template designer, to create forms that dynamically respond to user actions and other external events. With FormAPI, browser templates are no longer simple, static forms. They can become responsive, interactive, highly customized interfaces that greatly enhance the experience of the user entering content. Some of the things you can do with FormAPI include:! Automatically compute the value of one field based on the value of another (for example, a Totals field is computed from a set of Price replicants).! Change the options in a selection element based on the value of another element (for example, after the user has entered City and State, a database query automatically populates the ZIP Code field with the valid ZIP codes for that city).! Make an entry field appear or disappear as needed (for example, the Shipping Address fields only appear if the user unchecks Same as billing).! Intercept the Save button press to provide custom data validation (for example, warn if the user has entered a value for Project Start Date that is after the value for Project End Date).! Automatically set the name of the data content record (DCR), based on the value of other fields (for example, use the value from the Model Number field of a product description record for the file name, precluding the need to prompt the user for a name). You enable this functionality by writing a user script that is included (either in-line or referenced) in the data capture template (DCT). A user script is custom JavaScript code that uses FormAPI to interact with the data capture form presented by FormsPublisher. Almost anything that can be done manually by the user entering content into a form may be scripted (thus the name user script ) through FormAPI. At the heart of FormAPI are the event registry and the form item object. The event registry allows you to associate a user script function to a user event, such as changing the value of a selection or clicking the Save As button. The FormAPI item object represents an individual form element, like the Name entry field or the Gender radio button set. The item object provides methods that let you dynamically query and change its value and other attributes. A user script author identifies an item by its address, which is an XPath(1)-like notation that references an item relative to its position in the DCR. 7

8 Overview FormAPI also provides numerous other methods for operating on the form as a whole and for querying attributes of the DCR. Some important things to note about FormAPI:! FormAPI supports DCRs from both the Interwoven DTD and from custom DTDs.! FormAPI is a JavaScript API. This documentation assumes the user is familiar with the language syntax, features and limitations. An excellent reference is JavaScript: The Definitive Reference, 3rd ed, by David Flanagan, O'Reilly and Associates, 1998.! The user script does not interact with the browser document object model (DOM) interface to the HTML form. Instead, FormAPI provides methods to query and set the values of items in the form. This lets FormAPI provide a consistent interface to form items that have no DOM analog (like VisualFormat textareas or items that are not currently on the displayed page in multipage forms) or to features that the DOM does not support (such as custom validation expressions for an item). JavaScript authors familiar with the DOM will find the FormAPI interface very similar, however.! While user scripts may interact with the user in a number of ways (like JavaScript dialogs or new browser windows), FormAPI itself presents no visible elements to the user. In this way, the user experience of the person entering content is completely under your control. It also means that faulty usage of FormAPI never manifests itself as an error message or dialog. In most cases, the API simply ignores a function call with a bad argument. By providing an interface to FormsPublisher, a new world of possibilities is opened to you. This flexibility does not come without cost, however. Because of the open nature of the JavaScript browser platform and the fact that user script code is running alongside FormsPublisher, it is possible to write code that fails with a JavaScript run time error, that puts the form in an unusable state, or that corrupts user data. Wherever possible, of course, FormAPI handles faulty input gracefully (usually, by doing nothing), but you must take care to use only the methods documented in FormAPI as specified and to test the template carefully before deployment. Note: User scripts must be valid JavaScript code that use FormsPublisher FormAPI only as defined in this document. Failure to do so can result in unusable templates. The next chapter (Chapter 2, Using FormAPI ) provides details on how to include user scripts in templates and discusses some of the methods in detail. Chapter 3, FormAPI Reference provides a complete reference to all the methods in FormAPI. 8 FormsPublisher: FormAPI Developer s Guide

9 Chapter 2 Using FormAPI This chapter provides information on how to set up FormAPI so it can be used in your data capture templates. It also provides information and examples on other aspects of FormAPI that will help improve your results. The DCT <script> tag Before you can start using FormAPI to enhance your templates, you need to tell FormsPublisher where to find your user script. This is done by using the data capture template (DCT) <script> tag. Code in the <script> tag is loaded by FormsPublisher whenever the user creates a new data content record (DCR) or edits an existing one. The <script> tag is not read when the user views a DCR (so user scripts are not executed). This can account for differences in how the DCR is displayed in the view and edit modes; see Getting and Setting Item Values for more details. The <script> tag is one of two changes that the FormAPI enhancements make to the previous data capture template DTD (datacapture5.0.dtd): <!ELEMENT ruleset (label?, description?, script*, (%items;)*)>... <!ELEMENT script (#PCDATA)> <!ATTLIST script language CDATA "javascript" location (webserver template-type) CDATA "webserver" src CDATA #IMPLIED > Note: The other change was making the url attribute of the <cgi-callout> subelement optional; see CGI Callouts. As this snippet from the new DTD indicates, the <ruleset> element in the DCT now takes any number of <script> tags. The <script> tag has three attributes: language, location, and src, and it may also have content. The language attribute defaults to javascript. Currently, FormAPI only has a JavaScript binding. 9

10 Using FormAPI You may specify a user script in either of two ways:! You can include the user script in the DCT in the <script> tag, as a CDATA section. This has the advantage that the code is always with the template definition and changes that affect both parts can be maintained in a single file.! You can keep your code separate from your DCT and point FormsPublisher to your file using the src and location attributes. This makes it easier to share the file across templates. To place the code inline in a CDATA section, place the content within the XML CDATA markers, <![CDATA[' and `]]>. For example, the following code opens an alert when the template is first loaded: <ruleset name="teamsite Templating"> <itemref name="address"/> <script> <![CDATA[ alert ("Hello, world!"); ]]> </script> </ruleset> Alternatively, you could save the script in a file called hello.js and specify its location using the src attribute. The actual location the src attribute points to may be anywhere on a webserver, in the same directory as the data capture template type definition, or somewhere else on the same TeamSite server. The value of the location attribute controls how the src attribute is interpreted: webserver The src attribute is the URL of the target, for example This is the default if the location attribute is not specified. template-type In this case, src specifies a location relative to the template type directory. So if hello.js lived alongside the DCT in: /iwmnt/default/main/workarea/user/templatedata/category/type/hello.js then specifying src="hello.js" would be sufficient. You can use the webserver location type to access content that is on the same TeamSite server but in a different location than the template type directory by using the /iw-mount URL prefix: <script src="/iw-mount/default/main/somebranch/edition/someedition/somedirectory/ hello.js"/> 10 FormsPublisher: FormAPI Developer s Guide

11 Addressing Multiple <script> tags are allowed, in which case their user scripts are loaded into the target frame successively. Typically, a user script consists of a set of functions, usually with one called init(). The last line of the user script calls this function to perform initialization when the frame is executed by the browser. There is no requirement that the function be called init. The JavaScript code is simply executed as it is loaded, as it would in any browser frame. Because FormAPI and the user script code loaded by the <script> tag all reside in the same frame, it is important to adhere to naming conventions to avoid collisions in the global namespace. Identifiers that start with IW, iw, or _iw are reserved for use by FormsPublisher. Addressing Addressing is a means of selecting an individual item in the data capture form. It is also used to register event handlers for an item. The notation of FormAPI item addressing is similar to the W3C XPath Recommendation ( Note: The similarity to XPath is limited to the simple notation for node names. Other features of XPath such as wildcard characters, functions, and relative paths are not part of FormAPI item addresses. FormAPI addressing provides a single, consistent view of the DCT's item structure regardless of its source. Hence the address of an item is directly derived from the DCT that defines it. Each and every item that is directly in the hierarchy of an item in the DCT needs to be included in the address regardless of whether the item has a pathid or location attribute. This applies to both Interwoven-style templates as well as custom DTD templates. Addressing Syntax The notation used for item addresses is similar to basic XPath syntax, which is similar to the UNIX file system addressing. Consider a simple XML file: <state> <city> <street>this is the street node</street> </city> </state> For this XML snippet, the address for node street is /state/city/street, where street is a child of city, which is a child of state. If the path starts with a forward slash /, then it represents an absolute path to the required element from the root element. Absolute paths are the only notations allowed in FormAPI. Relative paths are not supported. 11

12 Using FormAPI If you consider an XML document to be a tree of nodes, then the address to a particular node is /parent_node_address + /child_node_name. If a parent node has multiple children with same name, then the address to the child node contains its position as a number in square brackets next to its name. This address will look like: /parent_node_address/child_node_name[position], where position is a positive integer. The.. notation can be used in addresses to access the parent node. The Addressing Examples section contains more details on the usage. FormAPI addresses only reference a single item. There is no support for wildcard characters such as *. Using Item Addresses The FormAPI method IWDatacapture.getItem() takes an item address and returns an IWItem object that represents it (see Data Capture Form - IWDatacapture ). Conversely, the method getname() of the IWItem object returns the address of an item (see DCT Items - IWItem ). Event handlers on items are registered through IWEventRegistry.addItemHandler() method. It takes the address of the item, the event name and a pointer to the handler as input (see Event Registry - IWEventRegistry ). To illustrate how item addresses are used, consider the following snippet from a DTD: <data-capture-requirements name="example"> <ruleset name="example">... <conatiner name="a" combination="and" location="a"> <container name="b" combination="and" location="b"> <item name="e" pathid="e"> <text/> </item> </container> <item name="c" pathid="c" max="unbounded" min="0"> <text/> </item> </container>... </ruleset> </data-capture-requirements> In the above example, node c is a replicant, while node e is not. To intercept the onitemchange event for the form item that corresponds to node e with a function called handle_e_changed, the user script would execute: IWEventRegistry.addItemHandler("/a/b/e", "onitemchange", handle_e_changed); 12 FormsPublisher: FormAPI Developer s Guide

13 Addressing Because node c is a replicant, the address of the first instance is /a/c[1], while that of second instance is /a/c[2], and so on. To intercept the onitemchange event on all instances of node c item, register a handler to the address /a/c: IWEventRegistry.addItemHandler("/a/c", "onitemchange", handle_c_changed); This is called the prototype path for all c instances. A prototype can only be used in registering event handlers for replicants. It cannot be used in finding items. To register an event for only a specific instance of a replicant, give the path to that replicant. Addressing Examples Example 1: Container Addresses For this DCT: <container name="story" combination="and"> <item name="section" location="section"> <text required="t" maxlength="100"/> </item> </container> The address for the item Section would be /Story/Section. Example 2: Replicant Addresses For this DCT: <data-capture-requirements name="example"> <ruleset name="example">... <container name="a" combination="and" min="0" max="unbounded"> <item name="c" pathid="c"> <text/> </item> <item name="d" pathid="d"> <text/> </item> </container>... </ruleset> </data-capture-requirements> Examples of addresses for some items: " Item c under the first instance of item a: /a[1]/c. " Item c under the eighth instance of item a: /a[8]/c. " Item d under the second instance of item a: /a[2]/d. " Item d under the tenth instance of item a: /a[10]/d. Note: and replicants and or replicants are addressed in the same way. 13

14 Using FormAPI Example 3: Mixed Content Addresses For this DCT: <data-capture-requirements name="example"> <ruleset name="example">... <container name="mixedcontent" combination="or" max="unbounded" min="0"> <item name="l_pcdata" pathid="l"> <text/> </item> <item name="j" pathid="j"> <text/> </item> </container>... </ruleset> </data-capture-requirements> In this example, the MixedContent item has a mixture of both PCDATA and subelements (item j). Addresses for items are: " The PCDATA item under the first instance of MixedContent /MixedContent[1]/l_PCDATA " The j item under the second instance of MixedContent /MixedContent[2]/j Note that PCDATA only appears in an address if it is part of a mixed content element. Example 4: Addressing Parents and Siblings For this DCT: <data-capture-requirements name="example"> <ruleset name="example">... <container name="b" combination="and" location="b"> <item name="e" pathid="e"> <text/> </item> <item name="f" pathid="f"> <text/> </item> </container>... </ruleset> </data-capture-requirements> The following userscript code returns the item object that corresponds to the element e: item = IWDatacapture.getItem("/b/e"); 14 FormsPublisher: FormAPI Developer s Guide

15 Getting and Setting Item Values To get the parent item that corresponds to the element b, use the '..' notation: parent = IWDatacapture.getItem(item.getName() + "/.."); To get the sibling item that corresponds to the element f: siblingitem = IWDatacapture.getItem(item.getName() + "/../f"); Getting and Setting Item Values The FormAPI item object provides the getvalue() and setvalue() methods for getting and setting the value of an item. The value of an item is dependent on its type:! The items <text>, <textarea>, <hidden>, and <browser> have simple string values. (For VisualFormat controls, the string is the HTML that is generated by the contents of the field.)! Single <select> and <radio> items have a single integer value that represents the zerobased index of the currently selected option.! Multiple <select> and <checkbox> items have an array of integers that represent the zero-based indices of their selected options. The items that have options use the index of their selections and not the label or the value of their options. FormAPI provides four methods to access the options of an item:! getoptions() returns an array of JavaScript Option objects.! addoption() appends an Option to the select list for an item.! removeoption() removes an Option from a select list by specifying its index.! setoptions() replaces the selections for an item. The getoptions(), addoption(), and setoptions() methods all make use of the standard JavaScript Option object. This object has text and value properties to access the label and value of the option, respectively. The text of an option is the label the user sees in the form. The value of an option is the value that is saved in the DCR. For example, to set the value of the /a text item to hello: IWDatacapture.getItem("/a").setValue("hello"); To select the third option in the /b radio button: IWDatacapture.getItem("/b").setValue(2); To select the second and third check boxes of the /c item: IWDatacapture.getItem("/c").setValue([1,2]); To get the label of the selected option of the /d select item: item = IWDatacapture.getItem("/d"); label = item.getoptions()[item.getvalue()].text; 15

16 Using FormAPI One of the most powerful features of FormAPI is the ability to dynamically change the available options of an item. For example, suppose the DCT specifies that the city selection has options for New York, Chicago, and Los Angeles: <item name="city"> <label>city</label> <select> <option value="ny" label="new York"/> <option value="chi" label="chicago"/> <option value="la" label="los Angeles"/> </select> </item> A user script may add Boston to the list: item = IWDatacapture.getItem("/city"); newoption = new Option("Boston", "bos", false, false); item.addoption(newoption); Here, we used the JavaScript Option object constructor to create the new entry for Boston. By specifying false to both the selected and defaultselected arguments, the new option is added without changing the current selection. Alternatively, you could replace the entries in the city selection with a new list of cities: newoptions = new Array(); newoptions[0] = new Option("London", "lon", false, false); newoptions[1] = new Option("Paris", "par", false, false); newoptions[2] = new Option("Madrid", "mad", false, false); IWDatacapture.getItem("/city").setOptions(newOptions); Restoring Dynamic Options It is very important to remember that if a user script dynamically changes the options available in a selection, the user has the ability to make a selection that was not declared in the DCT. This can have serious consequences when the form is reopened. For example, when the user selects Boston and saves the form, the value bos is entered into the city element of the resultant DCR, as you had intended. However, when the user reopens this DCR, the value bos does not match any of the declared options in the DCT. In this case, FormsPublisher implicitly adds the bos option to the city selection. However, because it has no way of knowing what the label for this option is, the label of the new option is set to its value. Thus, when the user reopens this DCR, the city selection looks like this: bos New York Chicago Los Angeles with bos selected. 16 FormsPublisher: FormAPI Developer s Guide

17 Getting and Setting Item Values There are several ways to avoid this problem:! The most simplistic approach is to use labels that match values. This is easily implemented if this constraint is acceptable.! The DCT can be configured to list the superset of all possible options, and the user script dynamically sets the correct subset it needs on startup. This, too, is easily implemented but is not acceptable if the options are dynamically generated or queried from a large external source.! The best solution is to ensure that the user script restores the options of a selection if the value does not have the right label. This requires querying the option and checking the label of the selected option. If it is not correct, a new options array is created that adjusts the problem. Because the user script usually has the ability to regenerate the option, this approach is the most flexible. Empty Options If a single <select> item has no value (and no default value), FormsPublisher renders the select list with an extra blank option at the top. Even though this blank entry is physically present in the list to enable the user to make no selection, it is not returned by the FormAPI option methods. If a single <select> or <radio> item is unselected, getvalue() returns null. Calling setvalue(0) selects the first non-blank option; calling removeoption(0) removes the first non-blank option. The options array returned by getoptions does not include the blank option. Because FormsPublisher uses the empty string to represent the case of no selection, options must never have empty values. Multiple <select> items are unaffected by this behavior because they natively support the empty selection when none of their options are selected. If a multiple <select> has no option selected, getvalue() returns an empty array. 17

18 Using FormAPI Events To respond to user actions dynamically, the user script needs to be notified that the user has done something. It does so by listening for a FormAPI event, which is triggered (generated) as the user interacts with the form. Specifically, FormAPI triggers events when the user:! Changes the value of an item, for example, by typing text into a text field or changing the value of a selection (onitemchange). This event is generated for the specific item.! Tries to close the form (onclose). This event is generated for the entire form.! Clicks the callout button for an item (oncallout). This event is generated for the specific item.! Adds, moves, deletes, collapses, or expands a replicant. This event is generated for the specific item.! Previews or generates a form through a presentation template. The event is generated for the entire form.! Tries to save the form, either by clicking Save or Save As, or by requesting a save when prompted after clicking Preview or Generate (onsave). This event is generated for the entire form. Events are also generated at various stages of the save process (onsavevalid, onsavenamespecified, and onsavedone). A user script registers a handler (also known as a callback) to a particular event (or, in the case of the item-specific events, to an item and an event). A handler is a user script function that is called when the event triggers. Depending on the event, the handler may be passed arguments (for example, the onitemchange event handler is passed a copy of the item object that triggered the event). Use the methods of the IWEventRegistry object (see Event Registry - IWEventRegistry ) to register (or remove) an event handler. For example, to call the namechanged() function every time the user changes the value of the /name item: IWEventRegistry.addItemHandler("/name", "onitemchange", namechanged); The user script author does not use the browser's events or DOM in any way. The user script only needs to interact with FormAPI events. The following sections describe the onitemchange and SaveEvents event handlers in more detail. See Event Registry - IWEventRegistry for the complete list of events. 18 FormsPublisher: FormAPI Developer s Guide

19 Events onitemchange The most commonly used event is onitemchange. It is triggered:! On a <text> or <textarea> when the user finishes typing and the focus leaves the item with a different value than it had before.! On a single <select>, <checkbox>, or <radio> item whenever the user makes any selection.! On a multiple <select> list when the user leaves the item, and the set of selections is different than it was before. As in the browser event model, this event usually corresponds to the browser's onchange event. The exception is multiple <select> items, which call onitemchange only when the focus leaves the item (the browser's onblur event) and the set of selections changes. The handler for an onitemchange event is passed a copy of the item object that triggered the event. This object also has a special property set, oldvalue, that stores the value of the item (as returned by getvalue()) before the user made the change. For example, if onitemchange for the /name is registered to the namechanged() function as above, then namechanged() could restore the original value of the field if the user erased it: function namechanged(nameitem) { if (nameitem.getvalue() == "") { nameitem.setvalue(nameitem.oldvalue); Note: Because of the performance penalty involved in computing VisualFormat values, the oldvalue property is unavailable on these items. 19

20 Using FormAPI Save Events The save process is more complicated because it involves several steps: A save may be initiated in several ways. The user might click the Save or Save As button. The Preview and Generate buttons also give the user the opportunity to save the DCR before proceeding. All of these conditions trigger an onsave event. 20 FormsPublisher: FormAPI Developer s Guide

21 Events The onsave event handler is passed an integer that indicates what button triggered the event. In this way, the save handler can determine how the save was triggered and behave differently if necessary: function savehandler(button) { switch (button) { case IWDatacapture.SAVE_BUTTON: case IWDatacapture.SAVEAS_BUTTON: case IWDatacapture.SAVECLOSE_BUTTON: // User clicked 'Save', 'Save As' or 'Finish'... break; case IWDatacapture.PREVIEW_BUTTON: case IWDatacapture.GENERATE_BUTTON: // User clicked 'Preview' or 'Generate'... break; Note: Code references to SAVECLOSE_BUTTON refer to the Finish button in ContentCenter. If an onsave event handler is registered, it must return true for the save to proceed. If it returns false or null, the save is terminated. If the save proceeds, FormsPublisher validates the form, using the required states and validation expression set for each item (see Validation and Highlight Mode ). If validation fails, the user is alerted and the save is terminated. The form automatically enters highlight mode, during which all invalid fields are marked with red labels. If the form is valid, the onsavevalid event is generated, and any registered user script function is invoked. Here, you can include code that validates the form as a whole (for example, ensuring that the start date is before the end date): IWEventRegistry.addFormHandler("onSaveValid", validateform);... function validateform() { // Determine if the form is valid.... if (formvalid) { return true; else { alert("form is invalid..."); return false; Note that the onsavevalid event handler is not passed any arguments. As with the onsave event, the save terminates if the handler returns false. 21

22 Using FormAPI If the save proceeds, FormsPublisher next checks to see if it knows the name of the DCR, or if it needs the user to specify one using the workarea browser. Specifically:! If the user enters the save process by clicking the Save As button, the workarea browser always displays.! If the DCR currently has no name, either because it is a new DCR or because the user script reset the current name by calling IWDCRInfo.setDCRName(null), the workarea browser displays. If the workarea browser displays and the user clicks Cancel, the save is terminated. If the user selects a name, FormsPublisher then triggers the onsavenamespecified event, and calls any registered handler. This provides you with a means to validate the user s file name selection: IWEventRegistry.addFormHandler("onSaveNameSpecified", namechosen);... function namechosen(path) { // Determine if the path is valid.... if (nameok) { return true; else { alert("the filename chosen is invalid..."); return false; The onsavenamespecified event handler is passed the vpath the user selected. The event handler can examine this path and decide if it is acceptable, and return true to continue the save. If the onsavenamespecified handler returns false, the save is terminated. Note: The event handler can also change the name of the DCR by calling IWDCRInfo.setDCRName(), but because this function is asynchronous, it cannot use the other methods in IWDCRInfo to check the properties of the file (see DCR Information - IWDCRInfo ). At this point, the system has all the information necessary to save the form, and the data has passed validation by FormsPublisher and by any custom user script function. When the save completes, one final event, onsavedone, is triggered: IWEventRegistry.addFormHandler("onSaveDone", savedone);... function savedone(success) { if (! success) { alert("the save did not succeed..."); 22 FormsPublisher: FormAPI Developer s Guide

23 Visibility and Read-Only The onsavedone handler is passed a boolean argument indicating whether the save was successful. The user script can alert the user as needed. Because it is the last step of the save process, the onsavedone handler does not have to return a value. FormAPI also provides the IWDatacapture.save() method, which allows the you to save the form without any user interaction. This method does not generate the onsave, onsavevalid, or onsavenamespecified events. It also does not validate the form. It enters the save process near the end, checking only if the DCR name has been specified. If not (because this is a new DCR or because setdcrname(null) was called), IWDatacapture.save() does nothing. Otherwise, the form is saved, and the onsavedone event is triggered. Visibility and Read-Only One of the most powerful features of FormAPI is the ability to dynamically change the visibility or read-only state of an item. This lets you create forms that let the user edit or view only those fields that are relevant in the current context. Note: FormsPublisher provides a <readonly> item type that is distinct from the dynamic read-only state introduced by FormAPI. The <readonly> type is no longer necessary and is not supported by FormAPI (see <readonly> vs setreadonly() ). Use the setvisible() and the setreadonly() methods of the IWItem object to change the state of an item. Use the isvisible() and isreadonly() methods to query the state of an item. An invisible item (made so by calling setvisible(false)) is completely absent on the form. The user will not see the field, its contents, or its label. In addition, the field s entry in the navigation tree is removed. 23

24 Using FormAPI A read-only item is rendered exactly like a normal item, but the user is unable to change its value (text or selections): Normal Items Read-only Items Note: FormsPublisher has no mechanism for recalling the visibility or read-only states of an item when a DCR is reopened. That information exists only in the running user script and is not written to the DCR. Unless the user script explicitly changes the state of an item on load, it is visible and editable. For the same reason, view mode (which does not enable FormAPI or load user scripts) always displays the contents of all the items in the form, regardless of the visibility state that was set in edit mode. Here are some examples: To make the /a item invisible: IWDatacapture.getItem("/a").setVisible(false); IWDatacapture.redraw(); To check the read-only state of the /b item: readonly = IWDatacapture.getItem("/b").isReadOnly(); More typically, you may want to make some fields invisible in response to other selections. Consider an address entry form that is designed to accept both domestic and international 24 FormsPublisher: FormAPI Developer s Guide

25 Validation and Highlight Mode addresses. If the country field selection is set to USA, fields for state and ZIP code should appear. For any other country, they should not be visible. If the country field has the address /address/country, FormAPI can register an event handler, countrychange(), on it for the onitemchange event. This function adjusts the visibility of the state and ZIP code fields. FormAPI calls this function directly on start up, so the initial state of the fields is set correctly. function init() { IWEventRegistry.addItemHandler("/address/country", "onitemchange", countrychange); countrychange(iwdatacapture.getitem("/address/country")); The countrychange() function is passed the item object for the country field. It checks if the value of the currently selected country is USA and sets the visibility of the state and ZIP code fields accordingly. Finally, it forces a redraw to effect the changes: function countrychange(item) { var flag = item.getoptions()[item.getvalue()].value == "USA"; IWDatacapture.getItem("/address/state").setVisible(flag); IWDatacapture.getItem("/address/zip").setVisible(flag); IWDatacapture.redraw(); Constructions like this allow for the creation of interactive, customized forms that significantly improve usability. Validation and Highlight Mode One of the most common requirements of any data entry form is validation. Validation usually involves one or more of the following:! Ensuring that a required field is not blank.! Ensuring that the value of an unbounded field is valid (for example, that a phone number consists of ten digits), by matching its contents against a regular expression. A bounded control is a user interface element that restricts its input to a predefined set of choices, like a selection list or radio button. An unbounded control is a text field or textarea that lets the user enter free-form content.! Ensuring that the contents of the whole form, including relationships between separate fields, make sense (for example, that the start date is not after the end date). When the data a user enters fails validation, the attempt to save must be aborted and the user must be notified which fields are invalid. FormsPublisher provides the means to specify validation rules of the first two categories through the required and validation-regex item attributes in the DCT. For example, you 25

26 Using FormAPI can specify that a phone number is required and must be entered in a standard format by declaring the item like this: <item name="phone"> <label>phone Number</label> <description>enter the phone number (###-###-####)</description> <text required="t" validation-regex="^\d{3-\d{3-\d{4$" maxlength="12"/> </item> When FormsPublisher renders this item, it appends an asterisk to its label indicating that it is required. If the user fails to enter a valid phone number and clicks the Save button, an alert displays and FormsPublisher enters highlight mode. In this mode, all invalid entries are marked with red labels, both on the form and in the navigation tree. FormsPublisher remains in highlight mode until the user corrects the error and successfully saves the form. FormAPI enhances these capabilities by providing you with the ability to dynamically query and change an item s required state (with isrequired() and setrequired()) and validation expression (with getregex() and setregex()). It also provides the means to query and change the highlight mode of the form (with IWDatacapture methods ishighlightmode() and sethighlightmode()). Note: The description of an item, which appears in a frame directly above the form, is not dynamically accessible by FormAPI. This is important to remember if the description includes content entry instructions that may not be accurate if the validation expression changes. In the example above, the description says Enter the phone number (###-###-####). If the user script calls setregex(/\d{10/) to require the phone number to be entered without dashes, the description is no longer accurate. This situation is easily avoided by not relying on the description field for content entry instructions that are variable, and by using alerts and dialogs to inform the user instead. The form can enter highlight mode in two ways:! The form fails save validation and automatically enters highlight mode.! The user script calls IWDatacapture.setHighlightMode(true). Highlight mode stays in effect (with all invalid items marked red since the last redraw) until either the user requests a save and passes validation or the user script calls IWDatacapture.setHighlightMode(false). Normally, an item is considered valid if it meets its required state and validation expression rules that were set by the required and validation-regex attributes in the DCT or the setrequired() and setregex() in the user script. These are the rules that FormsPublisher employs when performing save validation of the form. Many times it is important to be able to mark an item valid or invalid without having to change its required state or validation expression. This kind of validation checking falls into 26 FormsPublisher: FormAPI Developer s Guide

27 Validation and Highlight Mode the third category described at the beginning of the section ensuring that the field value makes sense in the context of the entire form. FormAPI provides the setvalid() method to override the other validation rules and directly declare an item valid or invalid:! setvalid(true) marks this item valid, regardless of its content or required/regex rules. The item always passes save validation and will never be marked red in highlight mode.! setvalid(false) marks this item invalid, regardless of its content or required/regex rules. The item always fails save validation and will always be marked red in highlight mode.! setvalid(null) turns off any override previously set on this item. Save validation examines the required/regex rules on this item to determine if it is invalid. The isvalid() method returns the current validation state of the item. If the item was explicitly marked with setvalid(), that state is returned. Otherwise, the required/regex rules are examined. Like labels on dynamically inserted options (see Getting and Setting Item Values ) and visibility and read-only states (see Visibility and Read-Only ), the user script must restore any dynamically modified validation states or rules on load, or a reopened form will behave differently from when it was last saved. Examples Here are some examples of dynamic validation: To toggle the required state of the /a item: item = IWDatacapture.getItem("/a"); item.setrequired(! item.isrequired()); IWDatacapture.redraw(); To prevent FormsPublisher from flagging the contents of the /b item, regardless of what was entered, register handlers for the onsave and onsavedone events: IWEventRegistry.addFormHandler("onSave", savehandler); IWEventRegistry.addFormHandler("onSaveDone", savefinished); The event handler overrides the validation state during the save process: function savehandler(item) { IWDatacapture.getItem("/b").setValid(true); function savefinished(item) { IWDatacapture.getItem("/b").setValid(null); 27

MASTERTAG DEVELOPER GUIDE

MASTERTAG DEVELOPER GUIDE MASTERTAG DEVELOPER GUIDE TABLE OF CONTENTS 1 Introduction... 4 1.1 What is the zanox MasterTag?... 4 1.2 What is the zanox page type?... 4 2 Create a MasterTag application in the zanox Application Store...

More information

TeamSite Templating Developer s Guide Release 5.5.1

TeamSite Templating Developer s Guide Release 5.5.1 TeamSite Templating Developer s Guide Release 5.5.1 1999-2002 Interwoven, Inc. All rights reserved. No part of this publication (hardcopy or electronic form) may be reproduced or transmitted, in any form

More information

Configuration Manager

Configuration Manager After you have installed Unified Intelligent Contact Management (Unified ICM) and have it running, use the to view and update the configuration information in the Unified ICM database. The configuration

More information

Novell Identity Manager

Novell Identity Manager AUTHORIZED DOCUMENTATION Manual Task Service Driver Implementation Guide Novell Identity Manager 4.0.1 April 15, 2011 www.novell.com Legal Notices Novell, Inc. makes no representations or warranties with

More information

Developing Web Views for VMware vcenter Orchestrator

Developing Web Views for VMware vcenter Orchestrator Developing Web Views for VMware vcenter Orchestrator vcenter Orchestrator 5.1 This document supports the version of each product listed and supports all subsequent versions until the document is replaced

More information

How To Use Query Console

How To Use Query Console Query Console User Guide 1 MarkLogic 8 February, 2015 Last Revised: 8.0-1, February, 2015 Copyright 2015 MarkLogic Corporation. All rights reserved. Table of Contents Table of Contents Query Console User

More information

Kaldeera Workflow Designer 2010 User's Guide

Kaldeera Workflow Designer 2010 User's Guide Kaldeera Workflow Designer 2010 User's Guide Version 1.0 Generated May 18, 2011 Index 1 Chapter 1: Using Kaldeera Workflow Designer 2010... 3 1.1 Getting Started with Kaldeera... 3 1.2 Importing and exporting

More information

DTD Tutorial. About the tutorial. Tutorial

DTD Tutorial. About the tutorial. Tutorial About the tutorial Tutorial Simply Easy Learning 2 About the tutorial DTD Tutorial XML Document Type Declaration commonly known as DTD is a way to describe precisely the XML language. DTDs check the validity

More information

Novell Identity Manager

Novell Identity Manager Password Management Guide AUTHORIZED DOCUMENTATION Novell Identity Manager 3.6.1 June 05, 2009 www.novell.com Identity Manager 3.6.1 Password Management Guide Legal Notices Novell, Inc. makes no representations

More information

LabVIEW Internet Toolkit User Guide

LabVIEW Internet Toolkit User Guide LabVIEW Internet Toolkit User Guide Version 6.0 Contents The LabVIEW Internet Toolkit provides you with the ability to incorporate Internet capabilities into VIs. You can use LabVIEW to work with XML documents,

More information

Client SuiteScript Developer s Guide

Client SuiteScript Developer s Guide Client SuiteScript Developer s Guide Copyright NetSuite, Inc. 2005 All rights reserved. January 18, 2007 This document is the property of NetSuite, Inc., and may not be reproduced in whole or in part without

More information

E-mail Management Installation and User s Guide

E-mail Management Installation and User s Guide imanage E-mail Management Installation and User s Guide Version 8.5 Document Revision 4 19 October 2010 Copyright Notice Notice This document is a proprietary product of Autonomy and is protected by copyright

More information

JavaScript Basics & HTML DOM. Sang Shin Java Technology Architect Sun Microsystems, Inc. sang.shin@sun.com www.javapassion.com

JavaScript Basics & HTML DOM. Sang Shin Java Technology Architect Sun Microsystems, Inc. sang.shin@sun.com www.javapassion.com JavaScript Basics & HTML DOM Sang Shin Java Technology Architect Sun Microsystems, Inc. sang.shin@sun.com www.javapassion.com 2 Disclaimer & Acknowledgments Even though Sang Shin is a full-time employee

More information

FILESURF 7.5 SR3/WORKSITE INTEGRATION INSTALLATION MANUAL 1 PRELIMINARIES...3 STEP 1 - PLAN THE FIELD MAPPING...3 STEP 2 - WORKSITE CONFIGURATION...

FILESURF 7.5 SR3/WORKSITE INTEGRATION INSTALLATION MANUAL 1 PRELIMINARIES...3 STEP 1 - PLAN THE FIELD MAPPING...3 STEP 2 - WORKSITE CONFIGURATION... FILESURF 7.5 SR3/WORKSITE INTEGRATION 1 PRELIMINARIES...3 Prerequisites... 3 The FILESURFAdmin User Domain Account Required... 3 STEP 1 - PLAN THE FIELD MAPPING...3 Plan Which WorkSite Fields Will Carry

More information

FTP Service Reference

FTP Service Reference IceWarp Server FTP Service Reference Version 10 Printed on 12 August, 2009 i Contents FTP Service 1 V10 New Features... 2 FTP Access Mode... 2 FTP Synchronization... 2 FTP Service Node... 3 FTP Service

More information

USER GUIDE MANTRA WEB EXTRACTOR. www.altiliagroup.com

USER GUIDE MANTRA WEB EXTRACTOR. www.altiliagroup.com USER GUIDE MANTRA WEB EXTRACTOR www.altiliagroup.com Page 1 of 57 MANTRA WEB EXTRACTOR USER GUIDE TABLE OF CONTENTS CONVENTIONS... 2 CHAPTER 2 BASICS... 6 CHAPTER 3 - WORKSPACE... 7 Menu bar 7 Toolbar

More information

Aras Corporation. 2005 Aras Corporation. All rights reserved. Notice of Rights. Notice of Liability

Aras Corporation. 2005 Aras Corporation. All rights reserved. Notice of Rights. Notice of Liability Aras Corporation 2005 Aras Corporation. All rights reserved Notice of Rights All rights reserved. Aras Corporation (Aras) owns this document. No part of this document may be reproduced or transmitted in

More information

Event Manager. LANDesk Service Desk

Event Manager. LANDesk Service Desk Event Manager LANDesk Service Desk LANDESK SERVICE DESK EVENT MANAGER GUIDE This document contains information that is the proprietary and confidential property of LANDesk Software, Inc. and/or its affiliated

More information

Designing and Implementing Forms 34

Designing and Implementing Forms 34 C H A P T E R 34 Designing and Implementing Forms 34 You can add forms to your site to collect information from site visitors; for example, to survey potential customers, conduct credit-card transactions,

More information

NewsletterAdmin 2.4 Setup Manual

NewsletterAdmin 2.4 Setup Manual NewsletterAdmin 2.4 Setup Manual Updated: 7/22/2011 Contact: corpinteractiveservices@crain.com Contents Overview... 2 What's New in NewsletterAdmin 2.4... 2 Before You Begin... 2 Testing and Production...

More information

SQL Server 2005 Reporting Services (SSRS)

SQL Server 2005 Reporting Services (SSRS) SQL Server 2005 Reporting Services (SSRS) Author: Alex Payne and Brian Welcker Published: May 2005 Summary: SQL Server 2005 Reporting Services is a key component of SQL Server 2005. Reporting Services

More information

HP LoadRunner. Software Version: 11.00. Ajax TruClient Tips & Tricks

HP LoadRunner. Software Version: 11.00. Ajax TruClient Tips & Tricks HP LoadRunner Software Version: 11.00 Ajax TruClient Tips & Tricks Document Release Date: October 2010 Software Release Date: October 2010 Legal Notices Warranty The only warranties for HP products and

More information

Dreamweaver Tutorials Creating a Web Contact Form

Dreamweaver Tutorials Creating a Web Contact Form Dreamweaver Tutorials This tutorial will explain how to create an online contact form. There are two pages involved: the form and the confirmation page. When a user presses the submit button on the form,

More information

TIBCO Hawk SNMP Adapter Installation

TIBCO Hawk SNMP Adapter Installation TIBCO Hawk SNMP Adapter Installation Software Release 4.9.0 November 2012 Two-Second Advantage Important Information SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCH EMBEDDED OR

More information

MyOra 3.0. User Guide. SQL Tool for Oracle. Jayam Systems, LLC

MyOra 3.0. User Guide. SQL Tool for Oracle. Jayam Systems, LLC MyOra 3.0 SQL Tool for Oracle User Guide Jayam Systems, LLC Contents Features... 4 Connecting to the Database... 5 Login... 5 Login History... 6 Connection Indicator... 6 Closing the Connection... 7 SQL

More information

GP REPORTS VIEWER USER GUIDE

GP REPORTS VIEWER USER GUIDE GP Reports Viewer Dynamics GP Reporting Made Easy GP REPORTS VIEWER USER GUIDE For Dynamics GP Version 2015 (Build 5) Dynamics GP Version 2013 (Build 14) Dynamics GP Version 2010 (Build 65) Last updated

More information

imanage WorkSite Server Administrator s guide

imanage WorkSite Server Administrator s guide imanage WorkSite Server Administrator s guide Version 8.5 June 2009 Copyright Notice Notice 1999-2009 Autonomy Corporation plc and its affiliates. All rights reserved. No part of this publication (hardcopy

More information

Introduction to Ingeniux Forms Builder. 90 minute Course CMSFB-V6 P.0-20080901

Introduction to Ingeniux Forms Builder. 90 minute Course CMSFB-V6 P.0-20080901 Introduction to Ingeniux Forms Builder 90 minute Course CMSFB-V6 P.0-20080901 Table of Contents COURSE OBJECTIVES... 1 Introducing Ingeniux Forms Builder... 3 Acquiring Ingeniux Forms Builder... 3 Installing

More information

metaengine DataConnect For SharePoint 2007 Configuration Guide

metaengine DataConnect For SharePoint 2007 Configuration Guide metaengine DataConnect For SharePoint 2007 Configuration Guide metaengine DataConnect for SharePoint 2007 Configuration Guide (2.4) Page 1 Contents Introduction... 5 Installation and deployment... 6 Installation...

More information

Apple Applications > Safari 2008-10-15

Apple Applications > Safari 2008-10-15 Safari User Guide for Web Developers Apple Applications > Safari 2008-10-15 Apple Inc. 2008 Apple Inc. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system,

More information

User Application: Design Guide

User Application: Design Guide www.novell.com/documentation User Application: Design Guide Designer for Identity Manager Roles Based Provisioning Tools 4.0.2 June 15, 2012 Legal Notices Novell, Inc. makes no representations or warranties

More information

NiCE Log File Management Pack. for. System Center Operations Manager 2012. Quick Start Guide

NiCE Log File Management Pack. for. System Center Operations Manager 2012. Quick Start Guide NiCE Log File Management Pack for System Center Operations Manager 2012 Version 1.30 March 2015 Quick Start Guide Legal Notices NiCE IT Management Solutions GmbH makes no warranty of any kind with regard

More information

Change Management for Rational DOORS User s Guide

Change Management for Rational DOORS User s Guide Change Management for Rational DOORS User s Guide Before using this information, read the general information under Appendix: Notices on page 58. This edition applies to Change Management for Rational

More information

There are numerous ways to access monitors:

There are numerous ways to access monitors: Remote Monitors REMOTE MONITORS... 1 Overview... 1 Accessing Monitors... 1 Creating Monitors... 2 Monitor Wizard Options... 11 Editing the Monitor Configuration... 14 Status... 15 Location... 17 Alerting...

More information

Secure Web Gateway Version 11.7 High Availability

Secure Web Gateway Version 11.7 High Availability Secure Web Gateway Version 11.7 High Availability Legal Notice Copyright 2015 Trustwave Holdings, Inc. All rights reserved. This document is protected by copyright and any distribution, reproduction, copying,

More information

HP A-IMC Firewall Manager

HP A-IMC Firewall Manager HP A-IMC Firewall Manager Configuration Guide Part number: 5998-2267 Document version: 6PW101-20110805 Legal and notice information Copyright 2011 Hewlett-Packard Development Company, L.P. No part of this

More information

Writer Guide. Chapter 15 Using Forms in Writer

Writer Guide. Chapter 15 Using Forms in Writer Writer Guide Chapter 15 Using Forms in Writer Copyright This document is Copyright 2005 2008 by its contributors as listed in the section titled Authors. You may distribute it and/or modify it under the

More information

FTP Service Reference

FTP Service Reference IceWarp Unified Communications Reference Version 11.3 Published on 1/6/2015 Contents... 3 About... 4 Reference... 5 General Tab... 5 Dialog... 6 FTP Site... 6 Users... 7 Groups... 11 Options... 14 Access...

More information

CRM Rules! User Guide. Version 3.0.2 Prepared October, 2012 By: David L. Carr, President, Visionary Software

CRM Rules! User Guide. Version 3.0.2 Prepared October, 2012 By: David L. Carr, President, Visionary Software CRM Rules! User Guide Version 3.0.2 Prepared October, 2012 By: David L. Carr, President, Visionary Software Table Of Contents Chapter 1: Overview... 5 What s a CRM Rule?... 5 What Can I Do With CRM Rules!?...

More information

Viewing Form Results

Viewing Form Results Form Tags XHTML About Forms Forms allow you to collect information from visitors to your Web site. The example below is a typical tech suupport form for a visitor to ask a question. More complex forms

More information

Working with Templates. Schoolwires Centricity2

Working with Templates. Schoolwires Centricity2 Working with Templates Schoolwires Centricity2 Trademark Notice Schoolwires, the Schoolwires logos, and the unique trade dress of Schoolwires are the trademarks, service marks, trade dress and logos of

More information

Portals and Hosted Files

Portals and Hosted Files 12 Portals and Hosted Files This chapter introduces Progress Rollbase Portals, portal pages, portal visitors setup and management, portal access control and login/authentication and recommended guidelines

More information

WebSocket Server. To understand the Wakanda Server side WebSocket support, it is important to identify the different parts and how they interact:

WebSocket Server. To understand the Wakanda Server side WebSocket support, it is important to identify the different parts and how they interact: WebSocket Server Wakanda Server provides a WebSocket Server API, allowing you to handle client WebSocket connections on the server. WebSockets enable Web applications (clients) to use the WebSocket protocol

More information

HTML Form Widgets. Review: HTML Forms. Review: CGI Programs

HTML Form Widgets. Review: HTML Forms. Review: CGI Programs HTML Form Widgets Review: HTML Forms HTML forms are used to create web pages that accept user input Forms allow the user to communicate information back to the web server Forms allow web servers to generate

More information

WebSphere Business Monitor

WebSphere Business Monitor WebSphere Business Monitor Monitor models 2010 IBM Corporation This presentation should provide an overview of monitor models in WebSphere Business Monitor. WBPM_Monitor_MonitorModels.ppt Page 1 of 25

More information

Internet Technologies

Internet Technologies QAFQAZ UNIVERSITY Computer Engineering Department Internet Technologies HTML Forms Dr. Abzetdin ADAMOV Chair of Computer Engineering Department aadamov@qu.edu.az http://ce.qu.edu.az/~aadamov What are forms?

More information

Pay with Amazon Integration Guide

Pay with Amazon Integration Guide 2 2 Contents... 4 Introduction to Pay with Amazon... 5 Before you start - Important Information... 5 Important Advanced Payment APIs prerequisites... 5 How does Pay with Amazon work?...6 Key concepts in

More information

v4.8 Getting Started Guide: Using SpatialWare with MapInfo Professional for Microsoft SQL Server

v4.8 Getting Started Guide: Using SpatialWare with MapInfo Professional for Microsoft SQL Server v4.8 Getting Started Guide: Using SpatialWare with MapInfo Professional for Microsoft SQL Server Information in this document is subject to change without notice and does not represent a commitment on

More information

Elixir Schedule Designer User Manual

Elixir Schedule Designer User Manual Elixir Schedule Designer User Manual Release 7.3 Elixir Technology Pte Ltd Elixir Schedule Designer User Manual: Release 7.3 Elixir Technology Pte Ltd Published 2008 Copyright 2008 Elixir Technology Pte

More information

Administration Quick Start

Administration Quick Start www.novell.com/documentation Administration Quick Start ZENworks 11 Support Pack 3 February 2014 Legal Notices Novell, Inc., makes no representations or warranties with respect to the contents or use of

More information

Using the Synchronization Client

Using the Synchronization Client Using the Synchronization Client The owncloud Desktop Client remains in the background and is visible as an icon in the system tray (Windows, KDE), status bar (Mac OS X), or notification area (Linux).

More information

fåíéêåéí=péêîéê=^çãáåáëíê~íçêûë=dìáçé

fåíéêåéí=péêîéê=^çãáåáëíê~íçêûë=dìáçé fåíéêåéí=péêîéê=^çãáåáëíê~íçêûë=dìáçé Internet Server FileXpress Internet Server Administrator s Guide Version 7.2.1 Version 7.2.2 Created on 29 May, 2014 2014 Attachmate Corporation and its licensors.

More information

Getting Started Guide

Getting Started Guide Getting Started Guide Mulberry IMAP Internet Mail Client Versions 3.0 & 3.1 Cyrusoft International, Inc. Suite 780 The Design Center 5001 Baum Blvd. Pittsburgh PA 15213 USA Tel: +1 412 605 0499 Fax: +1

More information

Slide.Show Quick Start Guide

Slide.Show Quick Start Guide Slide.Show Quick Start Guide Vertigo Software December 2007 Contents Introduction... 1 Your first slideshow with Slide.Show... 1 Step 1: Embed the control... 2 Step 2: Configure the control... 3 Step 3:

More information

Novell ZENworks 10 Configuration Management SP3

Novell ZENworks 10 Configuration Management SP3 AUTHORIZED DOCUMENTATION Software Distribution Reference Novell ZENworks 10 Configuration Management SP3 10.3 November 17, 2011 www.novell.com Legal Notices Novell, Inc., makes no representations or warranties

More information

Broner Issue Tracking System User Guide

Broner Issue Tracking System User Guide Broner Issue Tracking System User Guide Preliminary Pages Address Copyright 2015, Broner Metals Solutions Ltd. All rights reserved Broner product names which are mentioned in this document and the Broner

More information

Cleo Communications. CUEScript Training

Cleo Communications. CUEScript Training Cleo Communications CUEScript Training Introduction RMCS Architecture Why CUEScript, What is it? How and Where Scripts in RMCS XML Primer XPath Pi Primer Introduction (cont.) Getting Started Scripting

More information

Web Development. Owen Sacco. ICS2205/ICS2230 Web Intelligence

Web Development. Owen Sacco. ICS2205/ICS2230 Web Intelligence Web Development Owen Sacco ICS2205/ICS2230 Web Intelligence Introduction Client-Side scripting involves using programming technologies to build web pages and applications that are run on the client (i.e.

More information

Qlik REST Connector Installation and User Guide

Qlik REST Connector Installation and User Guide Qlik REST Connector Installation and User Guide Qlik REST Connector Version 1.0 Newton, Massachusetts, November 2015 Authored by QlikTech International AB Copyright QlikTech International AB 2015, All

More information

Email Data Protection. Administrator Guide

Email Data Protection. Administrator Guide Email Data Protection Administrator Guide Email Data Protection Administrator Guide Documentation version: 1.0 Legal Notice Legal Notice Copyright 2015 Symantec Corporation. All rights reserved. Symantec,

More information

Hypercosm. Studio. www.hypercosm.com

Hypercosm. Studio. www.hypercosm.com Hypercosm Studio www.hypercosm.com Hypercosm Studio Guide 3 Revision: November 2005 Copyright 2005 Hypercosm LLC All rights reserved. Hypercosm, OMAR, Hypercosm 3D Player, and Hypercosm Studio are trademarks

More information

PTC Integrity Eclipse and IBM Rational Development Platform Guide

PTC Integrity Eclipse and IBM Rational Development Platform Guide PTC Integrity Eclipse and IBM Rational Development Platform Guide The PTC Integrity integration with Eclipse Platform and the IBM Rational Software Development Platform series allows you to access Integrity

More information

Silect Software s MP Author

Silect Software s MP Author Silect MP Author for Microsoft System Center Operations Manager Silect Software s MP Author User Guide September 2, 2015 Disclaimer The information in this document is furnished for informational use only,

More information

Introduction to XML Applications

Introduction to XML Applications EMC White Paper Introduction to XML Applications Umair Nauman Abstract: This document provides an overview of XML Applications. This is not a comprehensive guide to XML Applications and is intended for

More information

User Guide. Publication Date: October 30, 2015. Metalogix International GmbH., 2008-2015 All Rights Reserved.

User Guide. Publication Date: October 30, 2015. Metalogix International GmbH., 2008-2015 All Rights Reserved. ControlPoint for Office 365 Publication Date: October 30, 2015 All Rights Reserved. This software is protected by copyright law and international treaties. Unauthorized reproduction or distribution of

More information

Integrating with BarTender Integration Builder

Integrating with BarTender Integration Builder Integrating with BarTender Integration Builder WHITE PAPER Contents Overview 3 Understanding BarTender's Native Integration Platform 4 Integration Builder 4 Administration Console 5 BarTender Integration

More information

Adobe Acrobat 9 Deployment on Microsoft Systems Management

Adobe Acrobat 9 Deployment on Microsoft Systems Management Adobe Acrobat 9 Deployment on Microsoft Systems Management Server white paper TABLE OF CONTENTS 1. Document overview......... 1 2. References............. 1 3. Product overview.......... 1 4. Installing

More information

User's Guide. ControlPoint. Change Manager (Advanced Copy) SharePoint Migration. v. 4.0

User's Guide. ControlPoint. Change Manager (Advanced Copy) SharePoint Migration. v. 4.0 User's Guide ControlPoint Change Manager (Advanced Copy) SharePoint Migration v. 4.0 Last Updated 7 August 2013 i Contents Preface 3 What's New in Version 4.0... 3 Components... 3 The ControlPoint Central

More information

CA Nimsoft Monitor. Probe Guide for NT Event Log Monitor. ntevl v3.8 series

CA Nimsoft Monitor. Probe Guide for NT Event Log Monitor. ntevl v3.8 series CA Nimsoft Monitor Probe Guide for NT Event Log Monitor ntevl v3.8 series Legal Notices Copyright 2013, CA. All rights reserved. Warranty The material contained in this document is provided "as is," and

More information

Copyright 2008 The Pragmatic Programmers, LLC.

Copyright 2008 The Pragmatic Programmers, LLC. Extracted from: Stripes... and Java Web Development Is Fun Again This PDF file contains pages extracted from Stripes, published by the Pragmatic Bookshelf. For more information or to purchase a paperback

More information

Coveo Platform 7.0. Microsoft Dynamics CRM Connector Guide

Coveo Platform 7.0. Microsoft Dynamics CRM Connector Guide Coveo Platform 7.0 Microsoft Dynamics CRM Connector Guide Notice The content in this document represents the current view of Coveo as of the date of publication. Because Coveo continually responds to changing

More information

Veritas Cluster Server Database Agent for Microsoft SQL Configuration Guide

Veritas Cluster Server Database Agent for Microsoft SQL Configuration Guide Veritas Cluster Server Database Agent for Microsoft SQL Configuration Guide Windows 2000, Windows Server 2003 5.0 11293743 Veritas Cluster Server Database Agent for Microsoft SQL Configuration Guide Copyright

More information

Permissions Management for Site Admins

Permissions Management for Site Admins ControlPoint Publication Date: April 29, 2015 All Rights Reserved. This software is protected by copyright law and international treaties. Unauthorized reproduction or distribution of this software, or

More information

SyncTool for InterSystems Caché and Ensemble.

SyncTool for InterSystems Caché and Ensemble. SyncTool for InterSystems Caché and Ensemble. Table of contents Introduction...4 Definitions...4 System requirements...4 Installation...5 How to use SyncTool...5 Configuration...5 Example for Group objects

More information

Accessing Data with ADOBE FLEX 4.6

Accessing Data with ADOBE FLEX 4.6 Accessing Data with ADOBE FLEX 4.6 Legal notices Legal notices For legal notices, see http://help.adobe.com/en_us/legalnotices/index.html. iii Contents Chapter 1: Accessing data services overview Data

More information

TIBCO Fulfillment Provisioning Session Layer for FTP Installation

TIBCO Fulfillment Provisioning Session Layer for FTP Installation TIBCO Fulfillment Provisioning Session Layer for FTP Installation Software Release 3.8.1 August 2015 Important Information SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCH EMBEDDED

More information

Installing and Sending with DocuSign for NetSuite v2.2

Installing and Sending with DocuSign for NetSuite v2.2 DocuSign Quick Start Guide Installing and Sending with DocuSign for NetSuite v2.2 This guide provides information on installing and sending documents for signature with DocuSign for NetSuite. It also includes

More information

WebSpy Vantage Ultimate 2.2 Web Module Administrators Guide

WebSpy Vantage Ultimate 2.2 Web Module Administrators Guide WebSpy Vantage Ultimate 2.2 Web Module Administrators Guide This document is intended to help you get started using WebSpy Vantage Ultimate and the Web Module. For more detailed information, please see

More information

Microsoft Access 3: Understanding and Creating Queries

Microsoft Access 3: Understanding and Creating Queries Microsoft Access 3: Understanding and Creating Queries In Access Level 2, we learned how to perform basic data retrievals by using Search & Replace functions and Sort & Filter functions. For more complex

More information

MadCap Software. Import Guide. Flare 11

MadCap Software. Import Guide. Flare 11 MadCap Software Import Guide Flare 11 Copyright 2015 MadCap Software. All rights reserved. Information in this document is subject to change without notice. The software described in this document is furnished

More information

EMC Smarts Network Configuration Manager

EMC Smarts Network Configuration Manager EMC Smarts Network Configuration Manager Version 9.4.1 Advisors User Guide P/N 302-002-279 REV 01 Copyright 2013-2015 EMC Corporation. All rights reserved. Published in the USA. Published October, 2015

More information

Getting Started. Getting Started with Time Warner Cable Business Class. Voice Manager. A Guide for Administrators and Users

Getting Started. Getting Started with Time Warner Cable Business Class. Voice Manager. A Guide for Administrators and Users Getting Started Getting Started with Time Warner Cable Business Class Voice Manager A Guide for Administrators and Users Table of Contents Table of Contents... 2 How to Use This Guide... 3 Administrators...

More information

Working with Indicee Elements

Working with Indicee Elements Working with Indicee Elements How to Embed Indicee in Your Product 2012 Indicee, Inc. All rights reserved. 1 Embed Indicee Elements into your Web Content 3 Single Sign-On (SSO) using SAML 3 Configure an

More information

ThirtySix Software WRITE ONCE. APPROVE ONCE. USE EVERYWHERE. www.thirtysix.net SMARTDOCS 2014.1 SHAREPOINT CONFIGURATION GUIDE THIRTYSIX SOFTWARE

ThirtySix Software WRITE ONCE. APPROVE ONCE. USE EVERYWHERE. www.thirtysix.net SMARTDOCS 2014.1 SHAREPOINT CONFIGURATION GUIDE THIRTYSIX SOFTWARE ThirtySix Software WRITE ONCE. APPROVE ONCE. USE EVERYWHERE. www.thirtysix.net SMARTDOCS 2014.1 SHAREPOINT CONFIGURATION GUIDE THIRTYSIX SOFTWARE UPDATED MAY 2014 Table of Contents Table of Contents...

More information

CentreWare Internet Services Setup and User Guide. Version 2.0

CentreWare Internet Services Setup and User Guide. Version 2.0 CentreWare Internet Services Setup and User Guide Version 2.0 Xerox Corporation Copyright 1999 by Xerox Corporation. All rights reserved. XEROX, The Document Company, the digital X logo, CentreWare, and

More information

Application Servers - BEA WebLogic. Installing the Application Server

Application Servers - BEA WebLogic. Installing the Application Server Proven Practice Application Servers - BEA WebLogic. Installing the Application Server Product(s): IBM Cognos 8.4, BEA WebLogic Server Area of Interest: Infrastructure DOC ID: AS01 Version 8.4.0.0 Application

More information

Custom Javascript In Planning

Custom Javascript In Planning A Hyperion White Paper Custom Javascript In Planning Creative ways to provide custom Web forms This paper describes several of the methods that can be used to tailor Hyperion Planning Web forms. Hyperion

More information

Evaluator s Guide. PC-Duo Enterprise HelpDesk v5.0. Copyright 2006 Vector Networks Ltd and MetaQuest Software Inc. All rights reserved.

Evaluator s Guide. PC-Duo Enterprise HelpDesk v5.0. Copyright 2006 Vector Networks Ltd and MetaQuest Software Inc. All rights reserved. Evaluator s Guide PC-Duo Enterprise HelpDesk v5.0 Copyright 2006 Vector Networks Ltd and MetaQuest Software Inc. All rights reserved. All third-party trademarks are the property of their respective owners.

More information

jfingerprint Datasheet

jfingerprint Datasheet jfingerprint Datasheet jfingerprint An introduction to jfingerprint, the browser fingerprinting and identification solution. W o l f S o f t w a r e L i m i t e d Contents 1 Background... 3 2 How does

More information

Customer Management (PRO)

Customer Management (PRO) webedition User Guide Customer Management (PRO) webedition Software GmbH The Customer Management and Customer Management PRO Modules User Guide Standard 03.00 09 February 2004 2004 webedition Software

More information

Field Properties Quick Reference

Field Properties Quick Reference Field Properties Quick Reference Data types The following table provides a list of the available data types in Microsoft Office Access 2007, along with usage guidelines and storage capacities for each

More information

Chapter 15 Using Forms in Writer

Chapter 15 Using Forms in Writer Writer Guide Chapter 15 Using Forms in Writer OpenOffice.org Copyright This document is Copyright 2005 2006 by its contributors as listed in the section titled Authors. You can distribute it and/or modify

More information

Terms and Definitions for CMS Administrators, Architects, and Developers

Terms and Definitions for CMS Administrators, Architects, and Developers Sitecore CMS 6 Glossary Rev. 081028 Sitecore CMS 6 Glossary Terms and Definitions for CMS Administrators, Architects, and Developers Table of Contents Chapter 1 Introduction... 3 1.1 Glossary... 4 Page

More information

IBM Operational Decision Manager Version 8 Release 5. Getting Started with Business Rules

IBM Operational Decision Manager Version 8 Release 5. Getting Started with Business Rules IBM Operational Decision Manager Version 8 Release 5 Getting Started with Business Rules Note Before using this information and the product it supports, read the information in Notices on page 43. This

More information

Tutorial: Building a Dojo Application using IBM Rational Application Developer Loan Payment Calculator

Tutorial: Building a Dojo Application using IBM Rational Application Developer Loan Payment Calculator Tutorial: Building a Dojo Application using IBM Rational Application Developer Loan Payment Calculator Written by: Chris Jaun (cmjaun@us.ibm.com) Sudha Piddaparti (sudhap@us.ibm.com) Objective In this

More information

Grandstream XML Application Guide Three XML Applications

Grandstream XML Application Guide Three XML Applications Grandstream XML Application Guide Three XML Applications PART A Application Explanations PART B XML Syntax, Technical Detail, File Examples Grandstream XML Application Guide - PART A Three XML Applications

More information

About XML in InDesign

About XML in InDesign 1 Adobe InDesign 2.0 Extensible Markup Language (XML) is a text file format that lets you reuse content text, table data, and graphics in a variety of applications and media. One advantage of using XML

More information

HP Intelligent Management Center v7.1 Virtualization Monitor Administrator Guide

HP Intelligent Management Center v7.1 Virtualization Monitor Administrator Guide HP Intelligent Management Center v7.1 Virtualization Monitor Administrator Guide Abstract This guide describes the Virtualization Monitor (vmon), an add-on service module of the HP Intelligent Management

More information

IceWarp to IceWarp Server Migration

IceWarp to IceWarp Server Migration IceWarp to IceWarp Server Migration Registered Trademarks iphone, ipad, Mac, OS X are trademarks of Apple Inc., registered in the U.S. and other countries. Microsoft, Windows, Outlook and Windows Phone

More information

www.novell.com/documentation Jobs Guide Identity Manager 4.0.1 February 10, 2012

www.novell.com/documentation Jobs Guide Identity Manager 4.0.1 February 10, 2012 www.novell.com/documentation Jobs Guide Identity Manager 4.0.1 February 10, 2012 Legal Notices Novell, Inc. makes no representations or warranties with respect to the contents or use of this documentation,

More information