使用nodejs呼叫C4C的Odata服務建立銷售訂單
var request = require('request');
var url = "https://jerry.c4c.saphybriscloud.cn/sap/c4c/odata/cust/v1/zjerrysalesorder";
var getTokenOptions = {
url: url,
method: "GET",
json:true,
headers: {
"content-type": "application/json",
'Authorization': "Basic ABCDE00ZXN0MQ==",
"x-csrf-token" :"fetch"
}
};
function getToken() {
return new Promise(function(resolve,reject){
var requestC = request.defaults({jar: true});
console.log("Step1: get csrf token via url: " + url );
requestC(getTokenOptions,function(error,response,body){
var csrfToken = response.headers['x-csrf-token'];
if(!csrfToken){
reject({message:"token fetch error"});
return;
}
console.log("Step1: csrf token got: " + csrfToken);
resolve(csrfToken);
});
});
}
function createSalesOrder(token, oPostData){
return new Promise(function(resolve, reject){
var requestC = request.defaults({jar: true});
var createOptions = {
url: "https://jerry.c4c.saphybriscloud.cn/sap/c4c/odata/cust/v1/zjerrysalesorder/CustomerQuoteCollection",
method: "POST",
json:true,
headers: {
"content-type": "application/json",
'x-csrf-token': token
},
body:oPostData
};
requestC(createOptions,function(error,response,data){
if(error){
reject(error.message);
}else {
resolve(data);
}
});
});
}
getToken().then(function(token) {
var payload = {
"Name": "Jerry Test 2019-1-12 19:52PM",
"TypeCode": "2059",
"BuyerID":"Jerry open ID",
"PartyID":"60102",
"CustomerQuoteText":[{
"Text": "test comment by Jerry Wang",
"TypeCode": "10024"
}],
"CustomerQuoteItem":[{
"ProductID": "1042416"
}],
"CustomerQuoteItemProposal":[{
"ProductUUID": "00163E72-09C6-1EE8-BBDC-AC5F0CB0D795",
"Quantity": "1",
"unitCode": "EA"
}]
};
createSalesOrder(token, payload).then(function(oData){
console.log("created Sales Order by OData: " + oData.d.results.ID);
});
});
要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2673738/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 使用簡單的Java程式碼在SAP C4C裡建立銷售訂單Java
- C4C銷售訂單行專案價格維護方法
- 如何用程式碼的方式取出SAP C4C銷售訂單建立後所有業務夥伴的資料
- SAP C4C OData服務的filter,客戶端分頁和排序的使用方式Filter客戶端排序
- BAPI_SALESORDER_CREATEFROMDAT2 BAPI建立VA01 銷售訂單API
- 如何用SAP Cloud for Customer的手機App建立銷售訂單CloudAPP
- S/4HANA服務訂單Service Order的批量建立
- 使用OData服務將SAP C4C自定義BO的TextCollection暴露給外部消費者
- EBS:銷售訂單歷史記錄
- 訂單服務的設計思考
- 使用Excel消費C4C的OData serviceExcel
- CO銷售訂單成本核算詳解
- 使用 SAP Cloud SDK 連線 OData 服務Cloud
- 銷售訂單處理期間的基本功能
- 使用Dockerfile部署nodejs服務DockerNodeJS
- SAP SD如何將銷售訂單其它ITEM加入到一個已建立好的交貨單裡
- EBS:OM Sales Order銷售訂單【Open Interface、Open API】API
- (原創)BAPI 修改銷售訂單的方法 ‘BAPI_SALESORDER_CHANGE’API
- 使用SAP CRM中介軟體XIF(External Interface)一步步建立服務訂單
- 如何使用 ABAP 程式消費 SAP ABAP OData 服務
- SAP ABAP OData 服務如何支援建立(Create)操作試讀版
- 在銷售中處理第三方訂單
- SAP Cloud for Customer銷售訂單External Note的建模細節Cloud
- 銷售也要學會使用者心理分析:淺談服裝銷售
- java使用jolt呼叫tuxedo服務JavaUX
- 如何使用API的方式消費SAP Commerce Cloud的訂單服務APICloud
- 如何使用 API 的方式消費 SAP Commerce Cloud 的訂單服務APICloud
- Nodejs 使用 ZooKeeper 做服務發現NodeJS
- 使用dubbo+zookeeper釋出服務與呼叫服務
- 使用nodejs程式碼在SAP C4C裡建立Individual customerNodeJS
- SAP ABAP OData 服務的 $count 操作實現
- 提高NodeJS中SSL服務的效能簡單介紹NodeJS
- 「SAP技術」SAP SD微觀研究之根據銷售訂單查詢到該訂單發貨的批次
- 如何用 SAP BTP 平臺上的圖形建模器建立一個 OData 服務
- SAP Business Application Studio 裡建立一個基於 CAP 模型的 OData 服務APP模型
- 建立SvcHost.exe呼叫的服務原理與實踐(1)
- 建立SvcHost.exe呼叫的服務原理與實踐(2)
- VS2013建立和呼叫Web服務Web