| 
															
														 | 
														
															
															 
														 | 
														
															
														 | 
														
															
															 
														 | 
													
													
												
													
														| 
															3
														 | 
														
															
															     <layout type="vertical"> 
														 | 
														
															3
														 | 
														
															
															     <layout type="vertical"> 
														 | 
													
													
												
													
														| 
															4
														 | 
														
															
															         <layout type="horizontal"> 
														 | 
														
															4
														 | 
														
															
															         <layout type="horizontal"> 
														 | 
													
													
												
													
														| 
															5
														 | 
														
															
															             <daterange id="dates" initial="19" /><!-- Year to Date --> 
														 | 
														
															5
														 | 
														
															
															             <daterange id="dates" initial="19" /><!-- Year to Date --> 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															6
														 | 
														
															
															+            <label>Weight Unit:</label> 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															7
														 | 
														
															
															+            <sqldrop id="unit" /> 
														 | 
													
													
												
													
														| 
															6
														 | 
														
															
															             <stretch /> 
														 | 
														
															8
														 | 
														
															
															             <stretch /> 
														 | 
													
													
												
													
														| 
															7
														 | 
														
															
															         </layout> 
														 | 
														
															9
														 | 
														
															
															         </layout> 
														 | 
													
													
												
													
														| 
															8
														 | 
														
															
															         <webview id="report" /> 
														 | 
														
															10
														 | 
														
															
															         <webview id="report" /> 
														 | 
													
													
												
											
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															
														 | 
														
															
															 
														 | 
													
													
												
													
														| 
															32
														 | 
														
															
															             dateSelect.setLifetimeRange(lifetimeStartDate, lifetimeEndDate); 
														 | 
														
															34
														 | 
														
															
															             dateSelect.setLifetimeRange(lifetimeStartDate, lifetimeEndDate); 
														 | 
													
													
												
													
														| 
															33
														 | 
														
															
															             dateQuery = dateQuery.invalidate(); 
														 | 
														
															35
														 | 
														
															
															             dateQuery = dateQuery.invalidate(); 
														 | 
													
													
												
													
														| 
															34
														 | 
														
															
															             dateSelect.rangeUpdated.connect(refresh); 
														 | 
														
															36
														 | 
														
															
															             dateSelect.rangeUpdated.connect(refresh); 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															37
														 | 
														
															
															+            var unitBox = findChildObject(this, 'unit'); 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															38
														 | 
														
															
															+            unitBox.addItem(TTR("greenforroasted", "Kg")); 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															39
														 | 
														
															
															+            unitBox.addItem(TTR("greenforroasted", "Lb")); 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															40
														 | 
														
															
															+            unitBox.currentIndex = QSettings.value("script/report_unit", 1); 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															41
														 | 
														
															
															+            unitBox['currentIndexChanged(int)'].connect(function() { 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															42
														 | 
														
															
															+                QSettings.setValue("script/report_unit", unitBox.currentIndex); 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															43
														 | 
														
															
															+                refresh(); 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															44
														 | 
														
															
															+            }); 
														 | 
													
													
												
													
														| 
															35
														 | 
														
															
															             function refresh() { 
														 | 
														
															45
														 | 
														
															
															             function refresh() { 
														 | 
													
													
												
													
														| 
															36
														 | 
														
															
															                 var dateRange = dateSelect.currentRange(); 
														 | 
														
															46
														 | 
														
															
															                 var dateRange = dateSelect.currentRange(); 
														 | 
													
													
												
													
														| 
															37
														 | 
														
															
															                 var startDate = dateRange[0]; 
														 | 
														
															47
														 | 
														
															
															                 var startDate = dateRange[0]; 
														 | 
													
													
												
													
														| 
															38
														 | 
														
															
															                 var endDate = dateRange[dateRange.length - 1]; 
														 | 
														
															48
														 | 
														
															
															                 var endDate = dateRange[dateRange.length - 1]; 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															49
														 | 
														
															
															+                var conversion = 1; 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															50
														 | 
														
															
															+                var unitText = TTR("greensales", "Lb"); 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															51
														 | 
														
															
															+                if(unitBox.currentIndex == 0) { 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															52
														 | 
														
															
															+                    conversion = 2.2; 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															53
														 | 
														
															
															+                    unitText = TTR("greensales", "Kg"); 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															54
														 | 
														
															
															+                } 
														 | 
													
													
												
													
														| 
															39
														 | 
														
															
															                 var buffer = new QBuffer; 
														 | 
														
															55
														 | 
														
															
															                 var buffer = new QBuffer; 
														 | 
													
													
												
													
														| 
															40
														 | 
														
															
															                 buffer.open(3); 
														 | 
														
															56
														 | 
														
															
															                 buffer.open(3); 
														 | 
													
													
												
													
														| 
															41
														 | 
														
															
															                 var output = new XmlWriter(buffer); 
														 | 
														
															57
														 | 
														
															
															                 var output = new XmlWriter(buffer); 
														 | 
													
													
												
											
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															
														 | 
														
															
															 
														 | 
													
													
												
													
														| 
															50
														 | 
														
															
															                 output.writeTextElement("h1", TTR("greenforroasted", "Green Coffees Used for Roasted Coffees ") + startDate + "-" + endDate); 
														 | 
														
															66
														 | 
														
															
															                 output.writeTextElement("h1", TTR("greenforroasted", "Green Coffees Used for Roasted Coffees ") + startDate + "-" + endDate); 
														 | 
													
													
												
													
														| 
															51
														 | 
														
															
															                 output.writeStartElement("ul"); 
														 | 
														
															67
														 | 
														
															
															                 output.writeStartElement("ul"); 
														 | 
													
													
												
													
														| 
															52
														 | 
														
															
															                 var query = new QSqlQuery(); 
														 | 
														
															68
														 | 
														
															
															                 var query = new QSqlQuery(); 
														 | 
													
													
												
													
														| 
															53
														 | 
														
															
															-                query.prepare("WITH q AS (SELECT roasted_id, unroasted_id, (SELECT name FROM items WHERE id = roasted_id) AS rname, generate_subscripts(unroasted_id, 1) AS s, sum(roasted_quantity) AS rq, min(time)::date, max(time)::date FROM roasting_log WHERE time >= :sd1 AND time < :ed1 ::date + interval '1 day' GROUP BY roasted_id, unroasted_id) SELECT q.*, (SELECT name FROM items WHERE id = unroasted_id[q.s]) || ' (' || unroasted_id[q.s] || ')' AS gname, (SELECT SUM(unroasted_quantity[q.s]) AS gq FROM roasting_log WHERE roasted_id = q.roasted_id AND unroasted_id = q.unroasted_id AND time >= :sd2 AND time < :ed2 ::date + interval '1 day') FROM q ORDER BY q.rname ASC, min ASC"); 
														 | 
														
															
														 | 
														
															
															 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															69
														 | 
														
															
															+                query.prepare("WITH q AS (SELECT roasted_id, unroasted_id, (SELECT name FROM items WHERE id = roasted_id) AS rname, generate_subscripts(unroasted_id, 1) AS s, sum(roasted_quantity)/:c1 AS rq, min(time)::date, max(time)::date FROM roasting_log WHERE time >= :sd1 AND time < :ed1 ::date + interval '1 day' GROUP BY roasted_id, unroasted_id) SELECT q.*, (SELECT name FROM items WHERE id = unroasted_id[q.s]) || ' (' || unroasted_id[q.s] || ')' AS gname, (SELECT SUM(unroasted_quantity[q.s])/:c2 AS gq FROM roasting_log WHERE roasted_id = q.roasted_id AND unroasted_id = q.unroasted_id AND time >= :sd2 AND time < :ed2 ::date + interval '1 day') FROM q ORDER BY q.rname ASC, min ASC"); 
														 | 
													
													
												
													
														| 
															54
														 | 
														
															
															                 query.bind(":sd1", startDate); 
														 | 
														
															70
														 | 
														
															
															                 query.bind(":sd1", startDate); 
														 | 
													
													
												
													
														| 
															55
														 | 
														
															
															                 query.bind(":sd2", startDate); 
														 | 
														
															71
														 | 
														
															
															                 query.bind(":sd2", startDate); 
														 | 
													
													
												
													
														| 
															56
														 | 
														
															
															                 query.bind(":ed1", endDate); 
														 | 
														
															72
														 | 
														
															
															                 query.bind(":ed1", endDate); 
														 | 
													
													
												
													
														| 
															57
														 | 
														
															
															                 query.bind(":ed2", endDate); 
														 | 
														
															73
														 | 
														
															
															                 query.bind(":ed2", endDate); 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															74
														 | 
														
															
															+                query.bind(":c1", conversion); 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															75
														 | 
														
															
															+                query.bind(":c2", conversion); 
														 | 
													
													
												
													
														| 
															58
														 | 
														
															
															                 query.exec(); 
														 | 
														
															76
														 | 
														
															
															                 query.exec(); 
														 | 
													
													
												
													
														| 
															59
														 | 
														
															
															                 var prevRid = -1; 
														 | 
														
															77
														 | 
														
															
															                 var prevRid = -1; 
														 | 
													
													
												
													
														| 
															60
														 | 
														
															
															                 var prevGid = ""; 
														 | 
														
															78
														 | 
														
															
															                 var prevGid = ""; 
														 | 
													
													
												
											
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															
														 | 
														
															
															 
														 | 
													
													
												
													
														| 
															69
														 | 
														
															
															                         } 
														 | 
														
															87
														 | 
														
															
															                         } 
														 | 
													
													
												
													
														| 
															70
														 | 
														
															
															                         output.writeTextElement("li", query.value(2) + " (" + query.value(0) + ")"); 
														 | 
														
															88
														 | 
														
															
															                         output.writeTextElement("li", query.value(2) + " (" + query.value(0) + ")"); 
														 | 
													
													
												
													
														| 
															71
														 | 
														
															
															                         output.writeStartElement("ul"); 
														 | 
														
															89
														 | 
														
															
															                         output.writeStartElement("ul"); 
														 | 
													
													
												
													
														| 
															72
														 | 
														
															
															-                        output.writeTextElement("li", query.value(4) + " pounds roasted between " + query.value(5) + " and " + query.value(6) + " with:"); 
														 | 
														
															
														 | 
														
															
															 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															90
														 | 
														
															
															+                        output.writeTextElement("li", query.value(4) + " " + unitText + " roasted between " + query.value(5) + " and " + query.value(6) + " with:"); 
														 | 
													
													
												
													
														| 
															73
														 | 
														
															
															                         output.writeStartElement("ul"); 
														 | 
														
															91
														 | 
														
															
															                         output.writeStartElement("ul"); 
														 | 
													
													
												
													
														| 
															74
														 | 
														
															
															-                        output.writeTextElement("li", query.value(8) + " pounds of " + query.value(7)); 
														 | 
														
															
														 | 
														
															
															 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															92
														 | 
														
															
															+                        output.writeTextElement("li", query.value(8) + " " + unitText + " of " + query.value(7)); 
														 | 
													
													
												
													
														| 
															75
														 | 
														
															
															                     } 
														 | 
														
															93
														 | 
														
															
															                     } 
														 | 
													
													
												
													
														| 
															76
														 | 
														
															
															                     else { // Same roasted item 
														 | 
														
															94
														 | 
														
															
															                     else { // Same roasted item 
														 | 
													
													
												
													
														| 
															77
														 | 
														
															
															                         if(query.value(1) != prevGid) { // New set of greens 
														 | 
														
															95
														 | 
														
															
															                         if(query.value(1) != prevGid) { // New set of greens 
														 | 
													
													
												
													
														| 
															78
														 | 
														
															
															                             output.writeEndElement(); //ul 
														 | 
														
															96
														 | 
														
															
															                             output.writeEndElement(); //ul 
														 | 
													
													
												
													
														| 
															79
														 | 
														
															
															-                            output.writeTextElement("li", query.value(4) + " pounds roasted between " + query.value(5) + " and " + query.value(6) + " with:"); 
														 | 
														
															
														 | 
														
															
															 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															97
														 | 
														
															
															+                            output.writeTextElement("li", query.value(4) + " " + unitText + " roasted between " + query.value(5) + " and " + query.value(6) + " with:"); 
														 | 
													
													
												
													
														| 
															80
														 | 
														
															
															                             output.writeStartElement("ul"); 
														 | 
														
															98
														 | 
														
															
															                             output.writeStartElement("ul"); 
														 | 
													
													
												
													
														| 
															81
														 | 
														
															
															-                            output.writeTextElement("li", query.value(8) + " pounds of " + query.value(7)); 
														 | 
														
															
														 | 
														
															
															 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															99
														 | 
														
															
															+                            output.writeTextElement("li", query.value(8) + " " + unitText + " of " + query.value(7)); 
														 | 
													
													
												
													
														| 
															82
														 | 
														
															
															                         } else { // Same set of greens 
														 | 
														
															100
														 | 
														
															
															                         } else { // Same set of greens 
														 | 
													
													
												
													
														| 
															83
														 | 
														
															
															-                            output.writeTextElement("li", query.value(8) + " pounds of " + query.value(7)); 
														 | 
														
															
														 | 
														
															
															 
														 | 
													
													
												
													
														| 
															
														 | 
														
															
															 
														 | 
														
															101
														 | 
														
															
															+                            output.writeTextElement("li", query.value(8) + " " + unitText + " of " + query.value(7)); 
														 | 
													
													
												
													
														| 
															84
														 | 
														
															
															                         } 
														 | 
														
															102
														 | 
														
															
															                         } 
														 | 
													
													
												
													
														| 
															85
														 | 
														
															
															                     } 
														 | 
														
															103
														 | 
														
															
															                     } 
														 | 
													
													
												
													
														| 
															86
														 | 
														
															
															                     prevRid = query.value(0); 
														 | 
														
															104
														 | 
														
															
															                     prevRid = query.value(0); 
														 |