產品模塊

Products
模塊ID 50
用戶手冊 本頁
開發文檔 Module Products (developer)

簡介

本模塊管理產品。

相關參考:管理服務的 服務模塊 、管理倉庫和庫存的 Module Stocks

安裝

該模塊包含在 Dolibarr 發行版中,因此無需安裝。

配置

要使用此模塊,必須首先使用管理員帳戶通過菜單選項 "主頁 - 設置 - 模塊"啟用它:

選擇列出模塊的選項卡。然後點擊 "激活"。。

模塊現在已激活。

如果在該模塊的行尾出現一個齒輪圖標 ,則單擊它以訪問特定於模塊的設置頁面。

參數

   

產品模塊參數設置見上圖。

  • 編號的生成與檢查;包含兩個互斥的選項 Elephant(大象) 和 Leopard(豹)。

Elephant根據事先定義的格式掩碼,返回一個可定製編號。

Leopard允許自定義編號。

滑鼠放在圖中的小問號位置,顯示掩碼的幫助信息。

  • 生成產品文檔的文檔模板

該部分確定產品資料生成文檔的模板。相關修改,見開發文檔#模板

自定義屬性

計算欄位

可輸入公式,公式輸入對象的其他屬性 or 任何 PHP 代碼來得到動態值。

你可以使用任何PHP兼容的公式,包括「?」條件運算符, 和以下全局對象:

$db, $conf, $langs, $mysoc, $user, $object

注意: 可能只有對象的部分屬性是可用的。如果你需要一個未加載的屬性,可以在公式中查詢你自己的對象,如下例所示:

使用計算欄位意味著,你不能在界面輸入值,也意味著,如要存在語法錯誤,將得不到返回。

公式實例:

$object->id < 10 ? round($object->id / 2, 2) : ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2)

加載對象實例:

(($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id : ($obj->rowid ? $obj->rowid : $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5 : '-1'

其他實例,強制加載對象及其父對象的公式:

(($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref : 'Parent project not found'

定義

產品

「產品」是你銷售給顧客的貨物,或者是你從供應商處採購的貨物,是實體對象,相對應的虛擬對象是 服務.

產品遵循以下規則:

  • 產品可以儲存在倉庫中(只有產品可以出現在 庫存 模塊中,服務是不可以出現在庫存模塊中的).
  • 產品可以交付(只有產品可以出現在 發貨 模塊中, 服務是不可以出現在發貨模塊中的。 服務可以實現但不能發貨).
  • 產品是一種材料貨物。它的價值往往隨著時間的推移而下降(已拆封產品的價值低於未拆封產品的價值)。

有些欄位專用於產品,而不適用於服務,例如:

  • 重量
  • 尺寸
  • 自定義代碼 = 商品代碼 = 許可證代碼 = HTS = HS代碼(6個以上字符的代碼,用於定義產品的國際海關類別)

產品套件(Kits)(也稱為產品包或虛擬產品)

產品或服務可註冊為包含其他(單一)產品的套件(「父」)產品。此功能可從 產品服務 模塊的設置頁面激活。它允許在訂單、發票和庫存中將產品的「包」或「套件」作為一個批次進行處理,而不是單獨處理每個產品。

套件產品符合以下規則:

  • 當在文檔(報價單、發票、訂單)中添加產品時,僅顯示虛擬產品(父產品)的行。
  • 當獲取/交付父產品時,其中每個單獨組件(子產品)的庫存都會增加/減少。例如,如果您已設置在供應商訂單驗證時增加庫存,則在包含虛擬產品的供應商訂單驗證通過時,將會增加該產品的庫存以及組成該產品的所有子產品的庫存。
  • 虛擬產品本身可以由包含真實產品的其他虛擬產品組成。

如何創建產品套件:

  • 首先創建一個「父」產品。然後,必須為其分配組件產品。
  • 在產品頁面中,單擊舊版本的「套件」或「虛擬產品」標籤頁。
  • 在頁面底部的搜索欄「按關鍵字篩選」中,輸入要分配的子產品的名稱。當產品出現時,勾選並選擇數量,然後單擊「添加/更改」。

注意:

這是一種不同於「製造/生產」模塊中「容器」產品的功能,「容器」產品使用其子組件的現有庫存來生產出另一種產品,然後將其作為庫存保存。

事實上,在「套件產品或服務」功能中,虛擬產品的子組件只會在虛擬產品交付時減少相應的庫存。在此之前,這些子產品仍處於完全可支配狀態,並可能作為單獨的獨立產品集成到其他銷售流程中。

同樣,製造模塊的行為有所不同:從它註冊「容器產品」的那一刻起,它就立即聲稱其子產品不能用於任何其他用途。因此,無論容器產品是否離開商店,他們的庫存都會立即減少,因為考慮到子組件不能再作為庫存中的單個產品而返回庫存。


銷售價格管理規則

在Dolibarr中有四種銷售價格管理方法:

. 每個產品只有一個唯一價格

. 按客戶細分市場並享有不同的價格(見下一章)

. 每個客戶享有不同的價格

. 按交易數量不同享有不同的價格(實驗性的)

您必須在「產品」模塊的設置中選擇一種並且只能選擇一種銷售價格管理方法。


按客戶細分(segment)的價格

Dolibarr可以接受根據客戶細分市場定義多個價格。默認有5個客戶細分市場(即不同客戶組成的5個組),但您也可以對此進行編輯。每個客戶可以且只能與1個細分市場關聯,因此將為其分配為該細分市場定義的價格(如果尚未定義客戶所屬的細分市場,則默認屬於細分市場1)。

從v12開始,REST API支持獲取(但不支持設置)產品的多個價格(按客戶細分市場的價格)。

產品價格和客戶細分市場只能從後台設置。

類別(Categories)

產品可以被添加到一個或多個類別中。

要使用API設置產品的類別,必須使用 APIs /categories/...

圖片(Image)

一個產品可以有一個或多個圖像。可以從產品的「連結文件」標籤頁中手動設置。

要使用APIs獲取或設置產品的圖像,必須使用 API /documents(參數「ModulePart」=「Product」或「Service」)。


變體(Variants)

產品可以有多種變體,例如尺寸或顏色。

從V12開始,REST API支持獲取、設置和刪除產品的變體。


生命周期/業務規則

  Page waiting to complete. To complete, create an account, go back and clic on "Modify".
  Page en attente d'être complété. Pour compléter, créez un compte, revenez et cliquez sur "Modifier".
  Página a completar. Para completarla, cree una cuenta, vuelva a la página y haga clic en "editar"
  Seite wartet auf Vervollständigung. Um zu helfen, erstelle ein Konto, gehe zurück und klicke auf "Bearbeiten".
  待完成,欲幫助完成,註冊帳號,點擊「編輯"
  ページは未完成の狀態です。完成させるにはアカウントを作成し、ページに戻って「編集」をクリックして下さい。


相關視頻

產品(法語配音,但字幕可用,並用此語言評論):