# HG changeset patch # User Michiel Broek # Date 1659266732 -7200 # Node ID a4b218e7c10b98e5ad74a6c92869209dc5094a19 # Parent 34ba0be70f7962ea3a48d701e5a464347b929432 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. diff -r 34ba0be70f79 -r a4b218e7c10b src/InventoryHops.cpp --- 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(); }