2014-09-12 39 views
0

是否有可能使用PHP Toolkit抓取Netsuite使用的項目圖像的URL?使用此功能:從PHP的Netsuite文件櫃中獲取圖像url

function getProduct($id) { 

    $service = new NetSuiteService(); 
    $service->setSearchPreferences(false, 1000); 

    $itemInfo = new SearchMultiSelectField(); 
    $itemInfo->operator = "anyOf"; 
    $itemInfo->searchValue = array('internalId' => $id); 

    $search = new ItemSearchBasic(); 
    $search->internalId = $itemInfo; 

    $request = new SearchRequest(); 
    $request->searchRecord = $search; 

    $searchResponse = $service->search($request); 
    $products = $searchResponse->searchResult->recordList->record; 

    return $products; 

} 

我可以獲取物品信息。在信息,NetSuite公司給我這個小片段(整個事情被截斷的清潔度):

... 
[storeDisplayImage] => RecordRef Object 
    (
     [internalId] => 19876 
     [externalId] => 
     [type] => 
     [name] => 4010024.jpg 
    ) 
... 

這只是告訴我該文件的名稱在NetSuite的文件櫃。如何使用PHP Toolkit自動下載圖像?

+0

向我們展示一些代碼來討論。 – lxg 2014-09-12 22:34:57

+0

我用代碼更新了這個問題。 – 2014-09-16 15:27:42

+0

你打算在NetSuite內部還是外部使用這張圖片? – pipechang 2014-09-17 00:12:13

回答

0

試試這個:

$request2 = new GetRequest(); 
$request2->baseRef = new RecordRef(); 
$request2->baseRef->internalId = $product->storeDisplayImage->internalId; 
$request2->baseRef->type = "file"; 
$getResponse2 = $this->service->get($request2); 
if (!$getResponse2->readResponse->status->isSuccess) { 
     echo "GET ERROR"; 
} else { 
    $file = $getResponse2->readResponse->record; 
    echo "GET SUCCESS, File name is " . $file->name; 
    echo "<img src='".$file->url."'>"; 
} 
0

我想你會想看看:

["storeDisplayImage"]=> 
object(RecordRef)#20 (4) { 
    ["internalId"]=> 
    string(6) "758653" 
    ["externalId"]=> 
    NULL 
    ["type"]=> 
    NULL 
    ["name"]=> 
    string(26) "image_name.jpg" 
    } 

我找不到任何方式實際訪問圖像,但如果它是可能的,internalId(758653)是你應該使用搜索什麼。通過URL訪問圖像當它被用來:

https://system.netsuite.com/core/media/media.nl?id= & C = ACCOUNT#& H = 31578b297cc0be65db1f & expurl = T

的問題是,在URL的結尾隨機散列。我無法弄清楚它是什麼,但如果可以的話,你可以構建該URL。

編輯:nlapiResolveURL可能會幫助你。嘗試將internalId傳遞給nlapiResolveURL,它可以動態地提供該URL。