日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > php >内容正文

php

php销售清单录入,Netsuite SuiteTalk – 通过PHP请求客户发票清单

發(fā)布時(shí)間:2024/3/26 php 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php销售清单录入,Netsuite SuiteTalk – 通过PHP请求客户发票清单 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

就像你一樣,我開始嘗試使用Web Services API(也稱為SuiteTalk).大多數(shù)情況下,這是一種令人沮喪的運(yùn)動(dòng),因?yàn)槲易罱K發(fā)現(xiàn)的是我平常無(wú)法做到我想要的東西.那和性能非常糟糕,即使它工作正常也會(huì)導(dǎo)致我的項(xiàng)目失敗.

與Faz一樣,我發(fā)現(xiàn)使用RESTlet和Saved Searches的組合比處理Web服務(wù)框架更容易,更快捷.

基本上將您的問(wèn)題分解為以下部分:

>保存搜索,返回您想要的結(jié)果(跟蹤以后需要的內(nèi)部ID)

> RESTlet它只是一個(gè)Javascript文件,它定義了用于從搜索中返回結(jié)果的函數(shù)

>調(diào)用RESTlet并獲取結(jié)果的客戶端代碼.

第一部分:

所以保存的搜索非常簡(jiǎn)單.我會(huì)假設(shè)你可以做到這一點(diǎn),而且你可以在一個(gè)地方實(shí)際獲得你想要的所有領(lǐng)域.根據(jù)我的經(jīng)驗(yàn),情況并非總是如此.

第二部分:

RESTlet涉及更多步驟,即使它真的是一件非常簡(jiǎn)單的事情.使其變得復(fù)雜的是將其上傳并部署在NetSuite站點(diǎn)上.如果您還沒(méi)有安裝NetSuite IDE,我強(qiáng)烈推薦它,如果只是為了使腳本部署更容易一些.自動(dòng)完成和工具提示也非常有用.

例如,這里是我用來(lái)從我關(guān)心的搜索中獲得結(jié)果的代碼.這是改編自某種靈魂在互聯(lián)網(wǎng)上的某個(gè)地方發(fā)布但我遺忘在哪里:

function getSearchResults(){

var max_rows = 1000;

var search_id = 1211;

var search = nlapiLoadSearch(null, search_id);

var results = search.runSearch();

var rows = [];

// add starting point for usage

var context = nlapiGetContext();

startingUsage = context.getRemainingUsage();

rows.push(["beginning usage", startingUsage]);

// now create the collection of result rows in 1000 row chunks

var index = 0;

do{

var chunk = results.getResults(index, index+1000);

if( ! chunk ) break;

chunk.forEach( function(row){

rows.push(row);

index++;

});

}while( chunk.length === max_rows);

// add a line that returns the remaining usage for this RESTlet

context = nlapiGetContext();

var remainingUsage = context.getRemainingUsage();

rows.push(["remaining usage",remainingUsage]);

// send back the rows

return rows;

}

您可以通過(guò)傳入已保存的搜索內(nèi)部ID來(lái)獲取內(nèi)容:

var search = nlapiLoadSearch(null, SEARCH_ID);

var resultSet = search.runSearch();

然后代碼重復(fù)調(diào)用getResults()來(lái)獲取1000個(gè)結(jié)果的塊,這是一個(gè)NetSuite限制.編寫完成后,必須將腳本上載到NetSuite并進(jìn)行配置和部署.最重要的部分是告訴它為每個(gè)動(dòng)詞分配什么功能.在這種情況下,我分配了GET來(lái)執(zhí)行g(shù)etSearchResults.這里有很多工作要做,我不打算把它全部輸出,因?yàn)橹档没〞r(shí)間學(xué)習(xí)這一部分.至少足以讓IDE為你做這個(gè)= D.您可以在“RESTlets簡(jiǎn)介”指南中閱讀所有相關(guān)內(nèi)容.

第三部分.

客戶端代碼可以是您想要的任何方式,以您喜歡的方式執(zhí)行REST.我個(gè)人喜歡Python,因?yàn)檎?qǐng)求庫(kù)太棒了.

這是一些示例Python代碼:

import requests

import json

url = 'https://rest.sandbox.netsuite.com/app/site/hosting/restlet.nl?script=123&deploy=1'

headers = {'Content-Type': 'application/json', 'Authorization':'NLAuth nlauth_account=1234567, nlauth_email=someone@somewhere.com, nlauth_signature=somepassword, nlauth_role=3'}

resp = requests.get(url, headers=headers)

data = resp.json()

該URL將作為RESTlet部署的一部分顯示給您.然后,您可以使用返回的數(shù)據(jù)執(zhí)行所需操作.

所以我建議你花時(shí)間的東西是

>設(shè)置NetSuite IDE

>獲取和閱讀SuiteScript開發(fā)人員參考文檔

>找到一種以您選擇的語(yǔ)言創(chuàng)建REST客戶端代碼的好方法.

我希望有所幫助.

總結(jié)

以上是生活随笔為你收集整理的php销售清单录入,Netsuite SuiteTalk – 通过PHP请求客户发票清单的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。