A replication attempt of the Dataverse MDA Client API for Power Pages
In general the project is not in a production ready state. But we will keep working on it!
Legend:
- ✅ Implemented
- ❌ Pending
- ⭕ Not implementable/Not useful
- ✅ getAttribute
- ✅ getControl
- Tested only for Attribute Controls
- ❌ data
- ✅ ui
- Partial implementation only
- ✅ addOnChange
- ✅ fireOnChange
- ✅ getAttributeType
- ❌ getFormat
- ✅ getInitialValue
- Only implemented on Boolean
- ✅ getIsDirty
- ❌ getIsPartyList
- ❌ getMax
- ❌ getMaxLength
- ❌ getMin
- ✅ getName
- ❌ getOption
- ❌ getOptions
- ❌ getParent
- ❌ getPrecision
- ❌ getRequiredLevel
- ❌ getSelectedOption
- ❌ getSubmitMode
- ❌ getText
- ❌ getUserPrivilege
- ✅ getValue
- ❌ isValid
- ✅ removeOnChange
- ❌ setIsValid
- ❌ setPrecision
- ❌ setRequiredLevel
- ❌ setSubmitMode
- ✅ setValue
- ❌ addCustomFilter
- ❌ addCustomView
- ❌ addEventHandler
- ❌ addNotification
- ❌ addOnLookupTagClick
- ❌ addOnOutputChange
- ❌ addOnPostSearch
- ❌ addOnResultOpened
- ❌ addOnSelection
- ❌ addOption
- ❌ addPreSearch
- ❌ clearNotification
- ❌ clearOptions
- ✅ getAttribute
- ❌ getContentWindow
- ❌ getControl
- ❌ getControlType
- ❌ getData
- ❌ getDefaultView
- ❌ getDisabled
- ❌ getEntityTypes
- ❌ getInitialUrl
- ❌ getLabel
- ✅ getName
- ❌ getObject
- ❌ getOptions
- ❌ getOutputs
- ❌ getParent
- ❌ getSearchQuery
- ❌ getSelectedResults
- ❌ getShowTime
- ❌ getSrc
- ❌ getState
- ❌ getTotalResultsCount
- ❌ getValue
- ✅ getVisible
- Tested only for Attribute Controls
- ❌ openSearchResult
- ❌ refresh
- ❌ removeOnLookupTagClick
- ❌ removeOnOutputChange
- ❌ removeOnPostSearch
- ❌ removeOnResultsOpened
- ❌ removeOnSelection
- ❌ removeOption
- ❌ removePreSearch
- ❌ setData
- ❌ setDefaultView
- ❌ setDisabled
- ❌ setEntityTypes
- ❌ setFocus
- ❌ setLabel
- ❌ setNotification
- ❌ setSearchQuery
- ❌ setShowTime
- ❌ setSrc
- ✅ setVisible
- Tested only for Attribute Controls
- ✅ addOnLoad
- ✅ getIsDirty
- ❌ isValid
- ✅ refresh
- ✅ removeOnLoad
- ✅ save
- ✅ attributes
- ❌ addOnPostSave
- ❌ addOnSave
- ❌ getDataXml
- ❌ getEntityName
- ❌ getEntityReference
- ❌ getId
- ❌ getIsDirty
- ❌ getPrimaryAttributeValue
- ❌ isValid
- ❌ removeOnPostSave
- ❌ removeOnSave
- ❌ save
- ⭕ Will likely not be implemented as Business Process Flows are not rendered in Power Pages
- ✅ addOnLoad
- ❌ addLoaded
- ✅ clearFormNotification
- ✅ close
- ✅ getFormType
- ✅ getViewPortHeight
- ✅ getViewPortWidth
- ⭕ refreshRibbon There is no ribbon displayed in Power Pages
- ✅ removeOnLoad
- ❌ removeLoaded
- ⭕ setFormEntityName There is no Form Entity Name displayed in Power Pages
- ✅ setFormNotification
- ✅ tabs
- ⭕ Will likely not be implemented as the formSelector is not available in Power Pages
- ❌ getBodyVisible
- ❌ getCommandBarVisible
- ❌ getTabNavigatorVisible
- ❌ setBodyVisible
- ❌ setCommandBarVisible
- ❌ setTabNavigatorVisible
- ❌ getId
- ❌ getLabel
- ❌ getVisible
- ❌ setFocus
- ❌ setLabel
- ❌ setVisible
- ⭕ Will likely not be implemented as Business Process Flows are not rendered in Power Pages
- ❌ getControl
- ❌ getControlType
- ❌ getDisabled
- ❌ getLabel
- ❌ getName
- ❌ getParent
- ❌ getVisible
- ❌ isLoaded
- ❌ refresh
- ❌ setDisabled
- ❌ setFocus
- ❌ setLabel
- ❌ setVisible
- ❌ addTabStateChange
- ❌ getContentType
- ❌ getDisplayState
- ✅ getLabel
- ✅ getName
- ✅ getParent
- ✅ getVisible
- ❌ removeTabStateChange
- ❌ setContentType
- ❌ setDisplayState
- ❌ setFocus
- ✅ setLabel
- ✅ setVisible
- ✅ sections
- ✅ getLabel
- ✅ getName
- ✅ getParent
- ✅ getVisible
- ✅ setLabel
- ✅ setVisible
- ❌ controls
- ✅ addOnLoad
- ✅ getEntityName
- ❌ getFetchXml
- ✅ getGrid
- ✅ getGridType
- ❌ getRelationship
- ⭕ getUrl This function simply returns the Url of the current page
- ❌ getViewSelector
- ❌ openRelatedGrid
- ❌ refresh
- ❌ refreshRibbon
- ✅ removeOnLoad
- ✅ getRows
- ⭕ 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. - ❌ getTotalRecordCount
- ✅ data
- ✅ getData
- ✅ getEntity
- ✅ entity
- ✅ getEntityName
- ✅ getEntityReference
- ✅ getId
- ✅ getPrimaryAttributeValue
- ✅ attributes Note: Official docs are missing this property
- ✅ getName
- ⭕ getRequiredLevel Grids are not editable in Power Pages. This function will only return "none".
- ✅ getValue
- ⭕ setRequiredLevel Grids are not editable in Power Pages. This function will do nothing.
- ✅ setValue Grids are not editable in Power Pages. This function will only change the display.
- ✅ controls Note: Official docs are missing this property
- ⭕ clearNotification Grids are not editable in Power Pages. This function will do nothing.
- ⭕ getDisabled Grids are not editable in Power Pages. This function will only return true.
- ✅ getLabel
- ⭕ setDisabled Grids are not editable in Power Pages. This function will do nothing.
- ⭕ setNotification Grids are not editable in Power Pages. This function will do nothing.
- ❌ getCurrentView
- ❌ isVisible
- ❌ setCurrentView
- ❌ addGlobalNotification
- ❌ clearGlobalNotification
- ❌ createPane
- ❌ getAllPanes
- ❌ getPane
- ❌ getSelectedPane
- ❌ captureAudio
- ❌ captureImage
- ❌ captureVideo
- ❌ getBarcodeValue
- ❌ getCurrentPosition
- ❌ pickFile
- ❌ htmlAttributeEncode
- ❌ htmlDecode
- ❌ htmlEncode
- ❌ xmlAttributeEncode
- ❌ xmlEncode
- ❌ navigateTo
- ❌ openAlertDialog
- ❌ openConfirmDialog
- ❌ openErrorDialog
- ❌ openFile
- ❌ openForm
- ❌ openUrl
- ❌ openWebResource
- ❌ loadPanel
- ❌ closeProgressIndicator
- ❌ getAllowedStatusTransitions
- ❌ getEntityMetadata
- ❌ getEntityMainFormDescriptor
- ❌ getGlobalContext
- ❌ client
- ❌ getClient
- ❌ getClientState
- ❌ getFormFactor
- ❌ isOffline
- ❌ isNetworkAvailable
- ❌ organizationSettings
- ❌ attributes
- ❌ baseCurrencyId
- ❌ baseCurrency
- ❌ defaultCountryCode
- ❌ isAutoSaveEnabled
- ❌ languageId
- ❌ organizationId
- ❌ isTrialOrganization
- ❌ organizationExpiryDate
- ❌ uniqueName
- ❌ useSkypeProtocol
- ❌ fullnameConventionCode
- ❌ userSettings
- ❌ dateFormattingInfo
- ❌ defaultDashboardId
- ❌ isGuidedHelpEnabled
- ❌ isRTL
- ❌ languageId
- ❌ roles
- ❌ securityRolePrivileges
- ❌ securityRoles
- ❌ transactionCurrency
- ❌ transactionCurrencyId
- ❌ userId
- ❌ userName
- ❌ getSecurityRolePrivilegesInfo
- ❌ getTimeZoneOffsetMinutes
- ❌ getAdvancedConfigSetting
- ❌ getClientUrl
- ❌ getCurrentAppName
- ❌ getCurrentAppProperties
- ❌ getCurrentAppUrl
- ❌ getVersion
- ❌ getWebResourceUrl
- ❌ isOnPremises
- ❌ prependOrgName
- ❌ client
- ❌ getLearningPathAttributeName
- ❌ getPageContext
- ❌ getResourceString
- ❌ invokeProcessAction
- ❌ lookupObjects
- ❌ refreshParentGrid
- ❌ showProgressIndicator
- ⭕ Xrm.WebApi.offline Is the same as Xrm.WebApi
- ✅ Xrm.WebApi.online Is the same as Xrm.WebApi
- ✅ createRecord
- ✅ deleteRecord
- ✅ retrieveRecord
- ✅ retrieveMultipleRecords
- ✅ updateRecord
- ⭕ isAvailableOffline Will always return false.
- ❌ execute
- ❌ executeMultiple

