zoukankan      html  css  js  c++  java
  • 补充二:脚本

    Xrm.Page.getAttribute(arg)

    // 获取控件/元素:Mscrm.FormControls.ClientApi.XrmTurboFormEntityAttributeString
    Xrm.Page.getAttribute(arg)
    
    // 获取控件集合:Xrm.XrmControls
    Xrm.Page.getAttribute(arg)
    
    // 获取控件集合中指定索引控件:Mscrm.FormControls.ClientApi.XrmTurboFormControlAutoLookup
    Xrm.Page.getAttribute(arg)[0]
    
    // 取值:依据控件类型而定
    Xrm.Page.getAttribute(arg).getValue()
    // 赋值:undefined
    Xrm.Page.getAttribute(arg).setValue(value)
    
    // 是否改动:bool
    Xrm.Page.getAttribute(arg).getIsDirty()
    
    // 获取字段/控件必填等级:string
    Xrm.Page.getAttribute(arg).getRequiredLevel()
    // 设置字段/控件必填等级:undefined
    Xrm.Page.getAttribute(arg).setRequiredLevel(RequiredLevel)
    
    // 用户对此控件/字段的操作等级:Xrm.FormDataAttributePrivilege
    Xrm.Page.getAttribute(arg).getUserPrivilege()
    
    //事件:
    addOnChange(),removeOnChange(),fireOnChange()[强制执行]
    
    // 获取字段/控件值类型
    Xrm.Page.getAttribute(arg).getAttributeType()
    
    // 获取字段值最大长度
    Xrm.Page.getAttribute(arg).getMaxLength()
    
    // 获取字段名称
    Xrm.Page.getAttribute(arg).getName()
    
    // 其他   
    getFormat(),getIsValid(),,getParent()
    
    // 选项集
    getOption(),getOptions(),getSelectedOption(),getText()
    

    Xrm.Page.getControl(arg)

    // 转属性:Mscrm.FormControls.ClientApi.XrmTurboFormEntityAttributeString
    Xrm.Page.getControl(arg).getAttribute()
        
    // 在控件旁显示消息,指示数据无效,仅用于更新的实体
    Xrm.Page.getControl(arg).setNotification(message[,uniqueId])
    // 删除已为控件显示的消息:bool
    Xrm.Page.getControl(arg).clearNotification([uniqueId])
    
    // 禁用控件:undefined
    Xrm.Page.getControl(arg).setDisabled(true)
    // 启用控件:undefined
    Xrm.Page.getControl(arg).setDisabled(false)
    // 获取控件是否禁用:bool
    Xrm.Page.getControl(arg).getDisabled()
    
    // 显示控件:undefined
    Xrm.Page.getControl(arg).setVisible(true)
    // 隐藏控件:undefined
    Xrm.Page.getControl(arg).setVisible(false)
    // 获取控件是否隐藏:bool
    Xrm.Page.getControl(arg).getVisible()
    
    // 设置控件描述:undefined
    Xrm.Page.getControl(arg).setLabel(label),
    // 获取控件描述:string
    Xrm.Page.getControl(arg).getLabel()
    
    // 获取焦点
    Xrm.Page.getControl(arg).setFocus()
    
    其他:addCustomFilter(),addCustomView(),addOption(),removeOption(value),clearOptions(),getControlType(),getData(),setData(),getDefaultView(),setDefaultView(),getName(),getParent(),getSrc(),setSrc(),getInitialUrl(),getObject(),addOnKeyPress(),removeOnKeyPress(),fireOnKeyPress(),hideAutoComplete(),showAutoComplete(),
    查找:addCustomFilter (fetchXmlFilter, entityType),addCustomView(viewId,entityLogicalName, viewDisplayName, fetchXml, layoutXml, isDefault)
    

    子网格

    控件相关
    // 刷新
    Xrm.Page.getControl('子网格名称').refresh()
    
    // 获取子网格控件:Mscrm.XrmControlGridWrapper
    Xrm.Page.getControl('子网格名称').getGrid()
    
    // 添加子网格控件加载事件,建议添加事件名
    Xrm.Page.getControl('子网格名称').addOnLoad(Fun)
    
    // 移除子网格控件加载事件,参数建议事件名
    Xrm.Page.getControl('子网格名称').removeOnLoad(Fun)
    
    // 其他
    addRecord(),getRelationship(),getRelationshipAttributeName(),getRelationshipName(),getViewSelector().setCurrentView()
    
    网格相关
    // 返回符合视图的筛选条件的记录总数,不受单页显示的数字的限制:int
    Xrm.Page.getControl('子网格名称').getGrid().getTotalRecordCount()
    
    // 其他
    fireOnRecordSelect(),removeOnRecordSelect(),showLoadingMessage()
    
    行相关
    // 获取所有行:Xrm.XrmGridRows
    var rows = Xrm.Page.getControl("子网格名称").getGrid().getRows()
    
    // 获取所勾选/选中的行:Xrm.XrmGridRows
    var rows = Xrm.Page.getControl("子网格名称").getGrid().getSelectedRows()
    
    // 获取指定行
    rows.get(0)
    
    // 获取所有行
    rows.getAll()
    
    // 获取指定条件行:XrmGridRowWrapper
    rows.getByFilter(x=>x.getData().getEntity().attributes.get("new_nam").getValue() == '宝')
    
    // 其他
    getByIndex(),getByName(),getFirst(),getLength(),add(),forEach(),remove()
    
    列相关
    // 获取行中单列数据
    rows.get(0).getData().getEntity().attributes.get("new_shopname").getValue()
    

    Xrm.Page.context

    // 用户ID:string
    Xrm.Page.context.getUserId()
    
    // 用户角色:Array
    Xrm.Page.context.getUserRoles()
    
    // 用户语言:int
    Xrm.Page.context.getUserLcid()
    
    // 组织名称:string
    Xrm.Page.context.getOrgUniqueName()
    
    // 组织语言:int
    Xrm.Page.context.getOrgLcid()
    
    // 路径参数:object
    Xrm.Page.context.getQueryStringParameters()
    
    // 服务器路径:string
    Xrm.Page.context.getClientUrl()
    
    //当前主题:string
    Xrm.Page.context.getCurrentTheme()
    
    //客户端信息:Mscrm.XrmPageContextClient
    Xrm.Page.context.client
    

    Xrm.Page.data

    Xrm.Page.data.entity

    // 所有页面元素/控件,可进行forEach(),get(),getLength(),getByIndex(),getByName()…操作
    Xrm.Page.data.entity.attributes
    
    // 获取实体名称
    Xrm.Page.data.entity.getEntityName
    Xrm.Page.data.entity.getEntitySetName()	// 复数形式
    
    // 获取实体id
    Xrm.Page.data.entity.getId()
    Xrm.Page.data.entity.getKey()
    Xrm.Page.data.entity.getEntityReference()	// {entityType: "xx", id: "{xx}", name: "xx"}
    
    // 主字段值
    Xrm.Page.data.entity.getPrimaryAttributeValue()
    
    // 是否修改:bool
    Xrm.Page.data.entity.getIsDirty()
    
    // 执行保存操作
    Xrm.Page.data.entity.save(null|'saveandclose'|'saveandnew')
    
    // 是否Hierarchy
    Xrm.Page.data.entity.isInHierarchy()
    
    // 未确认
    添加保存时事件:addOnSave()
    移出保存时事件:removeOnSave()
    

    Xrm.Page.ui

    // 关闭当前窗体
    Xrm.Page.ui.close()
    
    // 获得记录窗体上下文类型,返回值详情:https://docs.microsoft.com/zh-cn/previous-versions/dynamicscrm-2015/developers-guide/gg327828(v=crm.7)#getformtype
    Xrm.Page.ui.getFormType()
    
    // 获取表单标题
    Xrm.Page.ui.get_formTitle()
    // 设置表单标题
    Xrm.Page.ui.set_formTitle(title)
    
    // 显示窗体通知,方法仅用于更新的实体:bool,三个参数为字符串,level:[ERROR,WARNING,INFO]
    Xrm.Page.ui.setFormNotification(message, level, uniqueId);
    // 取消窗体通知,方法仅用于更新的实体:bool
    Xrm.Page.ui.clearFormNotification(uniqueId)
    
    // 重置规则,更改规则使用的值后,可使用该方法强制功能区重新评估窗体中的数据,以便可以应用这些规则
    Xrm.Page.ui.refreshRibbon()
    
    // 获取页面所有控件【forEach(),get(),getAll(),getByFilter(),getByIndex(),getByName(),getLength()】
    Xrm.Page.ui.controls
    // 获取指定控件
    Xrm.Page.ui.controls.get('控件名')
    
    // 获取页面所有tab【forEach(),get(),getLength()】
    Xrm.Page.ui.tabs
    // 获取单个tab 【sections,getDisplayState(),getLabel(),getName(),getParent(),getVisible(),setDisplayState(),setFocus(),setLabel(),setVisible()】
    Xrm.Page.ui.tabs.get()
    
    // 其他
    Tab-Sections:tabs.get(0).sections【forEach(),get(),getLength()】
    单个Section:tabs.get(0).sections.get(0)【getLabel(),getName(),getParent(),getVisible(),setLabel(),setVisible(),controls】
    
    页面导航:navigation.items【forEach(),get(),getByFilter(),getByIndex(),getByName(),getLength()】
    单个导航:navigation.items.get()【getId(),getLabel(),getVisible(),setFocus()-导航跳跃,setLabel(),setVisible()】
    获取导航:1.通过getLabel()遍历;2.通过ID:.get("navContacts")
    
    例:隐藏活动:Xrm.Page.ui.navigation.items.get("navActivities").setVisible(false)
                               document.getElementById(“navActivites”)
    窗体:formSelector.items【forEach(),get(),getByFilter(),getByIndex(),getByName(),getLenght()】
    单个窗体:formSelector.items.get()【getId(),getLabel(),navigate()-窗体跳跃】
    var formItem = Xrm.Page.ui.formSelector.getCurrentItem();
    

    Xrm.Utility

    官方示例

    // 弹出框,方法仅用于 更新的实体
    Xrm.Utility.alertDialog(message,onCloseCallback)
    
    //确认框,方法仅用于 更新的实体
    Xrm.Utility.confirmDialog(message,yesCloseCallback,noCloseCallback)
    
    // 实体是否为活动实体
    Xrm.Utility.isActivityType(entityName)
    
    // 新的或现有的实体记录的实体窗体
    Xrm.Utility.openEntityForm(实体的逻辑名称[,uniqueId,parameters,windowOptions])
    
    // 打开快速创建窗体:Xrm.Utility.openQuickCreate(entityLogicalName,createFromEntity,parameters).then(successCallback, errorCallback);
    
    打开HTML Web资源:Xrm.Utility.openWebResource(webResourceName,webResourceData,width, height)
    
    使用移动设备摄像头扫描条形码:Xrm.Utility.getBarcodeValue().then(successCallback, errorCallback)
    
    返回设备当前地理位置:Xrm.Utility.getCurrentPosition().then(successCallback, errorCallback)
    
    隐藏函数
    
    返回记录WebApi请求路径:Xrm.Utility.getEntityUrl(entityName, entityId)
    
    删除数据:Xrm.Utility.deleteRecord(entityName, entityId)
    
    创建数据:Xrm.Utility.create(entityLogicalName, parent, relationship, parameters, successCallback, failureCallback)
    
    检索数据:Xrm.Utility.retrieveEntityRecord(entityReference, columnNames, successCallback, actionFailedCallback)
    
    检索集合:Xrm.Utility.retrieveEntityCollection(keyQuery, successCallback, actionFailedCallback)
    
    弹出框:Xrm.Utility.openDialog (url, dialogOptions, dialogArguments, initFunctionName, returnFunction)
    
    打开记录:Xrm.Utility.openRecord(entityName, entityId, parameters)
    
    展示Hierarchy:Xrm.Utility.showHierarchyPage(entityTypeName, entityId)
    

    openEntityForm示例

    // 使用默认窗体,打开新的客户记录
    Xrm.Utility.openEntityForm("account");
    
    // 使用默认窗体,打开现有客户记录
    Xrm.Utility.openEntityForm("account","A85C0252-DF8B-E111-997C-00155D8A8410");
    
    // 打开具有特定窗体和设置默认值的新客户类型
    var parameters = {};
    parameters["formid"] = "b053a39a-041a-4356-acef-ddf00182762b";
    parameters["name"] = "Test";
    parameters["telephone1"] = "(425) 555-1234";
    Xrm.Utility.openEntityForm("account", null, parameters);
    
    // 在新窗口中使用默认窗体,打开新的客户记录
    var windowOptions = {
     openInNewWindow: true
    };
    Xrm.Utility.openEntityForm("account",null,null,windowOptions);
    
    到达胜利之前无法回头!
  • 相关阅读:
    ROS_Kinetic_08 ROS的集成开发环境(IDEs)之使用Eclipse
    如何写好一份竞品运营分析报告?
    我眼中的Linux设备树(六 memory&chosen节点)
    【干货】前端开发者最常用的六款IDE
    【前端图表】echarts散点图鼠标划过散点显示信息
    【前端图表】echarts实现散点图x轴时间轴
    三分钟教你学会如何将密文解码成明文
    2018上半年GitHub上最热门的开源项目
    进阶攻略|前端完整的学习路线
    进阶攻略|前端最全的框架总结
  • 原文地址:https://www.cnblogs.com/weiyongguang/p/14078755.html
Copyright © 2011-2022 走看看