<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ca">
	<id>https://energia.canfugarolas.org/index.php?action=history&amp;feed=atom&amp;title=ScriptFactura</id>
	<title>ScriptFactura - Historial de revisió</title>
	<link rel="self" type="application/atom+xml" href="https://energia.canfugarolas.org/index.php?action=history&amp;feed=atom&amp;title=ScriptFactura"/>
	<link rel="alternate" type="text/html" href="https://energia.canfugarolas.org/index.php?title=ScriptFactura&amp;action=history"/>
	<updated>2026-10-24T03:52:07Z</updated>
	<subtitle>Historial de revisió per a aquesta pàgina del wiki</subtitle>
	<generator>MediaWiki 1.40.0</generator>
	<entry>
		<id>https://energia.canfugarolas.org/index.php?title=ScriptFactura&amp;diff=103&amp;oldid=prev</id>
		<title>Admin a 07:11, 29 juny 2016</title>
		<link rel="alternate" type="text/html" href="https://energia.canfugarolas.org/index.php?title=ScriptFactura&amp;diff=103&amp;oldid=prev"/>
		<updated>2016-06-29T07:11:16Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&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;ca&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Versió més antiga&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revisió del 07:11, 29 juny 2016&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-l72&quot;&gt;Línia 72:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Línia 72:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;           os.makedirs(&amp;#039;Grafics&amp;#039;)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;           os.makedirs(&amp;#039;Grafics&amp;#039;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;     &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;     &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; 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 style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;#&lt;/del&gt;for arduino in range(2,8):&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; 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;       for arduino in range(2,8):&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; 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 style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;      for arduino in 5,7:&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; 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 class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; 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 style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;      &lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;          print &amp;quot;Analitzant dades arduino &amp;quot;,arduino&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;          print &amp;quot;Analitzant dades arduino &amp;quot;,arduino&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;          CAMI=&amp;quot;Factura/Dades/&amp;quot;+str(arduino)+&amp;quot;/&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;          CAMI=&amp;quot;Factura/Dades/&amp;quot;+str(arduino)+&amp;quot;/&amp;quot;&lt;/div&gt;&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-l192&quot;&gt;Línia 192:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Línia 191:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;       aux_mes+=1&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;       aux_mes+=1&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;       Colectiu= [0]*3&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;       Colectiu= [0]*3&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; 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 style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;#&lt;/del&gt;for arduino in range(2,8):&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; 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;       for arduino in range(2,8):&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; 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 style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;      for arduino in 5,7:&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; 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 class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; 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 style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;   &lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;          left = np.arange(1,DIES)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;          left = np.arange(1,DIES)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;          width = 0.95&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;          width = 0.95&lt;/div&gt;&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-l260&quot;&gt;Línia 260:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Línia 258:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;       Colectiu=[0]*3&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;       Colectiu=[0]*3&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;       print u&amp;quot;Creant factures ...&amp;quot;    &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;       print u&amp;quot;Creant factures ...&amp;quot;    &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; 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 style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;#&lt;/del&gt;for arduino in range(2,8):&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; 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;       for arduino in range(2,8):&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; 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 style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;      for arduino in 5,7:&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; 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 class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; 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 style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;   &lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;          if arduino == 2:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;          if arduino == 2:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;             RANG=2&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; 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;             RANG=2&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://energia.canfugarolas.org/index.php?title=ScriptFactura&amp;diff=102&amp;oldid=prev</id>
		<title>Admin a 07:10, 29 juny 2016</title>
		<link rel="alternate" type="text/html" href="https://energia.canfugarolas.org/index.php?title=ScriptFactura&amp;diff=102&amp;oldid=prev"/>
		<updated>2016-06-29T07:10:27Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;//energia.canfugarolas.org/index.php?title=ScriptFactura&amp;amp;diff=102&amp;amp;oldid=100&quot;&gt;Mostra els canvis&lt;/a&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://energia.canfugarolas.org/index.php?title=ScriptFactura&amp;diff=100&amp;oldid=prev</id>
		<title>Admin: Es crea la pàgina amb «   #!/usr/bin/python    # -*- coding: utf-8 -*-        #Falta    #Posar el nom del colectiu    #L1Ard2 Taller #L2Ard2 Taller #L3Ard2 Taller    #L1Ard3 Coworking #L2Ard...».</title>
		<link rel="alternate" type="text/html" href="https://energia.canfugarolas.org/index.php?title=ScriptFactura&amp;diff=100&amp;oldid=prev"/>
		<updated>2016-04-10T18:20:01Z</updated>

		<summary type="html">&lt;p&gt;Es crea la pàgina amb «   #!/usr/bin/python    # -*- coding: utf-8 -*-        #Falta    #Posar el nom del colectiu    #L1Ard2 Taller #L2Ard2 Taller #L3Ard2 Taller    #L1Ard3 Coworking #L2Ard...».&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Pàgina nova&lt;/b&gt;&lt;/p&gt;&lt;div&gt;   #!/usr/bin/python&lt;br /&gt;
   # -*- coding: utf-8 -*-&lt;br /&gt;
   &lt;br /&gt;
   #Falta&lt;br /&gt;
   #Posar el nom del colectiu&lt;br /&gt;
   #L1Ard2 Taller #L2Ard2 Taller #L3Ard2 Taller&lt;br /&gt;
   #L1Ard3 Coworking #L2Ard3 Fugart #L3Ard3 Comú&lt;br /&gt;
   #L1Ard4 Comú #L2Ard4 Comú #L3Ard4 Cooperatives&lt;br /&gt;
   #L1Ard5 General #L2Ard5 General #L3Ard5 General&lt;br /&gt;
   #L1Ard6 Cronopis #L2Ard6 Cronopis #L3Ard6 Cronopis&lt;br /&gt;
   #L1Ard7 Estudi i Mig #L2Ard7 Taller de Cosir #L3Ard7 LAC &lt;br /&gt;
   &lt;br /&gt;
   import numpy as np&lt;br /&gt;
   import matplotlib.pyplot as plt&lt;br /&gt;
   import os, sys, bz2&lt;br /&gt;
   from pylatex import Document, Section, Figure, SubFigure, NoEscape, Command&lt;br /&gt;
   from pylatex.base_classes.command import Options, Arguments&lt;br /&gt;
   from pylatex.utils import verbatim, bold&lt;br /&gt;
   from pylatex.package import Package&lt;br /&gt;
   &lt;br /&gt;
   &lt;br /&gt;
   &lt;br /&gt;
   if __name__ == &amp;#039;__main__&amp;#039;:&lt;br /&gt;
   &lt;br /&gt;
      #Inicialitzem les dades&lt;br /&gt;
      PL1=4&lt;br /&gt;
      PL2=8&lt;br /&gt;
      PL3=12&lt;br /&gt;
      MESOS=12&lt;br /&gt;
      Mesos=[&amp;#039;Gen&amp;#039;, &amp;#039;Feb&amp;#039;, &amp;#039;Marc&amp;#039;, &amp;#039;Abril&amp;#039;, &amp;#039;Maig&amp;#039;, &amp;#039;Juny&amp;#039;, &amp;#039;Juliol&amp;#039;, &amp;#039;Agost&amp;#039;, &amp;#039;Set&amp;#039;, &amp;#039;Oct&amp;#039;, &amp;#039;Nov&amp;#039;, &amp;#039;Des&amp;#039;]&lt;br /&gt;
      MaxDiari=MaxMensual=0&lt;br /&gt;
   &lt;br /&gt;
      consum_mensualL1=[[0]*13 for x in range(12)]&lt;br /&gt;
      consum_mensualL2=[[0]*13 for x in range(12)]&lt;br /&gt;
      consum_mensualL3=[[0]*13 for x in range(12)]&lt;br /&gt;
      &lt;br /&gt;
      #Volem saber el mes de la ultima lectura&lt;br /&gt;
      for root, dirs, files in os.walk(&amp;#039;Factura/Dades&amp;#039;):&lt;br /&gt;
          file=sorted(files)[-1]&lt;br /&gt;
      mesactual=file.split(&amp;#039;-&amp;#039;)[1].split(&amp;#039;.&amp;#039;)[0][:-2]       &lt;br /&gt;
      MesActual=Mesos[int(mesactual[2:])-1]&lt;br /&gt;
   &lt;br /&gt;
      if (MesActual == &amp;#039;Gen&amp;#039;) or (MesActual == &amp;#039;Marc&amp;#039;) or (MesActual == &amp;#039;Maig&amp;#039;) or (MesActual == &amp;#039;Juliol&amp;#039;) or (MesActual == &amp;#039;Agost&amp;#039;) or (MesActual == &amp;#039;Oct&amp;#039;) or (MesActual == &amp;#039;Des&amp;#039;):&lt;br /&gt;
         numdies=31&lt;br /&gt;
      elif MesActual == (&amp;#039;Abril&amp;#039;) or MesActual == (&amp;#039;Juny&amp;#039;) or MesActual == (&amp;#039;Set&amp;#039;) or MesActual == (&amp;#039;Nov&amp;#039;):&lt;br /&gt;
         numdies=30&lt;br /&gt;
      elif (mesactual[0:2] == 16) or (mesactual[0:2] == 20) or (mesactual[0:2] == 24) or (mesactual[0:2] == 28) or (mesactual[0:2] == 32):&lt;br /&gt;
         numdies=29&lt;br /&gt;
      else:&lt;br /&gt;
         numdies=28&lt;br /&gt;
   &lt;br /&gt;
      DIES=numdies+1&lt;br /&gt;
   &lt;br /&gt;
      valorDiariL1=[[0]*32 for i in range(8)]&lt;br /&gt;
      valorDiariL2=[[0]*32 for i in range(8)]&lt;br /&gt;
      valorDiariL3=[[0]*32 for i in range(8)]&lt;br /&gt;
   &lt;br /&gt;
      &lt;br /&gt;
      print &amp;quot;Ultim mes que tenim dades: &amp;quot;+Mesos[int(mesactual[2:])-1]+&amp;quot; de l\&amp;#039;any 20&amp;quot;+ mesactual[0:2]&lt;br /&gt;
      &lt;br /&gt;
      #Creem els directoris on guardarem els grafics si no existeixen&lt;br /&gt;
      if not os.path.exists(&amp;#039;Grafics&amp;#039;):&lt;br /&gt;
          os.makedirs(&amp;#039;Grafics&amp;#039;)&lt;br /&gt;
   &lt;br /&gt;
      for arduino in range(2,8):&lt;br /&gt;
      #for arduino in 3,2,4,5,6,7:&lt;br /&gt;
      #for arduino in 3,7:&lt;br /&gt;
      &lt;br /&gt;
         print &amp;quot;Analitzant dades arduino &amp;quot;,arduino&lt;br /&gt;
         CAMI=&amp;quot;Factura/Dades/&amp;quot;+str(arduino)+&amp;quot;/&amp;quot;&lt;br /&gt;
      &lt;br /&gt;
         if not os.path.exists(&amp;#039;Grafics/&amp;#039;+str(arduino)):&lt;br /&gt;
             os.makedirs(&amp;#039;Grafics/&amp;#039;+str(arduino))&lt;br /&gt;
      &lt;br /&gt;
         &lt;br /&gt;
         #Ens movem per dins del directori&lt;br /&gt;
         for root, dirs, files in os.walk(CAMI):&lt;br /&gt;
             Mes_aux=sorted(files)[0].split(&amp;#039;-&amp;#039;)[1].split(&amp;#039;.&amp;#039;)[0][:-2]&lt;br /&gt;
             aux_mes=0&lt;br /&gt;
             for file in sorted(files):&lt;br /&gt;
              if file[0]==&amp;quot;D&amp;quot;:&lt;br /&gt;
                consum=[[],[],[]]&lt;br /&gt;
         &lt;br /&gt;
                #Obrim el fitxers per llegir &lt;br /&gt;
                f=bz2.BZ2File(&amp;#039;Factura/Dades/&amp;#039;+str(arduino)+&amp;#039;/&amp;#039;+file,&amp;#039;r&amp;#039;)&lt;br /&gt;
                print file&lt;br /&gt;
   &lt;br /&gt;
                #Mirem el mes i dia que estem analitzant&lt;br /&gt;
                Mes=file.split(&amp;#039;-&amp;#039;)[1].split(&amp;#039;.&amp;#039;)[0][:-2]&lt;br /&gt;
                dia=int(file.split(&amp;#039;-&amp;#039;)[1].split(&amp;#039;.&amp;#039;)[0][4:6])&lt;br /&gt;
                &lt;br /&gt;
                #Llegim la primera linea i ens quedem amb el temps&lt;br /&gt;
                line=f.readline()&lt;br /&gt;
                camps=line.split(&amp;#039; &amp;#039;)&lt;br /&gt;
         &lt;br /&gt;
                #comprovem si es una linea plena&lt;br /&gt;
                while len(camps)&amp;lt;3 :&lt;br /&gt;
                   line=f.readline()&lt;br /&gt;
                   camps=line.split(&amp;#039; &amp;#039;)&lt;br /&gt;
      &lt;br /&gt;
                potencia=[float(camps[PL1]),float(camps[PL2]),float(camps[PL3])]&lt;br /&gt;
                hora=camps[1].split(&amp;#039;:&amp;#039;)&lt;br /&gt;
                temps_aux=float(hora[2])+float(hora[1])*60+float(hora[0])*3600&lt;br /&gt;
                tempstotal=temps_aux&lt;br /&gt;
                   &lt;br /&gt;
                data=camps[0]&lt;br /&gt;
         &lt;br /&gt;
                #Ens movem linea per linea per llegir les dades&lt;br /&gt;
                for line in f:&lt;br /&gt;
                   camps=line.split(&amp;#039; &amp;#039;)&lt;br /&gt;
                   if &amp;#039;str&amp;#039; in line:&lt;br /&gt;
                      break&lt;br /&gt;
                   if len(camps)&amp;gt;2:&lt;br /&gt;
                      lecturapotencia=[float(camps[PL1]),float(camps[PL2]),float(camps[PL3])]&lt;br /&gt;
                      Error=0&lt;br /&gt;
                      for x in lecturapotencia:&lt;br /&gt;
                         Error=Error+abs(x)&lt;br /&gt;
                      #Comprovem si no hi ha valors molt grans que considerem erronis&lt;br /&gt;
                      if Error &amp;lt; 10000:&lt;br /&gt;
                         hora=camps[1].split(&amp;#039;:&amp;#039;)&lt;br /&gt;
                         temps=float(hora[2])+float(hora[1])*60+float(hora[0])*3600&lt;br /&gt;
                         temps_aux=temps-temps_aux&lt;br /&gt;
         &lt;br /&gt;
                         #Si temps_aux es negatiu vol dir que les dades ja son del dia seguent&lt;br /&gt;
                         if temps_aux &amp;lt; 0:&lt;br /&gt;
                            temps_aux=temps_aux+86400 &lt;br /&gt;
                         tempstotal=tempstotal+temps_aux&lt;br /&gt;
         &lt;br /&gt;
                         #Multipliquem el valor de la potencia pel temps transcorregut des del ultim cop.&lt;br /&gt;
                         potencia[:]=[x*temps_aux for x in potencia]&lt;br /&gt;
         &lt;br /&gt;
                         #Afegim el valor de la potencia als consums&lt;br /&gt;
                         for i in range(3): &lt;br /&gt;
                            consum[i].append(potencia[i]) &lt;br /&gt;
                         temps_aux=temps&lt;br /&gt;
                         potencia=lecturapotencia&lt;br /&gt;
          &lt;br /&gt;
                #Afegim aixo per si no estem calculant exactament les 24h dun dia &lt;br /&gt;
                if tempstotal &amp;lt; 86400:&lt;br /&gt;
                   potencia[:]=[x*(86400-tempstotal) for x in potencia]&lt;br /&gt;
                   for i in range(3): &lt;br /&gt;
                      consum[i].append(potencia[i]) &lt;br /&gt;
      &lt;br /&gt;
                #valorx.append(data)&lt;br /&gt;
         &lt;br /&gt;
                consumL1=sum(consum[0])/3600000&lt;br /&gt;
                consumL2=sum(consum[1])/3600000&lt;br /&gt;
                consumL3=sum(consum[2])/3600000&lt;br /&gt;
                #Nomes fem els calculs si estem en lultim mes&lt;br /&gt;
                if Mes == mesactual: &lt;br /&gt;
                   valorDiariL1[arduino][dia]=consumL1&lt;br /&gt;
                   valorDiariL2[arduino][dia]=consumL2&lt;br /&gt;
                   valorDiariL3[arduino][dia]=consumL3&lt;br /&gt;
                if Mes == Mes_aux:&lt;br /&gt;
                   consum_mensualL1[arduino][aux_mes]+=consumL1&lt;br /&gt;
                   consum_mensualL2[arduino][aux_mes]+=consumL2&lt;br /&gt;
                   consum_mensualL3[arduino][aux_mes]+=consumL3&lt;br /&gt;
                else :&lt;br /&gt;
                   aux_mes+=1&lt;br /&gt;
                   consum_mensualL1[arduino][aux_mes]=consumL1&lt;br /&gt;
                   consum_mensualL2[arduino][aux_mes]=consumL2&lt;br /&gt;
                   consum_mensualL3[arduino][aux_mes]=consumL3&lt;br /&gt;
                   Mes_aux=file.split(&amp;#039;-&amp;#039;)[1].split(&amp;#039;.&amp;#039;)[0][:-2]&lt;br /&gt;
                 &lt;br /&gt;
         #Calculem els maxims per poder fer grafiques iguals&lt;br /&gt;
         for i in range(1,4):&lt;br /&gt;
            Max=max(eval(&amp;#039;valorDiariL&amp;#039;+str(i))[arduino])&lt;br /&gt;
            if MaxDiari &amp;lt; Max:&lt;br /&gt;
                 MaxDiari=Max*1.1&lt;br /&gt;
            Max=max(eval(&amp;#039;consum_mensualL&amp;#039;+str(i))[arduino])&lt;br /&gt;
            if MaxMensual &amp;lt; Max :&lt;br /&gt;
               MaxMensual=Max*1.1&lt;br /&gt;
   &lt;br /&gt;
      print u&amp;quot;Creant gràfics ...&amp;quot;   &lt;br /&gt;
      Colectiu= [0]*3&lt;br /&gt;
      for arduino in range(2,8):&lt;br /&gt;
      #for arduino in 3,7:&lt;br /&gt;
   &lt;br /&gt;
         left = np.arange(1,DIES+1)&lt;br /&gt;
         width = 0.95&lt;br /&gt;
   &lt;br /&gt;
         if arduino == 2:&lt;br /&gt;
            for i in range(2,4):&lt;br /&gt;
               valorDiariL1[2][1:int(DIES+1)]+=eval(&amp;#039;valorDiariL&amp;#039;+str(i))[2][1:int(DIES+1)]&lt;br /&gt;
            RANG=2&lt;br /&gt;
            Colectiu=[u&amp;quot;Taller Col·lectiu&amp;quot;,&amp;quot;&amp;quot;,&amp;quot;&amp;quot;]&lt;br /&gt;
         elif arduino == 3:&lt;br /&gt;
            Colectiu=[&amp;quot;Coworking&amp;quot;,&amp;quot;Fugart&amp;quot;,u&amp;quot;Comú 2a Planta&amp;quot;]&lt;br /&gt;
            RANG=4&lt;br /&gt;
         elif arduino == 4:&lt;br /&gt;
            Colectiu=[u&amp;quot;Comú Taller&amp;quot;,u&amp;quot;Comú Sotan&amp;quot;,u&amp;quot;Cooperatives&amp;quot;]&lt;br /&gt;
            RANG=4&lt;br /&gt;
         elif arduino == 5:&lt;br /&gt;
            for i in range(2,4):&lt;br /&gt;
               valorDiariL1[7][1:int(DIES+1)]+=eval(&amp;#039;valorDiariL&amp;#039;+str(i))[7][1:int(DIES+1)]&lt;br /&gt;
            Colectiu[0]=[&amp;quot;General de Can Fugarolas&amp;quot;,&amp;quot;&amp;quot;,&amp;quot;&amp;quot;]&lt;br /&gt;
            RANG=2&lt;br /&gt;
         elif arduino == 6:&lt;br /&gt;
            for i in range(2,4):&lt;br /&gt;
               valorDiariL1[6][1:int(DIES+1)]+=eval(&amp;#039;valorDiariL&amp;#039;+str(i))[6][1:int(DIES+1)]&lt;br /&gt;
            Colectiu[0]=[&amp;quot;Cronopis&amp;quot;,&amp;quot;&amp;quot;,&amp;quot;&amp;quot;]&lt;br /&gt;
            RANG=2&lt;br /&gt;
         else:&lt;br /&gt;
            Colectiu=[&amp;quot;Estudi i Mig&amp;quot;,&amp;quot;Taller de Cosir&amp;quot;,&amp;quot;LAC&amp;quot;]&lt;br /&gt;
            RANG=4&lt;br /&gt;
   &lt;br /&gt;
         for i in range(1,RANG):&lt;br /&gt;
            valors=eval(&amp;#039;valorDiariL&amp;#039;+str(i))[arduino][1:int(DIES+1)]&lt;br /&gt;
            plt.clf()&lt;br /&gt;
            plt.axis([1,DIES+1,0,MaxDiari])&lt;br /&gt;
            plt.bar(left, valors, width, bottom=0.01, color=&amp;#039;r&amp;#039;,alpha=0.8)&lt;br /&gt;
            plt.xlabel(&amp;#039;Dies&amp;#039;)&lt;br /&gt;
            plt.ylabel(&amp;#039;Consum en KWh&amp;#039;)&lt;br /&gt;
            plt.title(&amp;#039;Consum Diari del mes &amp;#039;+ Mesos[int(mesactual[2:])-1]+&amp;#039; de l\&amp;#039;any 20&amp;#039;+ mesactual[0:2]+&amp;#039; (Arduino &amp;#039;+str(arduino)+&amp;#039; L&amp;#039;+str(i)+&amp;#039;)&amp;#039;)&lt;br /&gt;
            plt.xticks(left+width/2,left)&lt;br /&gt;
            plt.tight_layout()&lt;br /&gt;
            plt.savefig(&amp;#039;Grafics/&amp;#039;+str(arduino)+&amp;#039;/ConsumL&amp;#039;+str(i)+&amp;#039;Diari_Ard&amp;#039;+str(arduino)+&amp;#039;.png&amp;#039;)&lt;br /&gt;
         &lt;br /&gt;
         left = np.arange(1,len(consum_mensualL1)+1)&lt;br /&gt;
         for i in range(1,RANG):&lt;br /&gt;
            valors=eval(&amp;#039;consum_mensualL&amp;#039;+str(i))[arduino][1:13]&lt;br /&gt;
            plt.clf()&lt;br /&gt;
            plt.axis([0,MESOS+1,0,MaxMensual])&lt;br /&gt;
            plt.bar(left, valors, width, bottom=0.01, color=&amp;#039;y&amp;#039;,alpha=0.8)&lt;br /&gt;
            plt.ylabel(&amp;#039;Consum en KWh&amp;#039;)&lt;br /&gt;
            plt.title(&amp;#039;Consum Mensual&amp;#039;)&lt;br /&gt;
            plt.title(&amp;#039;Consum Mensual de tot un any fins &amp;#039;+ Mesos[int(mesactual[2:])-1]+&amp;#039; del 20&amp;#039;+mesactual[0:2]+&amp;#039; (Arduino &amp;#039;+str(arduino)+&amp;#039; L&amp;#039;+str(i)+&amp;#039;)&amp;#039;)&lt;br /&gt;
            plt.xticks(left+width/2,np.roll(Mesos,int(mesactual[2:])))&lt;br /&gt;
            plt.tight_layout()&lt;br /&gt;
            plt.savefig(&amp;#039;Grafics/&amp;#039;+str(arduino)+&amp;#039;/ConsumL&amp;#039;+str(i)+&amp;#039;Mensual_Ard&amp;#039;+str(arduino)+&amp;#039;.png&amp;#039;)&lt;br /&gt;
   &lt;br /&gt;
   &lt;br /&gt;
      Colectiu=[0]*3&lt;br /&gt;
      print u&amp;quot;Creant factures ...&amp;quot;   &lt;br /&gt;
      for arduino in range(2,8):&lt;br /&gt;
   &lt;br /&gt;
         if arduino == 2:&lt;br /&gt;
            RANG=2&lt;br /&gt;
            Colectiu=[u&amp;quot;Taller Col·lectiu&amp;quot;,&amp;quot;&amp;quot;,&amp;quot;&amp;quot;]&lt;br /&gt;
         elif arduino == 3:&lt;br /&gt;
            Colectiu=[&amp;quot;Coworking&amp;quot;,&amp;quot;Fugart&amp;quot;,u&amp;quot;Comú 2a Planta&amp;quot;]&lt;br /&gt;
            RANG=4&lt;br /&gt;
         elif arduino == 4:&lt;br /&gt;
            Colectiu=[u&amp;quot;Comú Taller&amp;quot;,u&amp;quot;Comú Sotan&amp;quot;,u&amp;quot;Cooperatives&amp;quot;]&lt;br /&gt;
            RANG=4&lt;br /&gt;
         elif arduino == 5:&lt;br /&gt;
            for i in range(2,4):&lt;br /&gt;
               valorDiariL1[7][1:int(DIES+1)]+=eval(&amp;#039;valorDiariL&amp;#039;+str(i))[7][1:int(DIES+1)]&lt;br /&gt;
            Colectiu=[&amp;quot;General de Can Fugarolas&amp;quot;,&amp;quot;&amp;quot;,&amp;quot;&amp;quot;]&lt;br /&gt;
            RANG=2&lt;br /&gt;
         elif arduino == 6:&lt;br /&gt;
            Colectiu=[&amp;quot;Cronopis&amp;quot;,&amp;quot;&amp;quot;,&amp;quot;&amp;quot;]&lt;br /&gt;
            RANG=2&lt;br /&gt;
         else:&lt;br /&gt;
            Colectiu=[&amp;quot;Estudi i Mig&amp;quot;,&amp;quot;Taller de Cosir&amp;quot;,&amp;quot;LAC&amp;quot;]&lt;br /&gt;
            RANG=4&lt;br /&gt;
   &lt;br /&gt;
   &lt;br /&gt;
         for i in range(1,RANG):  &lt;br /&gt;
   &lt;br /&gt;
            file=&amp;#039;FacturaArduino&amp;#039;+str(arduino)+&amp;#039;_&amp;#039;+str(i)&lt;br /&gt;
            doc = Document(default_filepath=file,documentclass=&amp;#039;report&amp;#039;,fontenc=&amp;#039;T1&amp;#039;,inputenc=&amp;#039;utf8&amp;#039;,lmodern=&amp;#039;True&amp;#039;)&lt;br /&gt;
        &lt;br /&gt;
            doc.packages.append(Package(&amp;#039;eurosym&amp;#039;))&lt;br /&gt;
            doc.packages.append(Package(&amp;#039;babel&amp;#039;,options=&amp;#039;catalan&amp;#039;))&lt;br /&gt;
        &lt;br /&gt;
            args = Arguments(NoEscape(r&amp;#039;\textheight&amp;#039;),&amp;#039;6cm&amp;#039;)&lt;br /&gt;
            doc.preamble.append(Command(&amp;#039;addtolength&amp;#039;,args))&lt;br /&gt;
            args = Arguments(NoEscape(r&amp;#039;\textwidth&amp;#039;),&amp;#039;6.5cm&amp;#039;)&lt;br /&gt;
            doc.preamble.append(Command(&amp;#039;addtolength&amp;#039;,args))&lt;br /&gt;
            args = Arguments(NoEscape(r&amp;#039;\voffset&amp;#039;),NoEscape(r&amp;#039;-2.5cm&amp;#039;))&lt;br /&gt;
            doc.preamble.append(Command(&amp;#039;addtolength&amp;#039;,args))&lt;br /&gt;
            args = Arguments(NoEscape(r&amp;#039;\hoffset&amp;#039;),NoEscape(r&amp;#039;-3cm&amp;#039;))&lt;br /&gt;
            doc.preamble.append(Command(&amp;#039;addtolength&amp;#039;,args))&lt;br /&gt;
        &lt;br /&gt;
        &lt;br /&gt;
            doc.append(Command(&amp;#039;pagestyle&amp;#039;,&amp;#039;empty&amp;#039;))&lt;br /&gt;
        &lt;br /&gt;
            doc.append(Command(&amp;#039;begin&amp;#039;,&amp;#039;center&amp;#039;))&lt;br /&gt;
            doc.append(Command(&amp;#039;begin&amp;#039;,&amp;#039;flushright&amp;#039;))&lt;br /&gt;
            doc.append(bold(u&amp;quot;Can Fugarolas\n&amp;quot;))&lt;br /&gt;
            doc.append(bold(u&amp;quot;1 de Març de 2016&amp;quot;))&lt;br /&gt;
            doc.append(Command(&amp;#039;end&amp;#039;,&amp;#039;flushright&amp;#039;))&lt;br /&gt;
       &lt;br /&gt;
            Text=u&amp;quot;Factura del Col·lectiu&amp;quot;+Colectiu[i-1]&lt;br /&gt;
            doc.append(Command(&amp;#039;textbf&amp;#039;,Command(&amp;#039;Large&amp;#039;,Text)))&lt;br /&gt;
            doc.append(Command(&amp;#039;textbf&amp;#039;,Command(&amp;#039;Large&amp;#039;,&amp;#039;L&amp;#039;+str(i)+u&amp;quot; de l&amp;#039;Arduino &amp;quot;+str(arduino)+&amp;quot;\n&amp;quot;)))&lt;br /&gt;
            doc.append(Command(&amp;#039;end&amp;#039;,&amp;#039;center&amp;#039;))&lt;br /&gt;
        &lt;br /&gt;
            doc.append(u&amp;#039;Aquesta factura esta generada automàticament a partir de les dades que hem anat obtenint dels Arduinos que tenim instal·lats a la Fàbrica de Can Fugarolas.\n Tota la informació de com han estat generades aquestes factures les pots trobar a&amp;#039;)&lt;br /&gt;
            doc.append(Command(&amp;#039;begin&amp;#039;,&amp;#039;center&amp;#039;))&lt;br /&gt;
            doc.append(Command(&amp;#039;texttt&amp;#039;,&amp;#039;http://energia.canfugarolas.org&amp;#039;))&lt;br /&gt;
            doc.append(Command(&amp;#039;end&amp;#039;,&amp;#039;center&amp;#039;))&lt;br /&gt;
            doc.append(u&amp;#039;Si vols veure en temps real el consum de tots els col·lectius de la fàbrica, pots consultar-ho a&amp;#039;)&lt;br /&gt;
            doc.append(Command(&amp;#039;begin&amp;#039;,&amp;#039;center&amp;#039;))&lt;br /&gt;
            doc.append(Command(&amp;#039;texttt&amp;#039;,&amp;#039;http://emon.canfugarolas.org&amp;#039;))&lt;br /&gt;
            doc.append(Command(&amp;#039;end&amp;#039;,&amp;#039;center&amp;#039;))&lt;br /&gt;
            doc.append(u&amp;#039;Aquí et deixem el teu consum per dies i per mesos en KWh:&amp;#039;)&lt;br /&gt;
        &lt;br /&gt;
            image_filename = os.path.join(&amp;#039;Grafics/&amp;#039;+str(arduino)+&amp;#039;/&amp;#039;, &amp;#039;ConsumL&amp;#039;+str(i)+&amp;#039;Diari_Ard&amp;#039;+str(arduino)+&amp;#039;.png&amp;#039;)&lt;br /&gt;
            image_filename2 = os.path.join(&amp;#039;Grafics/5/&amp;#039;,&amp;#039;ConsumL2Diari_Ard5.png&amp;#039;)&lt;br /&gt;
            with doc.create(Figure(position=&amp;#039;h!&amp;#039;)) as kittens:&lt;br /&gt;
                with doc.create(SubFigure(&lt;br /&gt;
                        position=&amp;#039;b&amp;#039;,&lt;br /&gt;
                        width=NoEscape(r&amp;#039;0.5\linewidth&amp;#039;))) as left_kitten:&lt;br /&gt;
        &lt;br /&gt;
                    left_kitten.add_image(image_filename,&lt;br /&gt;
                                          width=NoEscape(r&amp;#039;\linewidth&amp;#039;))&lt;br /&gt;
                    left_kitten.add_caption(u&amp;#039;Últim mes&amp;#039;)&lt;br /&gt;
                with doc.create(SubFigure(&lt;br /&gt;
                        position=&amp;#039;b&amp;#039;,&lt;br /&gt;
                        width=NoEscape(r&amp;#039;0.5\linewidth&amp;#039;))) as right_kitten:&lt;br /&gt;
        &lt;br /&gt;
                    right_kitten.add_image(image_filename2,&lt;br /&gt;
                                           width=NoEscape(r&amp;#039;\linewidth&amp;#039;))&lt;br /&gt;
                    right_kitten.add_caption(u&amp;#039;Últim any&amp;#039;)&lt;br /&gt;
                kittens.add_caption(u&amp;#039;Consum del Col·lectiu&amp;#039;)&lt;br /&gt;
        &lt;br /&gt;
            image_filename = os.path.join(&amp;#039;Grafics/&amp;#039;+str(arduino)+&amp;#039;/&amp;#039;, &amp;#039;ConsumL&amp;#039;+str(i)+&amp;#039;Mensual_Ard&amp;#039;+str(arduino)+&amp;#039;.png&amp;#039;)&lt;br /&gt;
            image_filename2 = os.path.join(&amp;#039;Grafics/5/&amp;#039;,&amp;#039;ConsumL2Mensual_Ard5.png&amp;#039;)&lt;br /&gt;
        &lt;br /&gt;
            with doc.create(Figure(position=&amp;#039;h!&amp;#039;)) as kittens:&lt;br /&gt;
                with doc.create(SubFigure(&lt;br /&gt;
                        position=&amp;#039;b&amp;#039;,&lt;br /&gt;
                        width=NoEscape(r&amp;#039;0.5\linewidth&amp;#039;))) as left_kitten:&lt;br /&gt;
        &lt;br /&gt;
                    left_kitten.add_image(image_filename,&lt;br /&gt;
                                          width=NoEscape(r&amp;#039;\linewidth&amp;#039;))&lt;br /&gt;
                    left_kitten.add_caption(u&amp;#039;Últim mes&amp;#039;)&lt;br /&gt;
                with doc.create(SubFigure(&lt;br /&gt;
                        position=&amp;#039;b&amp;#039;,&lt;br /&gt;
                        width=NoEscape(r&amp;#039;0.5\linewidth&amp;#039;))) as right_kitten:&lt;br /&gt;
        &lt;br /&gt;
                    right_kitten.add_image(image_filename2,&lt;br /&gt;
                                           width=NoEscape(r&amp;#039;\linewidth&amp;#039;))&lt;br /&gt;
                    right_kitten.add_caption(u&amp;#039;Últim any&amp;#039;)&lt;br /&gt;
                kittens.add_caption(u&amp;#039;Consum de Tot Can Fugarolas&amp;#039;)&lt;br /&gt;
        &lt;br /&gt;
            doc.append(Command(&amp;#039;begin&amp;#039;,&amp;#039;flushright&amp;#039;))&lt;br /&gt;
            doc.append(Command(&amp;#039;textsc&amp;#039;,u&amp;quot;Comissió d&amp;#039;Energia de Can Fugarolas&amp;quot;))&lt;br /&gt;
            doc.append(Command(&amp;#039;end&amp;#039;,&amp;#039;flushright&amp;#039;))&lt;br /&gt;
        &lt;br /&gt;
            doc.generate_pdf()&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
</feed>