ECM File Uploader
The ECM File Uploader view allows the user to select and upload a file from their computer. The file can be given specific properties and can be targeted to a particular ECM folder.

Content management advanced
ECM server configuration name: The ECM server to use. The default server is the embedded ECM server. String
Upload folder path: The default folder path is the root folder. String
Custom document object type ID: Specify the object type ID for the documents. The ID must be defined in your ECM server. The default value is "cmis:document". String

Appearance
Color style: The color-based style for this control.
Shape style: The shape-based style for this control.
Size style: The size-based style for this control.
Outline: The color style of the control is the only thing displayed when the cursor is hovered over the control. Boolean
Icon: The icon name, such as "calendar", "clock-o", "camera", "cloud-upload", "bell", "info", and "file-text". For a comprehensive list of icons, see http://fontawesome.io/icons. Note: The "fa-" prefix is optional. String
Hide Browse button: Hide the Browse button. Boolean
Hide file name: Hide the name of the file. Boolean

Behavior
Max file size (MB): The maximum file size (in megabytes) for uploads. Decimal
Auto upload: Upload selected files automatically. If this option is not selected, use the startUpload() method instead. Boolean
File types allowed: Select a pre-configured file type from the drop-down list or select "Custom" to specify your own file type. When this field is empty, all file types are valid. FileType[]

Content management
Upload properties: Specifies the matching properties to upload with this document. NameValuePair[]

Formula
Document name formula: The expression or formula that is used to set the name of the document to be uploaded. For example, "Static Document Name" or ${Text1}.getText(). String

Events
On load:
Description: The logic that is called when the event is fired. This event is only fired one time for each page load.
Example:
me.setAssociatedWithProcessInstance(true)
On file selected:
Description: This event is fired when a file is added to the dropzone. Optional parameters passed: file
Example:
${DocInfoDlg}.show()
Context Variables file
On upload complete:
Description: This event is fired when an upload operation completes successfully. Optional parameters passed: file, message
Example:
${ECMFileList1}.refresh()
Context Variables file message
On upload error:
Description: This event is fired when an upload operation fails. Optional parameters passed: file, message, xhr
Example:
console.error("Error occurred: " + error)
Context Variables file message xhr
Extends:
com.ibm.bpm.coach.CoachView
Methods:

Inherited addClass(name, [replaced])
Add/replace CSS class(es) for this control
NameTypeDefaultDescription
name{string}CSS class name(s) to add to the control. Separate class names by a space if more than one class.
replaced{string}CSS class name(s) to be replaced by the first argument. Separate class names by a space if more than one class.
Example
Button.addClass("green");

getColorStyle() Returns: {string}
Returns the color style of the browse button.

Inherited getData() Returns: {Object}
Retrieve bound data associated this view/control. Only works for views/controls with bound data.
Example
var dec1 = MyDecimal.getData();

getDocumentTypeId() Returns: {string}
Returns the document type.

getFileName() Returns: {string}
Returns the name of the file that is currently selected in Process Designer.

getFolderPath() Returns: {string}
Returns the folder path.

getLabel() Returns: {string}
Returns the label of the browse button.

getServerName() Returns: {string}
Returns the ECM server name.

getShapeStyle()
Returns the shape style of the browse button.

getSizeStyle() Returns: {string}
Returns the size style of the browse button.

getType() Returns: {string}
Returns the descriptive string that represents the control type.

Inherited hide(collapseFlag)
Hide this view/control
NameTypeDefaultDescription
collapseFlag{boolean}Set to true to collapse the view (equivalent to a view setting of "NONE")
Example
MyView.hide();

Inherited isBound() Returns: {boolean}
Indicates bound status of control.

Inherited isEnabled() Returns: {boolean}
Checks if the view is enabled or not
Example
var enabled = MyView.isEnabled();

Inherited isLabelVisible() Returns: {boolean}
Checks if control label is visible
Example
var labelVisible = MyView.isLabelVisible();

Inherited isValid() Returns: {boolean}
Returns the valid status as last set by the setValid() method.
Example
var valid = MyView.isValid();

Inherited isVisible() Returns: {boolean}
Checks whether or not view is visible
Example
var visible = MyView.isVisible();

openFileSelectionDialog()
Programmatically opens the file selection dialog. For security reasons, the file selection dialog can only be opened programmatically as a result of a user interaction, such as performing a mouse click on another button on the coach user interface (UI).

Inherited propagateUpValueChange(event) Returns: {boolean}
Propagates value change of control up through parent views
NameTypeDefaultDescription
event{Event}Value change event (usually an onchange event)
Example
MyView.propagateUp(event);

Inherited recalculate()
Only for formula-enabled views!
Explicitly triggers the re-evaluation of the formula
for this view (if a formula has been specified). If the view is not formula-enabled, recalculate() does nothing.
Example
Text1.recalculate();
//If the formula for Text1 is: new Date().toString(), Text1 is updated to the current date/time

setColorStyle(style)
Sets the color style of the browse button.
NameTypeDefaultDescription
style{string}The color style. The available styles are: "D"=Default | "P"=Primary | "I"=Info | "S"=Success | "W"=Warning | "G"=Danger

setDocumentId(documentId)
Updates the specified document.
NameTypeDefaultDescription
documentId{string}The document ID of the document to be updated.

setDocumentName(title)
Sets the name that is associated with the currently selected file. The name setting is only used for one upload. After the upload completes, the name is cleared.
NameTypeDefaultDescription
title{string}The new name.

setDocumentTypeId(text)
Sets the document type.
NameTypeDefaultDescription
text{string}The document type.

Inherited setEnabled(enabled, required)
Enable/disable this view/control
NameTypeDefaultDescription
enabled{boolean}Enabled/read-only flag (true to enable view, false to disable/make read-only)
required{boolean}Enable/disable required field flag for control
Example
MyView.setEnabled(false); //Make MyView read-only

setFolderPath(text)
Sets the folder path.
NameTypeDefaultDescription
text{string}The folder path.

setIcon(icon)
Sets the icon to display on the browse button.
NameTypeDefaultDescription
icon{string}The new icon. For a list of available icons, see http://fontawesome.io/icons/.

setLabel(label)
Sets the label for the browse button.
NameTypeDefaultDescription
label{string}The new label.

Inherited setLabelVisible(visible)
Show/hide the label of this view/control
NameTypeDefaultDescription
visible{boolean}Label visibility flag (true to show view label, false to hide)
Example
MyView.setLabelVisible(false);

setOutline(outline)
Sets the outline style of the browse button.
NameTypeDefaultDescription
outline{boolean}Displays an outline for the browse button (when 'true'). The default value is 'false'.

setServerConfig(name, folder)
Sets the external configured server and folder path for ECM File Uploader.
NameTypeDefaultDescription
name{string}The name of the externally configured server.
folder{string}The folder path on the external server where the file is uploaded.

setShapeStyle(style)
Sets the shape style of the browse button.
NameTypeDefaultDescription
style{string}The shape style. The available styles are: "D"=Default | "R"=Rounded | "F"=Flat

setSizeStyle(style)
Sets the size style of the browse button.
NameTypeDefaultDescription
style{string}The size style. The available styles are: "D","DEFAULT"=Default | "S","SMALL"=Small | "L","LARGE"=Large | "X","EXTRA-SMALL"=X-small

setUploadProperties(propNames, propVals)
Sets the upload property names and values. The length of the parameter lists must be equal.
NameTypeDefaultDescription
propNames{string[]}The property names.
propVals{ANY[]}The values for each property name.

Inherited setValid(valid, errorText)
Flag this view/control as valid or invalid
NameTypeDefaultDescription
valid{boolean}Valid/invalid flag (true to set view valid, false to make it invalid - which typically shows the view with "invalid" styling and indicator)
errorText{string}Validation error text to show on the invalid-styled view
Example
MyView.setValid(false, "Please fix your data entry"); //Make MyView invalid

Inherited setViewData(data, createPseudoBinding)
Set/update bound data associated this view/control. Only works for views/controls with bound data.

Note: Should only be used with simple type bindings, or complex type bindings with simple type properties.
Should not be used with bindings that have properties that are lists or compext types. For complex types, set bindings using
the binding.set pattern detailed in the Knowlege Center section Binding Data and Configuration Options
NameTypeDefaultDescription
data{Object}Value of bound data. The type of this parameter must match the type of the bound data.
createPseudoBinding{boolean}If set to true, creates a pseudo binding if there is no current binding.
Example
MyView.setViewData("TEST"); //Updates bound data to the string 'TEST'

Inherited setVisible(visible, collapse)
Show/hide this view/control
NameTypeDefaultDescription
visible{boolean}Visibility flag (true to show view, false to hide)
collapse{boolean}Set to true to collapse the control space when visible is set to false.
Examples
MyView.setVisible(false, false); //Equivalent to MyView.hide()
MyView.setVisible(false, true); // Sets visibility to "None"

Inherited show()
Show this view/control
Example
MyView.show();

startUpload()
Starts uploading the document that is currently selected.

Inherited triggerFormulaUpdates([phase])
Broadcasts the expression trigger for the specified view
NameTypeDefaultDescription
phase{int}bpmext.ui.PHASE_NORMALThe phase we are currently in
Example
MyView.triggerFormulaUpdates();

uploadFile(file)
Starts uploading a file.
NameTypeDefaultDescription
file{File}The file object to upload.