Company/Classroom/Enterprise 設定 - 屬性/自訂屬性
僅為 提供
存取 Onshape 物件的中繼資料定義 (驅動在「屬性」對話方塊與材料表 (BOM) 中資料的顯示)、檢視這些中繼資料的定義、以及建立用於 Company/Classroom/Enterprise 所擁有文件中的新屬性,還可以提供現有 Onshape 屬性的「顯示名稱」。管理員可以為所有使用者新增、修改與淘汰屬性。使用者僅能檢視這些中繼資料的定義。
若要巡覽您 Onshape 中的「屬性/自訂屬性」設定,請按一下 Onshape 視窗右上角的帳戶使用者圖示 ()。這樣會開啟一個下拉功能表,然後按一下 [Company/Classroom/Enterprise 設定]。
按一下頁面左側清單中的 [屬性] (Professional 或 Educator 訂閱) 或 [自訂屬性] (Enterprise 訂閱):
Company 設定 > 屬性
Enterprise 設定 > 自訂屬性
有建立與編輯屬性權限的使用者會在這個頁面上方看到一個 建立自訂屬性 的按鈕。
屬性可以與這些 Onshape 物件相關聯:
- Onshape 零件
- Onshape 組合件
- Onshape 工程圖
- Onshape Part Studio
- Onshape 文件
- Onshape 檔案
- Onshape 應用程式
- Onshape 項目
- Onshape 資料夾
- Onshape 專案

在「屬性/自訂屬性」頁面中:
- 按一下 建立自訂屬性。
- 指定屬性的名稱。此名稱在 Onshape 屬性與現有屬性之間應是獨一無二的。當測試名稱的獨特性時,Onshape 會使用 Company/Classroom/Enterprise 名稱與屬性的名稱。
- 選擇一個屬性類型:
- 文字
- 布林運算
- 整數
- 雙精度
- 日期
- 清單
在定義清單與值時,您可以複製/貼上值,或分別輸入值。您也可以指定顯示名稱 (不過可能無法使用重複的值)。您可以使用拖曳/置放來調整值的順序,並隨時選擇每個值是啟用/非啟用的。
- 使用者
- 有單位的值
- 一開始的發佈狀態是「待決中」(尚無法供使用者使用)。當您要將這個屬性提供給使用者時,請選擇「啟用」(對使用者是可用的,且會將輸入的值記錄在資料庫中)。若要淘汰這個屬性,請選擇「非啟用」。僅能透過 Onshape API 來存取非啟用的值。
- 提供屬性其餘的特性,紅色的星號表示是必填的欄位。取決於您上方選取的屬性類型,可能會有不同的特性可用。
- 預設值 - (適用於所有類型) 如果需要,可與此處輸入一個預設值。如果使用者沒有指定值,則此輸入值會是預設值。
當為「使用者」屬性類型輸入值時,其必須是有效的 Onshape 使用者電子郵件,且已屬於屬性建立處的公司之中。
- 說明 - (適用於所有類型) 可選擇性地為屬性輸入「說明」。
- 單位類型 - 僅適用於有單位類型的值。為自訂屬性從單位類型清單中選擇,包括:
任何 加速 角度 角速度 面積 能源 力 長度 質量 力矩 壓力 時間 體積 - 指出可於何處編輯屬性,以及屬性是否是必要的:
- 必要的 - 表示需要有屬性值。
- 編輯版本中的值 - 表示可以在文件版本中編輯這個屬性值;允許使用者在任何文件版本中提供這個屬性的值。同時表示是否僅能經由 API 來編輯這個屬性值,而無法經由 Onshape 使用者介面。
- 編輯工作區中的值 - 表示可以在工作區中編輯這個屬性值;允許使用者在任何文件工作區中提供這個屬性的值。同時表示是否僅能經由 API 來編輯這個屬性值,而無法經由 Onshape 使用者介面。
- 預設值 - (適用於所有類型) 如果需要,可與此處輸入一個預設值。如果使用者沒有指定值,則此輸入值會是預設值。
- 為屬性輸入選用的驗證準則,包括有特定模式的屬性:
- 如果值可以有多行文字,請核取 [多行] (例如,「說明」可能需要使用多行文字)。
- 如果需要,可輸入最小長度和/或最大長度
- 在「模式」欄位中指明模式,像是包括下方的正規表達式:
- [A-Z]+ 需要 1 或多個大寫英文字母
- [0-9]+ 需要 1 或多個數字字元
- [a-z]+ 需要 1 或多個小寫英文字母
- ONS-[0-9]+ 需要有 ‘ONS-’ 的字首,其後伴隨 1 或多個數字字元。您可將要求的字首放置在預設值特性中,使其自動出現。如果值是無效的,使用者會收到錯誤通知,說明所需的型式為何。
- 選擇屬性會出現於其中的一或多個類別。類別必須已由 Company 或 Enterprise 管理員在「類別」分頁中定義。您可以選擇多個類別,也可以點按類別行最右側的 X 來移除類別。關於「類別」的詳細資訊,請見下方說明。
- 可以將指定給零件和/或組合件類別的自訂屬性設定為已計算的函式來讓ˇ屬性成為經計算的屬性。詳細資訊請參考下方的「建立已計算的屬性」。
- 若要使 Company 帳戶中的所有使用者都可使用屬性,請確定將「發佈狀態」設定為「使用中」。
- 按一下 建立。
- 會出現一個訊息提醒您若將這個屬性設定為啟用的,則 Company/Classroom/Enterprise 中的所有使用者都可以看到這個屬性。按一下 [確認發佈] 來繼續啟用屬性,您也可以稍後再發佈。
- 您也可以選擇 重新排序 來組織排列自訂屬性。這樣可讓您選擇任何自訂屬性 (圖示旁的點
),然後拖放來重新安排屬性的順序。按一下 確認 來儲存變更或按一下 [取消] 來復原變更。

您可以建立一個使用 FeatureScript 來計算值的自訂屬性。在您有了像是這樣的一個屬性之後,可以在Company/Classroom/Enterprise 設定中的自訂屬性內使用它來計算屬性。這些經計算屬性可與「零件」類別一起使用。在您定義了已計算零件屬性之後,您可以使用這個已計算零件屬性建立另一個自訂屬性來於組合件中彙總, 並在組合件與工程圖材料表中包含這些資訊。
組合件可彙總的屬性類型有:「布林」、「整數」、「雙精度」與「有單位的值」,只要單位類型不是「任何」即可。

-
在您 Onshape 設定的「屬性/自訂屬性」頁面中 (如上方所述),建立一個要與已計算屬性一起使用的自訂屬性。
-
在定義的「類別」部分,加入「零件」類別來表示要將屬性套用至零件,並加入「組合件」類別來表示要將屬性套用至組合件。
-
若要建立經計算的零件屬性,在「已計算的零件屬性」的部分核取「計算零件屬性」的方塊。
-
按一下 選擇已計算的零件屬性函式 來開啟選擇已計算的零件屬性函式對話方塊。
-
導覽至包含 FeatureScript 函式的文件。
-
從顯示的清單中選擇函式。
-
按一下 建立 來建立屬性 (或按一下 [取消] 來關閉頁面而不建立屬性)。請於系統提示時確認建立的動作。

若要測試已計算屬性是否如預期運作,您可以將其以自訂表格加入至 Part Studio 中。任何您加入到 FeatureScript 中的註解或警告將會顯示在自訂表格中。請注意,屬性計算處的 Feature Studio 與自訂表格所在的 Part Studio 不一定要存在於相同的文件中。

請確定您已定義要用來建立組合件彙總資料的已計算零件屬性 (如上方所述)。
-
透過「類別」欄位來將「組合件「類別加入至已計算的零件屬性中:
-
注意到名為「彙總的組合件屬性」的新區域出現在頁面下方 (只為這些類型提供:「布林」、「整數」、「雙重」、「清單」與「有單位的值」,只要單位類型不是「任何」即可)。
-
核取方塊,下列的欄位出現可用來定義彙總資料:
-
定義所需的組合件彙總方法來計算,並顯示:
-
「有單位的值」、「整數」與「雙重」的類型
-
總和、最小、最大、平均、加權總和或加權平均
-
-
「布林」類型
-
任何 - 如果至少有一個項目是真時傳回 true
-
全部 - 如果所有項目是真時傳回 true
-
並非任何 - 如果至少有一個項目是真時傳回 false
-
並非全部 - 如果所有項目是真時傳回 false
-
-
清單類型
- 第一個 - 為所有的零件與次組合件傳回第一個彙總屬性值。您可以在「自訂屬性」頁面的「清單」值部分拖曳/置放來調整值的順序。
- 最後一個 - 為所有的零件與次組合件傳回最後一個彙總屬性值。您可以在「自訂屬性」頁面的「清單」值部分拖曳/置放來調整值的順序。
-
-
選擇彙總的屬性來計算,並顯示:
-
「有單位的值」、「整數」、「雙精度」與「清單」的類型
-
相同的屬性
-
-
「布林」類型
-
相同的屬性 (布林)
-
非修訂版管理的
-
從所有 BOM 中排除
-
-
-
在遺失值處理欄位 (不適用於「清單」類型) 中,指定當值遺失時要如何處理彙總:
-
略過彙總 (忽略且不彙總)
- 視為零 (將遺失的值視為零)
-
-
在錯誤處理欄位中指定要如何處理發生的錯誤:
-
略過彙總
-
將錯誤視為零 (不適用於「清單」)
-
視為真/假 (布林)
-
將錯誤傳播至計算中
-
-
核取篩選彙總方塊來篩選彙總 (使用布林屬性做為篩選器時會忽略),然後選擇篩選的方法:
-
布林篩選器屬性 - 從「非經修訂版管理的」與「從所有 BOM 中排除」中選擇,或是選擇一個自訂的布林屬性
-
篩選行為 - 從「為真 (true) 時包括」與「為真 (true) 時排除」中選擇
-
-
按一下 建立 來建立屬性 (或按一下 [取消] 來關閉頁面而不建立屬性)。

在 Feature Studio 中建立名為 Custom mass 的 FeatureScript (或類似的):
annotation { "Property Function Name" : "Custom mass"}
export const mass =
defineComputedPartProperty(function(context is Context, part is Query, definition is map) returns ValueWithUnits
{
const volume is ValueWithUnits = evVolume(context, { "entities" : part });
const material is Material = getProperty(context, {
"entity" : part,
"propertyType" : PropertyType.MATERIAL
});
return material.density * volume;
});
在您 Company 設定 > 自訂屬性頁面中建立一個名為 Custom mass 的自訂屬性:
將自訂屬性分配給「零件」類別與「組合件」類別:
選擇「計算零件屬性」下方的 FeatureScript:核取該方塊,然後按一下 選擇已計算的零件屬性函式:
選擇彙總組合件屬性核取方塊,然後指定要如何包括在材料表中的資訊:
在組合件中您可以將屬性加入至 BOM 內:
-
開啟 BOM。
-
按一下 [新增欄],然後選擇您在上方步驟中建立的自訂屬性。
-
屬性即被加入至 BOM 中:

只有管理員可以編輯 Onshape 中繼資料與屬性/自訂屬性。
在「屬性/自訂屬性」頁面中,您可以:
- 搜尋屬性。使用搜尋方塊來輸入屬性 id、名稱或部分的名稱;核取方塊來搜尋非啟用的屬性。
清單中會先顯示 Onshape 中繼資料屬性,然後在以英文字母順序列出自訂屬性。可以選擇 重新排序 按鈕來以任何順序排列組織自訂屬性。
- Click a Property name to open it for editing.
- You may make any changes desired to a property with a Publish state of Pending, including deleting that property. If the property is already set to Active, you can set its state to Inactive and change its display name, but you will not be able to delete the property.
- Active properties with List type can be reordered and added with additional values/display names. Existing list values can be made inactive and its display names can be edited.
- The Properties dialog alerts you if the update you're making causes any errors.
- 在任何「屬性」對話方塊中都不會顯示非啟用的屬性,但其仍與物件是相關聯的。對啟用屬性的任何其他變更都會立即可用,並在儲存時生效。可以將非啟用的屬性再次設定為「啟用」的。
關於修改這些欄位的詳細資訊請參考建立並啟用新的屬性/自訂屬性。
或許可以將 Onshape 中繼資料的定義設定為非啟用的 (淘汰),但不能編輯。

取決於該區域的特性,您可以存取在 Onshape 中不同區域內的屬性與自訂屬性。
在一個項目 (例如,零件、Part Studio、組合件、工程圖等等) 上按右鍵來存取環境選單,然後按一下[屬性] 以開啟「屬性」對話方塊。如果有可存取的自訂屬性,將會列於對話方塊中。
您也可以使用文件頁面中的「進階搜尋」功能來存取自訂屬性。展開「進階搜尋」下拉清單,然後再展開「新增準則」下拉功能表:
如果有可存取的自訂屬性,則會列出在下拉清單中 (請見上方影像中強調顯示的 Test Property)。
當使用使用者自訂屬性類型時,無法搜尋目前的使用者。您必須選擇位在清單最上方的目前使用者。.

當屬性過時,或在將屬性設為啟用之後於定義中發現錯誤,您可以淘汰屬性。淘汰屬性會將其從所有的屬性對話方塊中移除,但會保留與物件關聯的屬性,並將資料保存在資料庫中。若要淘汰一個屬性:
在「屬性」頁面中:
- 如果需要,搜尋以找出屬性。
- 按一下屬性名稱來開啟以供編輯。
- 選擇發佈狀態的下拉清單,然後從中選擇非啟用。
- 按一下 [儲存變更]。
可以將非啟用的屬性再次設定為啟用的。
或許可以將 Onshape 中繼資料的定義設定為非啟用的 (淘汰),但不能編輯。