Última modificação: 22 de agosto de 2025
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:
{% 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.

Objeto Template_data

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ávelTypeDescription
template_datadictUm dicionário contendo o orçamento, quote.associated_objects e dicionários totais.

Variáveis de orçamento

As informações específicas para este orçamento individual.
VariávelTypeDescription
template_data.quotedictDicionário contendo todos os dados para o orçamento em si.
template_data.quote.associated_objects.deal.hs_object_idIntegerID do negócio
template_data.quote.hubspot_owner_idIntegerID de proprietário do negócio
template_data.quote.hs_all_owner_idsinteger or array of integersIDs de proprietário do negócio
template_data.quote.hs_created_by_user_idIntegerUsuário que criou o orçamento.
template_data.quote.hs_lastmodifieddatedatetimeData em que o orçamento foi modificado pela última vez. Em formato de tempo.
template_data.quote.hubspot_owner_assigneddatedatetimeData em que o orçamento foi atribuído a um proprietário. Em formato de tempo.
template_data.quote.hs_createdatedatetimeData e hora em que o orçamento foi criado. Em formato de tempo.
template_data.quote.hs_expiration_datedatetimeData em que o orçamento expira. Em formato de tempo.
template_data.quote.hs_titleStringTítulo do orçamento
template_data.quote.hs_template_typeString”CUSTOMIZABLE_QUOTE_TEMPLATE”
template_data.quote.hs_slugStringSlug de URL para página da web de orçamento.
template_data.quote.hs_proposal_template_pathStringCaminho do sistema de arquivos do desenvolvedor para o modelo. (inclui extensão de arquivo)
template_data.quote.hs_quote_amountStringValor em dinheiro
template_data.quote.hs_currencyStringMoeda em que está o valor do orçamento em código de moeda ISO 4217 de 3 caracteres.“USD”
template_data.quote.hs_languageStringCódigo do idioma“pt-br”
template_data.quote.hs_localeStringCópia local“pt-br”
template_data.quote.hs_termsStringTexto dos termos fornecido pelo criador do orçamento
template_data.quote.hs_sender_firstnameStringNome da pessoa que envia o orçamento.
template_data.quote.hs_sender_company_nameStringNome da empresa da pessoa que envia o orçamento
template_data.quote.hs_sender_company_image_urlStringLogotipo da empresa para a pessoa que envia o orçamento.
template_data.quote.hs_statusStringStatus do orçamento.”APPROVAL_NOT_NEEDED”
template_data.quote.hs_primary_colorstring/hex color code”#425b76”
template_data.quote.hs_quote_numberStringNúmero de ID de orçamento exclusivo.
template_data.quote.hs_payment_enabledbooleanUse para testar se os campos de pagamento precisam ser exibidos.
template_data.quote.hs_esign_enabledbooleanUse 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.

Objetos associados

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:
{% 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 %}

Observação:

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.

Objetos personalizados

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:
{% 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. #}

Observação:

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_2193031 Você 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:
{% 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 }}

Recursos relacionados