HubSpot中的計算屬性允許您自動計算相關記錄上屬性的最小值、最大值、計數、總和或平均值,或根據其他屬性設定自訂方程式。
例如,您可以建立:
請注意:根據您的HubSpot訂閱,您可以創建的計算屬性數量有限。
可以根據不同的條件設定計算屬性,包括相關記錄的屬性值、兩個屬性值之間的時間,或您自己的自訂公式。 若要建立計算屬性:
在左側邊欄選單中,前往「屬性」。
按一下選取物件下拉式選單,然後選取[物件]屬性,為該物件建立屬性。
您可以為物件建立屬性,這些屬性將根據該物件相關記錄的某些屬性值進行計算。 您可以根據該物件的所有關聯記錄或特定關聯標籤( 包括相同的物件關聯)進行計算。
例如,您可以建立交易屬性,計算與決策者標籤相關聯的交易聯絡人所記錄的銷售活動總數。
請注意:使用記錄貨幣只會影響價值的顯示方式,不會自動套用匯率。
您可以建立屬性來計算同一物件中兩個所選日期選擇器屬性之間的時間。 例如,您可以計算指派聯絡單所有者與關閉聯絡單之間的時間。 深入瞭解計算間隔 時間屬性值的顯示方式。
請注意:如果您嘗試根據今天的日期建立屬性,建議對檢視、清單、報告或工作流程中的日期屬性使用相對時間篩選條件,而不是建立計算屬性之間的時間間隔。 例如,如果上次參與日期超過7天,您可以在清單中包含聯絡人,或者當合約續約日期少於31天時,您可以在工作流程中註冊交易。
顯示計算屬性之間的時間值時,預期會出現以下行為:
請注意:在HubSpot中, Time between和Average屬性類型的原始值以毫秒為單位儲存。 如果具有這些值的公式產生的值高於預期,請使用毫秒轉換器將其轉換為所需的時間單位。
您可以建立計算屬性,指定如何捨入其他屬性的數值。 例如,您可以建立計算屬性,將傭金屬性四捨五入到最接近的小數點後兩位。
請注意:使用記錄貨幣只會影響價值的顯示方式,不會自動套用匯率。
請注意:對於貨幣屬性,此功能會將數值四捨五入到所選的精度,但仍會將數值顯示為具有正確數字數量的貨幣。
您還可以創建根據自己的條件計算值的屬性。 自訂公式只能為建立新屬性的同一物件中的數字屬性設定。 例如,您可以建立一個方程式,根據公司最近的交易金額(最近的交易金額)與公司聯絡的次數(聯絡的次數)進行比較。
您可以使用算術運算子、比較運算子、邏輯運算子、條件陳述式和其他函數來建立自訂方程式。 這些方程式可以傳回數字、布林值、字串或日期值。 深入瞭解可用的運算子和函數,以及如何格式化公式。
若要建立自訂公式計算屬性:
請注意:所選的輸出類型必須與編輯器右上角顯示的輸出類型相符,否則您將無法建立屬性。 對於傳回日期的屬性,您可以使用數字或日期輸出類型來確定值的顯示方式(即數字顯示日期(以毫秒為單位) ,日期顯示格式化的日期)。
請注意:使用記錄貨幣只會影響價值的顯示方式,不會自動套用匯率。 若要新增匯率,您可以在公式中包含 exchange_rate
或 dated_exchange_rate
函數。
請注意:如果自訂公式中的任何數字屬性沒有值或空值,則計算將不會執行,計算屬性值將為空。 即使等式中包含一個常數,該值也將為空。 在這種情況下,可以使用 if
和 is_known
函數將值設置為0。
在公式編輯器中,您可以使用文字資料、來自其他屬性、運算子和函數的資料來建立自己的自訂方程式。 下面,了解撰寫自定義計算公式的語法,並查看常用公式的示例。
使用文字資料,您可以將文字、數字以及真值或假值字串新增到方程式中。 您可以通過以下方式格式化字符串、數字、布爾值和日期常量:
字串文字 : 以引號包圍的文字。 這些可以用單引號('constant'
)或雙引號("constant"
)表示。
數字文字:不帶引號的數字。 常數可以是任何實數,也可以包括點符號。 例如, 1005
1.5589
有效的常數。
布爾值文字:常量布爾值可以是true
或false
。
1698508800000
。您可以在自訂公式中包含相同物件的其他屬性。 如果屬性插入到編輯器中,則會自動將其格式化並作為公式的一部分進行驗證。
如果您選擇手動輸入或將屬性粘貼到編輯器中,則應將其格式化為[properties.{propertyInternalName}]
。 例如,若要新增內部值為Test _score的Test score屬性,您可以在編輯器中輸入[properties.Test_score]
。
在公式中使用列舉屬性(例如,下拉選單、單選選單)時,值被視為字串,因此必須用雙引號括起來。例如,"subscriber"
。
您可以在公式中使用運算子來更新、評估或比較常數和屬性值。 當使用多個運算子時,它們遵循PEMDAS的操作順序。 根據您使用的資料類型,您可以在自訂公式中包含以下運算子。
運算符 | 描述 |
+ |
新增數字或字串。返回數值。 |
- |
減去數字。傳回一個數字。 |
* |
乘以數字。傳回一個數字。 |
/ |
除數。傳回一個數字。 |
< |
檢查值是否小於另一個值。 受數字屬性或常數支援。返回布爾值。 |
> |
檢查值是否大於其他值。 受數字屬性或常數支援。返回布爾值。 |
<= |
檢查值是否小於或等於另一個值。 受數字屬性或常數支援。返回布爾值。 |
>= |
檢查值是否大於或等於另一個值。 受數字屬性或常數支援。返回布爾值。 |
! |
檢查是否有任何值為true。返回布爾值。 |
= 或== |
檢查一個值是否等於另一個值。 支持數字和字符串。返回布爾值。 |
!= |
檢查一個值是否不等於另一個值。 支持數字和字符串。返回布爾值。 |
or || |
檢查兩個值中的任何一個是否為真。返回布爾值。 |
and 或&& |
檢查兩個值是否皆為真。返回布爾值。 |
您可以使用自訂公式中的函數來計算值並完成資料操作。 根據您使用的資料類型,您可以在自訂公式中包含以下函數。
功能 | 參數 | 示例 |
取得數字的絕對值。返回數值。 |
number :要獲得絕對值的數字。 |
|
將最多100個字串合併成一個值。返回字符串。 |
arg1 :要附加arg 2的字符串。 arg2 :要追加到arg 1的字符串。 |
|
篩選包含特定字元序列的字串。返回字符串。 |
property :要檢查其值是否有文字的屬性。 text :值應包含的字符序列。 |
|
取得貨幣的小數位數。返回數值。 |
currency :要計算小數位數的貨幣字串。 |
|
取得指定時間的匯率值。返回數值。 |
currency :要計算特定日期匯率的貨幣字串(例如 date :要計算匯率的日期時間屬性。 |
|
獲取最新匯率。返回數值。 |
currency :要計算匯率的貨幣字串。 |
|
設定條件運算式。 |
condition :決定計算值為何的布林陳述式。 arg2 :如果滿足條件,將作為計算值的布林值、數字或字串。 arg3 (可選) :不符合條件的計算值。 如果包含,則必須與 |
|
確定是否已知令牌的值。返回布爾值。 |
property :要檢查值的屬性。 |
|
獲取上次更新權杖的日期。 以毫秒為單位的時間戳記作為字串傳回。 |
property :要檢查其最新更新日期的屬性。 |
|
將所有字元變更為小寫。返回字符串。 |
text :帶有要更改為小寫的值的字符串或文本屬性。 |
|
取得最多兩個數字。返回數值。 |
arg1 :第一個數字或數字屬性。 arg2 :第二個數字或數字屬性。 |
|
取得最少兩個數字。返回數值。 |
arg1 :第一個數字或數字屬性。 arg2 :第二個數字或數字屬性。 |
|
獲取給定日期的數字月份。返回數值。 |
date :要計算月份的日期時間屬性。 |
|
將數字轉換為字串。返回字符串。 |
number_to_convert :要變更為字串的數字或數字屬性。 |
|
取得管線階段的概率。返回數值。 |
管道:要計算其概率的管道的名稱。 |
|
將數字提高到另一個數字的值。返回數值。 |
base :基數。 exponent :要將基數提升到的值。 |
|
將數字向下捨入到指定的精度。返回數值。 |
number_to_round :要向下舍入的數字或數字屬性。 精度:要向下舍入的小數位數。 |
|
將數字四捨五入到指定的精度。返回數值。 |
number_to_round :要捨入其值的數字或數字屬性。 precision :要舍入的小數位數。 |
|
將數字四捨五入到指定的精度。返回數值。 |
number_to_round :要對其值進行四捨五入的數字或數字屬性。 precision :要四舍五入的小數位數。 |
|
取得數字的平方根。返回數值。 |
number :要獲得平方根的數字。 |
|
篩選以特定字元序列開頭的字串。返回字符串。 |
property :要檢查其值是否為起始字元的屬性。 text :值應以其開始的字符序列。 |
|
將字串轉換為數字。返回數值。 |
string_to_convert :要將其值轉換為數字的字串或文字屬性。 |
|
取得兩個日期之間的時差。返回數值。 |
date1 :起始日期時間屬性。 date2 : end datetime屬性。 |
|
將所有字元變更為大寫。返回數值。 |
text :要變更為大寫的字串或文字屬性。 |
|
獲取給定日期的數字年份。返回數值。 |
date :要計算年份的日期時間屬性。 |
|
以下是基於常見用例的示例公式。
if([properties.number] < 4, "less than four", "more than four")
if([properties.number] < 4, if([properties.other_number] < 2, "both true", "one true"), "not true")
concatenate(if([properties.number] < 4, "less", "more"), " than four")
if
和is_known
函數,以便在數字屬性為空時將值設定為0。 例如, if(is_known([properties.number]), [properties.number], 0)
。exchange_rate
或dated_exchange_rate
函數。 例如, [properties.amount] * exchange_rate('CAD')
。