With inventory hops beerxml export support hop extracts. Added private xml values to show the real values and hide these in the poort designed beerxml know values.

Sun, 31 Jul 2022 13:25:32 +0200

author
Michiel Broek <mbroek@mbse.eu>
date
Sun, 31 Jul 2022 13:25:32 +0200
changeset 382
a4b218e7c10b
parent 381
34ba0be70f79
child 383
bd20f8710f45

With inventory hops beerxml export support hop extracts. Added private xml values to show the real values and hide these in the poort designed beerxml know values.

src/InventoryHops.cpp file | annotate | diff | comparison | revisions
--- a/src/InventoryHops.cpp	Sat Jul 30 19:21:55 2022 +0200
+++ b/src/InventoryHops.cpp	Sun Jul 31 13:25:32 2022 +0200
@@ -203,8 +203,8 @@
 
     QSqlQuery query("SELECT * FROM inventory_hops ORDER BY origin,name");
     const QStringList types({ "Bittering", "Aroma", "Both" });
-    const QStringList forms({ "Pellet", "Plug", "Leaf", "Leaf", "Pellet" });
-    /*                                                "Leaf Wet", "Cryo"       */
+    const QStringList forms({ "Pellet", "Plug", "Leaf", "Leaf", "Pellet", "Pellet",     "Pellet" });
+    /*                                                "Leaf Wet", "Cryo", "CO2extract", "ISOextract" */
     /*  We use more hop forms then beerxml knows about, so we send known names */
     /*  instead of what we internally use.                                     */
 
@@ -227,25 +227,28 @@
     for (int i = 0 ; i < query.size() ; i++ ) {
         xmlWriter->writeStartElement("HOP");
         xmlWriter->writeTextElement("VERSION", "1");
-        xmlWriter->writeTextElement("NAME", query.value(1).toString());
+        xmlWriter->writeTextElement("NAME", query.value("name").toString());
 	if (query.value(11).toString().length())
-	    xmlWriter->writeTextElement("NOTES", query.value(11).toString());
-	xmlWriter->writeTextElement("ALWAYS_ON_STOCK", query.value(14).toInt() ? "TRUE":"FALSE");
-	xmlWriter->writeTextElement("ALPHA", QString::number(query.value(2).toDouble(), 'f', 4));
-	xmlWriter->writeTextElement("BETA", QString::number(query.value(3).toDouble(), 'f', 4));
-	xmlWriter->writeTextElement("HUMULENE", QString::number(query.value(4).toDouble(), 'f', 4));
-	xmlWriter->writeTextElement("CAROPHYLLENE", QString::number(query.value(5).toDouble(), 'f', 4));
-	xmlWriter->writeTextElement("COHUMULONE", QString::number(query.value(6).toDouble(), 'f', 4));
-	xmlWriter->writeTextElement("MYRCENE", QString::number(query.value(7).toDouble(), 'f', 4));
-	xmlWriter->writeTextElement("TOTAL_OIL", QString::number(query.value(19).toDouble(), 'f', 4));
-	xmlWriter->writeTextElement("HSI", QString::number(query.value(8).toDouble(), 'f', 4));
-	xmlWriter->writeTextElement("TYPE", types[query.value(9).toInt()]);
-	xmlWriter->writeTextElement("FORM", forms[query.value(10).toInt()]);
-	xmlWriter->writeTextElement("ORIGIN", query.value(12).toString());
-	if (query.value(13).toString().length())
-	    xmlWriter->writeTextElement("SUBSTITUTES", query.value(13).toString());
-	if (query.value(16).toDouble() > 0)
-	    xmlWriter->writeTextElement("COST", QString::number(query.value(16).toDouble(), 'f', 4));
+	    xmlWriter->writeTextElement("NOTES", query.value("notes").toString());
+	xmlWriter->writeTextElement("ALWAYS_ON_STOCK", query.value("always_on_stock").toInt() ? "TRUE":"FALSE");
+	xmlWriter->writeTextElement("ALPHA", QString::number(query.value("alpha").toDouble(), 'f', 4));
+	xmlWriter->writeTextElement("BETA", QString::number(query.value("beta").toDouble(), 'f', 4));
+	xmlWriter->writeTextElement("HUMULENE", QString::number(query.value("humulene").toDouble(), 'f', 4));
+	xmlWriter->writeTextElement("CAROPHYLLENE", QString::number(query.value("caryophyllene").toDouble(), 'f', 4));
+	xmlWriter->writeTextElement("COHUMULONE", QString::number(query.value("cohumulone").toDouble(), 'f', 4));
+	xmlWriter->writeTextElement("MYRCENE", QString::number(query.value("myrcene").toDouble(), 'f', 4));
+	xmlWriter->writeTextElement("TOTAL_OIL", QString::number(query.value("total_oil").toDouble(), 'f', 4));
+	xmlWriter->writeTextElement("HSI", QString::number(query.value("hsi").toDouble(), 'f', 4));
+	xmlWriter->writeTextElement("TYPE", types[query.value("type").toInt()]);
+	xmlWriter->writeTextElement("FORM", forms[query.value("form").toInt()]);
+	xmlWriter->writeTextElement("BMS_FORM", g_hop_forms[query.value("form").toInt()]);
+	xmlWriter->writeTextElement("BMS_UTILISATION", QString::number(query.value("utilisation").toDouble(), 'f', 4));
+	xmlWriter->writeTextElement("BMS_BU_FACTOR", QString::number(query.value("bu_factor").toDouble(), 'f', 4));
+	xmlWriter->writeTextElement("ORIGIN", query.value("origin").toString());
+	if (query.value("substitutes").toString().length())
+	    xmlWriter->writeTextElement("SUBSTITUTES", query.value("substitutes").toString());
+	if (query.value("cost").toDouble() > 0)
+	    xmlWriter->writeTextElement("COST", QString::number(query.value("cost").toDouble(), 'f', 4));
 	xmlWriter->writeEndElement();
         query.next();
     }

mercurial