<?xml version="1.0" encoding="UTF-8"?>
|
<WebLink xmlns="http://soap.sforce.com/2006/04/metadata">
|
<fullName>SAP_Send_test</fullName>
|
<availability>online</availability>
|
<description>sap发货测试</description>
|
<displayType>button</displayType>
|
<linkType>javascript</linkType>
|
<masterLabel>发货(测试)</masterLabel>
|
<openType>onClickJavaScript</openType>
|
<protected>false</protected>
|
<url>{!RequireScript("/soap/ajax/51.0/connection.js")}
|
{!RequireScript("/soap/ajax/51.0/apex.js")}
|
//2021-10-22 gwy 版本更改为51.0
|
var getErrorMessages = function (results) {
|
var messages = [],
|
i = 0,
|
len = results.length,
|
r;
|
for (; i < len; i++) {
|
r = results[i];
|
if (!r.getBoolean("success")) {
|
messages = messages.concat(getMessagesOfAResult(r));
|
}
|
}
|
return messages;
|
};
|
var getMessagesOfAResult = function (res) {
|
var messages = [],
|
errors = res.getArray("errors"),
|
i = 0,
|
len = errors.length,
|
e;
|
for (; i < len; i++) {
|
e = errors[i];
|
messages.push(e.message + " " + getErrorFields(e));
|
}
|
return messages;
|
};
|
var getErrorFields = function (error) {
|
var fields = error.getArray('fields');
|
if (fields.length > 0) {
|
return "[" + fields.join(",") + "]"
|
} else {
|
return "";
|
}
|
};
|
var tringcodestr = function (){
|
var result = "";
|
for(var i=0;i<5;i++){
|
var ranNum = Math.ceil(Math.random() * 25); //生成一个0到25的数字
|
//大写字母'A'的ASCII是65,A~Z的ASCII码就是65 + 0~25;然后调用
|
//String.fromCharCode()传入ASCII值返回相应的字符并push进数组里
|
result = result + String.fromCharCode(65+ranNum);
|
//result.push(String.fromCharCode(65+ranNum));
|
}
|
//result = "250" + result;
|
return result;
|
}
|
|
var tringcode = function (){
|
var result = "";
|
for(var i=0;i<5;i++){
|
var ranNum = Math.ceil(Math.random() * 25); //生成一个0到25的数字
|
//大写字母'A'的ASCII是65,A~Z的ASCII码就是65 + 0~25;然后调用
|
//String.fromCharCode()传入ASCII值返回相应的字符并push进数组里
|
result = result + String.fromCharCode(65+ranNum);
|
//result.push(String.fromCharCode(65+ranNum));
|
}
|
result = "250" + result;
|
return result;
|
}
|
|
var foo = function() {
|
|
if ('{!Consumable_order__c.Order_status__c}' == '已提交') {
|
alert("请先审批订单");
|
return;
|
}else if ('{!Consumable_order__c.Order_status__c}' == '草案中') {
|
alert("请先批准订单");
|
return;
|
};
|
var Owner = "{!Consumable_order__c.OwnerId}";
|
var det = new sforce.SObject("Consumable_order__c");
|
det.Id = "{!Consumable_order__c.Id}";
|
det.recordTypeid = "{!$Label.RT_ConOrder_Delivery}";
|
var resultdet = sforce.connection.update([det]);
|
|
var OrdermainId = "{!Consumable_order__c.Id}";
|
var sql = "select Id,Name,CreatedByid,Consumable_order__r.id,Consumable_order__c,Consumable_order__r.recordtypeid,Consumable_product__c,Consumable_count__c,Asset_Model_No__c,Intra_Trade_List_RMB__c from Consumable_Orderdetails__c where Consumable_order__r.id ='" + OrdermainId + "'";
|
var sqlResult = sforce.connection.query(sql);
|
var records = sqlResult.getArray("records");
|
|
if(records.length>0) {
|
for (var i = 0; i < records.length; i++) {
|
var esd = records[i];
|
var countNum = esd["Consumable_count__c"];
|
var OrderNnme = esd["Name"];
|
var OrderId = esd["Consumable_order__c"];
|
var ForeignTrade = esd["Intra_Trade_List_RMB__c"];
|
var AssetModel = esd["Asset_Model_No__c"];
|
var orderPro = esd["Consumable_product__c"];
|
for (var j = 1; j <=countNum; j++) {
|
var rac = new sforce.SObject("Consumable_order_details2__c");
|
if(j.toString().length == 1){
|
rac.Name = OrderNnme + '00'+ j;
|
}else if (j.toString().length == 2){
|
rac.Name = OrderNnme + '0'+ j;
|
}else{rac.Name = OrderNnme + j;}
|
rac.Consumable_order_minor__c = OrderId;
|
rac.RecordTypeId = "{!$Label.RT_ConOrderDetail2_Delivery}";
|
rac.Asset_Model_No__c = AssetModel;
|
rac.Intra_Trade_List_RMB__c = ForeignTrade;
|
var NewDate=new Date();
|
NewDate.setFullYear(NewDate.getFullYear()+5);
|
NewDate.setDate(NewDate.getDate()-1);
|
rac.Deliver_date__c = new Date();
|
rac.Sterilization_limit__c = NewDate;
|
rac.Guarantee_period_for_products__c = new Date();
|
rac.Consumable_product__c=orderPro;
|
var rtingC = tringcodestr();
|
rac.TracingCode__c = rtingC.toString();
|
rac.SerialLotNo__c = rtingC.toString();
|
rac.Bar_Code__c = (new Date()).valueOf() + "250" + rtingC.toString();
|
rac.OwnerId = Owner;
|
var result = sforce.connection.create([rac]);
|
messages = getErrorMessages(result);
|
if (messages.length > 0) {
|
alert(messages.join("\n"));
|
}
|
}
|
}
|
window.location.reload();
|
}
|
};
|
|
foo();</url>
|
</WebLink>
|