コード例 #1
0
ファイル: trnview.py プロジェクト: manuel-koch/accounting
    def getFilter(self):
        try:
            value = str(self._valueText.text()).strip()
            if value:
                value = to_decimal(value)
            else:
                value = None
        except:
            value = None
        descr = str(self._descrText.text()).strip()

        today = datetime.date.today()
        filter_ = CombinedFilter()

        if value is not None:
            filter_ = filter_ & FilterEqualValue(value)

        if descr:
            regexp = re.compile(re.escape(descr), re.IGNORECASE)
            filter_ = filter_ & FilterRegexpDescr(regexp)

        if self._rangeCombo.currentText() == self.DATE_RANGE_CURR_MONTH:
            start_ts = dateutils.startofmonth(today)
            filter_ = filter_ & FilterGreaterOrEqualDate(start_ts)
        elif self._rangeCombo.currentText() == self.DATE_RANGE_LAST_90_DAYS:
            start_ts = today - datetime.timedelta(days=90)
            filter_ = filter_ & FilterGreaterOrEqualDate(start_ts)
        elif self._rangeCombo.currentText() == self.DATE_RANGE_CURR_YEAR:
            start_ts = dateutils.startofyear(today)
            filter_ = filter_ & FilterGreaterOrEqualDate(start_ts)

        return filter_
コード例 #2
0
ファイル: core.py プロジェクト: manuel-koch/accounting
 def setValue(self, val):
     val = to_decimal(val)
     if val != self._value:
         self._value = val
         return True
     else:
         return False
コード例 #3
0
ファイル: base.py プロジェクト: manuel-koch/accounting
 def decimal_from_string(s, localename=""):
     """Return Decimal value converted from given string.
     Using selected named locale ( i.e. de_DE, en_US ) to parse value."""
     try:
         if not localename:
             localename = locale.getlocale()
         return to_decimal(babel.numbers.parse_decimal(s, localename))
     except:
         LOGGER.exception("Failed to convert to decimal")
         raise ValueException("Unknown value format:" + s)
コード例 #4
0
ファイル: core.py プロジェクト: manuel-koch/accounting
 def parseFromXml(elem, transaction):
     for itemElem in elem.xpath("item"):
         v = to_decimal(itemElem.get("value"))
         d = itemElem.get("descr")
         c = itemElem.get("confirmed")
         item = Item(value=v, descr=d, confirmed=c)
         transaction += item
         a = itemElem.get("account")
         if not a in transaction.db:
             raise UnknownAccountException(a)
         account = transaction.db[a]
         account += item
コード例 #5
0
ファイル: core.py プロジェクト: manuel-koch/accounting
 def setDebit(self, val):
     return self.setValue(-to_decimal(val))
コード例 #6
0
ファイル: core.py プロジェクト: manuel-koch/accounting
 def setAsset(self, val):
     return self.setValue(to_decimal(val))