BPM File Uploader
The BPM File Uploader view allows the user to select a file from their computer. This view is best used with the BPM File List view, or File Viewer view.

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[]
Add documents to folder: Add new documents to the current process folder when the coach is running within the scope of a process. Boolean

Content management
Upload properties: Specifies the matching properties to upload with this document. NameValuePair[]
Hide in portal: Prevent the BPM document from being displayed in the portal. Boolean

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.isAssociatedWithProcessInstance()
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 {object}
Properties status
name
lastModifiedDate
size
type
On upload complete:
Description: This event is fired when an upload operation completes successfully. Optional parameters passed: file, message
Example:
${BPMFileList1}.refresh()
Context Variables file {object} message {string}
Properties status
name
lastModifiedDate
accepted
xhr
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 {object} message {string} xhr {object}
Properties status
name
lastModifiedDate
accepted
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. This always returns the color as set. To avoid ambiguity, always set the color using "D"|"P"|"I"|"S"|"W"|"E".

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

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

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

getShapeStyle() Returns: {string}
Returns the shape style of the browse button. This always returns the shape style as set. To avoid ambiguity, always set the shape style using "D"|"R"|"F".

getSizeStyle() Returns: {string}
Returns the size style of the browse button. This always returns the size style as set. To avoid ambiguity, always set the size style using "D"|"S"|"L"|"X".

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

removeSelectedFile()
Removes the selected file from the control.

resetUploaderView()
Resets the view of BPM File Uploader.

setColorStyle(style)
Sets the color style of the browse button. To avoid ambiguity, always set the color using "D"|"P"|"I"|"S"|"W"|"E".
NameTypeDefaultDescription
style{string}The color style. The available styles are: "DEFAULT"|"DEF"|"D"=Default | "PRIMARY"|"PRI"|"P"=Primary | "INFO"|INF"|"I"=Info | "SUCCESS"|"S"=Success | "WARNING"|"WARN"|"W"=Warning | "DANGER"|ERROR|ERR"|"G"|"E"=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.

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

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 for the browse button.
NameTypeDefaultDescription
outline{boolean}Displays an outline for the browse button (when 'true'). The default value is 'false'.

setShapeStyle(style)
Sets the shape style of the browse button. To avoid ambiguity, always set the shape style using "D"|"R"|"F".
NameTypeDefaultDescription
style{string}The shape style. The available styles are: "Default"|"D"=Default | "ROUNDED"|"ROUND"|"R"=Rounded | "FLAT"|"F"=Flat

setSizeStyle(style)
Sets the size style of the browse button. To avoid ambiguity, always set the size style using "D"|"S"|"L"|"X".
NameTypeDefaultDescription
style{string}The size style. The available styles are: "DEFAULT"|"DEF"|"NORMAL"|"D"=Default | "SMALL"|"S"=Small | "LARGE"|"L"=Large | "EXTRA-SMALL"|"X-SMALL"|"XS"|"X"=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.