コード例 #1
0
ファイル: Monedero.py プロジェクト: mymundo/oo_mymundo
    def genPersonalTrans(self, revert=False):
        res = True
        if (not revert):
            for row in self.Detail:
                ptrans = PersonalTrans()
                ptrans.defaults()
                ptrans.TransDate = row.Date
                ptrans.TransTime = row.Time
                ptrans.Type = ptrans.EXPENSE
                ptrans.OriginType = 9001
                ptrans.OriginNr = self.SerNr
                from Wallet import Wallet
                wal = Wallet.bring(self.Wallet)
                if (wal):
                    ptrans.Person = wal.Owner
                ptrans.Description = "Viaje en Subte - %s" %(row.Station)
                crow = PersonalTransConceptRow()
                crow.Concept = "TRANSP"
                crow.pasteConcept(ptrans)
                crow.Qty = 1
                crow.Price = 1.10
                crow.pastePrice(ptrans)

                ptrans.Concepts.append(crow)

                prow = PersonalTransPaymentRow()
                prow.Wallet = self.Wallet
                prow.pasteWallet(ptrans)
                prow.Amount = 1.10

                ptrans.Payments.append(prow)
                ptrans.Status = 1
                ptrans.sumUp()
                res = ptrans.save()
                if (not res): return res
        else:
            pquery = Query()
            pquery.sql  = "SELECT PT.SerNr FROM PersonalTrans PT "
            pquery.sql += "WHERE?AND PT.OriginType = i|%s| AND PT.OriginNr = i|%s| "%(9001,self.SerNr)

            if (pquery.open()):
                for prow in pquery:
                    ptrans = PersonalTrans.bring(prow.SerNr)
                    if (ptrans):
                        res = ptrans.forceDelete()
                        if (not res): return res
                    else:
                        message("No se encuentra registro")
        return res
コード例 #2
0
ファイル: WalletStatus.py プロジェクト: mymundo/oo_mymundo
 def genPersonalTrans(self, param, value):
     record = self.getRecord()
     from Wallet import Wallet
     wall = Wallet.bring(param)
     if (wall):
         from PersonalTrans import PersonalTrans, PersonalTransPaymentRow
         ptrans = PersonalTrans()
         ptrans.defaults()
         ptrans.TransDate = today()
         ptrans.Person = wall.Owner
         paymentrow = PersonalTransPaymentRow()
         paymentrow.Wallet = wall.Code
         paymentrow.pasteWallet(ptrans)
         ptrans.Payments.append(paymentrow)
         openWindow(ptrans)
コード例 #3
0
    def run(self):
        record = self.getRecord()

        ofile = open(record.Filename,"r")
        flines = ofile.readlines()
        for ln in range(12,len(flines)):
            cline = flines[ln]
            col1 = (0,10)
            col2 = (16,71)
            col3 = (71,84)
            col4 = (84,105)
            col5 = (105,128)
            transdate = stringToDate(cline[col1[0]:col1[1]])
            if (transdate >= record.FromDate and transdate <= record.ToDate):
                #comment = cline[16:114].strip()
                #debit = float(cline[114:130].replace(".","").replace(",","."))
                #credit = float(cline[131:154].replace(".","").replace(",","."))
                
                comment = cline[col2[0]:col2[1]].strip()
                debit = float(cline[col3[0]:col3[1]].replace(".","").replace(",","."))
                credit = float(cline[col4[0]:col4[1]].replace(".","").replace(",","."))
                
                print transdate,comment,debit,credit

                from PersonalTrans import PersonalTrans, PersonalTransConceptRow, PersonalTransPaymentRow
                ptrans = PersonalTrans()
                ptrans.defaults()
                ptrans.TransDate = transdate
                ptrans.Description = comment
                if (debit > 0):
                    ptrans.Type = ptrans.EXPENSE
                    amount = debit
                else:
                    ptrans.Type = ptrans.INCOME
                    amount = credit
                if ("EXTRACCION POR CAJEROS AUTOMATICOS" in comment):
                    ptrans.Type = ptrans.TRANSFERENCE
                
                ptrans.SupCode = "0004"
                ptrans.pasteSupCode()
                from Wallet import Wallet
                person = Wallet.bring(record.Wallet).Owner
                ptrans.Person = person
                
                drow = PersonalTransConceptRow()
                drow.Concept = "VARIOS"
                drow.pasteConcept(ptrans)
                drow.Qty = 1
                drow.Price = amount
                drow.pastePrice(ptrans)

                ptrans.Concepts.append(drow)

                prow = PersonalTransPaymentRow()
                prow.Wallet = record.Wallet
                prow.pasteWallet(ptrans)
                prow.Amount = amount

                ptrans.Payments.append(prow)

                ptrans.sumUp()
                res = ptrans.save()
                if (not res): 
                    message(res)
                else:
                    commit()