<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pt-BR">
	<id>http://wiki.phsys.com.br/index.php?action=history&amp;feed=atom&amp;title=Criando_Dashboards_com_IA</id>
	<title>Criando Dashboards com IA - Histórico de revisão</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.phsys.com.br/index.php?action=history&amp;feed=atom&amp;title=Criando_Dashboards_com_IA"/>
	<link rel="alternate" type="text/html" href="http://wiki.phsys.com.br/index.php?title=Criando_Dashboards_com_IA&amp;action=history"/>
	<updated>2026-09-20T13:59:00Z</updated>
	<subtitle>Histórico de revisões para esta página neste wiki</subtitle>
	<generator>MediaWiki 1.31.10</generator>
	<entry>
		<id>http://wiki.phsys.com.br/index.php?title=Criando_Dashboards_com_IA&amp;diff=7280&amp;oldid=prev</id>
		<title>Admin: /* Conclusão */</title>
		<link rel="alternate" type="text/html" href="http://wiki.phsys.com.br/index.php?title=Criando_Dashboards_com_IA&amp;diff=7280&amp;oldid=prev"/>
		<updated>2026-09-13T20:59:50Z</updated>

		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Conclusão&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;pt-BR&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Edição anterior&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Edição das 20h59min de 13 de setembro de 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l85&quot; &gt;Linha 85:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linha 85:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Widgets]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Widgets]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Layout_Importação_Dashboards|Layout Importação Dashboards]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Admin</name></author>
		
	</entry>
	<entry>
		<id>http://wiki.phsys.com.br/index.php?title=Criando_Dashboards_com_IA&amp;diff=7276&amp;oldid=prev</id>
		<title>Admin: /* Como Utilizar */</title>
		<link rel="alternate" type="text/html" href="http://wiki.phsys.com.br/index.php?title=Criando_Dashboards_com_IA&amp;diff=7276&amp;oldid=prev"/>
		<updated>2026-09-13T20:58:07Z</updated>

		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Como Utilizar&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;pt-BR&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Edição anterior&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Edição das 20h58min de 13 de setembro de 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l58&quot; &gt;Linha 58:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linha 58:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Escreva e teste a &amp;#039;&amp;#039;&amp;#039;Expressão SQL&amp;#039;&amp;#039;&amp;#039; no banco, conferindo as colunas que ela devolve.&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Escreva e teste a &amp;#039;&amp;#039;&amp;#039;Expressão SQL&amp;#039;&amp;#039;&amp;#039; no banco, conferindo as colunas que ela devolve.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Reúna o &amp;#039;&amp;#039;&amp;#039;contexto&amp;#039;&amp;#039;&amp;#039; e o &amp;#039;&amp;#039;&amp;#039;layout&amp;#039;&amp;#039;&amp;#039; desejado, e entregue ao agente junto com a especificação do formato do arquivo.&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Reúna o &amp;#039;&amp;#039;&amp;#039;contexto&amp;#039;&amp;#039;&amp;#039; e o &amp;#039;&amp;#039;&amp;#039;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;[[Layout Importação Dashboards|&lt;/ins&gt;layout&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;]]&lt;/ins&gt;&amp;#039;&amp;#039;&amp;#039; desejado, e entregue ao agente junto com a especificação do formato do arquivo.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Revise o arquivo devolvido, principalmente a consulta e os campos utilizados em cada Widget.&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Revise o arquivo devolvido, principalmente a consulta e os campos utilizados em cada Widget.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;No cadastro de Dashboards, use o botão &amp;#039;&amp;#039;&amp;#039;Importar&amp;#039;&amp;#039;&amp;#039; e selecione o arquivo.&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;No cadastro de Dashboards, use o botão &amp;#039;&amp;#039;&amp;#039;Importar&amp;#039;&amp;#039;&amp;#039; e selecione o arquivo.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Admin</name></author>
		
	</entry>
	<entry>
		<id>http://wiki.phsys.com.br/index.php?title=Criando_Dashboards_com_IA&amp;diff=7275&amp;oldid=prev</id>
		<title>Admin em 20h56min de 13 de setembro de 2026</title>
		<link rel="alternate" type="text/html" href="http://wiki.phsys.com.br/index.php?title=Criando_Dashboards_com_IA&amp;diff=7275&amp;oldid=prev"/>
		<updated>2026-09-13T20:56:07Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;pt-BR&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Edição anterior&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Edição das 20h56min de 13 de setembro de 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l21&quot; &gt;Linha 21:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linha 21:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===&amp;#039;&amp;#039;&amp;#039;Exemplos&amp;#039;&amp;#039;&amp;#039;===&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===&amp;#039;&amp;#039;&amp;#039;Exemplos&amp;#039;&amp;#039;&amp;#039;===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;A partir &lt;/del&gt;de uma &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;consulta que &lt;/del&gt;devolve &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;o mês&lt;/del&gt;, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;o &lt;/del&gt;valor e a &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;data &lt;/del&gt;de &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;emissão dos documentos&lt;/del&gt;, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;pede-se &lt;/del&gt;ao agente um &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;painel &lt;/del&gt;com um indicador &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;de &lt;/del&gt;total emitido no período e um gráfico de colunas com a evolução mensal. O agente devolve &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;o &lt;/del&gt;arquivo &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;com &lt;/del&gt;o dashboard, os dois Widgets, o catálogo de Campos de cada um e &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;as Colunas &lt;/del&gt;de valor &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;já configuradas; &lt;/del&gt;basta &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;importar&lt;/del&gt;.&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;O ponto &lt;/ins&gt;de &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;partida é a consulta. O exemplo abaixo traz as receitas emitidas, &lt;/ins&gt;uma &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;linha por documento — sem soma e sem agrupamento, como a ferramenta espera:&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;pre&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;select TO_CHAR(a.dataemissao, &amp;#039;Mon&amp;#039;) as mes,&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160;  EXTRACT(YEAR FROM a.dataemissao) || &amp;#039;/&amp;#039; ||&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160;  LPAD(EXTRACT(MONTH FROM a.dataemissao)::text, 2, &amp;#039;0&amp;#039;) as ano_mes,&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160;  a.valorliquido as valor,&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160;  a.dataemissao&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;from documentos a&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;where a.tipomovimento = &amp;#039;S&amp;#039;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; and a.ehcre = &amp;#039;S&amp;#039;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; and a.ehaglutinador = &amp;#039;N&amp;#039;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; and a.situacaofinanceiro = &amp;#039;2&amp;#039;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/pre&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Ela &lt;/ins&gt;devolve &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;quatro colunas: &amp;#039;&amp;#039;&amp;#039;mes&amp;#039;&amp;#039;&amp;#039; e &amp;#039;&amp;#039;&amp;#039;ano_mes&amp;#039;&amp;#039;&amp;#039; (texto)&lt;/ins&gt;, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#039;&amp;#039;&amp;#039;valor&amp;#039;&amp;#039;&amp;#039; (&lt;/ins&gt;valor&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;) e &amp;#039;&amp;#039;&amp;#039;dataemissao&amp;#039;&amp;#039;&amp;#039; (data). Repare que a soma por mês não está na consulta — quem agrupa &lt;/ins&gt;e &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;soma é o sistema, &lt;/ins&gt;a &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;partir do campo escolhido como categoria e da coluna &lt;/ins&gt;de &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;valor do Widget.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Com isso em mãos&lt;/ins&gt;, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;o pedido &lt;/ins&gt;ao agente &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;pode ser:&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;pre&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Monte &lt;/ins&gt;um &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;dashboard chamado &amp;quot;Receitas Emitidas&amp;quot; &lt;/ins&gt;com &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;esta consulta.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Quero, no topo, &lt;/ins&gt;um indicador &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;com o &lt;/ins&gt;total emitido no período &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;ocupando&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;metade da largura &lt;/ins&gt;e&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;, abaixo, &lt;/ins&gt;um gráfico de colunas com a evolução&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;mensal &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;usando o ano_mes como categoria, ordenado por ele.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Siga a especificação do formato de importação em anexo&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/pre&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;O agente devolve &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;um único &lt;/ins&gt;arquivo &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;contendo &lt;/ins&gt;o dashboard, os dois Widgets, o catálogo de Campos de cada um &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;(com o tipo de cada coluna da consulta) &lt;/ins&gt;e &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;a Coluna &lt;/ins&gt;de valor &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;apontando para &amp;#039;&amp;#039;&amp;#039;valor&amp;#039;&amp;#039;&amp;#039;. Basta importar.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Para acrescentar um indicador com a quantidade de documentos, sem mudar o painel, &lt;/ins&gt;basta &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;pedir uma coluna a mais na consulta — por exemplo &amp;#039;&amp;#039;&amp;#039;1 as quantidade&amp;#039;&amp;#039;&amp;#039; — e um indicador que some esse campo&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Da mesma forma, a partir de uma consulta que devolve centro de custo, valor e data, pede-se um painel de participação: o agente monta um gráfico de pizza com o percentual de cada centro de custo e um gráfico de barras com o ranking em valor.&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Da mesma forma, a partir de uma consulta que devolve centro de custo, valor e data, pede-se um painel de participação: o agente monta um gráfico de pizza com o percentual de cada centro de custo e um gráfico de barras com o ranking em valor.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Admin</name></author>
		
	</entry>
	<entry>
		<id>http://wiki.phsys.com.br/index.php?title=Criando_Dashboards_com_IA&amp;diff=7274&amp;oldid=prev</id>
		<title>Admin: Criou página com &#039;===&#039;&#039;&#039;Conceito&#039;&#039;&#039;=== É possível construir um dashboard pedindo a um agente de IA que gere o arquivo de importação. Você fornece o contexto do que quer acompanhar, a consu...&#039;</title>
		<link rel="alternate" type="text/html" href="http://wiki.phsys.com.br/index.php?title=Criando_Dashboards_com_IA&amp;diff=7274&amp;oldid=prev"/>
		<updated>2026-09-13T20:50:48Z</updated>

		<summary type="html">&lt;p&gt;Criou página com &amp;#039;===&amp;#039;&amp;#039;&amp;#039;Conceito&amp;#039;&amp;#039;&amp;#039;=== É possível construir um dashboard pedindo a um agente de IA que gere o arquivo de importação. Você fornece o contexto do que quer acompanhar, a consu...&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Página nova&lt;/b&gt;&lt;/p&gt;&lt;div&gt;===&amp;#039;&amp;#039;&amp;#039;Conceito&amp;#039;&amp;#039;&amp;#039;===&lt;br /&gt;
É possível construir um dashboard pedindo a um agente de IA que gere o arquivo de importação. Você fornece o contexto do que quer acompanhar, a consulta SQL que traz os dados e o layout desejado; o agente devolve um arquivo compatível com o ERP, que é carregado pelo botão Importar do cadastro de Dashboards.&lt;br /&gt;
&lt;br /&gt;
===&amp;#039;&amp;#039;&amp;#039;O que é&amp;#039;&amp;#039;&amp;#039;===&lt;br /&gt;
O dashboard e seus Widgets podem ser descritos inteiramente por um arquivo (formato JSON), o mesmo que o botão Exportar gera. Como esse arquivo é texto estruturado e tem regras conhecidas, um agente de IA consegue produzi-lo a partir de uma descrição em linguagem natural, sem que ninguém precise preencher os cadastros campo a campo.&lt;br /&gt;
&lt;br /&gt;
O agente não acessa o sistema: ele apenas escreve o arquivo. Quem cria, atualiza e valida os registros continua sendo o ERP, no momento da importação.&lt;br /&gt;
&lt;br /&gt;
===&amp;#039;&amp;#039;&amp;#039;Para que serve&amp;#039;&amp;#039;&amp;#039;===&lt;br /&gt;
Serve para encurtar o caminho entre &amp;quot;eu preciso enxergar esse número&amp;quot; e um painel pronto. Em vez de cadastrar Widget, Campos, Colunas, Dashboard e Itens um a um, descreve-se o resultado esperado e revisa-se o que foi gerado.&lt;br /&gt;
&lt;br /&gt;
===&amp;#039;&amp;#039;&amp;#039;Quais os benefícios e/ou ganhos de uso&amp;#039;&amp;#039;&amp;#039;===&lt;br /&gt;
Reduz o tempo de montagem de um painel novo e o conhecimento prévio exigido sobre a estrutura dos cadastros. Facilita a criação de modelos padronizados para distribuir a vários clientes, já que o mesmo arquivo pode ser importado em qualquer base. Também torna a manutenção mais simples: ajustes no painel são pedidos ao agente e reimportados, sem retrabalho manual nos cadastros.&lt;br /&gt;
&lt;br /&gt;
===&amp;#039;&amp;#039;&amp;#039;O que informar ao agente&amp;#039;&amp;#039;&amp;#039;===&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;Contexto:&amp;#039;&amp;#039;&amp;#039; o que o painel precisa responder e para quem. Ex.: &amp;quot;acompanhamento mensal das receitas emitidas, para a diretoria&amp;quot;.&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;Expressão SQL:&amp;#039;&amp;#039;&amp;#039; a consulta que traz os dados, já validada no banco. Ela deve ser &amp;#039;&amp;#039;&amp;#039;crua&amp;#039;&amp;#039;&amp;#039;: sem soma, sem agrupamento e sem ordenação — o próprio sistema monta a agregação a partir dos campos escolhidos.&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;Colunas da consulta:&amp;#039;&amp;#039;&amp;#039; quais colunas ela devolve e o que cada uma representa (texto, data ou valor).&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;Layout:&amp;#039;&amp;#039;&amp;#039; quais itens o painel terá, em que ordem, e o tamanho de cada um na grade de 16 colunas. Ex.: &amp;quot;dois indicadores lado a lado no topo e, abaixo, um gráfico de colunas ocupando a largura toda&amp;quot;.&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;Formato do arquivo:&amp;#039;&amp;#039;&amp;#039; a especificação do arquivo de importação, que descreve as seções, os campos obrigatórios e os valores aceitos.&lt;br /&gt;
&lt;br /&gt;
===&amp;#039;&amp;#039;&amp;#039;Exemplos&amp;#039;&amp;#039;&amp;#039;===&lt;br /&gt;
A partir de uma consulta que devolve o mês, o valor e a data de emissão dos documentos, pede-se ao agente um painel com um indicador de total emitido no período e um gráfico de colunas com a evolução mensal. O agente devolve o arquivo com o dashboard, os dois Widgets, o catálogo de Campos de cada um e as Colunas de valor já configuradas; basta importar.&lt;br /&gt;
&lt;br /&gt;
Da mesma forma, a partir de uma consulta que devolve centro de custo, valor e data, pede-se um painel de participação: o agente monta um gráfico de pizza com o percentual de cada centro de custo e um gráfico de barras com o ranking em valor.&lt;br /&gt;
&lt;br /&gt;
===&amp;#039;&amp;#039;&amp;#039;Como Utilizar&amp;#039;&amp;#039;&amp;#039;===&lt;br /&gt;
Esta seção resume o que precisa ser feito para construir um dashboard com o apoio de um agente de IA.&lt;br /&gt;
&lt;br /&gt;
Escreva e teste a &amp;#039;&amp;#039;&amp;#039;Expressão SQL&amp;#039;&amp;#039;&amp;#039; no banco, conferindo as colunas que ela devolve.&lt;br /&gt;
Reúna o &amp;#039;&amp;#039;&amp;#039;contexto&amp;#039;&amp;#039;&amp;#039; e o &amp;#039;&amp;#039;&amp;#039;layout&amp;#039;&amp;#039;&amp;#039; desejado, e entregue ao agente junto com a especificação do formato do arquivo.&lt;br /&gt;
Revise o arquivo devolvido, principalmente a consulta e os campos utilizados em cada Widget.&lt;br /&gt;
No cadastro de Dashboards, use o botão &amp;#039;&amp;#039;&amp;#039;Importar&amp;#039;&amp;#039;&amp;#039; e selecione o arquivo.&lt;br /&gt;
Se a importação apontar problemas, devolva a mensagem ao agente e peça a correção — ela indica exatamente o item, o Widget e o campo de cada pendência.&lt;br /&gt;
Abra o dashboard e confira os números antes de liberar para os usuários.&lt;br /&gt;
&lt;br /&gt;
===&amp;#039;&amp;#039;&amp;#039;Comportamentos&amp;#039;&amp;#039;&amp;#039;===&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;Validação antes de gravar:&amp;#039;&amp;#039;&amp;#039; a importação confere o arquivo inteiro antes de criar qualquer registro. Havendo problema, nada é importado e é apresentada a lista completa das correções necessárias, numerada e identificando o item e o Widget de cada uma.&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;Correção em ciclo:&amp;#039;&amp;#039;&amp;#039; as mensagens de erro são escritas para serem devolvidas ao agente — ele corrige o arquivo e a importação é repetida, até o painel entrar sem pendências.&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;Cria ou atualiza:&amp;#039;&amp;#039;&amp;#039; os registros são identificados pelo Nome. Reimportar um arquivo corrigido atualiza o dashboard existente, sem duplicar itens nem Widgets.&lt;br /&gt;
&lt;br /&gt;
===&amp;#039;&amp;#039;&amp;#039;Pontos de atenção&amp;#039;&amp;#039;&amp;#039;===&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;Revise a consulta gerada.&amp;#039;&amp;#039;&amp;#039; A Expressão SQL roda no banco do cliente. Um agente pode propor junções ou filtros que não refletem a regra do seu negócio — a conferência de quem conhece a operação continua sendo necessária.&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;Confira os números.&amp;#039;&amp;#039;&amp;#039; Antes de publicar, compare o resultado do painel com um relatório já conhecido. O arquivo pode estar formalmente correto e ainda assim somar a coluna errada.&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;Indicador sempre soma.&amp;#039;&amp;#039;&amp;#039; Um indicador totaliza o campo escolhido. Média e maior valor não saem de um indicador — quando necessário, isso precisa vir resolvido dentro da própria consulta.&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;Formulário de filtro.&amp;#039;&amp;#039;&amp;#039; Se o painel usar filtro, o Formulário vinculado precisa existir na base de destino antes da importação.&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;Nomes são a chave.&amp;#039;&amp;#039;&amp;#039; Como a importação identifica os registros pelo Nome, escolha nomes estáveis e específicos para dashboards e Widgets, evitando que um modelo sobrescreva outro por coincidência de nome.&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;Dados sensíveis.&amp;#039;&amp;#039;&amp;#039; Quem tem permissão para ver o dashboard vê o resultado da consulta. Isso não muda por o arquivo ter sido gerado por um agente.&lt;br /&gt;
&lt;br /&gt;
===&amp;#039;&amp;#039;&amp;#039;Conclusão&amp;#039;&amp;#039;&amp;#039;===&lt;br /&gt;
A construção de dashboards com o apoio de um agente de IA aproveita o fato de o painel inteiro poder ser descrito por um arquivo de importação. O agente traduz contexto, consulta e layout nesse arquivo; o ERP valida e cria os registros. O ganho está na velocidade de montagem e na padronização dos modelos, mantendo com quem conhece o negócio a responsabilidade de revisar a consulta e conferir os números.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Assuntos Relacionados&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
[[Dashboards]]&lt;br /&gt;
&lt;br /&gt;
[[Widgets]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
		
	</entry>
</feed>