Można tworzyć właściwości, które wypełniają dane na podstawie obliczeń z innych właściwości. Za pomocą obliczonych właściwości można skonfigurować niestandardowe równania oparte na innych właściwościach. Za pomocą właściwości rozwijanych można automatycznie obliczać wartości minimalne, maksymalne, liczniki, sumy lub średnie dla właściwości w powiązanych rekordach.
Na przykład można utworzyć:
Uwaga: w zależności od subskrypcji HubSpot, istnieje limit liczby obliczonych właściwości, które można utworzyć.
Obliczone właściwości można skonfigurować na podstawie różnych kryteriów, w tym wartości właściwości powiązanych rekordów, czasu między wartościami dwóch właściwości lub własnych niestandardowych równań. Aby utworzyć właściwość obliczoną lub rozwijaną:
W menu na lewym pasku bocznym przejdź do Właściwość.
Kliknij menu rozwijane Wybierz obiekt , a następnie wybierz Właściwość [Obiekt] , aby utworzyć właściwość dla tego obiektu.
Dla obiektu można utworzyć właściwości, które będą obliczane na podstawie określonych wartości właściwości powiązanych rekordów tego obiektu. Obliczenia można wykonać na podstawie wszystkich rekordów powiązanych z danym obiektem lub dla określonych etykiet asocjacji, w tym asocjacji tego samego obiektu.
Na przykład można utworzyć Właściwość transakcji, która zlicza całkowitą liczbę dzienników aktywności sprzedaży dla kontaktów powiązanych z transakcją z etykietą Decydent .
Uwaga: nieprzetworzone wartości czasu trwania są przechowywane w milisekundach. Jeśli korzystasz z obliczonej właściwości czasu trwania w innych narzędziach HubSpot (np. filtrach, formułach obliczonej właściwości), może być konieczne użycie wartości milisekundowych.
Można tworzyć właściwości, które obliczają czas pomiędzy dwoma wybranymi właściwościami datownika w tym samym obiekcie. Na przykład można obliczyć czas między przypisaniem właściciela zgłoszenia a jego zamknięciem. Dowiedz się więcej o sposobie wyświetlania wartości właściwości obliczonej Time Between.
Jeśli próbujesz utworzyć właściwość na podstawie dzisiejszej daty, dowiedz się więcej o tym, jak używać czasu względnego we właściwościach i filtrach.
Oczekuje się następującego zachowania podczas wyświetlania wartości czasu między obliczonymi właściwościami:
Uwaga: w HubSpot nieprzetworzone wartości typów właściwości Time between i Average są przechowywane w milisekundach. Jeśli równanie z tymi wartościami daje wyższą wartość niż oczekiwana, użyj konwertera milisekund, aby przekonwertować na żądaną jednostkę czasu.
Można również tworzyć właściwości, które obliczają wartości na podstawie własnych kryteriów. Równania niestandardowe można skonfigurować tylko dla właściwości liczbowych w tym samym obiekcie, dla którego tworzona jest nowa właściwość. Na przykład można utworzyć równanie do obliczania kwoty z ostatniej transakcji firmy(Kwotaostatniej transakcji) w porównaniu do tego, ile razy firma kontaktowała się z firmą(Liczba kontaktów).
Równanie niestandardowe można zbudować za pomocą operatorów arytmetycznych, operatorów porównania, operatorów logicznych, instrukcji warunkowych i innych funkcji. Równania te mogą zwracać wartości liczbowe, logiczne, łańcuchowe lub daty. Dowiedz się więcej o dostępnych operatorach i funkcjach oraz sposobach formatowania formuł.
Aby utworzyć niestandardową obliczoną właściwość równania:
Uwaga: wybrany typ wyjściowy musi być zgodny z typem wyjściowym wyświetlanym w prawym górnym rogu edytora, w przeciwnym razie nie będzie można utworzyć właściwości. W przypadku właściwości zwracających datę można użyć typu wyjściowego liczby lub daty, który określa sposób wyświetlania wartości (tj. liczba wyświetla datę w milisekundach, data wyświetla sformatowaną datę).
Uwaga: użycie waluty rekordu wpływa tylko na sposób wyświetlania wartości i nie powoduje automatycznego zastosowania kursu wymiany. Aby dodać kurs wymiany, można uwzględnić w równaniu funkcje exchange_rate
lub dated_exchange_rate
.
Uwaga: jeśli którakolwiek z właściwości liczbowych w równaniu niestandardowym nie ma wartości lub ma wartość null, obliczenia nie zostaną uruchomione, a wartość właściwości obliczeniowej będziepusta. Wartość będzie pusta, nawet jeśli w równaniu znajduje się stała liczba. W takiej sytuacji można użyć funkcji if
i is_known
, aby zamiast tego ustawić wartość na 0.
W edytorze formuł można tworzyć własne niestandardowe równania przy użyciu dosłownych danych, danych z innych właściwości, operatorów i funkcji. Poniżej przedstawiono składnię do pisania niestandardowych równań obliczeniowych i przykłady często używanych formuł.
Korzystając z danych dosłownych, można dodawać do równań ciągi tekstu, liczby oraz wartości prawdziwe lub fałszywe. Ciągi znaków, liczby, wartości logiczne i stałe daty można formatować na następujące sposoby:
String literal: tekst otoczony cudzysłowami. Mogą one być reprezentowane przez pojedyncze cudzysłowy ('constant'
) lub podwójne cudzysłowy ("constant"
).
Number literal: liczby bez cudzysłowów. Liczby stałe mogą być dowolnymi liczbami rzeczywistymi i mogą zawierać notację punktową. Na przykład, zarówno 1005
jak i 1.5589
są poprawnymi liczbami stałymi.
Boolean literal: stałą booleans może być true
lub false
.
1698508800000
.Do równania niestandardowego można dołączyć inne właściwości tego samego obiektu. Jeśli właściwość zostanie wstawiona do edytora, zostanie automatycznie sformatowana i zatwierdzona jako część równania.
Jeśli zdecydujesz się ręcznie wpisać lub wkleić właściwość do edytora, powinna ona być sformatowana jako [properties.{propertyInternalName}]
. Na przykład, aby dodać właściwość Test score, która ma wewnętrzną wartość Test_score, należy wpisać ją w edytorze jako [properties.Test_score]
.
Podczas korzystania z właściwości wyliczania w równaniu (np. wybór rozwijany, wybór radiowy):
"subscriber"
."appointmentscheduled"
.Operatorów można używać w równaniach do aktualizacji, oceny lub porównywania stałych i wartości właściwości. W przypadku korzystania z wielu operatorów, są one obserwujące kolejność operacji PEMDAS. W zależności od typu używanych danych, w równaniach niestandardowych można uwzględnić następujące operatory.
Operator | Opis |
+ |
Dodaje liczby lub ciągi znaków. Zwraca liczbę. |
- |
Odejmowanie liczb. Zwraca liczbę. |
* |
Mnożenie liczb. Zwraca liczbę. |
/ |
Dzielenie liczb. Zwraca liczbę. |
< |
Sprawdza, czy wartość jest mniejsza od innej. Obsługiwane przez właściwości liczbowe lub stałe. Zwraca wartość logiczną. |
> |
Sprawdza, czy wartość jest większa od innej. Obsługiwane przez właściwości lub stałe liczbowe. Zwraca wartość logiczną. |
<= |
Sprawdza, czy wartość jest mniejsza lub równa innej. Obsługiwane przez właściwości lub stałe liczbowe. Zwraca wartość logiczną. |
>= |
Sprawdza, czy wartość jest większa lub równa innej. Obsługiwane przez właściwości lub stałe liczbowe. Zwraca wartość logiczną. |
! |
Sprawdza, czy żadna z wartości nie jest prawdziwa. Zwraca wartość logiczną. |
= lub == |
Sprawdza, czy wartość jest równa innej wartości. Obsługiwane przez liczby i ciągi znaków. Zwraca wartość logiczną. |
!= |
Sprawdza, czy wartość nie jest równa innej. Obsługiwane przez liczby i ciągi znaków. Zwraca wartość logiczną. |
or lub || |
Sprawdza, czy jedna z dwóch wartości jest prawdziwa. Zwraca wartość logiczną. |
and lub && |
Sprawdza, czy obie wartości są prawdziwe. Zwraca wartość logiczną. |
W formułach niestandardowych można używać funkcji do obliczania wartości i wykonywania działań na danych. W zależności od typu używanych danych, w równaniach niestandardowych można uwzględnić następujące funkcje.
Funkcja | Argumenty | Przykłady |
Pobiera wartość bezwzględną liczby. Zwraca liczbę. |
number: liczba, dla której chcesz uzyskać wartość bezwzględną. |
|
Łączy do 100 ciągów znaków w jedną wartość. Zwraca ciąg znaków. |
arg1: ciąg znaków, do którego zostanie dołączony argument 2. arg2: ciąg znaków, który ma zostać dołączony do arg1. |
|
Określa, czy ciąg znaków zawiera inny ciąg znaków (z uwzględnieniem wielkości liter). Zwraca wartość logiczną. |
text: ciąg znaków lub właściwość tekstowa do sprawdzenia podciągu. substring: ciąg znaków, który powinien zawierać tekst. |
contains("HubSpot", "Spot") |
Pobiera liczbę miejsc dziesiętnych dla waluty. Zwraca liczbę. |
currency: ciąg znaków waluty, dla której ma zostać obliczona liczba miejsc dziesiętnych. |
|
Pobiera wartość kursu wymiany w podanym czasie. Zwraca liczbę. |
currency: ciąg znaków waluty, dla którego ma zostać obliczony kurs wymiany w określonym dniu (np. date: właściwość datetime, dla której ma zostać obliczony kurs wymiany. |
|
Pobiera najnowszy kurs wymiany. Zwraca liczbę. |
currency: ciąg znaków waluty, dla której ma zostać obliczony kurs wymiany. |
|
Ustawienie wyrażenia warunkowego. |
condition: wyrażenie logiczne określające obliczaną wartość. arg2: wartość logiczna, liczba lub ciąg znaków, która będzie obliczaną wartością, jeśli warunek zostanie spełniony. arg3 (opcjonalnie): obliczona wartość, jeśli warunek nie zostanie spełniony. Jeśli jest dołączony, musi być tego samego typu co |
|
Określa, czy dla tokena znana jest wartość. Zwraca wartość logiczną. |
właściwość: właściwość, której wartość ma zostać sprawdzona. |
|
Pobiera datę ostatniej aktualizacji tokena. Zwraca znacznik czasu w milisekundach jako ciąg znaków. |
właściwość: właściwość, dla której chcesz sprawdzić datę ostatniej aktualizacji. |
|
Zmienia wszystkie znaki na małe litery. Zwraca ciąg znaków. |
text: ciąg znaków lub właściwość tekstowa z wartościami, które mają zostać zmienione na małe litery. |
|
Uzyskuje maksimum z dwóch liczb. Zwraca liczbę. |
arg1: pierwsza liczba lub właściwość liczby. arg2: druga liczba lub właściwość liczby. |
|
Uzyskuje minimum z dwóch liczb. Zwraca liczbę. |
arg1: pierwsza liczba lub właściwość liczby. arg2: druga liczba lub właściwość liczby. |
|
Pobiera numeryczny miesiąc podanej daty. Zwraca liczbę. |
date: właściwość datetime, dla której ma zostać obliczony miesiąc. |
|
Konwertuje liczbę na ciąg znaków. Zwraca ciąg znaków. |
number_to_convert: liczba lub właściwość liczby, którą chcesz zmienić na ciąg znaków. |
|
Pobiera prawdopodobieństwo wystąpienia etapu procesu. Zwraca liczbę. |
pipeline: nazwa procesu, dla którego ma zostać obliczone prawdopodobieństwo. |
|
Podnosi liczbę do wartości innej liczby. Zwraca liczbę. |
base: liczba bazowa. wykładnik: wartość, do której ma zostać podniesiona podstawa. |
|
Zaokrągla liczbę w dół do określonej precyzji. Zwraca liczbę. |
number_to_round: liczba lub właściwość liczby, którą chcesz zaokrąglić w dół. precision: liczba miejsc dziesiętnych do zaokrąglenia w dół. |
|
Zaokrągla liczbę do określonej precyzji. Zwraca liczbę. |
number_to_round: liczba lub właściwość liczby, której wartości mają zostać zaokrąglone. precision: liczba miejsc dziesiętnych do zaokrąglenia. |
|
Zaokrągla liczbę do określonej precyzji. Zwraca liczbę. |
number_to_round: liczba lub właściwość liczby, której wartości mają zostać zaokrąglone. precision: liczba miejsc dziesiętnych do zaokrąglenia. |
|
Pobiera pierwiastek kwadratowy z liczby. Zwraca liczbę. |
number: liczba, dla której chcesz uzyskać pierwiastek kwadratowy. |
|
Określa, czy ciąg znaków zaczyna się od innego ciągu znaków (z uwzględnieniem wielkości liter). Zwraca wartość logiczną. |
text: ciąg znaków lub właściwość tekstowa, która ma zostać sprawdzona pod kątem podciągu. substring: ciąg znaków, od którego powinien zaczynać się tekst. |
|
Konwertuje ciąg znaków na liczbę. Zwraca liczbę. |
string_to_convert: ciąg znaków lub właściwość tekstowa, której wartości mają zostać przekonwertowane na liczbę. |
|
Pobiera różnicę czasu między dwiema datami. Zwraca liczbę. |
date1: początkowa właściwość datetime. date2: końcowa właściwość datetime. |
|
Zmienia wszystkie znaki na wielkie litery. Zwraca ciąg znaków. |
text: ciąg znaków lub właściwość tekstowa, którą chcesz zmienić na wielkie litery. |
|
Pobiera numeryczny rok podanej daty. Zwraca liczbę. |
date: właściwość datetime, dla której ma zostać obliczony rok. |
|
Poniżej obserwujący przedstawiają przykładowe formuły oparte na typowych przypadkach użycia.
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
i is_known
, aby ustawić wartość na 0, gdy właściwość liczby jest pusta. Na przykład if(is_known([properties.number]), [properties.number], 0)
.exchange_rate
lub dated_exchange_rate
. Na przykład [properties.amount] * exchange_rate('CAD')
.