salesforce 按钮(js) 点击调用后台类(触发批准流)

零配件出库按钮(点击按钮,获取相关列表的多条选择id,传到类里面)

{!REQUIRESCRIPT ("/soap/ajax/41.0/connection.js")} 
{!REQUIRESCRIPT("/soap/ajax/40.0/apex.js")} 
var selectedIds = {!GETRECORDIDS($ObjectType.PartsAU__c)}; 
var partsAUids=''; 

if (selectedIds.length == 0) { 
alert('请选择一项'); 
}else{ 
selectedIds.forEach(function(item,index){ 
partsAUids+='\''+item+'\''; 
if(index!=selectedIds.length-1){ 
partsAUids +=','; 
} 
}); 


var array = []; 
var arrays = []; 
var partsAUQuery ="SELECT ID,Type__c,Status__c FROM PartsAU__c WHERE ID in ("+partsAUids+")"; 
result = sforce.connection.query(partsAUQuery); 
records = result.getArray("records"); 
records.forEach(function(item,index){ 
arrays.push(item.Id); 
if(item.Status__c=='已预约'){ 
array.push(item.Id); 
} 
}) 
if(array.sort().toString()==arrays.sort().toString()){ 
var result = sforce.apex.execute('SubmitRequestForApproval','BulkSubmitRequest',{partsAUList:array}); 
alert(result); 
}else{ 

alert('请选择已预约的零配件'); 
} 
}

  通过按钮传过来的参数,触发工作流(多条)

 // 零配件出库审批流
       // submit to approve提交批准
     WebService static String BulkSubmitRequest(List<String> partsAUList){
        String ret='提交审批成功';
        try{
            Approval.ProcessSubmitRequest[] reqs = new Approval.ProcessSubmitRequest[]{}; 
            for(String plist: partsAUList){
                Approval.ProcessSubmitRequest req = new Approval.ProcessSubmitRequest();
                //只能用String类型的参数
                req.setComments('零配件出库审批');
                req.setObjectId(plist);
                reqs.add(req);
            }
            Approval.ProcessResult[] result = Approval.process(reqs);
        }catch(Exception e){
            //throw e;
            system.debug('BulkSubmitRequest error: '+e.getMessage());
        }
         return ret;
    }
    

  工单终止按钮,点击按钮,判断某个值时候为空,不为空就传值

{!REQUIRESCRIPT ("/soap/ajax/41.0/connection.js")} 
{!REQUIRESCRIPT("/soap/ajax/40.0/apex.js")} 

var reason = '{!WorkOrder.Reason__c}'; 
var oId = '{!WorkOrder.Id}'; 
if(reason==null || reason==''){ 
alert("请填写工单终止原因"); 
}else{ 

var arr = []; 
var sq = new sforce.SObject("WorkOrder"); 
sq.Id= oId; 
sq.Over__c = 'true'; 
arr.push(sq); 
var res=sforce.connection.update(arr); 

var result = sforce.apex.execute('SubmitRequestForApproval','SingleSubmitRequest',{id:oId,orderReason:reason}); 
alert(result); 
window.location.reload(); 
}

  

 //工单终止
    // submit to approve提交批准
    WebService static String SingleSubmitRequest(String id,String orderReason){
            String res='提交审批成功';
        try{
            //创建一个批准请求
            Approval.ProcessSubmitRequest req = new Approval.ProcessSubmitRequest();
            //设置需要提交的审批
            req.setComments(orderReason);   
            //要审批的记录Id
            req.setObjectId(id);
            //提交该批准请求
            Approval.ProcessResult result = Approval.process(req);
                System.debug(result);
        }catch(Exception e){
            res = e.getMessage();
            //throw e;
            system.debug('SingleSubmitRequest error: '+e.getMessage());
            
        }
        return res;
    }

  点击按钮,改变对象的值

{!REQUIRESCRIPT ("/soap/ajax/41.0/connection.js")} 
{!REQUIRESCRIPT("/soap/ajax/40.0/apex.js")} 
var ww='{!ServiceQuote__c.Id}'; 
var partsAUids=''; 

var partsAUids ='\''+ww+'\''; 
var arr = []; 
var sq = new sforce.SObject("ServiceQuote__c"); 
sq.id = ww; 
sq.Status__c = '确认'; 
sq.OK__c = 'true'; 
arr.push(sq); 
var res=sforce.connection.update(arr); 
window.location.reload();

  

 

转载于:https://www.cnblogs.com/pipidan/p/8780961.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值