Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Current »

This example demonstrates how to build a simple Issue Tracker Doc App using a spreadsheet template with a form in.

IssueTracker.js
//   --- DocsFree Sheetster ECMAScript API ---------------------------
//    For more information see:                                       
//    http://extentech.com/uimodules/docs/docs_home.jsp?meme_id=2305  
//   -----------------------------------------------------------------
/* Copyright (c) 2011 Extentech Inc. All Rights Reserved
	##### Sheetster™ Web Application #####
	This file is a part of the Sheetster™ Web Application
* 
*/
/** This example demonstrates:
 
 - Form opening
 - Form submit handling
 - Form validations
 
 To use this example:
 * 
 * 1. Login to Sheetster
 * 2. Create a New Spreadsheet
 * 3. Create a Form named 'insert_issue' using the form definition:
 * 
----- Issue Tracker Data -----
Extentech Issue Tracker Form			
Issue Description	issue_description	enter a short description of the issue	na
Product Affected	||^product_name|ExtenXLS,Sheetster Pro, Sheetster CE, OpenXLS, DocsFree Server	select the product name from the list	na
Major Version	||^major_version|0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15	enter the product major version number	na
Minor Version	||^minor_version|0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15	enter the minor version	na
Build	build_stamp	enter the build number or other identifier	na
Issue Status	||^status|new,resolved,notbug,wontfix,confirmed	select the current issue status from the list	na
Issue Priority	||^priority|lo,med,hi	select the current issue status from the list	na
Detailed Description	detailed_description	enter a detailed description of the issue	na
Assigned To	||^assigned_to|4520|1,2,3,4	enter the id of the contact responsible for this issue	na
Customer ID	customer_id	optional id of the customer contact dependency upon this issue	na
External Link	hlink	optional link to an external reference item such as a 3rd party bug tracker	na
Rating	rating	contacts may "vote" for an item, this is the current rating	na
Resolve Date	resolve_date	the date this item is closed out or otherwise resolved	na
Bounty	bounty	optional cash bounty offered for a fix or implementation	na
Meme Link	meme_id	the id of the detailed meme article which may contain attachments and further artifacts	na
onsubmit	parent.insertIssue()		
----- End Issue Tracker Data -----
* 
 * 
 * 	For info on creating Sheetster Forms see the following article:
 * 	http://extentech.com/uimodules/docs/docs_home.jsp?meme_id=1873
 * 
 * 4. Under Developer Tab, click "Create App"
 * 5. Paste code into the Scripting window and hit "Run Script"
//   --- DocsFree Sheetster ECMAScript API ---------------------------
//    For more information see:                                       
//    http://extentech.com/uimodules/docs/docs_home.jsp?meme_id=2305  
//   -----------------------------------------------------------------
*/
var formurl = '/workbook/id/2/html/namedrange/getform/insert_issue';
// write to the debug window
debug('Loaded Issue Tracker DocApp');
// open the form
parent.createDialogWindow("Insert Issue",formurl,"extentech");
/**
 * performs some action after the form submittal
 * 
 */
function insertIssue(){
	parent.showStatus('Thank you for submitting Issue #123!');
}
/**
 * performs a validation on the form values as they are entered
 * 
 * @param {Object} val
 */
function validate(val){
	parent.showStatus("OK:" + val.getValue());	
}

/**
 * placeholder for openMeme functionality
 */
function openMeme(){
    // get meme id from cells
    var mmx = book.getSelectedSheet().getCell("A1");
    alert(mmx.getVal('G1'));
    mmx.setVal('12345');
    book.cursor.setFocus(mmx);
}

// save original setCursorLocation function
book.cursor.setCursorLocationOLD = book.cursor.setCursorLocation;
// override default cell click behavior
book.cursor.setCursorLocation = function(e){
   // book.cursor.setCursorLocationOLD
   alert('clicked on: ' + book.cursor.getLocation() );
   book.cursor.setCursorLocationOLD(e);
};

  File Modified
You are not logged in. Any changes you make will be marked as anonymous. You may want to Log In if you already have an account.
No files shared here yet.
  • Drag and drop to upload or browse for files
    • No labels