Use o HubL para acessar e exibir dados de CRM dentro do seu modelo de orçamento personalizado. O objeto template_data contém a maioria dos dados associados ao orçamento. Para algo que não for encontrado lá, você pode associar o registro do objeto ao orçamento ou usar as funções HubL CRM_object.
Os modelos de orçamento personalizados podem acessar os dados de orçamento e alguns objetos associados diretamente dos modelos. Os dados disponíveis dependem dos dados que você tem em seu CRM, além dos dados adicionados ao próprio orçamento.Ao desenvolver um modelo de orçamento, você pode usar dados simulados fornecidos pela HubSpot para preencher o modelo, o que pode ajudar na visualização do modelo. Na pasta @hubspot, acesse a pasta cms-quotes-theme. Na pasta de modelos, exiba os modelos basic.html, modern.html ou original.html. Esses modelos contêm o seguinte bloco de código na parte superior:
Reportar código incorreto
Copiar
Perguntar à IA
{% from "../imports/mock_data.html" import SAMPLE_TEMPLATE_DATA as mock_data %}{% from "../imports/module_defaults.html" import MODULE_DEFAULTS as module_defaults %}{% set QUOTE = template_data.quote || mock_data.quote %}{% set CURRENCY = QUOTE.hs_currency || "USD" %}{% set LOCALE = QUOTE.hs_locale || "en-US" %}{% set ASSOCIATED_OBJECTS = QUOTE.associated_objects %}{% set LINE_ITEMS = ASSOCIATED_OBJECTS.line_items %}{% set ADDITIONAL_FEES = ASSOCIATED_OBJECTS.additional_fees %}{% set TOTALS = ASSOCIATED_OBJECTS.totals || ASSOCIATED_OBJECTS.totals %}{% set QUOTE_TOTAL = TOTALS.total %}{% set SUB_TOTALS = TOTALS.subtotals %}{% set DEAL = ASSOCIATED_OBJECTS.deal %}
Os dados falsos são primeiro importados do arquivo mock_data.html e definido como a variável QUOTE para usar os dados encontrados em template_data, se disponível. A variável QUOTE também é usada para preencher as outras variáveis desta lista, como ASSOCIATED_OBJECTS, para tornar o acesso a esses dados mais sucinto. No entanto, você pode estruturar seus dados de forma diferente, dependendo das suas preferências.No código acima, você notará que template_data também é usado para definir a variável QUOTE principal. template_data é um objeto contendo todos os dados reais para o orçamento e negociação na página. Se esse objeto não for encontrado no modelo, o HubSpot carregará os dados mock_data.html.
A grande maioria dos dados pode ser acessada diretamente através do objeto template_data. Você pode usar {{ template_data|pprint }} em seu modelo para ver o objeto completo fornecido.
Variável
Type
Description
template_data
dict
Um dicionário contendo o orçamento, quote.associated_objects e dicionários totais.
Data em que o orçamento foi modificado pela última vez. Em formato de tempo.
template_data.quote.hubspot_owner_assigneddate
datetime
Data em que o orçamento foi atribuído a um proprietário. Em formato de tempo.
template_data.quote.hs_createdate
datetime
Data e hora em que o orçamento foi criado. Em formato de tempo.
template_data.quote.hs_expiration_date
datetime
Data em que o orçamento expira. Em formato de tempo.
template_data.quote.hs_title
String
Título do orçamento
template_data.quote.hs_template_type
String
”CUSTOMIZABLE_QUOTE_TEMPLATE”
template_data.quote.hs_slug
String
Slug de URL para página da web de orçamento.
template_data.quote.hs_proposal_template_path
String
Caminho do sistema de arquivos do desenvolvedor para o modelo. (inclui extensão de arquivo)
template_data.quote.hs_quote_amount
String
Valor em dinheiro
template_data.quote.hs_currency
String
Moeda em que está o valor do orçamento em código de moeda ISO 4217 de 3 caracteres.“USD”
template_data.quote.hs_language
String
Código do idioma“pt-br”
template_data.quote.hs_locale
String
Cópia local“pt-br”
template_data.quote.hs_terms
String
Texto dos termos fornecido pelo criador do orçamento
template_data.quote.hs_sender_firstname
String
Nome da pessoa que envia o orçamento.
template_data.quote.hs_sender_company_name
String
Nome da empresa da pessoa que envia o orçamento
template_data.quote.hs_sender_company_image_url
String
Logotipo da empresa para a pessoa que envia o orçamento.
template_data.quote.hs_status
String
Status do orçamento.”APPROVAL_NOT_NEEDED”
template_data.quote.hs_primary_color
string/hex color code
”#425b76”
template_data.quote.hs_quote_number
String
Número de ID de orçamento exclusivo.
template_data.quote.hs_payment_enabled
boolean
Use para testar se os campos de pagamento precisam ser exibidos.
template_data.quote.hs_esign_enabled
boolean
Use para testar se os campos de assinatura eletrônica precisam ser exibidos.
Não consegue encontrar uma variável que você está procurando?Há mais variáveis que você pode acessar dentro de template_data. Use |pprint para visualizá-las. Além disso, algumas variáveis nas associações de orçamento podem estar disponíveis apenas com base no orçamento/negócio.Nós faremos a iteração nesta documentação para mostrar e explicar mais dos dados aos quais você tem acesso. Além da bela impressão, você pode visualizar o arquivo de dados simulados dentro do cms-quote-theme, para ver o que está disponível e a estrutura na qual ele vem.
Em um modelo de orçamento, você pode acessar dados de registros associados a um orçamento, como negócios ou empresas, usando associated_objects.Por exemplo, você pode adicionar o logotipo do registro da empresa associada do destinatário do orçamento a um orçamento usando o seguinte código:
Reportar código incorreto
Copiar
Perguntar à IA
{% set company_avatar_url = template_data.quote.associated_objects.company.hs_avatar_filemanager_key %}{% if company_avatar_url %} <img src="{{ template_data.quote.associated_objects.company.hs_avatar_filemanager_key }}" width="400" alt="{{ template_data.quote.associated_objects.company.name }}">{% else %} <!-- company does not have an assigned image-->{% endif %}
Apenas os logotipos definidos manualmente aparecerão. Os logotipos detectados automaticamente não aparecerão para impedir que os não intencionais apareçam no modelo de orçamento.
O código acima primeiro define uma variável que pesquisa o logotipo da empresa associada ao orçamento. Usando uma declaração if, o modelo exibe esse logotipo, se disponível. Se nenhum logotipo foi definido manualmente para a empresa, nenhum logotipo será exibido.
Os dados de objetos personalizados podem ser exibidos ou usados em um orçamento de maneiras diferentes. Como a estrutura de cada objeto personalizado pode variar, você precisará obter propriedades específicas com base em como estruturou seu objeto personalizado.O template_data do orçamento por padrão tem objetos associados personalizados. Por exemplo, objetos personalizados associados a negócios estão incluídos.Para acessá-los, você pode usar o seguinte código:
Reportar código incorreto
Copiar
Perguntar à IA
{% set quote_associated_custom_objects = template_data.quote.associated_objects.deal.associated_objects.custom_objects %}{{ quote_associated_custom_objects|pprint }}{# |pprint is useful for understanding the structure of the data, you can leave it off when outputting values for display. #}
Como os objetos personalizados são exclusivos para cada conta, os dados falsos não incluem um objeto personalizado de exemplo. Isso significa que, na visualização do modelo no gerenciador de design, você pode ver um erro ou os dados de objeto personalizados simplesmente não serão exibidos. Em vez disso, você precisará visualizar o modelo com seus dados reais de CRM, o que pode ser feito criando um orçamento a partir do modelo.
Você pode acessar cada tipo de objeto personalizado anexando seu ID de tipo de objeto personalizado formatado com sublinhados. Por exemplo:template_data.quote.associated_objects.deal.associated_objects.custom_objects._2_2193031Você também pode procurar um objeto personalizado usando a função crm_associations() e as funções crm_objects().Por exemplo, se você quiser procurar um objeto personalizado associado a um negócio, poderá passar dados de template_data:
Reportar código incorreto
Copiar
Perguntar à IA
{% set quote_associated_object = crm_associations(template_data.quote.associated_objects.deal.hs_object_id, "USER_DEFINED", 152) %}{# 152 is an example of an association type id, you would need to use the appropriate id for your use-case. #}{{ quote_associated_object }}