def agregar_on_click(self): # Obtener los valores escritos en el formulario del material. codigo_txt = self.codigo_textbox.text() nombre_txt = self.nombre_textbox.text() medida_txt = self.medida_textbox.text() color_txt = self.color_textbox.text() cantidad_txt = self.cantidad_textbox.text() # Buscar el precio en la base de datos del material. precio_txt = Buscar.buscarPrecio(codigo_txt, nombre_txt, color_txt, self.mensajeError) if precio_txt: # Calcular importe y redondear los decimales. importe = float(cantidad_txt) * float(precio_txt) importe = round(importe, 2) importe_txt = str(importe) # Agregar material a la tabla. contador_tabla = self.tabla_material.rowCount() self.tabla_material.insertRow(contador_tabla) self.tabla_material.setItem(contador_tabla, 0, QTableWidgetItem(cantidad_txt)) self.tabla_material.setItem(contador_tabla, 1, QTableWidgetItem(codigo_txt)) self.tabla_material.setItem(contador_tabla, 2, QTableWidgetItem(medida_txt)) self.tabla_material.setItem(contador_tabla, 3, QTableWidgetItem(nombre_txt)) self.tabla_material.setItem(contador_tabla, 4, QTableWidgetItem(precio_txt)) self.tabla_material.setItem(contador_tabla, 5, QTableWidgetItem(importe_txt)) # Calcular subtotal y ponerlo en la caja de texto. subtotal_txt = Calcular.calcularSubtotal(self.tabla_material, contador_tabla) self.subtotal_textbox.setText(subtotal_txt) # Calcular el neto y ponerlo en la caja de texto. neto_txt = Calcular.calcularNeto(self.subtotal_textbox, self.descuento_textbox, self.neto_textbox) self.neto_textbox.setText(neto_txt) # Calcular el IVA y ponerlo en la caja de texto. iva_txt = Calcular.calcularIVA(self.neto_textbox) self.iva_textbox.setText(iva_txt) # Calcular el total y ponerlo en la caja de texto. total_txt = Calcular.calcularTotal(self.neto_textbox, self.iva_textbox) self.total_textbox.setText(total_txt) else: # No se encontro el material en la base de datos. self.mensajeError("No se encontro el material")