示例#1
0
文件: entrada.py 项目: uelei/pbpython
 def removeproduto(self,widget):
    auxae = self.edcsellista.get_text()
    codpre= auxae.split('_')
    codpr=codpre[0]
    gradpr=codpre[1]
    numvenda = self.ednumerovenda.get_text()
    selcv = con.cursor()
    # seleciona a venda 
    selcv.execute("SELECT * FROM tb_cv WHERE cv='"+numvenda+"'")
    npcv=int(selcv.rowcount)
    if npcv < 1:
       print "erro de logica venda nao existe"
    else :
       lcv = selcv.fetchone()
       cvvtc= lcv[3] #cv total de custo 
       cvvtv= lcv[4] #cv total de venda 
       selpv=con.cursor() 
       # seleciona o produto 
       selpv.execute("SELECT * FROM tb_mov_merc WHERE n_not_int='"+numvenda+"' AND cod_prod='"+codpr+"' AND grade_sel='"+gradpr+"' ")
       npv = int(selpv.rowcount)
       if npv == 1 :
             #existe produto a deletar 
             linvenda = selpv.fetchone()
             pc_sa= linvenda[6] # preco subtotal custo do produto
             pv_sa= linvenda[7] # preco subtotal venda do produto
             itbmovmerc = linvenda[0] # i do produto na tabela tb_mov_merc
             rem=con.cursor()
             rem.execute("DELETE FROM tb_mov_merc WHERE i='"+str(itbmovmerc)+"' LIMIT 1") # deleta registro 
             upcv=con.cursor()
             cvvtc_stc = cvvtc - pc_sa
             cvvtv_stv = cvvtv - pv_sa 
             # atualiza valores totais da venda               
             upcv.execute("UPDATE tb_cv SET vtc='"+str(cvvtc_stc)+"',vtv='"+str(cvvtv_stv)+"' WHERE cv='"+numvenda+"' ")
             self.listarprodutosvendidos()
             print "produto "+ codpr+ " foi removido !"
示例#2
0
文件: pgconta.py 项目: uelei/pbpython
   def gravar(self,widget):
            
      strr= self.edvalor.get_text()
      sr= strr.replace(",",".")
      srt= sr.replace("'","")
      valor= srt.replace('"',"")
      self.edvalor.set_text(valor)
      da = self.dataget()
      nw=datetime.now()
      no=str(nw)
      nn = no[11:]
      nnn = nn[:8]
      d = str(da)+ " " + nnn 
      icx = con.cursor()
      dw = self.var.get_text()
      valo = float(valor) * float(dw)
      icx.execute("INSERT INTO tb_ctrl_cx (`icx`, `cod_des`, `cod_pg`, `valor`, `cod_for`, `data`, `defe`,`cod_tp_conta`,`cond`,`nundoc`) VALUES (NULL, '"+self.edcconta.get_text()+"', '"+self.edccx.get_text()+"', '"+str(valo)+"', '"+self.edcforn.get_text()+"', '"+str(d)+"','"+str(d)+"','"+self.edctpg.get_text()+"','"+self.edcond.get_text()+"','"+self.edndoc.get_text()+"');")
      nid =  int(con.insert_id())
      print "conta adicionada ! " +str(nid)
      if self.edcconta.get_text() == "29" :
         print "transferencia "
         val = valo * -1
         icxx = con.cursor()
         icxx.execute("INSERT INTO tb_ctrl_cx (`icx`, `cod_des`, `cod_pg`, `valor`, `cod_for`, `data`, `defe`,`cod_tp_conta`,`cond`,`nundoc`) VALUES (NULL, '"+self.edcconta.get_text()+"', '"+self.eddcx.get_text()+"', '"+str(val)+"', '"+self.edcforn.get_text()+"', '"+str(d)+"','"+str(d)+"','"+self.edctpg.get_text()+"','"+self.edcond.get_text()+"','"+self.edndoc.get_text()+"');")

      self.edcconta.set_text('1')
      self.edccx.set_text('1')
      self.edvalor.set_text('')
      self.edcforn.set_text('')
      self.cbcaixa.set_active(0)
      self.cbconta.set_active(0)
      self.cbconta.grab_focus()
示例#3
0
文件: entrada.py 项目: uelei/pbpython
   def novavenda(self,widget):
      if self.ednumvendedor.get_text() !="": 
         numvendedor=self.ednumvendedor.get_text()
         try: 
            nuv= int(numvendedor)
         except:
            print "numero do vendedor invalido (letra)"
         else: 
            #n=0
            selvendedor = con.cursor()
            codv=self.ednumvendedor.get_text()
            selvendedor.execute("SELECT * FROM vendedores WHERE codv='"+codv+"'")
            numlinhas = int(selvendedor.rowcount)
            if numlinhas ==1:
               #print "vendedor valido "

               crianovavenda= con.cursor()
               data= self.dataget()
               nw=datetime.now()
               no=str(nw)
               nn = no[11:]
               nnn = nn[:8]
               dat = str(data)+ " " + nnn    
               now=no[:19]
               crianovavenda.execute("INSERT INTO tb_cv (cv,data,vend,vtc,vtv,dpg,aux,n_not_ext,now,cod_mov,v_des) VALUES (NULL,'"+dat+"','"+codv+"','0','0','0','0','0','"+str(now)+"','"+str(self.codmov.get_text())+"','0')")  
               nuv =  int(con.insert_id())
               con.commit()
               #nuv= str(numerovenda)
               nuv = str(nuv)
               self.ednumerovenda.set_text(nuv)
               print "nova venda criada com suscesso !"+nuv
               self.ednumvendedor.set_sensitive(False) 
               self.btnovavend.set_sensitive(False)
               self.eddata.set_sensitive(False)
               self.ednumerovenda.set_sensitive(False)
               self.btsair.set_sensitive(False)
               self.labelcod.set_sensitive(True)
               self.labelqtd.set_sensitive(True)
               self.edcod.set_sensitive(True)
               self.edqtd.set_sensitive(True)
               self.labelpreco.set_sensitive(True)
               self.edpreco.set_sensitive(True)
               self.btinseri.set_sensitive(True)
               #self.labeldescp.set_sensitive(True)
               self.eddescp.set_sensitive(True)
               self.listaprodutosvendidos.set_sensitive(True)
               self.labeltotal.set_sensitive(True)
               self.edtotal.set_sensitive(True)
               self.btfinalizar.set_sensitive(True)
               self.listarprodutosvendidos()
               self.cbfp.set_active(0)



            else:
               print "vendedor inexistente "

      else:
         print "numero de vendedor vazio ! "     
示例#4
0
   def cbconta_sel(self,widget):
         selpro=con.cursor()
         cbg= self.cbconta.get_active_text()
         ns= str(cbg)
         selpro.execute("SELECT * FROM tb_desmov WHERE descricaodes='"+ns+"'")	
         numlinhas = int(selpro.rowcount)
         if numlinhas ==1:
            linp = selpro.fetchone()
            codmovv=  linp[0]   
            vv = linp[2]
            self.edcconta.set_text(str(codmovv))
            self.var.set_text(str(vv))
            if codmovv == 29 :
               self.cbdcx.set_sensitive(True)
            else :
               self.cbdcx.set_sensitive(False)


            if codmovv == 10 :
               self.cbforn.set_sensitive(True)
               self.lforn(self)
               self.edcforn.set_text('')
            else :
                self.edcforn.set_text('-')
                while self.nfor >= 0 :
                   
                   self.cbforn.remove_text(0)
                   self.nfor = self.nfor -1                     
示例#5
0
文件: apagar.py 项目: uelei/pbpython
   def editar(self,widget):

      strr= self.edvar.get_text()
      sr= strr.replace(",",".")
      srt= sr.replace("'","")
      valr= srt.replace('"',"")
      valor = float(valr) * -1
      datasel = self.dataget()
      #print datasel
      dataatual = self.dtget()
      nw=datetime.now()
      no=str(nw)
      nn = no[11:]
      nnn = nn[:8]
      dat = str(datasel)+ " " + nnn 
      dattu = str(dataatual)+" "+nnn 
      uppg = con.cursor()
      uppg.execute("UPDATE tb_ctrl_cx SET `cod_pg` = '0',cod_tp_conta='"+self.edtpc.get_text()+"',cond='"+self.edcond.get_text()+"',nundoc='"+self.edndoc.get_text()+"',defe='',valor='"+str(valr)+"' WHERE icx ='"+self.coddp.get_text()+"' LIMIT 1 ;")
      self.atualcx(self)
      self.coddp.set_text('')
      #self.listadp(self)
      self.edvar.set_text('')
      self.edconta.set_text('')
      self.edforn.set_text('')
      self.edtpc.set_text('')
      self.edpg.set_text('')
      self.edcond.set_text('')
      self.edndoc.set_text('')
      self.edpg.set_text('')
      self.btpagar.set_sensitive(False)
示例#6
0
   def exibegrade(self,strr):
      codprod = strr
      lgrad=con.cursor()
      #print "codifo = " + codprod
      lgrad.execute("SELECT * FROM tb_grad WHERE codprod='"+codprod+"'")
      npg = int(lgrad.rowcount)
      #print "npg = " + str(npg) 
      if npg > 0: 
         ##self.bb
         pgr = lgrad.fetchall()
         for pg in pgr:
            #self.cbgrad.append_text("---")
            tex= str(pg[3]) + " = " + str(pg[2])
            self.cbgrad.append_text(tex) 
            
            #print pg[3] 
             

      else: 
         #  print "nao tem grade"
         self.cbgrad.remove_text(0)
         self.cbgrad.remove_text(0)
         self.cbgrad.remove_text(0)
         self.cbgrad.remove_text(0)
         self.cbgrad.remove_text(0)
         self.cbgrad.remove_text(0)
         self.cbgrad.remove_text(0)
         self.cbgrad.remove_text(0)
         self.cbgrad.remove_text(0)
         self.cbgrad.remove_text(0)
         self.cbgrad.remove_text(0)
         self.cbgrad.remove_text(0)
         self.edgrad.set_text(" ")
示例#7
0
文件: prod.py 项目: uelei/pbpython
   def newproduto (self,widget):

       luprod=con.cursor()
       luprod.execute("SELECT * FROM pbestoreal ORDER BY `codigo` DESC")
       lluprod = luprod.fetchone()
       #print str(lluprod[0])
       ult= int(lluprod[0])+1
       iprod = con.cursor()
       iprod.execute("INSERT INTO pbestoreal(`codigo` ,`codbarras` ,`descricaop` ,`fornecedorp` ,`undp` ,`precov` ,`custoc` ,`qtdautalest` ,`qestlj1` ,`qestl2` ,`qestlj3` ,`qmin` ,`creal` ,`nc` ,`grade` ,`class`)VALUES ('"+str(ult)+"', 'cod', 'descricao', '', 'und', '0.00', '0.00', '0.00', '0.00', '0.00', '0.00', '0','0.00', '', '', '');")
       lprod=con.cursor()
       strprocurado = str(ult)
       self.exibeproduto(strprocurado)

       self.btfind.set_sensitive(False)
       self.procproduto.set_text(str(ult))
       self.procproduto.set_sensitive(False)
       self.btnewprod.set_sensitive(False)
       self.editc("1")
示例#8
0
 def cbforn_sel(self,widget):
       selpro=con.cursor()
       cbg= self.cbforn.get_active_text()
       ns= str(cbg)
       selpro.execute("SELECT * FROM tb_forn WHERE nome='"+ns+"'")	
       numlinhas = int(selpro.rowcount)
       if numlinhas ==1:
          linp = selpro.fetchone()
          codmovv=  linp[0]   
          self.edcforn.set_text(str(codmovv))
示例#9
0
 def cbtpg_sel(self,widget):
       selpro=con.cursor()
       cbg= self.cbtpg.get_active_text()
       ns= str(cbg)
       selpro.execute("SELECT * FROM tb_tp_conta WHERE des_tp_conta='"+ns+"'")	
       numlinhas = int(selpro.rowcount)
       if numlinhas ==1:
          linp = selpro.fetchone()
          codmovv=  linp[0]   
          self.edctpg.set_text(str(codmovv))
示例#10
0
 def cbcxc_sel(self,widget):
       selpro=con.cursor()
       cbg= self.cbdcx.get_active_text()
       ns= str(cbg)
       selpro.execute("SELECT * FROM tb_caixas WHERE des_cx='"+ns+"'")	
       numlinhas = int(selpro.rowcount)
       if numlinhas ==1:
          linp = selpro.fetchone()
          codmovv=  linp[0]   
          self.eddcx.set_text(str(codmovv))
示例#11
0
文件: entrada.py 项目: uelei/pbpython
 def listarprodutosvendidos(self):
    ncolunas = self.listaprodutosvendidos.get_columns()
    for col in ncolunas:
       self.listaprodutosvendidos.remove_column(col)  
    self.tipodetabelavenda = gtk.ListStore(str,str,str,str,str,str,str)
    self.listaprodutosvendidos.set_model(self.tipodetabelavenda)
    self.listaprodutosvendidos.append_column(gtk.TreeViewColumn("codigo",gtk.CellRendererText(), text=0))
    self.listaprodutosvendidos.append_column(gtk.TreeViewColumn("cod barras",gtk.CellRendererText(), text=1))
    self.listaprodutosvendidos.append_column(gtk.TreeViewColumn("descricao",gtk.CellRendererText(), text=2))      
    self.listaprodutosvendidos.append_column(gtk.TreeViewColumn("quantidade",gtk.CellRendererText(), text=3))      
    self.listaprodutosvendidos.append_column(gtk.TreeViewColumn("preco",gtk.CellRendererText(), text=4))      
    self.listaprodutosvendidos.append_column(gtk.TreeViewColumn("subtotal",gtk.CellRendererText(), text=5))
    self.listaprodutosvendidos.append_column(gtk.TreeViewColumn("grade",gtk.CellRendererText(), text=6))
    selnumv =con.cursor()
    numvenda = self.ednumerovenda.get_text()
    
    selnumv.execute("SELECT * FROM tb_cv WHERE cv='"+numvenda+"'")
    lin = selnumv.fetchone()
    self.edtotal.set_text(str(lin[4]))
    self.totalreal = float(lin[4])
    
    selpvendidos=con.cursor()
    selpvendidos.execute("SELECT * FROM tb_mov_merc WHERE n_not_int='"+numvenda+"'")
    pvend = selpvendidos.fetchall()
    it =0
    self.cppp ={}
   
    for pdv in pvend:
       selpro=con.cursor()
       selpro.execute("SELECT * FROM pbestoreal WHERE codigo='"+str(pdv[2])+"'")	
       linp = selpro.fetchone()
       dp = linp[2]
       cb=linp[1]
       self.cppp[it]= str(pdv[2])+ "_" + pdv[8]
       it +=1
       self.tipodetabelavenda.append([pdv[2],cb,dp,pdv[3],pdv[5],pdv[7],pdv[8]])
    self.edcod.set_text('')
    self.edqtd.set_text("1")
    self.eddescp.set_text('')
    self.edpreco.set_text('')
    self.edcod.grab_focus()
示例#12
0
文件: prod.py 项目: uelei/pbpython
  def exibeproduto (self,strp):
     
     lprod=con.cursor()
     strprocurado = strp
     lprod.execute("SELECT * FROM pbestoreal WHERE codbarras='"+strprocurado+"'")
     npe = int(lprod.rowcount)
     if npe ==1:
        
        llprod = lprod.fetchone()  
        self.eddescprod.set_text(str(llprod[2]))
        self.edcod.set_text(str(llprod[1]))
        self.edun.set_text(str(llprod[4]))
        self.edqt.set_text(str(llprod[8]))
        self.edpv.set_text(str(llprod[5]))
        self.edpc.set_text(str(llprod[12]))
        self.edqtrc.set_text(str(llprod[7]))
        self.edcrent.set_text(str(llprod[6]))
        self.edcodp.set_text(str(llprod[0]))
        self.claa.set_text(str(llprod[15]))
        f=float(str(llprod[13]))/ 100
        self.barra.set_fraction(f)
        self.codp = str(llprod[0])
        self.at= (int(llprod[13])/10) 
        self.cnc.set_active(self.at) 
     else: 
        lprod.execute("SELECT * FROM pbestoreal WHERE codigo='"+strprocurado+"'")
        npee = int(lprod.rowcount)
        if npee ==1:
                   llprod = lprod.fetchone()
    		    self.eddescprod.set_text(str(llprod[2]))
   		    self.edcod.set_text(str(llprod[1]))
   		    self.edun.set_text(str(llprod[4]))
 		    self.edqt.set_text(str(llprod[8]))
 		    self.edpv.set_text(str(llprod[5]))
 		    self.edpc.set_text(str(llprod[12]))
                   self.edqtrc.set_text(str(llprod[7]))
                   self.edcrent.set_text(str(llprod[6]))
                   self.edcodp.set_text(str(llprod[0]))
                   self.claa.set_text(str(llprod[15]))
                   f=float(str(llprod[13]))/ 100
                   self.barra.set_fraction(f)
                   self.codp = str(llprod[0])
                   self.at= (int(llprod[13])/10)
                   self.cnc.set_active(self.at) 
     self.exibegrade(str(self.codp))
     
    #print f
     coa = open('consulta.t','r')
     co = coa.read()
     if co == "1":
        
        self.btedit.set_sensitive(False)	
        self.btatual.set_sensitive(False)
示例#13
0
   def gravar(self,widget):
      if self.chch.get_active() == False:
         self.nchegou ="nao"
      else :
         self.nchegou=""
 


      strr= self.edvalor.get_text()
      sr= strr.replace(",",".")
      srt= sr.replace("'","")
      valor= srt.replace('"',"")
      self.edvalor.set_text(valor)
      da = self.dataget()
      nw=datetime.now()
      no=str(nw)
      nn = no[11:]
      nnn = nn[:8]
      d = str(da)+ " " + nnn 
      icx = con.cursor()
      dw = self.var.get_text()
      valo = float(valor) #* float(dw)
      icx.execute("INSERT INTO tb_ctrl_cx (`icx`, `cod_des`, `cod_pg`, `valor`, `cod_for`, `data`, `defe`,`cod_tp_conta`,`cond`,`nundoc`) VALUES (NULL, '"+self.edcconta.get_text()+"', '0', '"+str(valo)+"', '"+self.edcforn.get_text()+"', '"+str(d)+"','"+str(self.nchegou)+"','"+self.edctpg.get_text()+"','"+self.edcond.get_text()+"','"+self.edndoc.get_text()+"');")
      print "conta adicionada ! "
      if self.edcconta.get_text() == "29" :
         print "nao pode ser agendado "
         #val = valo * -1
         #icxx = con.cursor()
         #icxx.execute("INSERT INTO tb_ctrl_cx (`icx`, `cod_des`, `cod_pg`, `valor`, `cod_for`, `data`, `defe`,`cod_tp_conta`,`cond`,`nundoc`) VALUES (NULL, '"+self.edcconta.get_text()+"', '"+self.eddcx.get_text()+"', '"+str(val)+"', '"+self.edcforn.get_text()+"', '"+str(d)+"','','"+self.edctpg.get_text()+"','"+self.edcond.get_text()+"','"+self.edndoc.get_text()+"');")
      dt = self.dataget()
      print dt
      dtt = dt.split('-')
      an= dtt[0]
      m= int(dtt[1]) + 1
      if m > 12 :
         m = m -12 

         an = str(int(dtt[0])+1)
      dd=dtt[2]
      m = "0"+ str(m)
      m = m[-2:]
      date = str(dd) +'/'+ str(m)+'/'+str(an)
      self.eddata.set_text(date)
      edco = self.edcond.get_text()
      edd = edco.split("/")
      eddo = int(edd[0]) + 1 
      edcf = str(eddo) + "/"+ edd[1]
      self.edcond.set_text(edcf)
      self.cbforn.set_sensitive(False)
      self.btnovo.set_sensitive(True)
      self.edvalor.grab_focus()
      self.cbconta.set_sensitive(False)
      self.cbcaixa.set_sensitive(False)
示例#14
0
 def criacbdesmov(self,widget):
    ltbdesmov=con.cursor()
    #print "codifo = " + codprod
    ltbdesmov.execute("SELECT * FROM tb_desmov ORDER BY descricaodes ASC ")
    npg = int(ltbdesmov.rowcount)
    #print "npg = " + str(npg) 
    if npg > 0: 
       pgr = ltbdesmov.fetchall()
       for pg in pgr:
          tex= str(pg[1])
          self.cbconta.append_text(tex) 
    else: 
       #  print "nao tem grade"
       self.cbconta.remove_text(0)
示例#15
0
文件: prod.py 项目: uelei/pbpython
   def exibegrade(self,strr):
      codprod = strr
      self.cbgrad.remove_text(0)
      self.cbgrad.remove_text(0)
      self.cbgrad.remove_text(0)
      self.cbgrad.remove_text(0)
      self.cbgrad.remove_text(0)
      self.cbgrad.remove_text(0)
      self.cbgrad.remove_text(0)
      self.cbgrad.remove_text(0)
      self.cbgrad.remove_text(0)
      self.cbgrad.remove_text(0)
      self.cbgrad.remove_text(0)
      self.cbgrad.remove_text(0)
      lgrad=con.cursor()
      #print "codifo = " + codprod
      lgrad.execute("SELECT * FROM tb_grad WHERE codprod='"+codprod+"'")
      self.npg = int(lgrad.rowcount)
      #print "npg = " + str(npg)  
      ncolunas = self.tabelamov.get_columns()
      for col in ncolunas:
         self.tabelamov.remove_column(col) 
      if self.npg > 0: 
         ##self.bb
         #self.lgrade.set_sensitive(True)
         pgr = lgrad.fetchall()
         #self.edgrad.set_text(" ")
         
         for pg in pgr:
            #self.cbgrad.append_text("---")
            tex= str(pg[3]) + " = " + str(pg[2])
            self.cbgrad.append_text(tex) 
            
            #print pg[3] 
             

      else: 
         #  print "nao tem grade"
         self.cbgrad.remove_text(0)
         self.cbgrad.remove_text(0)
         self.cbgrad.remove_text(0)
         self.cbgrad.remove_text(0)
         self.cbgrad.remove_text(0)
         self.cbgrad.remove_text(0)
         self.cbgrad.remove_text(0)
         self.cbgrad.remove_text(0)
         self.cbgrad.remove_text(0)
         self.cbgrad.remove_text(0)
         self.cbgrad.remove_text(0)
         self.cbgrad.remove_text(0)
示例#16
0
 def grad_sel(self,widget):
       selpro=con.cursor()
       codpp= self.edci.get_text()
       cg= self.cbgrad.get_active_text()
       ns= str(cg)
       #print cg
       nl= ns.split(' = ')
       #print str(nl[0])
       selpro.execute("SELECT * FROM tb_grad WHERE codprod='"+str(codpp)+"' AND des_grade= '"+ str(nl[0])+ "'")	
       numlinhas = int(selpro.rowcount)
       if numlinhas ==1:
          linp = selpro.fetchone()
          cigrade=  linp[0]   
          self.edgrad.set_text(str(cigrade))
示例#17
0
文件: prod.py 项目: uelei/pbpython
   def mostrarmov(self,widget):
      ncolunas = self.tabelamov.get_columns()
      for col in ncolunas:
         self.tabelamov.remove_column(col)  


      self.modelo = gtk.ListStore(
            gobject.TYPE_UINT,
            gobject.TYPE_STRING,
            gobject.TYPE_STRING,
            gobject.TYPE_STRING,
            gobject.TYPE_STRING, 
            gobject.TYPE_STRING,
            gobject.TYPE_STRING,gobject.TYPE_STRING,gobject.TYPE_STRING,gobject.TYPE_STRING)
      ##self.modelo = gtk.TreeStore(str,str,str,str,str,str)
      self.tabelamov.set_model(self.modelo)
      self.tabelamov.append_column(gtk.TreeViewColumn("cod mov",gtk.CellRendererText(), text=0))
      self.tabelamov.append_column(gtk.TreeViewColumn("data",gtk.CellRendererText(), text=1))
      self.tabelamov.append_column(gtk.TreeViewColumn("n i",gtk.CellRendererText(), text=2))
      self.tabelamov.append_column(gtk.TreeViewColumn("movimento",gtk.CellRendererText(), text=3))
      self.tabelamov.append_column(gtk.TreeViewColumn("qtd",gtk.CellRendererText(), text=4))
      self.tabelamov.append_column(gtk.TreeViewColumn("grade",gtk.CellRendererText(), text=5))
      codp = self.edcodp.get_text()
      selpvendidos=con.cursor()
      selpvendidos.execute("SELECT * FROM tb_mov_merc WHERE cod_prod='"+codp+"' ORDER BY i DESC")
      pvend = selpvendidos.fetchall()
      for pdv in pvend :
         fundo = None
         cor =None
         corpr = None
         selmov =con.cursor()
         codmov  = str(pdv[9])
         selmov.execute("SELECT * FROM t_mov WHERE cit='"+codmov+"'")
         lin = selmov.fetchone()
         demov = str(lin[1])

         self.modelo.append([pdv[0],pdv[11],pdv[1],demov,pdv[3],pdv[8],'',cor,fundo,corpr])
示例#18
0
文件: prod.py 项目: uelei/pbpython
 def addgrad(self,widget):
    qtg= self.edqgrad.get_text()
    edtgd = self.edtgrad.get_text()
    if qtg > 0 and edtgd != "":
       igrd = con.cursor()
       igrd.execute("INSERT INTO tb_grad (`igrad`,`codprod`,`qta_grade`,`des_grade`)VALUES (NULL ,'"+str(self.codp)+"', '"+str(qtg)+"','"+str(edtgd)+"')")
       #print "gravando grade "
       self.edqgrad.set_text("1")
       self.edtgrad.set_text("")
       self.edqgrad.set_sensitive(False)
       self.edtgrad.set_sensitive(False)
       self.btrec.set_sensitive(False)
       self.btagrad.grab_focus()
       self.bgravarprod_clicked(self)
       #self.eddescprod.set_text(" ")
       #self.eddescprod.set_text(self.codp)
       self.exibegrade(str(1))
       self.exibegrade(str(self.codp))
示例#19
0
   def lcaixas(self,widget):
      lgrad=con.cursor()
      #print "codifo = " + codprod
      lgrad.execute("SELECT * FROM tb_caixas ")
      self.npg = int(lgrad.rowcount)
      #print "npg = " + str(npg) 
      if self.npg > 0: 

         pgr = lgrad.fetchall()
         #self.edgrad.set_text(" ")
         
         for pg in pgr:
            #self.cbconta.append_text("---")
            tex= str(pg[1])
            self.cbcaixa.append_text(tex) 
  
      else: 
         #  print "nao tem grade"
         self.cbcaixa.remove_text(0)
示例#20
0
文件: vendag.py 项目: uelei/pbpython
 def btnnclick(self,widget):
    if self.ednni.get_text()=="0":
       self.ednni.set_sensitive(True)
       self.ednni.grab_focus()
    else :
       self.ednni.set_sensitive(False)
       tnt = self.ednni.get_text()
       auxae = self.edcsellista.get_text()
       codpre= auxae.split('_')
       codpr=codpre[0]
       gradpr=codpre[1]
       numvenda = self.ednumerovenda.get_text() 
       
       selpv=con.cursor() 
       # update o produto 
       selpv.execute("UPDATE tb_mov_merc SET n_not_ext='"+str(tnt)+"',cod_mov='898' WHERE n_not_int='"+numvenda+"' AND cod_prod='"+codpr+"' AND grade_sel='"+gradpr+"' ")
       self.ednni.set_text("")
       self.listarprodutosvendidos()
       self.edcod.grab_focus()
示例#21
0
文件: prod.py 项目: uelei/pbpython
   def bgravarprod_clicked (self,widget):
      gaprod=con.cursor()
      descp=self.eddescprod.get_text()
      codp=self.edcod.get_text()
      unp= self.edun.get_text()
      qtp= self.edqt.get_text()
      pvp= self.edpv.get_text()
      pcp= self.edpc.get_text()
      qtr = self.edqtrc.get_text()
      ii=  self.procproduto.get_text()
      nc = self.cnc.get_active()
      ncc = int(float(nc)*10)
      #print ncc

      gaprod.execute("UPDATE pbestoreal SET codbarras='"+str(codp)+"',descricaop='"+str(descp)+"',undp='"+str(unp)+"',qtdautalest='"+str(qtr)+"',qestlj1='"+str(qtp)+"',precov='"+str(pvp)+"',creal='"+str(pcp)+"',nc='"+str(int(ncc))+"' WHERE codigo='"+str(ii)+"'")
      

      self.btfind.set_sensitive(True)
      self.procproduto.set_sensitive(True)
      if int(conteudo) == 1 :
         self.btnewprod.set_sensitive(True)
      self.btedit.set_sensitive(True)
      self.edun.set_sensitive(False)
      self.eddescprod.set_sensitive(False)
      self.edcod.set_sensitive(False)
      self.edqt.set_sensitive(False)
      self.edpv.set_sensitive(False)
      self.edpc.set_sensitive(False)
      self.btedit.set_sensitive(True)
      self.btagrad.set_sensitive(False)
      self.btgrava.set_sensitive(False)
      self.btrc.set_sensitive(False)
      self.edqtrc.set_sensitive(False)
      self.edqgrad.set_sensitive(False)
      self.edtgrad.set_sensitive(False)
      self.btrec.set_sensitive(False)
      self.cnc.set_sensitive(False)
      self.barra.set_sensitive(False)
示例#22
0
   def exibeproduto (self,strp):

      lprod=con.cursor()
      strprocurado = strp
      lprod.execute("SELECT * FROM pbestoreal WHERE codbarras='"+strprocurado+"'")
      npe = int(lprod.rowcount)
      if npe ==1:
         llprod = lprod.fetchone()  
         self.eddes.set_text(str(llprod[2]))
         self.edcod.set_text(str(llprod[0]))
         #self.edun.set_text(str(llprod[4]))
         #self.edqt.set_text(str(llprod[7]))
         #self.edpv.set_text(str(llprod[5]))
         self.edpc.set_text(str(llprod[12]))
         self.edci.set_text(str(llprod[0]))
         self.exibegrade(str(llprod[0]))
      else: 
         lprod.execute("SELECT * FROM pbestoreal WHERE codigo='"+strprocurado+"'")
         npee = int(lprod.rowcount)
         if npee ==1:
                    llprod = lprod.fetchone()
     		    self.eddes.set_text(str(llprod[2]))
    		    self.edcod.set_text(str(llprod[1]))
    		    #self.edun.set_text(str(llprod[4]))
  		    #self.edqt.set_text(str(llprod[7]))
  		    #self.edpv.set_text(str(llprod[5]))
  	 	    self.edpc.set_text(str(llprod[12]))
                    self.edci.set_text(str(llprod[0]))
                    self.exibegrade(str(llprod[0]))
         else : 
     		    self.eddes.set_text("")
    		    self.edcod.set_text("")
    		    #self.edun.set_text(str(llprod[4]))
  		    #self.edqt.set_text(str(llprod[7]))
  		    #self.edpv.set_text(str(llprod[5]))
  	 	    self.edpc.set_text("")
示例#23
0
文件: entrada.py 项目: uelei/pbpython
   def fechavenda(self,widget):
      numvenda = self.ednumerovenda.get_text()
      tota = self.edtota.get_text() 
      din = self.eddin.get_text()
      car = self.edcar.get_text()
      che = self.edche.get_text()
      fcar = float(car)
      ftota = float(tota)
      fdin = float(din)
      fche = float(che)
      t= fcar + fche + fdin
      data= self.dataget()
      nw=datetime.now()
      no=str(nw)
      nn = no[11:]
      nnn = nn[:8]
      dat = str(data)+ " " + nnn    
      now=no[:19]
      if t == ftota:
         data = self.caljanela.get_date()
         ms=data[1]+1
         mes="0"+str(ms)
         d=data[2]
         dia="0"+str(d)
         dt=str(dia[-2:])+"/"+str(mes[-2:])+"/"+str(data[0])
         #dt=str(data[0])+"-"+str(mes[-2:])+"-"+str(dia[-2:])
         '''if fdin != 0:
            insv = con.cursor()
            insv.execute("INSERT INTO tb_vendas (idcodv,codvend,valorv,fpag,datav,numop,cod_pg,datatime) VALUES (NULL,'"+self.ednumvendedor.get_text()+"','"+str(fdin)+"','dinheiro','"+dt+"','"+str(numvenda)+"','1','"+now+"')")
            print "dinheiro " + str(fdin)
         ddcar = self.cbfp.get_active()
         if ddcar == 0: 
            fccc=0
         if ddcar == 1: 
            fccc=2.45
         if ddcar == 2: 
            fccc=3.4
         if ddcar == 3: 
            fccc=4.4
         if ddcar == 4: 
            fccc=2.5
         if ddcar == 5: 
            fccc=3.5
         if ddcar == 6: 
            fccc=4.5
         if ddcar == 7: 
            fccc=0                     
         dcar = fcar*fccc/100
         if fcar !=0:
            insv = con.cursor()
            insv.execute("INSERT INTO tb_vendas (idcodv,codvend,valorv,fpag,datav,numop,cod_pg,datatime) VALUES (NULL,'"+self.ednumvendedor.get_text()+"','"+str(fcar)+"','cartao','"+dt+"','"+str(numvenda)+"','2-"+str(ddcar)+"','"+now+"')")
            print "cartao " + str(fcar)
         if fche !=0:
            insv = con.cursor()
            insv.execute("INSERT INTO tb_vendas (idcodv,codvend,valorv,fpag,datav,numop,cod_pg,datatime) VALUES (NULL,'"+self.ednumvendedor.get_text()+"','"+str(fche)+"','cheque','"+dt+"','"+str(numvenda)+"','3','"+now+"')")
            print "cheque " + str(fche)
         '''
         fevenda =con.cursor()
         if float(ftota) != float(self.totalreal):
                print "desconto final aplicado"
                vdeff = float(self.totalreal) - float(ftota) 
         else: 
                vdeff=0;
         #print "juros cartao = "+ str(dcar)
         # depois adicionas a contas a pagar 
         fcar =0
         fdin =0 
         fche = 0
         dcar =0
         if self.chnt.get_active() == True:#nota tirou
            
            
            upnot = con.cursor()
            upnot.execute("UPDATE tb_mov_merc SET cod_mov='777',n_not_ext='"+self.ednnt.get_text() +"' WHERE n_not_int='"+numvenda+"' ")
            fevenda.execute("UPDATE tb_cv SET vtv='"+str(ftota)+"',dpg='"+str(dcar)+"',aux='"+"d="+str(fdin)+"-c="+str(fcar)+"-h="+str(fche)+"',n_not_ext='"+self.ednnt.get_text()  +"',cod_mov='777',v_des='"+str(vdeff)+"',now='"+now+"' WHERE cv='"+numvenda+"'")
            inss=con.cursor()
            inss.execute("INSERT INTO `notasentrada` (`NUMERONF`, `SERIE`, `MODELO`, `VENDEDOR`, `FORNECEDOR`, `OPERACAO`, `EMISSAO`, `FRETE`, `SEGURO`, `DESPESAS`, `VOLUMES`, `ESPECIE`, `MARCA`, `TRANSPORTA`, `FRETE12`, `SAIDAH`, `SAIDAD`, `DUPLICATAS`, `BASEICM`, `ICMS`, `ICMSSUBSTI`, `BASESUBSTI`, `ALIQUOTA`, `ISS`, `IPI`, `TOTAL`, `MERCADORIA`, `COMPLEMEN1`, `COMPLEMEN2`, `COMPLEMEN3`, `COMPLEMEN4`, `EMITIDA`, `SERVICOS`, `DESCRICAO1`, `DESCRICAO2`, `DESCRICAO3`, `PESOBRUTO`, `PESOLIQUI`, `DESCPROD`, `CODIGOBASE`) VALUES ('"+self.ednnt.get_text()+"', ' ', ' ', ' ', 'ffornecedor', 'Compra para comercialização', '"+self.dataget()+"', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '', '"+str(ftota)+"', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '', ' ', ' ', ' ');")


         else :
            fevenda.execute("UPDATE tb_cv SET vtv='"+str(ftota)+"',dpg='"+str(dcar)+"',aux='"+"d="+str(fdin)+"-c="+str(fcar)+"-h="+str(fche)+"',n_not_ext='"+self.ednnt.get_text()  +"',v_des='"+str(vdeff)+"',now='"+now+"' WHERE cv='"+numvenda+"'")


         ncolunas = self.listaprodutosvendidos.get_columns()
         for col in ncolunas:
            self.listaprodutosvendidos.remove_column(col)  
         self.tipodetabelavenda = gtk.ListStore(str,str,str,str,str,str,str)
         self.listaprodutosvendidos.set_model(self.tipodetabelavenda)
         self.listaprodutosvendidos.append_column(gtk.TreeViewColumn("codigo",gtk.CellRendererText(), text=0))
         self.listaprodutosvendidos.append_column(gtk.TreeViewColumn("cod barras",gtk.CellRendererText(), text=1))
         self.listaprodutosvendidos.append_column(gtk.TreeViewColumn("descricao",gtk.CellRendererText(), text=2))      
         self.listaprodutosvendidos.append_column(gtk.TreeViewColumn("quantidade",gtk.CellRendererText(), text=3))      
         self.listaprodutosvendidos.append_column(gtk.TreeViewColumn("preco",gtk.CellRendererText(), text=4))      
         self.listaprodutosvendidos.append_column(gtk.TreeViewColumn("subtotal",gtk.CellRendererText(), text=5))
         self.listaprodutosvendidos.append_column(gtk.TreeViewColumn("tam",gtk.CellRendererText(), text=6))
         
         selpvendidos = con.cursor()
         selpvendidos.execute("SELECT * FROM tb_mov_merc WHERE n_not_int='"+numvenda+"'")
         pvend = selpvendidos.fetchall()
         for pdv in pvend:
             selpro=con.cursor()
             selpro.execute("SELECT * FROM pbestoreal WHERE codigo='"+str(pdv[2])+"'")
	     linp = selpro.fetchone()
             qr=float(linp[7])
	     ql = float(linp[8])
	     qv = float(pdv[3])
             qlt= ql + qv 
             if str(pdv[9]) == "777":
                qrt = qr + qv
             else:
                qrt = qr
             upprod=con.cursor()
	     upprod.execute("UPDATE pbestoreal SET qtdautalest='"+str(qrt)+"',qestlj1='"+str(qlt)+"' WHERE codigo='"+str(pdv[2])+"'")
             #dar baixa na grade 
             #print pdv[8]
             grad = pdv[8]
             if grad != "":
                selgrade=con.cursor()
                selgrade.execute("SELECT * FROM tb_grad WHERE codprod='"+str(pdv[2])+"'AND des_grade='"+str(grad)+"' ")
                ng = int(selgrade.rowcount)
                if ng > 0 :
                   lg = selgrade.fetchone()
                   qtdgrad= float(lg[2])
                   ig = lg[0]
                   qtdgt=  qtdgrad + qv
                   upgrade=con.cursor()
                   upgrade.execute("UPDATE tb_grad SET qta_grade='"+str(qtdgt)+"' WHERE igrad='"+str(ig)+"'")

         print "venda "+self.ednumerovenda.get_text()+" finalizada !"
         self.janelafechavenda.hide()
         self.ednumvendedor.set_sensitive(True) 
         self.btnovavend.set_sensitive(True)
         self.eddata.set_sensitive(True)
         self.ednumerovenda.set_sensitive(True)
         self.btsair.set_sensitive(True)
         self.labelcod.set_sensitive(False)
         self.labelqtd.set_sensitive(False)
         self.edcod.set_sensitive(False)
         self.edqtd.set_sensitive(False)
         self.labelpreco.set_sensitive(False)
         self.edpreco.set_sensitive(False)
         self.btinseri.set_sensitive(False)
         #self.labeldescp.set_sensitive(False)
         self.eddescp.set_sensitive(False)
         self.listaprodutosvendidos.set_sensitive(False)
         self.labeltotal.set_sensitive(False)
         self.edtotal.set_sensitive(False)
         self.btfinalizar.set_sensitive(False)
         self.ednumvendedor.set_text("")
         self.ednumerovenda.set_text("")
         self.edtotal.set_text("")
         self.eddin.set_text("0")
         self.edcar.set_text("0")
         self.edche.set_text("0")
         self.ednnt.set_text("0")
         self.chnt.set_active(False)
         self.ednumvendedor.grab_focus()
         self.cbfp.set_active(0)
         print "-------------------------------------------------------------------------"
               
      else: 
         print "total invalido"
         self.edtota.grab_focus()
示例#24
0
   def __init__(self):

#Carrega a interface a partir do arquivo glade
     aw = gtk.glade.XML('addprodtroca.glade')
#carrega os widgets 
#janela principal
     self.jaddprod = aw.get_widget('window1')
     #self.listaprodutosvendidos = aw.get_widget('treeview1')
     #self.listaprodutosvendidosdois = aw.get_widget('treeview2')
     self.edent= aw.get_widget('entry2')
     self.edcod= aw.get_widget('entry3')
     self.eddes= aw.get_widget('entry1')
     self.edqtd= aw.get_widget('entry4')
     self.edpc = aw.get_widget('entry5') 
     self.eddatasel = aw.get_widget('entry6')
     self.bgrava = aw.get_widget('button1')
     self.cbmov = aw.get_widget('combobox1')
     self.codmov = aw.get_widget('entry7')
     self.edci = aw.get_widget('entry8')
     self.edgrad = aw.get_widget('entry9')
     self.cbgrad = aw.get_widget('combobox2')
     nw = datetime.now()
     now = str(nw)[:19]
     self.eddatasel.set_text(now)
     cmov=con.cursor()
     cmov.execute("SELECT * FROM t_mov ")
     lmov = cmov.fetchall()
     modelo = gtk.ListStore(str,str)
     modelo1 = gtk.ListStore(str)
     self.cbmov.set_model(modelo)
     self.cbgrad.set_model(modelo1)
     self.moo ={}
     
     i =0
      
     for llmov in lmov:

#          stt= llmov[0]
 #        dss=llmov[1] 
         
         # print str(dss) + "stt = "+ str(stt)
          #modelo.append([llmov[1],llmov[0]])
          
          self.cbmov.append_text(str(llmov[1]))    
          self.moo[i]= llmov[0]
          i +=1 
     #self.cbmov.set_model(modelo)
          #comboHoras.append_text(str(i))

     self.edqtd.set_text('1')
     
     
#Conecta todos os Sinais aos Callbacks
     aw.signal_autoconnect(self)

#Exibe janela principalpb
     self.jaddprod.show_all()
     coa = open('consulta.t','r')
     co = coa.read()
     if co == "1":
         print "operando no servidor secundario somente consulta"
        
         self.bgrava.set_sensitive(False)
#Inicia o loop principal de eventos (GTK MainLoop)
     
     gtk.main()
示例#25
0
文件: entrada.py 项目: uelei/pbpython
   def procuraproduto (self,widget):
      
      strr= self.edcod.get_text()
      sr= strr.replace(",","")
      srt= sr.replace("'","")
      srtt= srt.replace('"',"")
      self.edcod.set_text(srtt)
      self.btapaga.set_sensitive(False)
      self.edcsellista.set_text("")
      #self.btapaga.set_visible(False)
      
      #self.btapaga.set_sensitive(False)
      strproc = self.edcod.get_text()
      s = strproc.split('-')
      len(s)
      if len(s) == 1: 
          strprocurado = strproc
          self.eddpv.set_text("")
          sqt= float(self.edqtd.get_text())
          if sqt < 0:
               qt = sqt * -1 
          else:
                qt = sqt 
          self.edqtd.set_text(str(qt)) 
          self.codmov.set_text("2")

      if len(s) == 2 :
          if s[0] =="":
             #devolucao
             strprocurado = s[1]
             self.eddpv.set_text("")
             sqt= float(self.edqtd.get_text())
             self.codmov.set_text("991")
             if sqt <0:
                qt= sqt
             else:
                qt = sqt * -1 
             self.edqtd.set_text(str(qt)) 
          else:
             strprocurado = s[0]
             #desconto 
             self.eddpv.set_text(s[1])
             sqt= float(self.edqtd.get_text())
             if sqt < 0:
                qt = sqt * -1 
             else:
                qt = sqt 
             self.edqtd.set_text(str(qt)) 
             self.codmov.set_text("2")
      pcp=con.cursor()
      pcp.execute("SELECT * FROM pbestoreal WHERE codigo='"+strprocurado+"'")
      npe = int(pcp.rowcount)
      if npe ==1:  
        
         self.labelcod.set_text("codigo")
         linp = pcp.fetchone()
         self.eddescp.set_text(str(linp[2]))
         if self.eddpv.get_text() == "":
            self.edpreco.set_text(str(linp[5]))
          
         else : 
            de=float(self.eddpv.get_text())
            vde = float(linp[5]) -(de * float(linp[5]) /100)
            self.edpreco.set_text(str(vde))
         self.apv= linp[5]
         self.edcodigo.set_text(str(linp[0]))
         self.edpc.set_text(str(linp[12]))
         #self.edqr.set_text("qr= "+str(linp[7]))
         self.labelpreco.set_sensitive(True)
         self.labelqtd.set_sensitive(True)
         self.btinseri.set_sensitive(True)
         self.exibegrade(str(linp[0]))

      else:
         pcbp=con.cursor()
         pcbp.execute("SELECT * FROM pbestoreal WHERE codbarras='"+strprocurado+"'")
         npcbe=int(pcbp.rowcount)
         if npcbe ==1:
           
            self.labelcod.set_text("cod barras")
            linpc = pcbp.fetchone()
            self.eddescp.set_text(str(linpc[2]))
            self.edpreco.set_text(str(linpc[5]))
            self.edcodigo.set_text(str(linpc[0]))
            self.labelpreco.set_sensitive(True)
            self.labelqtd.set_sensitive(True)
            self.btinseri.set_sensitive(True)
            grade=str(linpc[14])
            self.edpc.set_text(str(linpc[12]))
            #self.edqr.set_text("qr= "+str(linpc[7]))
            self.exibegrade(str(linp[0]))
            self.apv= linp[5]
            '''if grade == "s":
              
               self.listagrade(linpc[0])
            else :
               self.naopossuigrade()'''
         else:
            self.labelcod.set_text("codigo")
            self.eddescp.set_text("Produto nao encontrado")
            self.edpreco.set_text("0")
            self.edcodigo.set_text('')
            self.edpc.set_text("")
            self.labelpreco.set_sensitive(False)
            self.labelqtd.set_sensitive(False)
            self.btinseri.set_sensitive(False)
            #self.edqr.set_text("")
            self.exibegrade('')
            self.apv= 0
示例#26
0
   def gravaadd(self,widget):
    coa = open('consulta.t','r')
    co = coa.read()
    if co == "1":
        print "operando no servidor secundario somente consulta"
        
        self.bgrava.set_sensitive(False)
    else:
      nww=datetime.now()
      noo=str(nww)
      nw=noo[:19]
      if self.codmov.get_text() == "":
         print "nao tem mov "
      else :
         if self.edcod.get_text() == "":
            print "nao tem produto"
         else :
             novcv= con.cursor()
             #print nw 
             novcv.execute("INSERT INTO tb_cv (cv,data,vend,vtc,vtv,dpg,aux,n_not_ext,now,cod_mov,v_des,cod_cli) VALUES (NULL,'"+ str(self.eddatasel.get_text()) + "','0','"+str(self.edpc.get_text())+"','0','0','cor','0','"+nw+"','"+str(self.codmov.get_text())+ "','0','0')") 
             icv =  int(con.insert_id())
             improd =con.cursor()
             stc= float(self.edpc.get_text()) * float(self.edqtd.get_text())
             cg= self.cbgrad.get_active_text()
             ns= str(cg)
             #print cg
             nl= ns.split(' = ')
             grade = str(nl[0])
             improd.execute("INSERT INTO tb_mov_merc (i,n_not_int,cod_prod,qtd_prod,pc_u,pv_u,pc_s,pv_s,grade_sel,cod_mov,n_not_ext,data_sel,data_real,operador,p_des,v_des) VALUES (NULL,'"+str(icv)+"','"+str(self.edci.get_text())+"','"+str(self.edqtd.get_text())+"','"+str(self.edpc.get_text())+"','0','"+str(stc)+"','0','"+grade+"','"+str(self.codmov.get_text())+"','0','"+str(self.eddatasel.get_text())+"','"+nw+"','0','0','0') ")
 
             selpvendidos = con.cursor()
             selpvendidos.execute("SELECT * FROM tb_mov_merc WHERE n_not_int='"+str(icv)+"'")
             pvend = selpvendidos.fetchall()
             for pdv in pvend:
                selpro=con.cursor()
                selpro.execute("SELECT * FROM pbestoreal WHERE codigo='"+str(pdv[2])+"'")
	        linp = selpro.fetchone()
                qr=float(linp[7])
                ql = float(linp[8])
	        qv = float(pdv[3])
                qk = float(linp[9])
                traf = con.cursor()
                traf.execute("SELECT * FROM t_mov WHERE cit='"+str(pdv[9])+"'")
                ltraf = traf.fetchone()
                self.vlj = ltraf[2]
                vlj = ltraf[2]
                vrc = ltraf[3]
                vpk = ltraf[4]
                qlt= ql + (vlj * qv)
                qrc = qr + (vrc * qv)
                qpkt = qk + (vpk * qv)
                   
                upprod=con.cursor()
	        upprod.execute("UPDATE pbestoreal SET qtdautalest='"+str(qrc)+"',qestlj1='"+str(qlt)+"',qestl2='"+str(qpkt)+"' WHERE codigo='"+str(pdv[2])+"'")
             #dar baixa na grade 
             #print pdv[8]
             grad = pdv[8]
             if grad != "":
                selgrade=con.cursor()
                selgrade.execute("SELECT * FROM tb_grad WHERE codprod='"+str(pdv[2])+"'AND des_grade='"+str(grad)+"' ")
                ng = int(selgrade.rowcount)
                if ng > 0 :
                   lg = selgrade.fetchone()
                   qtdgrad= float(lg[2])
                   ig = lg[0]
                   qtdgt=  qtdgrad + (qv * self.vlj)
                   upgrade=con.cursor()
                   upgrade.execute("UPDATE tb_grad SET qta_grade='"+str(qtdgt)+"' WHERE igrad='"+str(ig)+"'")

































             con.commit()
             self.eddes.set_text("")
             self.edcod.set_text("")
    	     self.edpc.set_text("")
             #self.cbmov.set_active(0)
             self.edent.set_text("")
             if __name__== "__main__":
                gtk.main_quit()
                exit(1)
             else : 
                self.jaddprod.hide()
示例#27
0
文件: prod.py 项目: uelei/pbpython
   def atualizar(self,widget):
      self.btfind.set_sensitive(False)
      nvcv= con.cursor()
      #data= self.dataget()
      nw=datetime.now()
      no=str(nw)
      nn = no[11:]
      nnn = nn[:8]
      #dat = str(data)+ " " + nnn    
      now=no[:19]
      nvcv.execute("INSERT INTO tb_cv (cv,data,vend,vtc,vtv,dpg,aux,n_not_ext,now,cod_mov,v_des,cod_cli) VALUES (NULL,'"+str(now)+"','0','0','0','0','0','0','"+str(now)+"','666','0','1')")  
      nuv =  int(con.insert_id())
      con.commit()
      self.nuv = str(nuv)
      #usar o nuv como numero do movimento

      lprod=con.cursor()
      lprod.execute("SELECT * FROM ESTOQUE ")
      npe = int(lprod.rowcount)
      npe = npe * 2 
      pvend = lprod.fetchall()
      it =0
      print "processando..."
      for pdv in pvend:
         it +=1

         cod = pdv[0]
         codb = pdv[1]
         desc = pdv[2]
         grupo  = pdv[3]
         forne = pdv[4]
         und = pdv[6]
         pre = pdv[7]
         ind = pdv[8]
         cc = pdv[9]
         qtd = pdv[12]
         cf = pdv[19]
         ipi = pdv[20]
         cst = pdv[21]
         st = pdv[22] 
         
         pcbp=con.cursor()
         pcbp.execute("SELECT * FROM pbestoreal WHERE codigo='"+cod+"'")
         npcbe=int(pcbp.rowcount)
         if npcbe == 1:
            linpc = pcbp.fetchone()
            qtde = linpc[7]
            nc = linpc[13]
            
            if qtd < qtde :
               inspv = con.cursor()
               dqtd = qtd - qtde 
               stv = float(dqtd) * float(pre)
               stc = float(dqtd) * float(cc)
               
               #ncf = int(nc)-10
               inspv.execute("INSERT INTO tb_mov_merc (i,n_not_int,cod_prod,qtd_prod,pc_u,pv_u,pc_s,pv_s,grade_sel,cod_mov,n_not_ext,data_sel,data_real,operador,p_des,v_des) VALUES (NULL,'"+self.nuv+"','"+str(cod)+"','"+str(dqtd)+"','"+str(cc)+"','"+str(pre)+"','"+str(stc)+"','"+str(stv)+"','','111','0','"+str(now)+"','"+str(now)+"','0','0','0') ")

               # saida auto estoque 
            else :
               if qtd > qtde :
                 # entrada auto  estoque 
                 # print "maior:"
                  inspv = con.cursor()
                  dqtd = qtd - qtde 
                  stv = float(dqtd) * float(pre)
                  stc = float(dqtd) * float(cc)
                  
                  #ncf = int(nc)-10
                  inspv.execute("INSERT INTO tb_mov_merc (i,n_not_int,cod_prod,qtd_prod,pc_u,pv_u,pc_s,pv_s,grade_sel,cod_mov,n_not_ext,data_sel,data_real,operador,p_des,v_des) VALUES (NULL,'"+self.nuv+"','"+str(cod)+"','"+str(dqtd)+"','"+str(cc)+"','"+str(pre)+"','"+str(stc)+"','"+str(stv)+"','','171','0','"+str(now)+"','"+str(now)+"','0','0','0') ")
              
               else :
                   ncf = int(nc) 
                     #atualizar estoque 
                     # print "."+cod
            #update tb pbestoreal
            gaprod = con.cursor()
            gaprod.execute("UPDATE pbestoreal SET codbarras='"+str(codb)+"',descricaop='"+str(desc)+"',fornecedorp='"+str(forne)+"',undp='"+str(und)+"',qtdautalest='"+str(qtd)+"',precov='"+str(pre)+"',custoc='"+ str(cc)+"',nc='"+str(ncf)+"',class='" +str(grupo)+"' WHERE codigo='"+str(cod)+"'")
            it +=1

         else:
            issp= con.cursor()
            issp.execute("INSERT INTO pbestoreal(`codigo` ,`codbarras` ,`descricaop` ,`fornecedorp` ,`undp` ,`precov` ,`custoc` ,`qtdautalest` ,`qestlj1` ,`qestl2` ,`qestlj3` ,`qmin` ,`creal` ,`nc` ,`grade` ,`class`)VALUES ('"+str(cod)+"', '"+str(codb)+"', '"+str(desc)+"', '"+str(forne)+"', '"+str(und)+"', '"+str(pre)+"', '"+str(cc)+"', '"+str(qtd)+"', '0.00', '0.00', '0.00', '0','"+str(cc)+"', '50', '', '" +str(grupo)+"');")
            ##inserir no mov tb ...
            it +=1
            inspv = con.cursor()
            stv = float(dqtd) * float(pre)
            stc = float(dqtd) * float(cc)
            inspv.execute("INSERT INTO tb_mov_merc (i,n_not_int,cod_prod,qtd_prod,pc_u,pv_u,pc_s,pv_s,grade_sel,cod_mov,n_not_ext,data_sel,data_real,operador,p_des,v_des) VALUES (NULL,'"+self.nuv+"','"+str(cod)+"','"+str(qtd)+"','"+str(cc)+"','"+str(pre)+"','"+str(stc)+"','"+str(stv)+"','','1','0','"+now+"','"+now+"','0','0','0') ")
         self.progress_bar(it, npe, 60 )
      dell = con.cursor()
      dell.execute("TRUNCATE TABLE ESTOQUE")
      self.btfind.set_sensitive(True)
      self.btatual.set_sensitive(False)
示例#28
0
文件: prod.py 项目: uelei/pbpython
   def atnt(self,widget):
      let=cnn.cursor()
      let.execute("SELECT * FROM ESTOQUE ")
      pvend = let.fetchall()
      for pdv in pvend:
         

         cod = pdv[0]
         codb = pdv[1]
         desc = pdv[2]
         grupo  = pdv[3]
         forne = pdv[4]
         und = pdv[6]
         pre = pdv[7]
         ind = pdv[8]
         cc = pdv[9]
         qtd = pdv[12]
         cf = pdv[19]
         ipi = pdv[20]
         cst = pdv[21]
         st = pdv[22] 
       
         pcbp=con.cursor()
         pcbp.execute("SELECT * FROM pbestoreal WHERE codigo='"+cod+"'")
         npcbe=int(pcbp.rowcount)
         if npcbe == 1:
            
            self.btfind.set_sensitive(False)
         else:
            issp= con.cursor()
            issp.execute("INSERT INTO pbestoreal(`codigo` ,`codbarras` ,`descricaop` ,`fornecedorp` ,`undp` ,`precov` ,`custoc` ,`qtdautalest` ,`qestlj1` ,`qestl2` ,`qestlj3` ,`qmin` ,`creal` ,`nc` ,`grade` ,`class`)VALUES ('"+str(cod)+"', '"+str(codb)+"', '"+str(desc)+"', '"+str(forne)+"', '"+str(und)+"', '"+str(pre)+"', '"+str(cc)+"', '0.0', '0.00', '0.00', '0.00', '0','"+str(cc)+"', '100', '', '" +str(grupo)+"');")
            ##inserir no mov tb ...
            
      sys.stdout.write(".")
      lnt=cnn.cursor()
      lnt.execute("SELECT * FROM COMPRAS WHERE `OPERACAO` LIKE 'Compra para comercialização' OR `OPERACAO` LIKE 'compra p/ com. de mercadoria ST' ")
      pcom = lnt.fetchall()
      for pco in pcom:
         nnf = pco[0]
         fo  = pco[4] 
         de = pco[6]
         tt = pco[25]
         fnt=con.cursor()
         fnt.execute("SELECT * FROM notasentrada WHERE `NUMERONF` LIKE '"+nnf+"'AND `FORNECEDOR` LIKE '"+fo+"'AND EMISSAO = '"+str(de)+"' AND  `OPERACAO` LIKE 'Compra para comercialização' ")
         nlfnt=int(fnt.rowcount)
         if nlfnt ==1 : 
            #l=fnt.fetchone()
            self.btfind.set_sensitive(False)


         else :
            print nnf 
            nvcv= con.cursor()
            #data= self.dataget()
            nw=datetime.now()
            no=str(nw)
            nn = no[11:]
            nnn = nn[:8]
            #dat = str(data)+ " " + nnn    
            now=no[:19]
            nvcv.execute("INSERT INTO tb_cv (cv,data,vend,vtc,vtv,dpg,aux,n_not_ext,now,cod_mov,v_des,cod_cli) VALUES (NULL,'"+str(now)+"','0','"+str(tt)+"','0','0','0','0','"+str(now)+"','777','0','1')")  
            nuv =  int(con.insert_id())
            con.commit()
            self.nuv = str(nuv)            




            itnt=cnn.cursor()
            itnt.execute("SELECT *FROM `ITENS002` WHERE `NUMERONF` LIKE '"+nnf+"' AND `FORNECEDOR` LIKE '"+fo+"' ")
            itntf = itnt.fetchall()
            
            for it in itntf: 
                 
                 ##print "---->"+it[2]+" X "+str(it[9])
                 cod = it[2]
                 qtd = it[9]
                 pcc = it[10]
                 ptc = it[11]
                 inspv = con.cursor()
                 inspv.execute("INSERT INTO tb_mov_merc (i,n_not_int,cod_prod,qtd_prod,pc_u,pv_u,pc_s,pv_s,grade_sel,cod_mov,n_not_ext,data_sel,data_real,operador,p_des,v_des) VALUES (NULL,'"+self.nuv+"','"+str(cod)+"','"+str(qtd)+"','"+str(pcc)+"','0','"+str(ptc)+"','0','','777','"+str(nnf)+"','"+str(now)+"','"+str(now)+"','0','0','0') ")
                 
                 pcbp=con.cursor()
                 pcbp.execute("SELECT * FROM pbestoreal WHERE codigo='"+cod+"'")
                 npcbe=int(pcbp.rowcount)
                 if npcbe == 1:
                    linpc = pcbp.fetchone()
                    qtde = linpc[7]
                    qtdr = linpc[8]
                 qtdf= qtde + qtd 
                 qtdrf= qtdr + qtd
                 gaprod = con.cursor()
                 gaprod.execute("UPDATE pbestoreal SET qtdautalest='"+str(qtdf)+"',qestlj1='"+str(qtdrf)+"',custoc='"+str(pcc)+"' WHERE codigo='"+str(cod)+"'")          
          
             
      icf=con.cursor()
      icf.execute("DROP TABLE IF EXISTS `tb_pb`.`notasentrada`;")
      icf.execute(" CREATE  TABLE  `tb_pb`.`notasentrada` (  `NUMERONF` varchar( 6  )  NOT  NULL , `SERIE` varchar( 3  )  NOT  NULL , `MODELO` varchar( 2  )  NOT  NULL , `VENDEDOR` varchar( 35  )  NOT  NULL , `FORNECEDOR` varchar( 60  )  NOT  NULL , `OPERACAO` varchar( 40  )  NOT  NULL , `EMISSAO` date NOT  NULL , `FRETE` double NOT  NULL , `SEGURO` double NOT  NULL , `DESPESAS` double NOT  NULL , `VOLUMES` double NOT  NULL , `ESPECIE` varchar( 13  )  NOT  NULL , `MARCA` varchar( 13  )  NOT  NULL , `TRANSPORTA` varchar( 60  )  NOT  NULL , `FRETE12` varchar( 1  )  NOT  NULL , `SAIDAH` varchar( 8  )  NOT  NULL , `SAIDAD` date NOT  NULL , `DUPLICATAS` double NOT  NULL , `BASEICM` double NOT  NULL , `ICMS` double NOT  NULL , `ICMSSUBSTI` double NOT  NULL , `BASESUBSTI` double NOT  NULL , `ALIQUOTA` double NOT  NULL , `ISS` double NOT  NULL , `IPI` double NOT  NULL , `TOTAL` double NOT  NULL , `MERCADORIA` double NOT  NULL , `COMPLEMEN1` varchar( 60  )  NOT  NULL , `COMPLEMEN2` varchar( 60  )  NOT  NULL , `COMPLEMEN3` varchar( 60  )  NOT  NULL , `COMPLEMEN4` varchar( 60  )  NOT  NULL , `EMITIDA` varchar( 1  )  NOT  NULL , `SERVICOS` double NOT  NULL , `DESCRICAO1` varchar( 100  )  NOT  NULL , `DESCRICAO2` varchar( 100  )  NOT  NULL , `DESCRICAO3` varchar( 100  )  NOT  NULL , `PESOBRUTO` double NOT  NULL , `PESOLIQUI` double NOT  NULL , `DESCPROD` double NOT  NULL , `CODIGOBASE` double NOT  NULL  ) ENGINE  =  MyISAM  DEFAULT CHARSET  = latin1;")
      icf.execute(" INSERT INTO `tb_pb`.`notasentrada` SELECT * FROM `dbfmy`.`COMPRAS` ;")
      icf2=con.cursor()
      
      icf2.execute("DROP TABLE IF EXISTS `tb_pb`.`itensntentrada`;")
      icf2.execute(" CREATE  TABLE  `tb_pb`.`itensntentrada` (  `NUMERONF` varchar( 6  )  NOT  NULL , `SERIE` varchar( 3  )  NOT  NULL , `CODIGO`varchar( 5  )  NOT  NULL , `DESCRICAO` varchar( 45  )  NOT  NULL , `ST` varchar( 3  )  NOT  NULL , `IPI` double NOT  NULL , `ICM` double NOT  NULL , `BASE` double NOT  NULL , `MEDIDA` varchar( 3  )  NOT  NULL , `QUANTIDADE` double NOT  NULL , `UNITARIO` double NOT  NULL , `TOTAL` double NOT  NULL , `LISTA` double NOT  NULL , `CUSTO` double NOT  NULL , `PESO` double NOT  NULL , `FORNECEDOR` varchar( 60  )  NOT  NULL , `CFOP` varchar( 5  ) NOT  NULL , `DESCONTO` double NOT  NULL , `CST` varchar( 3  )  NOT  NULL , `CSOSN` varchar( 3  )  NOT  NULL , `VL_FRETE` double NOT  NULL ,`VL_SEGURO` double NOT  NULL , `VL_DESPESA` double NOT  NULL , `ALQSTORIGE` double NOT  NULL , `ALQSTDEST` double NOT  NULL , `BC_ICMSST` double NOT  NULL ,`VL_BCST` double NOT  NULL , `MVA` double NOT  NULL , `VL_ICMSST` double NOT  NULL , `CST_IPI` varchar( 3  )  NOT  NULL , `CST_PIS` varchar( 3  )  NOT  NULL , `CST_COFINS` varchar( 3  )  NOT  NULL , `PIS` double NOT  NULL , `COFINS` double NOT  NULL , `BASEPIS` double NOT  NULL , `BASECOFINS` double NOT  NULL  ) ENGINE  =  MyISAM  DEFAULT CHARSET  = latin1;")
      icf2.execute(" INSERT INTO `tb_pb`.`itensntentrada` SELECT * FROM `dbfmy`.`ITENS002` ;")
      self.btfind.set_sensitive(True)
      print "atualizacao concluida !."
      sys.stdout.write(".")
示例#29
0
   def listarprodutosvendidos(self,data):
      ncolunas = self.listaprodutosvendidos.get_columns()
      tpb= 0
      tpk =0 
      cdipb = self.dataipb.get_text()
      cdipb_c = cdipb[3:]
      cdipb_s = cdipb_c.split('-')
      mesipb = cdipb_s[0]
      anoipb = cdipb_s[1]

      cdfpb = self.datafpb.get_text()
      cdfpb_c = cdfpb[3:]
      cdfpb_s = cdfpb_c.split('-')
      mesfpb = cdfpb_s[0]
      anofpb = cdfpb_s[1]

      cdipk = self.dataipk.get_text()
      cdipk_c = cdipk[3:]
      cdipk_s = cdipk_c.split('-')
      mesipk = cdipk_s[0]
      anoipk = cdipk_s[1]

      cdfpk = self.datafpk.get_text()
      cdfpk_c = cdfpk[3:]
      cdfpk_s = cdfpk_c.split('-')
      mesfpk = cdfpk_s[0]
      anofpk = cdfpk_s[1]

      for col in ncolunas:
         self.listaprodutosvendidos.remove_column(col)  
      self.tipodetabelavenda = gtk.ListStore(str,str,str,str,str,str,str,str)
      self.listaprodutosvendidos.set_model(self.tipodetabelavenda)
      self.listaprodutosvendidos.append_column(gtk.TreeViewColumn("n_not_int",gtk.CellRendererText(), text=0))
      self.listaprodutosvendidos.append_column(gtk.TreeViewColumn("cod_prod",gtk.CellRendererText(), text=1))
      self.listaprodutosvendidos.append_column(gtk.TreeViewColumn("descricao",gtk.CellRendererText(), text=2))      
      self.listaprodutosvendidos.append_column(gtk.TreeViewColumn("quantidade",gtk.CellRendererText(), text=3))      
      self.listaprodutosvendidos.append_column(gtk.TreeViewColumn("preco_c",gtk.CellRendererText(), text=4))      
      self.listaprodutosvendidos.append_column(gtk.TreeViewColumn("pc_s",gtk.CellRendererText(), text=5))
      self.listaprodutosvendidos.append_column(gtk.TreeViewColumn("grade_sel",gtk.CellRendererText(), text=6))
      self.listaprodutosvendidos.append_column(gtk.TreeViewColumn("data_sel",gtk.CellRendererText(), text=7))
      cod_mov = "102"
      selpvendidos=con.cursor()
      selpvendidos.execute("SELECT * FROM tb_mov_merc WHERE cod_mov='"+cod_mov+"' AND data_sel > '"+anoipb+"-"+mesipb+"-01 00:00:00' AND data_sel < '"+anofpb+"-"+mesfpb+"-31 00:00:00'")
      pvend = selpvendidos.fetchall()
      for pdv in pvend:
         selpro=con.cursor()
         selpro.execute("SELECT * FROM pbestoreal WHERE codigo='"+str(pdv[2])+"'")	
         linp = selpro.fetchone()
         dp = linp[2]
         cb=linp[1]
         self.tipodetabelavenda.append([pdv[1],pdv[2],dp,pdv[3],pdv[4],pdv[6],pdv[8],pdv[11]])
         tpb = tpb + pdv[6]
      self.tpb.set_text(str(tpb))
     
      


      ncolunas = self.listaprodutosvendidosdois.get_columns()
      for col in ncolunas:
         self.listaprodutosvendidosdois.remove_column(col)  
      self.tipodetabelavenda = gtk.ListStore(str,str,str,str,str,str,str,str)
      self.listaprodutosvendidosdois.set_model(self.tipodetabelavenda)
      self.listaprodutosvendidosdois.append_column(gtk.TreeViewColumn("n_not_int",gtk.CellRendererText(), text=0))
      self.listaprodutosvendidosdois.append_column(gtk.TreeViewColumn("cod_prod",gtk.CellRendererText(), text=1))
      self.listaprodutosvendidosdois.append_column(gtk.TreeViewColumn("descricao",gtk.CellRendererText(), text=2))      
      self.listaprodutosvendidosdois.append_column(gtk.TreeViewColumn("quantidade",gtk.CellRendererText(), text=3))      
      self.listaprodutosvendidosdois.append_column(gtk.TreeViewColumn("preco_c",gtk.CellRendererText(), text=4))      
      self.listaprodutosvendidosdois.append_column(gtk.TreeViewColumn("pc_s",gtk.CellRendererText(), text=5))
      self.listaprodutosvendidosdois.append_column(gtk.TreeViewColumn("grade_sel",gtk.CellRendererText(), text=6))
      self.listaprodutosvendidosdois.append_column(gtk.TreeViewColumn("data_sel",gtk.CellRendererText(), text=7))
      cod_mov = "201"
      selpvendidos=con.cursor()
      selpvendidos.execute("SELECT * FROM tb_mov_merc WHERE cod_mov='"+cod_mov+"' AND data_sel > '"+anoipk+"-"+mesipk+"-01 00:00:00' AND data_sel < '"+anofpk+"-"+mesfpk+"-31 00:00:00'")
      pvend = selpvendidos.fetchall()
      for pdv in pvend:
         selpro=con.cursor()
         selpro.execute("SELECT * FROM pbestoreal WHERE codigo='"+str(pdv[2])+"'")	
         linp = selpro.fetchone()
         dp = linp[2]
         cb=linp[1]
         self.tipodetabelavenda.append([pdv[1],pdv[2],dp,pdv[3],pdv[4],pdv[6],pdv[8],pdv[11]])
         tpk = tpk + pdv[6]
      self.tpk.set_text(str(tpk))
示例#30
0
   def somatotalvendas(self,widget):
    ncol = self.tabelatotalvendas.get_columns()
    for col in ncol:
     self.tabelatotalvendas.remove_column(col) 
    self.tipodetabela = gtk.ListStore(str,str,str,str,str,str)
    self.tabelatotalvendas.set_model(self.tipodetabela)
    self.tabelatotalvendas.append_column(gtk.TreeViewColumn("vendedor",gtk.CellRendererText(), text=0))
    self.tabelatotalvendas.append_column(gtk.TreeViewColumn("pecas",gtk.CellRendererText(), text=1))
    self.tabelatotalvendas.append_column(gtk.TreeViewColumn("diheiro",gtk.CellRendererText(), text=2))
    self.tabelatotalvendas.append_column(gtk.TreeViewColumn("cartao",gtk.CellRendererText(), text=3))
    self.tabelatotalvendas.append_column(gtk.TreeViewColumn("cheque",gtk.CellRendererText(), text=4))
    self.tabelatotalvendas.append_column(gtk.TreeViewColumn("total",gtk.CellRendererText(), text=5))

    dint=0
    cart=0
    chet=0
    ttt=0
    tpc=0
    myvor= con.cursor()
    myvor.execute("SELECT * FROM vendedores")
    tt=0
    myrvor= myvor.fetchall()
    for vendedor in myrvor:
     din=0
     car=0
     che=0
     tt=0
     pc=0
     ven= vendedor[0]
     data = self.calendar.get_date()
     ms=data[1]+1
     mes="0"+str(ms)
     d=data[2]
     dia="0"+str(d)
     if self.rbdia.get_active():
        dt=dia[-2:]+"/"+str(mes[-2:])+"/"+str(data[0])
       #dt = str(data[0]) + "-" + str(mes[-2:])+"-"+dia[-2:]
     elif self.rbmes.get_active():
        dt="/"+str(mes[-2:])+"/"+str(data[0])
       #dt = str(data[0]) + "-" + str(mes[-2:])+"-"
     else:
        dt="/"+str(data[0])
       #dt = str(data[0]) + "-" 
     myvd=con.cursor()    
     myvd.execute("SELECT * FROM tb_vendas WHERE codvend='"+str(ven)+"' AND datav LIKE '%"+str(dt)+"%' AND `cod_pg`='1'")
     rsd= myvd.fetchall()
     for vd in rsd:
        din=din+vd[2]
        pc=pc+vd[8]
     myvc=con.cursor()
     myvc.execute("SELECT * FROM tb_vendas WHERE codvend='"+str(ven)+"' AND datav LIKE '%"+str(dt)+"%' AND `cod_pg` LIKE '%2%'")
     rsc= myvc.fetchall()
     for vc in rsc:
        car=car+vc[2]
        pc=pc+vc[8]
     myvh=con.cursor()
     myvh.execute("SELECT * FROM tb_vendas WHERE codvend='"+str(ven)+"' AND datav LIKE '%"+str(dt)+"%' AND `cod_pg`='3'")
     rsh= myvh.fetchall()
     for vh in rsh:
        che=che+vh[2]
        pc=pc+vh[8]
     tt=din+car+che
     self.tipodetabela.append([ven,pc,din,car,che,tt])
     dint=dint+din
     cart=cart+car
     chet = chet + che
     tpc=tpc+pc
     ttt=ttt+tt 
    self.tipodetabela.append(["subtotal",tpc,dint,cart,chet,ttt])