[pyar] no entiendo por que se dispara una recursividad
fagonzalez
fagonzalez en steel.com.ar
Jue Dic 13 16:43:53 ART 2012
Si tenes razón. A seguir pensando
Gracias y un abrazo
Fer
-----Original Message-----
From: Martin Chikilian <slacklinucs en gmail.com>
To: Python Argentina <pyar en python.org.ar>
Date: Thu, 13 Dec 2012 16:35:53 -0300
Subject: Re: [pyar] no entiendo por que se dispara una recursividad
> Hola,
>
> A priori intentaría comentar la línea que conecta la cellChanged
> signal con
> LeeDetalle, me parece
> que por ahí viene la recursividad.
>
> La línea es la siguiente:
>
> self.connect(self.tbwDetalle,
> QtCore.SIGNAL("cellChanged(int, int)"),
> self.LeeDetalle)
>
> Si es eso vas a tener que buscar otra manera de manejar la lógica que
> querés implementar.
>
> Saludos
>
> 2012/12/13 fagonzalez <fagonzalez en steel.com.ar>
>
> > Hola a todos, tengo el siguiente modulo, el que permitiria carga una
> > factura de venta o compra
> > hasta ahora todo mas o menos bien, peor a la hora de ingresar el
> detalle
> > de la factura (articulos vendidos o comprados) se desata un
> recursividad
> > que no entiendo, a continuación el código:
> >
> > from PyQt4 import QtGui, QtCore
> > import frmVentas
> > import ctrlBuscarArt
> > import ctrlBuscarCli
> > from general import *
> > import datetime
> > import sqlite3
> >
> > class fichaVentas(QtGui.QDialog, frmVentas.Ui_frmVentas):
> >
> > setup = []
> > tbwFila = 0
> >
> > def __init__(self, parent=None):
> > self.cBArt = ctrlBuscarArt.ctrlBArticulos()
> > self.cBArt.connect(self.cBArt,
> > QtCore.SIGNAL("datovalido"),
> > self.artValido)
> > self.setWindowTitle("Registar factura de venta")
> > .
> > .
> > .
> > self.connect(self.tbwDetalle,
> > QtCore.SIGNAL("cellChanged(int, int)"),
> > self.LeeDetalle)
> >
> > def LeeDetalle(self, fila, col):
> > Dato = self.tbwDetalle.item(fila, col).text()
> > self.tbwFila = fila
> > if col == 0: #codiogo
> > if self.tbwDetalle.item(fila, 0).text() == ' ':
> > #me posiciono en la columna 1, quiero buscar el
> articulo
> > por nombre
> > self.tbwDetalle.setCurrentCell(fila, 1)
> > else:
> > self.MuestraDetalle(Dato)
> > return
> > elif col == 1: #descripcion
> > self.BuscaArticulo(Dato)
> > elif col == 2: #cantidad
> > pass
> > elif col == 3: #bonificacion
> > pass
> > elif col == 4: #precio unitario
> > pass
> >
> >
> > def MuestraDetalle(self, Id):
> > #punto A
> > self.cnn = sqlite3.connect("c:\gestion\gestion.db")
> > query = self.cnn.cursor()
> > query.execute("SELECT * FROM articulos " +
> > "WHERE articulos_id = %s" % str(Id))
> > r = query.fetchone()
> > #muestro el articulo en la fila de la grilla de detalle
> > #codigo articulo
> > a) item = QtGui.QTableWidgetItem(r[0])
> > item.setTextAlignment(2)
> > campo = str(r[0])
> > item.setText(str(campo))
> > 1) self.tbwDetalle.setItem(self.tbwFila, 0, item)
> > #descripcion
> > item1 = QtGui.QTableWidgetItem(r[1])
> > item1.setTextAlignment(1)
> > campo = str(r[1])
> > item1.setText(campo)
> > self.tbwDetalle.setItem(self.tbwFila, 1, item1)
> > #precio unitario
> > item2 = QtGui.QTableWidgetItem(r[5])
> > item2.setTextAlignment(2)
> > campo = str(r[5])
> > item2.setText(campo)
> > self.tbwDetalle.setItem(self.tbwFila, 4, item2)
> > #muevo el cursor a la celda cantidad
> > self.tbwDetalle.setCurrentCell(self.tbwFila, 2)
> >
> > el bucle se arma a partir de 1), el codigo desde a) hasta 1), lo uso
> en
> > otras tablewidget sin este problemam alguien ve algo que esta mal?
> >
> > agrego que el bucle se repite tantas veces como registros hay en la
> tabla
> > articulos, y se muestra cBArt, instancia de
> > ctrlBuscarArt.ctrlBArticulos(), que es una ventana que permite buscar
> en
> > la tabla de articulos.
> >
> > desde ya gracias
> >
> > Fernando
> >
> >
> > _______________________________________________
> > pyar mailing list pyar en python.org.ar
> > http://listas.python.org.ar/listinfo/pyar
> >
> > PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
> >
> > La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre
> de
> > Argentina - http://www.usla.org.ar
> >
More information about the pyar
mailing list