2013-10-24 46 views
-1

現在我有2種方式從NetSuite公司獲得稅收代碼,這些都是優勢/每我如何從NetSuite獲得稅碼?

1 /第一種方法的缺點:

我從saleTaxItem列表中的所有稅務代碼,並保存在數據庫中,與此方式,它很容易和快速。

但我們必須檢查,員工/供應商有權使用它。在結果中,SalesTaxItem對象沒有任何引用僱員/供應商的屬性,而Employee/Vendor對象也沒有引用關鍵字SalesTaxItem。

那麼,我如何知道員工/供應商有權使用這種方式使用稅碼?

這是SalesTaxItem對象的結構:

   SalesTaxItem Object 
        (
         [itemId] => Item Name 
         [displayName] => 
         [description] => 
         [rate] => 7.25% 
         [taxType] => 
         [taxAgency] => RecordRef Object 
          (
           [internalId] => -100 
           [externalId] => 
           [type] => 
           [name] => New Name 
          ) 

         [purchaseAccount] => 
         [saleAccount] => 
         [isInactive] => 
         [effectiveFrom] => 
         [validUntil] => 
         [eccode] => 
         [reverseCharge] => 
         [parent] => 
         [exempt] => 
         [isDefault] => 
         [excludeFromTaxReports] => 
         [available] => 
         [export] => 
         [taxAccount] => RecordRef Object 
          (
           [internalId] => 37 
           [externalId] => 
           [type] => 
           [name] => New Name 
          ) 

         [county] => Country Name 
         [city] => 
         [state] => CA 
         [zip] => ,95646,96120 
         [nexusCountry] => 
         [internalId] => -111 
         [externalId] => 
         [nullFieldList] => 
        ) 

2 /第二種方法:

我讓員工名單,供應商名單。而foreach這些列表可以用NetsuiteService對象的函數getSelectValueResult獲取稅碼。

通過這種方式,我們需要每個員工/供應商調用函數getSelectValueResult來獲取該員工/供應商的稅收清單。雖然我們有10個稅碼,但我們需要1000次呼叫功能(如果我們有1000個員工/供應商)。

這種方式的好處是,我們可以保存參考鍵[taxcodes,employee],[taxcodes,vendor],它有助於檢查員工/供應商是否有權使用稅碼。

缺點:速度慢,浪費時間,並獲得重複的稅碼記錄。

這是GetSelectValueResult對象的結構時,呼叫功能getSelectValueResult爲每個員工/供應商

  [getSelectValueResult] => GetSelectValueResult Object 
       (
        [status] => Status Object 
         (
          [statusDetail] => 
          [isSuccess] => 1 
         ) 

        [totalRecords] => 2 
        [totalPages] => 1 
        [baseRefList] => BaseRefList Object 
         (
          [baseRef] => Array 
           (
            [0] => RecordRef Object 
             (
              [internalId] => 25821 
              [externalId] => 
              [type] => platformCore:RecordRef 
              [name] => My tax code name 1 
             ) 

            [1] => RecordRef Object 
             (
              [internalId] => 27812 
              [externalId] => 
              [type] => platformCore:RecordRef 
              [name] => My tax code name 2 
             ) 

           ) 

         ) 

       ) 

哪一個我應該使用?

我認爲第一種方式很好,但是如何在使用稅碼時檢查員工/供應商的許可?

非常感謝。

+0

第二種方式,我可以發送員工列表/供應商列表來獲取,每個員工的獲取速度更快。但即使有一名員工沒有權限,INSUFFICIENT_PERMISSION也會返回。我認爲將ignoreReadOnlyFields設置爲true會忽略錯誤。我如何在NetSuite PHP Toolkit 2013中設置ignoreReadOnlyFields?謝謝。 – caophamtruongson

回答

0

由於個人稅碼沒有權限,您可以分別獲取員工的角色並將其存儲在單獨的表中。所以你可以隨時加入角色。

+0

你是否會說管理員,首席執行官的角色?我們如何知道員工有權使用稅收代碼和角色? – caophamtruongson

+0

我看到Employee類具有'rolesList'屬性,沒有屬性參考稅碼 – caophamtruongson

+0

在UI中,我可以看到角色在角色 - >權限選項卡 - >列表 - >稅項。您應該能夠從suitescript或webservices獲取這些信息。 – Faz