【问题标题】:Changing ''pricelevelid'' field based on another field根据另一个字段更改“pricelevelid”字段
【发布时间】:2014-05-20 14:20:46
【问题描述】:

我对javascript很陌生,我的情况是初学者的初学者:) 但我必须在 mscrm 2011 订单实体上编写代码。

我有两个字段,pricelevelid 和 new_taxincl(单选按钮)。我想根据 new_taxincl 字段的选择更改 pricelevelid 字段中的值。 如果用户选择''是''我想用''USD -Tax Included-'',''no''''USD -without tax-''填写pricelevelid字段。这必须运行 onChange 事件。

到目前为止,我无法编写正确的代码。

任何帮助对我来说都很好。 谢谢。

PS:new_vrg是pricelevel实体中的一个字段,与order实体中的new_taxincl字段具有相同的值。

这是我的代码:

    function callRetrievePList() {
    var field = Xrm.Page.data.entity.attributes.get("new_taxincl");
    if ((field == null) || (field.getValue() == null) || (field.getValue()[0] == null) || (field.getValue()[0].id == null))
        return;

    var plistfield = Xrm.Page.data.entity.attributes.get("pricelevelid");
    if (plistfield != null && plistfield.getValue() != null)
        return;
    var options = "$select=PriceLevelId,Name&$filter=new_vrg/Id eq (guid'" + (field.getValue()[0]).id + "')";
    SDK.REST.retrieveMultipleRecords("PriceLevel", options, retrievePListCallBack, errorCallBack, completeCallBack);

}

    function retrievePListCallBack(retrievedStock) {
    var plistfield = Xrm.Page.data.entity.attributes.get("pricelevelid");
    if (plistfield != null && plistfield.getValue() != null)
        return;

    for (var i = 0; i < retrievedStock.length; i++) {
        var stock = retrievedStock[i];

        var lookupReference = [];
        lookupReference[0] = {};
        lookupReference[0].id = stock.PriceLevelId;
        lookupReference[0].entityType = "pricelevel";
        lookupReference[0].name = stock.Name;
        plistfield.setValue(lookupReference);

        return;

    }
}

function errorCallBack(errorObject) {
}

function completeCallBack() {
}

【问题讨论】:

  • +++++++++++++++++++++++

标签: javascript dynamics-crm-2011 field


【解决方案1】:

以下代码可能对您有所帮助:

在 CRM JavaScript 中获取单选按钮:

function TaxIncludedRadioButton_OnChange()
{
var taxInclBtn= Xrm.Page.ui.controls.get("new_taxincl").getAttribute().getValue();
var lookup = new Array();
lookup[0] = new Object();
if(taxIncludeRdBtn==true)
{

lookup[0].id = yourrecorid1;
lookup[0].name = 'USD -Tax Included-';
lookup[0].entityType = entityname;
Xrm.Page.getAttribute("pricelevelid").setValue(lookup);
}
else if(taxIncludeRdBtn==false)
{
lookup[0].id = yourrecorid2;
lookup[0].name = 'USD -Without-tax';
lookup[0].entityType = entityname;
Xrm.Page.getAttribute("pricelevelid").setValue(lookup);

}
}

注册上面的函数 OnChange 事件你的 new_taxincl 单选按钮

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-16
    • 1970-01-01
    相关资源
    最近更新 更多