HTML 在Dynamics CRM FOrm上使用Bing地图

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HTML 在Dynamics CRM FOrm上使用Bing地图相关的知识,希望对你有一定的参考价值。

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:v = "urn:schemas-microsoft-com:vml">
    <head>
        <title>Fun With Bing Maps</title>
        <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
 
        <script type="text/javascript" src="http://dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6.2"></script>
 
        <script type="text/javascript" >
            //Create a couple page level variables
            var map = null;
            var accountname = '';
            function GetMap() {
                //Get the Account data from the Account Form
                var controls = parent.Xrm.Page.ui.controls;
                accountname = controls.get("name").getAttribute().getValue();
                var street1 = controls.get("address1_line1").getAttribute().getValue();
                var state = controls.get("address1_stateorprovince").getAttribute().getValue();
                var city = controls.get("address1_city").getAttribute().getValue();
                var postcode = controls.get("address1_postalcode").getAttribute().getValue();
                var country = controls.get("address1_country").getAttribute().getValue();
                //If we have the City field populated, let's try and get a map.  Otherwise, let's exit.
                if (city != null) {
                    //Place into the map variable a NEW instance of the object VEMap and tie it to the myMap div section in our page body
                    map = new VEMap('myMap');
                    //Initialize the map
                    map.LoadMap();
                    var fulladdress = street1 + ', ' + city + ', ' + state + ', ' + postcode + ', ' + country;
                    //Search for the address and create the map
                    map.Find(accountname, fulladdress, VEFindType.Businesses, null, 0, 1, true, true, true, true, onfound);
                }
                else {
                    //If you don't have a city populated, you're likely in the process of creating the record
                    exit;
                }
            }
 
            function onfound(layer, resultsArray, places, hasMore, veErrorMessage) {
                if (places) {
                    //Create a PushPin object and place it at the Latitude/Longitude calculated from the map.Find
                    var shape = new VEShape(VEShapeType.Pushpin, places[0].LatLong);
                    //Give the PushPin a title
                    shape.SetTitle(accountname);
                    //Add the PushPin to the map
                    map.AddShape(shape);
                }
            }      
          </script>
          <link id="mapcontrolcss" rel="stylesheet" type="text/css" href="http://ecn.dev.virtualearth.net/mapcontrol/v6.3/css/bin/6.3.20091207154938.04/en/mapcontrol.css" rev="Stylesheet" />
    </head>
    <body onload="GetMap(); contentEditable=true">
        <div style="position: relative; width: 100%; height: 100%" id="myMap"></div>
    </body>
</html>

Dynamics CRM2016 Web API之删除

      相比之前的增改查,删除就显得简单的多了。

    这里的request的type为delete,删除成功的status为204,404则是要删除的记录不存在

var id = 'BAD90A95-7FEA-E511-9414-ADA183AB6249';
    $.ajax({
        async: false,
        type: "DELETE ",
        contentType: "application/json; charset=utf-8",
        url: Xrm.Page.context.getClientUrl() + "/api/data/v8.0/accounts(" + id.replace('{', '').replace('}', '') + ")",
        success: function (data, textStatus, XmlHttpRequest) {
            if (XmlHttpRequest.status=='204') {
                alert('删除成功');
            }
        },
        error: function (XmlHttpRequest, textStatus, errorThrown) {
            if (XmlHttpRequest.status == '404') {
                alert('记录不存在');
            }
        }
    });
    CRM除了提供上述删除记录的web api外,还提供了删除单个属性的api,这里提个醒,这个api对lookup字段不适用,会报错的,针对这种关系联的字段有专门的api来对付它。

 var id = 'D1227301-84EB-E511-9414-ADA183AB6249';
    $.ajax({
        async: false,
        type: "DELETE ",
        contentType: "application/json; charset=utf-8",
        url: Xrm.Page.context.getClientUrl() + "/api/data/v8.0/accounts(" + id.replace('{', '').replace('}', '') + ")/telephone1",
        success: function (data, textStatus, XmlHttpRequest) {
            if (XmlHttpRequest.status=='204') {
                alert('删除成功');
            }
        },
        error: function (XmlHttpRequest, textStatus, errorThrown) {
           
        }
    });



以上是关于HTML 在Dynamics CRM FOrm上使用Bing地图的主要内容,如果未能解决你的问题,请参考以下文章

Dynamics CRM 2015-Ribbon In Basic Home Tab

Dynamics CRM - 为 sub-grid 添加 OnChange 事件

Dynamics CRM 2016 Web API 消息列表

Dynamics CRM 2015/2016 Web API:注册 APP(调用CRM Online Web API)

Dynamics CRM2016 Web Api之更新时间字段值

Dynamics CRM 2015/2016 Web API:聚合查询