Oracle NetSuite 條碼整合
透過在 SuiteScript 2.1 和 進階 PDF/HTML 範本 中直接整合專業的條碼生成功能,實現 NetSuite 庫存管理 和 供應鏈 工作流的自動化。
SuiteScript 2.1
支援 NetSuite WMS
OAuth2 客戶端憑據
1
NetSuite 的 OAuth2 身分驗證
為了確保 Oracle NetSuite 與我們的雲端 API 之間的安全通訊,請使用 N/https 模組。此伺服器端請求將檢索一個臨時的 Bearer 權杖,從而使您的 用戶端密鑰 (Client Secret) 對用戶端不可見。
認證端點:
https://www.barcodesoft.com/api/auth/token
2
SuiteScript 2.1 程式碼實作
無論您是構建用於自定義儀表板的 Suitelet,還是用於自動列印標籤的 使用者事件指令碼 (User Event Script),請使用以下邏輯處理 API 握手:
/**
* @NApiVersion 2.1
* @NScriptType Suitelet
*/
define(['N/https', 'N/encode'], (https, encode) => {
const getToken = () => {
let response = https.post({
url: 'https://www.barcodesoft.com/api/auth/token',
body: JSON.stringify({
grant_type: 'client_credentials',
client_id: '您的_NETSUITE_整合_ID',
client_secret: '您的_密鑰',
scope: 'barcode:generate'
}),
headers: { 'Content-Type': 'application/json' }
});
return JSON.parse(response.body).access_token;
};
// 呼叫 /barcode/v1/qrcode 或 /barcode/v1/code128 等介面的邏輯...
});
3
進階 PDF/HTML 範本整合
對於 NetSuite 的 裝箱單、發票 或 商品標籤,您必須將二進制圖像數據轉換為 Base64 字串。這樣可以在列印時無需外部圖像 URL 即可渲染條碼。
var base64Img = encode.convert({ string: apiResponse.body, input: encode.Encoding.UTF_8, output: encode.Encoding.BASE_64 });
在您的 Freemarker 範本中,按如下方式嵌入變數:
<img src="data:image/png;base64,${base64Img}" style="width: 200px; height: 80px;" />
4
常見 NetSuite 應用情境
將條碼整合到以下標準 NetSuite 流程中,以提高營運效率:
- NetSuite WMS: 為即時移動掃描生成庫位 (Bin) 和托盤標籤。
- 工單 (Work Orders): 在隨工單文件中添加 GS1-128 條碼,以便進行車間追蹤。
- 全球貿易: 為零售消費品生成 EAN-13 或 UPC-A 條碼。