• 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();
    

      

     

  • 相关阅读:
    PAT Basic 1023 组个最小数 (20 分)
    PAT Advanced 1048 Find Coins (25 分)
    PAT Basic 1005 继续(3n+1)猜想 (25 分)
    PAT Advanced 1050 String Subtraction (20 分)
    PAT Advanced 1041 Be Unique (20 分)
    PAT Basic 1047 编程团体赛 (20 分)
    SpringSecurity整合SpringBoot
    给正在运行的Docker容器动态绑定卷组
    linux 中格式化json字符串
    docker/kubernetes国内源/镜像源解决方式
  • 原文地址:https://www.cnblogs.com/pipidan/p/8780961.html
Copyright © 2020-2023  润新知