--- trunk/ChangeLog 2010/04/06 10:34:58 349 +++ trunk/ChangeLog 2011/02/23 14:51:39 441 @@ -1,3 +1,318 @@ +2011-02-23 Bernhard Herzog + + Port new RepeatNode attributes "orderby" and "reverse" from libformed + + * formed/formed/model/data.py (RepeatNode.__init__): Add + attributes "orderby" and "reverse" so that they can be edited with + formed. + +2011-02-22 Roland Geider + + * formed/formed/plugins/export/xsd.py: Added support for + element + +2011-01-19 Torsten Irlaender + + * formed/formed/plugins/export/new_sql.py + (SchemaCreator._createChoice): Fix traversing choicelists wich + conditional nodes. + +2011-01-11 Torsten Irlaender + + * formed/formed/model/exprtree.py: Added List-Node and Contains + function. + +2010-12-27 Torsten Irlaender + + * formed/formed/model/data.py (WidgetCollector.visitor): Removed + clause to ignore Repeatgroups. + +2010-12-13 Torsten Irlaender + + * formed/formed/model/data.py (GroupNode.isRepeat): Issue1565: Fixed + isRepeat function. Check typ instead of repeat attribute. Removed + setRepeat function (not used anywhere) + +2010-11-24 Bernhard Herzog + + * formed/formed/plugins/export/rules_sh.py (generate_tagging): + Remove unused variable "inserts" and corresponding commented out + code. + +2010-11-24 Bernhard Herzog + + * formed/formed/plugins/export/rules_sh.py: Remove some commented + out code. + +2010-11-24 Bernhard Herzog + + * formed/formed/plugins/export/rules_sh.py: expand star-import. + +2010-11-24 Bernhard Herzog + + * formed/formed/plugins/export/rules_sh.py (sql_OperatorUnary): + Put parentheses around the comparison for the KNOWN operator in + the generated SQL to ensure correct evaluation order. + +2010-11-24 Bernhard Herzog + + * formed/formed/plugins/export/rules_sh.py (binary_operator_map): + New. Map binary formed expr operators to their SQL counterparts. + (sql_OperatorBinary): Use binary_operator_map instead of a cascade + of if-statements with lots of code duplication. Also, put + parentheses around the resulting SQL expression to make sure the + expression is correctly. This fixes a problem with WASKO tagging + rules, where the a FormEd expression of the form like "2 1 1980 + date 1 1 1980 date - 93 *" would be incorrectly converted to the + SQL expression "93 * '1980-01-02'::date - '1980-01-01'::date" + +2010-11-24 Bernhard Herzog + + * formed/formed/plugins/export/rules_sh.py: Fix formatting. + +2010-11-15 Torsten Irlaender + + * formed/formed/model/data.py: Do not set attribute "repeat" for + Repeat-Groups. + +2010-11-10 Torsten Irlaender + + * formed/formed/plugins/modify/rules.py: Fixed date sequence rule + checks for date in future. + +2010-11-08 Roland Geider + + * formed/formed/plugins/export/xsd.py: validate formedtree.xml + +2010-11-08 Roland Geider + + * formed/formed/model/data.py, + formed/formed/plugins/export/xsd.py, + formed/formed/config.py: issue1131: generate XSD for case exports + +2010-10-21 Torsten Irlaender + + * formed/formed/plugins/export/rules_sh.py: Added new LE-Operator + * formed/formed/plugins/modify/rules.py: Add error rule to force phase + relevant datefields not to be "unknown". + +2010-10-12 Roland Geider + + * formed/formed/plugins/export/rules_sh.py: Ignore rules if any fields + in the rule are in a repeat group + +2010-10-11 Roland Geider + + * formed/plugins/export/rules_sh.py: Added support to more opperators + to be able to export the WASKO case + +2010-10-06 Torsten Irlaender + + * formed/formed/plugins/export/rules_sh.py (generate_tagging): Fixed + gerating SQL for Rules + * formed/formed/plugins/export/rules_sh.py (sql_date): Fixed sql_date + function. + +2010-10-05 Torsten Irländer + + * formed/formed/model/data.py: Fixed error when setting tag attribute. + * formed/formed/plugins/export/rules_sh.py: Added generating exporting + tagging-xml + * formed/formed/plugins/modify/rules.py: Do not generate automatic + tagids for rules. + +2010-10-04 Torsten Irländer + + * formed/formed/model/data.py (RuleLeaf.__init__): Added new attribute + "tag" for rule-leafs + * formed/formed/config.py: Added export rules as XML to Menu + * formed/formed/plugins/modify/rules.py + (GenerateRequiredRules.generateDateSequenceRules): Generate automatic + tag ids for date-sequence rules + +2010-09-30 Torsten Irländer + + * formed/formed/plugins/export/rules_sh.py + (ExportRulesAsSH.doExport): Filter out duplicted rules. + +2010-09-20 Frank Koormann + + * formed/formed/plugins/export/latex.py (RecursiveExporter): + Add "required"-field information to output and include + choice list contents. + +2010-09-16 Bernhard Herzog + + Avoid database deadlocks that can happen when database clients try + to work with the same case using two separate database + connections. See mpuls/issue1145 for details. + + * formed/formed/plugins/export/rg_sql.py (SQL_TEMPLATE): Split the + computation of the new json structure description into the new + database function compute_case_structure + (TRIGGER_TMPL): Change the trigger functions to immediately update + the cached json structure description instead of just setting the + modified flag. This avoids the lazy recomputation that makes what + seems like a read-only access (calling get_case_structure) into a + writing access (updates of the cache). The writes lock the row in + the case_structure table which prevent other connections from + accessing the same case. As part of this, the delete triggers are + now AFTER triggers because the repeat groups instance must have + been removed when the structure is recomputed. + (SUBSELECT_TMPL): Since the delete trigger is now an after + trigger, we need to change the way the master id is computed. We + cannot join with the repeatgroup table in question because the row + has already been deleted. However, we can use the master_id + column of the OLD row to select the row of the parent table. + (create_triggers): Avoid the inner joins with the current repeat + group for the above mentioned reasons. In the very common case of + repeat groups which are direct children of the master_tbl, we can + compare the master_tbl.id directly with the row's master_id. + +2010-09-14 Roland Geider + + * formed/formed/plugins/export/xsd.py: issue1131: update XSD for new + formedtree structure + +2010-09-01 Roland Geider + + * formed/formed/plugins/modify/rules.py: issue1050: mandatory fields + appearing double. + The problem was that the way the formEditor handled fields with + manually created rules changed. Instead of ignoring fields (very + early behaviour) or always generating them (early behaviour), now the + formED will only ignore fields with rules which name starts with + 'required-rule-manual'. This is helpful when the rules for mandatory + fields are more complex (e.g. mother's name is only required if + mother is known). + +2010-08-10 Torsten Irländer + + * contrib/diff_formed.py: New helperscript to diff to given + formedtrees + +2010-08-09 Roland Geider + + * formed/model/exprtree.py: fixed typo + +2010-08-04 Bernhard Herzog + + * formed/po/de_DE.po: Update translations + +2010-08-04 Bernhard Herzog + + * formed/po/formed.pot: Regenerated. + + * formed/po/de_DE.po: Update. + +2010-08-04 Bernhard Herzog + + * formed/po/Makefile: Use correct filename of the pot-file in the + usage message + +2010-08-04 Bernhard Herzog + + * formed/po/Makefile (LIST_POTFILES): Sort the file names to make + the order of entries in the .pot-file more predictable. + +2010-08-04 Bernhard Herzog + + * formed/formed/model/nodecomponents.py (RootNode.__init__) + (RootNode.getVersion, RootNode.setVersion): Add attribute + "version" and accessor methods. + + * formed/formed/main.py (MainFrame.OnSetDocumentVersion): New. Let + the user set the document version. + (MainFrame._createMenuBar): Add menu item for OnSetDocumentVersion + +2010-08-02 Bernhard Herzog + + * formed/formed.py, formed/formed/io/document.py, + formed/formed/io/factories.py, formed/formed/io/parser.py, + formed/formed/model/data.py, formed/formed/model/event.py, + formed/formed/model/expr.py, formed/formed/model/exprtree.py, + formed/formed/model/memory.py, formed/formed/model/misc.py, + formed/formed/model/nodecomponents.py, + formed/formed/model/persistent.py: Fix coding declaration to be + acceptable to both python and Emacs. + +2010-07-29 Torsten Irländer + + * formed/formed/model/data.py: Added "invisible" attribute to + BoolLeafs. This can be used to hide options in choicelists. so the + user can not select the value in the user interface. But the db will + have this option so is ist still present in the db an can be used + * formed/formed/model/exprtree.py: Added "days" function. + +2010-07-26 Roland Geider + + * formed/formed/model/nodecomponents.py, + formed/formed/plugins/modify/rules.py: generated date rules take + into consideration repeat groups + +2010-07-21 Torsten Irländer + + Issue870 + + * formed/formed/plugins/modify/rules.py (descriptions): Do not collect + all headers to the referenced fields. Only list labels of the error + fields, which should be distinct enough. + + Issue851 + + * formed/formed/model/data.py + formed/formed/plugins/export/new_sql.py + formed/formed/plugins/web/view_renderer.py + formed/formed/io/document.py + formed/formed/config.py: Added Float-Field to Formed + +2010-06-11 Bernhard Herzog + + * formed/formed/plugins/export/rg_sql.py + (CREATE_DELETE_MASTER_TMPL): In create_master_tbl, call + create_master_ds to create the master tbl entry. This way we can + add SQL code that's specific to an MPuls instance to + create_master_ds and still have create_master_tbl use that new + code. This is useful for e.g. the JMD-Struktur part. + +2010-06-02 Roland Geider + + * formed/formed/plugins/modify/rules.py: make the names of generated + date-sequence-rules unique + +2010-06-02 Roland Geider + + * formed/plugins/export/xls.py: updated regular expression + +2010-05-17 Frank Koormann + + * formed/formed/plugins/export/latex.py: Improved section labeling. + + * formed/formed/plugins/export/xls.py: + Export references (ie where are the lists used). + +2010-04-30 Torsten Irländer + + * formed/formed/plugins/modify/rules.py (VariableType.substitute): Do + not generate "%"-rules for required fields in repeat-groups. + +2010-04-28 Roland Geider + + * formed/plugins/export/xls.py: Radiogroups are exported + * formed/plugins/export/xsd.py: WASKA formedtree.xml validates XSD + JMD formedtree.xml validates XSD + +2010-04-08 Torsten Irländer + + * formed/formed/plugins/modify/rules.py + (GenerateRequiredRules.generateDateSequenceRules): Add error mark to + rules. Generete each rule twice to be able to render errors at both + datefields. + +2010-04-07 Torsten Irländer + + * formed/formed/plugins/export/rg_sql.py: Added "Revision"-Tag. + 2010-04-06 Torsten Irländer * formed/formed/io/document.py (_toXML): Added comment with @@ -5,6 +320,7 @@ * formed/formed/plugins/export/new_sql.py (ExportAsSQLFilter.doExport): Added comment with "$Revision"-tag. This tag will/can then be substituted by the VCS. + * formed/formed/model/exprtree.py: Added years operator. 2010-03-30 Roland Geider