powerpagesclientapi
v0.5.0
Published
Client API resembling the Client API of Dataverse MDA for Power Pages
Readme
PowerPagesClientAPI
A replication attempt of the Dataverse MDA Client API for Power Pages
Videos
API State
In general the project is not in a production ready state. But we will keep working on it!
Legend:
- :white_check_mark: Implemented
- :x: Pending
- :o: Not implementable/Not useful
FormContext
- :white_check_mark: getAttribute
- :white_check_mark: getControl
- Tested only for Attribute Controls
- :x: data
- :white_check_mark: ui
- Partial implementation only
Attributes
- :white_check_mark: addOnChange
- :white_check_mark: fireOnChange
- :white_check_mark: getAttributeType
- :x: getFormat
- :white_check_mark: getInitialValue
- Only implemented on Boolean
- :white_check_mark: getIsDirty
- :x: getIsPartyList
- :x: getMax
- :x: getMaxLength
- :x: getMin
- :white_check_mark: getName
- :x: getOption
- :x: getOptions
- :x: getParent
- :x: getPrecision
- :x: getRequiredLevel
- :x: getSelectedOption
- :x: getSubmitMode
- :x: getText
- :x: getUserPrivilege
- :white_check_mark: getValue
- :x: isValid
- :white_check_mark: removeOnChange
- :x: setIsValid
- :x: setPrecision
- :x: setRequiredLevel
- :x: setSubmitMode
- :white_check_mark: setValue
Controls
- :x: addCustomFilter
- :x: addCustomView
- :x: addEventHandler
- :x: addNotification
- :x: addOnLookupTagClick
- :x: addOnOutputChange
- :x: addOnPostSearch
- :x: addOnResultOpened
- :x: addOnSelection
- :x: addOption
- :x: addPreSearch
- :x: clearNotification
- :x: clearOptions
- :white_check_mark: getAttribute
- :x: getContentWindow
- :x: getControl
- :x: getControlType
- :x: getData
- :x: getDefaultView
- :x: getDisabled
- :x: getEntityTypes
- :x: getInitialUrl
- :x: getLabel
- :white_check_mark: getName
- :x: getObject
- :x: getOptions
- :x: getOutputs
- :x: getParent
- :x: getSearchQuery
- :x: getSelectedResults
- :x: getShowTime
- :x: getSrc
- :x: getState
- :x: getTotalResultsCount
- :x: getValue
- :white_check_mark: getVisible
- Tested only for Attribute Controls
- :x: openSearchResult
- :x: refresh
- :x: removeOnLookupTagClick
- :x: removeOnOutputChange
- :x: removeOnPostSearch
- :x: removeOnResultsOpened
- :x: removeOnSelection
- :x: removeOption
- :x: removePreSearch
- :x: setData
- :x: setDefaultView
- :x: setDisabled
- :x: setEntityTypes
- :x: setFocus
- :x: setLabel
- :x: setNotification
- :x: setSearchQuery
- :x: setShowTime
- :x: setSrc
- :white_check_mark: setVisible
- Tested only for Attribute Controls
formContext.data
- :white_check_mark: addOnLoad
- :white_check_mark: getIsDirty
- :x: isValid
- :white_check_mark: refresh
- :white_check_mark: removeOnLoad
- :white_check_mark: save
- :white_check_mark: attributes
formContext.data.entity
- :x: addOnPostSave
- :x: addOnSave
- :x: getDataXml
- :x: getEntityName
- :x: getEntityReference
- :x: getId
- :x: getIsDirty
- :x: getPrimaryAttributeValue
- :x: isValid
- :x: removeOnPostSave
- :x: removeOnSave
- :x: save
formContext.data.process
- :o: Will likely not be implemented as Business Process Flows are not rendered in Power Pages
formContext.ui
- :white_check_mark: addOnLoad
- :x: addLoaded
- :white_check_mark: clearFormNotification
- :white_check_mark: close
- :white_check_mark: getFormType
- :white_check_mark: getViewPortHeight
- :white_check_mark: getViewPortWidth
- :o: refreshRibbon There is no ribbon displayed in Power Pages
- :white_check_mark: removeOnLoad
- :x: removeLoaded
- :o: setFormEntityName There is no Form Entity Name displayed in Power Pages
- :white_check_mark: setFormNotification
- :white_check_mark: tabs
formContext.ui.formSelector
- :o: Will likely not be implemented as the formSelector is not available in Power Pages
formContext.ui.headerSection
- :x: getBodyVisible
- :x: getCommandBarVisible
- :x: getTabNavigatorVisible
- :x: setBodyVisible
- :x: setCommandBarVisible
- :x: setTabNavigatorVisible
formContext.ui.navigation
- :x: getId
- :x: getLabel
- :x: getVisible
- :x: setFocus
- :x: setLabel
- :x: setVisible
formContext.ui.process
- :o: Will likely not be implemented as Business Process Flows are not rendered in Power Pages
formContext.ui.quickForms
- :x: getControl
- :x: getControlType
- :x: getDisabled
- :x: getLabel
- :x: getName
- :x: getParent
- :x: getVisible
- :x: isLoaded
- :x: refresh
- :x: setDisabled
- :x: setFocus
- :x: setLabel
- :x: setVisible
formContext.ui.tabs
- :x: addTabStateChange
- :x: getContentType
- :x: getDisplayState
- :white_check_mark: getLabel
- :white_check_mark: getName
- :white_check_mark: getParent
- :white_check_mark: getVisible
- :x: removeTabStateChange
- :x: setContentType
- :x: setDisplayState
- :x: setFocus
- :white_check_mark: setLabel
- :white_check_mark: setVisible
- :white_check_mark: sections
sections
- :white_check_mark: getLabel
- :white_check_mark: getName
- :white_check_mark: getParent
- :white_check_mark: getVisible
- :white_check_mark: setLabel
- :white_check_mark: setVisible
- :x: controls
Grids and subgrids
GridControl
- :white_check_mark: addOnLoad
- :white_check_mark: getEntityName
- :x: getFetchXml
- :white_check_mark: getGrid
- :white_check_mark: getGridType
- :x: getRelationship
- :o: getUrl This function simply returns the Url of the current page
- :x: getViewSelector
- :x: openRelatedGrid
- :x: refresh
- :x: refreshRibbon
- :white_check_mark: removeOnLoad
Grid
- :white_check_mark: getRows
- :o: getSelectedRows
Since you can't select rows in Power Pages and instead perform operation directly on the row, this function will always return an empty list. - :x: getTotalRecordCount
GridRow
- :white_check_mark: data
- :white_check_mark: getData
GridRowData
- :white_check_mark: getEntity
- :white_check_mark: entity
GridEntity
- :white_check_mark: getEntityName
- :white_check_mark: getEntityReference
- :white_check_mark: getId
- :white_check_mark: getPrimaryAttributeValue
- :white_check_mark: attributes Note: Official docs are missing this property
GridAttribute
- :white_check_mark: getName
- :o: getRequiredLevel Grids are not editable in Power Pages. This function will only return "none".
- :white_check_mark: getValue
- :o: setRequiredLevel Grids are not editable in Power Pages. This function will do nothing.
- :white_check_mark: setValue Grids are not editable in Power Pages. This function will only change the display.
- :white_check_mark: controls Note: Official docs are missing this property
GridCell
- :o: clearNotification Grids are not editable in Power Pages. This function will do nothing.
- :o: getDisabled Grids are not editable in Power Pages. This function will only return true.
- :white_check_mark: getLabel
- :o: setDisabled Grids are not editable in Power Pages. This function will do nothing.
- :o: setNotification Grids are not editable in Power Pages. This function will do nothing.
ViewSelector
- :x: getCurrentView
- :x: isVisible
- :x: setCurrentView
Xrm.App
- :x: addGlobalNotification
- :x: clearGlobalNotification
Xrm.App.sidePanes
- :x: createPane
- :x: getAllPanes
- :x: getPane
- :x: getSelectedPane
Xrm.Device
- :x: captureAudio
- :x: captureImage
- :x: captureVideo
- :x: getBarcodeValue
- :x: getCurrentPosition
- :x: pickFile
Xrm.Encoding
- :x: htmlAttributeEncode
- :x: htmlDecode
- :x: htmlEncode
- :x: xmlAttributeEncode
- :x: xmlEncode
Xrm.Navigation
- :x: navigateTo
- :white_check_mark: openAlertDialog Opens modal with Bootstrap modal classes applied plus the following classes: ppca_modal ppca_modal-content ppca_modal-alert ppca_modal-header ppca_modal-title ppca_modal-close ppca_modal-body ppca_modal-icon ppca_modal-subtitle ppca_modal-text ppca_modal-details ppca_modal-footer ppca_modal-button ppca_modal-button-confirm
- :white_check_mark: openConfirmDialog See openAlertDialog, additional classes: ppca_modal-confirm ppca_modal-button ppca_modal-button-cancel
- :white_check_mark: openErrorDialog See openAlertDialog, additional classes: ppca_modal-error
- :white_check_mark: openFile
- :x: openForm
- :white_check_mark: openUrl
Specify relative or absolute url, specify (any) windowOptions to open in new tab, specify
width&heightto open as popup. - :white_check_mark: openWebResource
Specify relative url of page, specify (any) windowOptions to open in new tab, specify
width&heightto open as popup.
Xrm.Panel
- :x: loadPanel
Xrm.Utility
- :x: closeProgressIndicator
- :x: getAllowedStatusTransitions
- :x: getEntityMetadata
- :x: getEntityMainFormDescriptor
- :x: getGlobalContext
- :x: client
- :x: getClient
- :x: getClientState
- :x: getFormFactor
- :x: isOffline
- :x: isNetworkAvailable
- :x: organizationSettings
- :x: attributes
- :x: baseCurrencyId
- :x: baseCurrency
- :x: defaultCountryCode
- :x: isAutoSaveEnabled
- :x: languageId
- :x: organizationId
- :x: isTrialOrganization
- :x: organizationExpiryDate
- :x: uniqueName
- :x: useSkypeProtocol
- :x: fullnameConventionCode
- :x: userSettings
- :x: dateFormattingInfo
- :x: defaultDashboardId
- :x: isGuidedHelpEnabled
- :x: isRTL
- :x: languageId
- :x: roles
- :x: securityRolePrivileges
- :x: securityRoles
- :x: transactionCurrency
- :x: transactionCurrencyId
- :x: userId
- :x: userName
- :x: getSecurityRolePrivilegesInfo
- :x: getTimeZoneOffsetMinutes
- :x: getAdvancedConfigSetting
- :x: getClientUrl
- :x: getCurrentAppName
- :x: getCurrentAppProperties
- :x: getCurrentAppUrl
- :x: getVersion
- :x: getWebResourceUrl
- :x: isOnPremises
- :x: prependOrgName
- :x: client
- :x: getLearningPathAttributeName
- :x: getPageContext
- :x: getResourceString
- :x: invokeProcessAction
- :x: lookupObjects
- :x: refreshParentGrid
- :x: showProgressIndicator
Xrm.WebApi
- :o: Xrm.WebApi.offline Is the same as Xrm.WebApi
- :white_check_mark: Xrm.WebApi.online Is the same as Xrm.WebApi
- :white_check_mark: createRecord
- :white_check_mark: deleteRecord
- :white_check_mark: retrieveRecord
- :white_check_mark: retrieveMultipleRecords
- :white_check_mark: updateRecord
- :o: isAvailableOffline Will always return false.
- :x: execute
- :x: executeMultiple


