<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Thiago Passamani &#187; Query</title>
	<atom:link href="http://www.thiagopassamani.com.br/tags/query/feed" rel="self" type="application/rss+xml" />
	<link>http://www.thiagopassamani.com.br</link>
	<description>Namorado, Nerd, Geek, Analista de Infraestrutura / Suporte, Consultor em TI, Blogger, GLPI Suporte, Web Designer, Wordpress Developer / PHP e Passamani</description>
	<lastBuildDate>Fri, 03 Feb 2012 15:29:29 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Tempo real gasto no chamado</title>
		<link>http://www.thiagopassamani.com.br/glpi/tempo-real-gasto-no-chamado.html</link>
		<comments>http://www.thiagopassamani.com.br/glpi/tempo-real-gasto-no-chamado.html#comments</comments>
		<pubDate>Wed, 22 Jun 2011 00:14:41 +0000</pubDate>
		<dc:creator>Thiago Passamani</dc:creator>
				<category><![CDATA[GLPI]]></category>
		<category><![CDATA[0.78.3]]></category>
		<category><![CDATA[0.78.5]]></category>
		<category><![CDATA[0.80]]></category>
		<category><![CDATA[Estatisticas]]></category>
		<category><![CDATA[Query]]></category>
		<category><![CDATA[Tempo Real]]></category>

		<guid isPermaLink="false">http://www.thiagopassamani.com.br/?p=1031</guid>
		<description><![CDATA[Olá galera! Fiz uma simples Query MySQL para verificar o tempo real gasto desde a abertura do chamado até seu fechamento no GLPI. Essa query foi feita com base nas principais colunas para gerar informações a respeito do chamado (ID do chamado, Técnico, Aberto em?, Fechado em? e Tempo Gasto [diferença]). Resultado: [ ATUALIZAÇÃO 1 [...]]]></description>
			<content:encoded><![CDATA[<p>Olá galera!</p>
<p>Fiz uma simples Query MySQL para verificar o tempo real gasto desde a abertura do chamado até seu fechamento no GLPI.<br />
<span id="more-1031"></span>Essa query foi feita com base nas principais colunas para gerar informações a respeito do chamado (ID do chamado, Técnico, Aberto em?, Fechado em? e Tempo Gasto [diferença]).</p>
<pre class="brush: sql; title: ; notranslate">
-- Query : Thiago Passamani
-- GLPI 0.80
SELECT
	Chamados.id AS 'Chamado',
	Tecnicos.realname AS 'Tecnico',
	Chamados.date AS 'Aberto em?',
	Chamados.closedate AS 'Fechado em?',
	TIMEDIFF(Chamados.closedate, Chamados.date) as 'Tempo gasto'
		FROM glpi_tickets AS Chamados
		INNER JOIN glpi_tickets_users AS Tickets_Users ON(Chamados.id = Tickets_Users.tickets_id)
		INNER JOIN glpi_users as Tecnicos ON(Tickets_Users.users_id = Tecnicos.id)
		WHERE Chamados.status = 'closed'
		AND Tickets_Users.type = '2';
</pre>
<p>Resultado:</p>
<p><img class="aligncenter size-full wp-image-1037" title="Query - Tempo real gasto no chamado GLPI" src="http://www.thiagopassamani.com.br/wp-content/uploads/2011/06/tempo-real-glpi.png" alt="" width="467" height="230" /></p>
<p><span style="color: #ff0000;">[ ATUALIZAÇÃO 1 ]</span></p>
<pre class="brush: sql; title: ; notranslate">
-- Query : Thiago Passamani
-- GLPI 0.78.3 / 0.78.4 / 0.78.5
SELECT
Chamados.id AS 'Chamado',
Tecnicos.realname AS 'Tecnico',
Chamados.date AS 'Aberto em?',
Chamados.closedate AS 'Fechado em?',
TIMEDIFF(Chamados.closedate, Chamados.date) as 'Tempo gasto'
FROM glpi_tickets AS Chamados
INNER JOIN glpi_users as Tecnicos ON(Chamados.users_id_assign = Tecnicos.id)
        WHERE Chamados.status = 'closed';
</pre>
<p><span style="color: #ff0000;">[ ATUALIZAÇÃO 2 ]</span></p>
<pre class="brush: sql; title: ; notranslate">
-- Versão 0.72.4
SELECT
    Chamados.id AS 'Chamado',
    Tecnicos.realname AS 'Tecnico',
    Chamados.date AS 'Aberto em?',
    Chamados.closedate AS 'Fechado em?',
    TIMEDIFF(Chamados.closedate, Chamados.date) as 'Tempo gasto'
        FROM glpi_tracking AS Chamados
        INNER JOIN glpi_users as Tecnicos ON(Chamados.assign = Tecnicos.id)
        WHERE Chamados.status in('old_done','old_nordone');
</pre>
<p>Espero que essa query ajude no desenvolvimento de relatórios e se desenvolverem, postem aqui.</p>
<p>&nbsp;</p>
<p>Para dúvidas, críticas, sugestões ou reclamações. Por favor <strong>comentem</strong>!</p>
<p>Até a próxima&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thiagopassamani.com.br/glpi/tempo-real-gasto-no-chamado.html/feed</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>Query: Chamados atribuídos e fechados por Técnico</title>
		<link>http://www.thiagopassamani.com.br/glpi/query-chamados-atribuidos-e-fechados-por-tecnico.html</link>
		<comments>http://www.thiagopassamani.com.br/glpi/query-chamados-atribuidos-e-fechados-por-tecnico.html#comments</comments>
		<pubDate>Thu, 31 Mar 2011 15:20:02 +0000</pubDate>
		<dc:creator>Thiago Passamani</dc:creator>
				<category><![CDATA[GLPI]]></category>
		<category><![CDATA[GLPI 0.78.3]]></category>
		<category><![CDATA[Query]]></category>
		<category><![CDATA[Técnicos x Chamados]]></category>

		<guid isPermaLink="false">http://www.thiagopassamani.com.br/?p=896</guid>
		<description><![CDATA[Boa tarde galera! Hoje irei postar uma Query com os chamados atribuídos e fechados por cada técnico no GLPI (0.78.3), no geral irá exibir toda a base de dados. OBJETIVO: Usando uma Query (MySQL) para selecionar todos os chamados atribuídos e fechados pelos técnicos do GLPI e também selecionar por periodo. Query [1] Query [2] [...]]]></description>
			<content:encoded><![CDATA[<p>Boa tarde galera!</p>
<p>Hoje irei postar uma Query com os chamados atribuídos e fechados por cada técnico no GLPI (0.78.3), no geral irá exibir toda a base de dados.</p>
<blockquote><p>OBJETIVO: Usando uma Query (MySQL) para selecionar todos os chamados atribuídos e fechados pelos técnicos do GLPI e também selecionar por periodo.</p></blockquote>
<p><span id="more-896"></span>Query [1]</p>
<pre class="brush: sql; title: ; notranslate">
/* Toda a base do GLPI */
SELECT
Tecnicos.realname,
COUNT(Chamados.ID) AS 'CH Atribuidos',
(SELECT COUNT(Chamados1.ID)
FROM glpi_tickets As Chamados1
WHERE Chamados1.status IN('closed','solved')
AND Chamados1.users_id_assign = Tecnicos.ID) AS 'CH Fechados'
FROM glpi_tickets As Chamados
INNER JOIN glpi_users As Tecnicos ON(Chamados.users_id_assign = Tecnicos.ID)
WHERE Chamados.status &lt;&gt; 'new'
GROUP BY Tecnicos.ID
ORDER BY COUNT(Chamados.ID) DESC;
</pre>
<p>Query [2]</p>
<pre class="brush: sql; title: ; notranslate">
/* Seleciona o ANO e Chamados atribuidos e Fechados no ANO descrito */
SET @ano = '2011';
SELECT
Tecnicos.realname,
COUNT(Chamados.ID) AS 'CH Atribuidos',
(SELECT COUNT(Chamados1.ID)
FROM glpi_tickets As Chamados1
WHERE Chamados1.status IN('closed','solved')
AND YEAR(Chamados1.date) = @ano
AND YEAR(Chamados1.closedate) = @ano
AND Chamados1.users_id_assign = Tecnicos.ID) AS 'CH Fechados'
FROM glpi_tickets As Chamados
INNER JOIN glpi_users As Tecnicos ON(Chamados.users_id_assign = Tecnicos.ID)
WHERE Chamados.status &lt;&gt; 'new'
AND YEAR(Chamados.date) = @ano
GROUP BY Tecnicos.ID
ORDER BY COUNT(Chamados.ID) DESC;
</pre>
<p>Espero que gostem das Query&#8217;s e em breve termos muito mais.</p>
<p>Até a próxima!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thiagopassamani.com.br/glpi/query-chamados-atribuidos-e-fechados-por-tecnico.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Query: Chamados solucionados por Técnicos</title>
		<link>http://www.thiagopassamani.com.br/glpi/query-chamados-solucionados-por-tecnicos.html</link>
		<comments>http://www.thiagopassamani.com.br/glpi/query-chamados-solucionados-por-tecnicos.html#comments</comments>
		<pubDate>Sat, 05 Feb 2011 19:52:07 +0000</pubDate>
		<dc:creator>Thiago Passamani</dc:creator>
				<category><![CDATA[GLPI]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Query]]></category>
		<category><![CDATA[Técnicos x Chamados]]></category>

		<guid isPermaLink="false">http://www.thiagopassamani.com.br/?p=817</guid>
		<description><![CDATA[Boa tarde galera! Já tem um tempo que não posto minhas query&#8217;s para acompanhamento do GLPI. OBJETIVO: Selecionar todos os chamado registrado e fechados pelos técnicos ativos e algumas modificações úteis para o acompanhamento. Bom fiz essa Query que seleciona todos os chamados Registrados e Solucionados X o Técnico atribuido (ativo). Veja: Para visualizar todos os [...]]]></description>
			<content:encoded><![CDATA[<p>Boa tarde galera!</p>
<p>Já tem um tempo que não posto minhas query&#8217;s para acompanhamento do GLPI.</p>
<blockquote><p>OBJETIVO: Selecionar todos os chamado registrado e fechados pelos técnicos ativos e algumas modificações úteis para o acompanhamento.</p></blockquote>
<p><span id="more-817"></span>Bom fiz essa Query que seleciona todos os chamados Registrados e Solucionados X o Técnico atribuido (ativo). Veja:</p>
<pre class="brush: sql; title: ; notranslate">
SELECT
	Usuarios.realname AS 'Técnico',
	COUNT(Chamados.ID) AS 'Quantidade'
	FROM glpi_tickets AS Chamados
	INNER JOIN glpi_users AS Usuarios ON(Chamados.users_id_assign = Usuarios.id)
	WHERE Chamados.status IN('solved','closed')
	    AND Usuarios.is_active = 1
	GROUP BY Chamados.users_id_assign
	ORDER BY COUNT(Chamados.ID);
</pre>
<p>Para visualizar todos os técnicos (ativos e inativos), basta retirar:</p>
<pre class="brush: sql; title: ; notranslate">AND Usuarios.is_active = 1</pre>
<p>Caso queira visualizar por ano, basta adicionar:</p>
<pre class="brush: sql; title: ; notranslate">
SET @ano = '2011';
SELECT
	COUNT(Chamados.ID) AS 'Quantidade',
	Usuarios.realname AS 'Técnico'
	FROM glpi_tickets AS Chamados
	INNER JOIN glpi_users AS Usuarios ON(Chamados.users_id_assign = Usuarios.id)
	WHERE Chamados.status IN('solved','closed')
	  AND	Usuarios.is_active = 1
	  AND YEAR(Chamados.closedate) = @ano
	GROUP BY Chamados.users_id_assign
	ORDER BY COUNT(Chamados.ID);
</pre>
<p>Essas são algumas query&#8217;s que uso para acompanhamento do GLPI.</p>
<p>Até a próxima&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thiagopassamani.com.br/glpi/query-chamados-solucionados-por-tecnicos.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Query de Chamados Abertos por Grupo no GLPI</title>
		<link>http://www.thiagopassamani.com.br/glpi/query-de-chamados-abertos-por-grupo-no-glpi.html</link>
		<comments>http://www.thiagopassamani.com.br/glpi/query-de-chamados-abertos-por-grupo-no-glpi.html#comments</comments>
		<pubDate>Thu, 22 Jul 2010 16:33:14 +0000</pubDate>
		<dc:creator>Thiago Passamani</dc:creator>
				<category><![CDATA[GLPI]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Query]]></category>
		<category><![CDATA[View]]></category>

		<guid isPermaLink="false">http://www.thiagopassamani.com.br/?p=329</guid>
		<description><![CDATA[Boa tarde galera, Vou ensinar &#8220;basicamente&#8221; uma VIEW no MySQL com algumas tabelas do GLPI para facilitar suas vidas&#8230; Rsrss&#8230; OBJETIVO: Selecionar todos os chamados abertos no GLPI e separar por Grupo/Empresa e no final gerar um resultado total de chamados registrados. Como eu utilizo os grupos do GLPI como &#8220;Empresas&#8221;, criei uma VIEW para [...]]]></description>
			<content:encoded><![CDATA[<p>Boa tarde galera,</p>
<p>Vou ensinar &#8220;basicamente&#8221; uma VIEW no MySQL com algumas tabelas<br />
do GLPI para facilitar suas vidas&#8230; Rsrss&#8230;</p>
<blockquote><p>OBJETIVO: Selecionar todos os chamados abertos no GLPI e separar por Grupo/Empresa e no final gerar um resultado total de chamados registrados.</p></blockquote>
<p>Como eu utilizo os grupos do GLPI como &#8220;Empresas&#8221;, criei uma VIEW para verificar a quantidade de chamados abertos por Grupo/Empresas sem a necessidade de ficar executando minha QUERY sempre.<br />
<span id="more-329"></span><br />
Para criar basta executar a QUERY abaixo no phpMyAdmin ou em qualquer gerenciador de bando de dados (SGBD) para MySQL.</p>
<pre class="brush: sql; title: ; notranslate">
CREATE VIEW glpi_view_por_empresa AS
SELECT Grupos.name AS Empresa, COUNT(Chamados.ID) AS Chamados_Abertos
FROM (glpi_tracking AS Chamados
INNER JOIN glpi_groups AS Grupos ON((Chamados.FK_group = Grupos.ID)))
WHERE (Chamados.FK_group = Grupos.ID)
GROUP BY Chamados.FK_group
UNION
SELECT 'Total de Chamados' AS Empresa, COUNT(Chamados.ID) AS Chamados_Abertos
FROM glpi_tracking AS Chamados
WHERE (Chamados.FK_group &lt;&gt; '0');
</pre>
<p>Explicando:</p>
<p>- Criando a View chamada &#8220;glpi_view_por_empresa&#8221;:</p>
<pre class="brush: sql; title: ; notranslate">CREATE VIEW glpi_view_por_empresa AS</pre>
<p>- Seleciona o nome do Grupo/Empresa e faz uma contagem dos ch. abertos usando as tabelas &#8220;glpi_groups&#8221; e &#8220;glpi_tracking&#8221; utilizando INNET JOIN:</p>
<pre class="brush: sql; title: ; notranslate">
SELECT Grupos.name AS Empresa, COUNT(Chamados.ID) AS Chamados_Abertos
FROM (glpi_tracking AS Chamados
INNER JOIN glpi_groups AS Grupos ON((Chamados.FK_group = Grupos.ID)))
WHERE (Chamados.FK_group = Grupos.ID)
GROUP BY Chamados.FK_group
</pre>
<p>- Unindo dois SELECT&#8217;s com UNION</p>
<pre class="brush: sql; title: ; notranslate">UNION</pre>
<p>- Agora faço um select para gerar o Total de Chamados já abertos:</p>
<pre class="brush: sql; title: ; notranslate">
SELECT 'Total de Chamados' AS Empresa, COUNT(Chamados.ID) AS Chamados_Abertos
FROM glpi_tracking AS Chamados
WHERE (Chamados.FK_group &lt;&gt; '0');
</pre>
<p>Agora para verificar o resultado, basta fazer um SELECT na VIEW, veja como é simples:</p>
<pre class="brush: sql; title: ; notranslate">
SELECT * FROM glpi_view_por_empresa;
</pre>
<p>O resultado será esse:</p>
<p><a title="Resultado View por Empresa" href="http://www.thiagopassamani.com.br/wp-content/uploads/2010/07/view_glpi.jpg" rel="shadowbox"><img class="alignnone size-full wp-image-354" title="Resultado View por Empresa" src="http://www.thiagopassamani.com.br/wp-content/uploads/2010/07/view_glpi.jpg" alt="" width="219" height="114" /></a></p>
<p>Obs: Apaguei o nome das empresa para não ter problemas.</p>
<p>Espero que gostem, nos próximos post estarei colocando mais querys para auxiliar com o GLPI.</p>
<p>Até próxima&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thiagopassamani.com.br/glpi/query-de-chamados-abertos-por-grupo-no-glpi.html/feed</wfw:commentRss>
		<slash:comments>19</slash:comments>
		</item>
	</channel>
</rss>

