:date: 2017-08-25 ======================= Friday, August 25, 2017 ======================= "Your Reference" vs "External Reference" ======================================== It took me more than three hours to fix that stupid failure which I discovered yesterday in the welfare test suite. It was just a problem with string translation, not in the Lino kernel. The :class:`lino_xl.lib.finan.FinancialVoucherItem` mixin defines a field named `remark` whose `verbose_name` was "External reference". And that string was being translated to German (a) by "Ihr Zeichen" in XL and (b) by "Externe Referenz" in Welfare. Now it is "Your reference" (Ihr Zeichen) in XL and "External reference" (Externe Referenz) in Welfare. It's understandable that Lino didn't work as expected. Missing help_text for Client.has_esf ==================================== Another failure was in :ref:`welfare.specs.esf`:: $ go welfare $ python setup.py test -s tests.SpecsTests.test_esf ... File ".../welfare/docs/specs/esf.rst", line 237, in esf.rst Failed example: show_fields(rt.models.pcsw.Client, 'has_esf') Expected: =============== ============== ========================================================= Internal name Verbose name Help text --------------- -------------- --------------------------------------------------------- has_esf ESF data Whether Lino should make ESF summaries for this client. =============== ============== ========================================================= Got: =============== ============== =========== Internal name Verbose name Help text --------------- -------------- ----------- has_esf ESF data =============== ============== =========== This one was simply caused by ticket :ticket:`2016`. I had to run `inv clean` and `inv bd` because the Welfare :xfile:`help_exts.py` files on my machine had not yet been re-generated with the new simplified keys. You need to run `inv clean bd` in all related projects for this. Advancing in Avanti =================== I finally found time and worked on a series of tickets for :ref:`avanti` project. Here is (in German) the list of requested changes: - Anmahnungen : wenn ein Klient 2x unentschuldigt oder mehr als 10% der Gesamtstundenzahl gefehlt hat, dann soll Lino dem Begleiter das mitteilen. Es muss auch einen Workflow geben, wo der Begleiter notiert, was er mit dem Klient besprochen hat. Wenn die Abmahnung erledigt ist (z.B. durch ein Telefongespräch), dann sollte Lino für eine gewisse Zeitlang Ruhe geben (also nicht z.B: schon bei einer einzigen weiteren Abwesenheit wieder Alarm schlagen). Pro Klient sollte Lino eine Liste aller Anmahnungen zeigen. Wie ich das genau implementiere, muss ich mir noch überlegen. Wahrscheinlich zwei Tabellen "Abmahnungen" und "Mahngrade" sowie eine scheduled background task. - Einschreibe-Optionen : pro Einschreibung muss es 4 neue Ankreuzfelder geben "Kinderbetreuung", "Schulzeiten", "Auf Bus angewiesen", "Abendkurs". Momentan werden diese Infos als Bemerkung erfasst, aber dann lässt sich das nicht weiterverwerten. Neue choicelist EnrolmentOptions (also wenn irgendwann noch weitere Optionen hinzu kommen, lässt sich das über Nacht leicht erledigen) - Übersichtsliste "Kursplanung" : Liste aller Kurse im Status "Entwurf", gruppiert pro Gemeinde, mit diversen Angaben : Anzahl Kandidaten (Männlich, Weiblich, insgesamt sowie pro Einschreibe-Option ventiliert). Diese Liste sollte ausdruckbar sein und per E-Mail ans Konsortium geschickt werden können. - Lino meint "Kann Befragung nicht löschen, weil x Answers darauf verweisen" --> Antworten sollen natürlich automatisch mit ihrer Befragung gelöscht werden. Dieser Bug stört, weil wir deshalb die Fake-Klienten nicht löschen können. A side effect: - :class:`checkdata.CheckdataUser` inherits just from UserRole, not from SiteUser because it caused an unresolved MRO when adding this role to :mod:`lino_avanti.lib.avanti.user_types`.