예제 #1
0
    def on_btnAltacli_clicked(self, widget):
        """
        Da de alta un cliente con los datos itroducidos en los entries.

        Llama a otro metodo para registrar los datos escritos
        en los entries de la ventana correspondientes, comprobando
        el dni por medio de otro método, insertando el cliente con la funcion
        insertarcli(), tambien borra los datos de los entries y actualiza los
        treeviews con otros dos metodos.

        :param widget:
        :return: void

        """

        try:
            dni = variables.filacli[0].get_text()
            apel = variables.filacli[1].get_text()
            nome = variables.filacli[2].get_text()
            data = variables.filacli[3].get_text()
            registro = (dni, apel, nome, data)
            if funcionescli.validoDNI(dni):
                funcionescli.insertarcli(registro)
                funcionescli.listadocli(variables.listclientes)
                funcionescli.limpiarentry(variables.filacli)
            else:
                variables.menslabel[0].set_text('ERROR DNI')
        except:
            print("Error alta cliente")
예제 #2
0
    def on_menuBarImportar_activate(self, widget):
        """
        Gestiona el evento del botón importar de la barra de menú.
        Obtiene clientes, a partir de un fichero xlsx, y los almacena en la base de datos.
        :param widget:
        :return: No devuelve nada.

        """
        document = xlrd.open_workbook("listadoclientes.xlsx")
        clientes = document.sheet_by_index(0)
        todo = 0
        for i in range(clientes.nrows - 1):
            for j in range(clientes.ncols):
                if i != 0:
                    if j == 0:
                        dni = str(clientes.cell_value(i, 0))
                        apel = str(clientes.cell_value(i, 1))
                        nome = str(clientes.cell_value(i, 2))
                        data = float(clientes.cell_value(i, 3))
                        year, mont, d, h, m, s = xlrd.xldate_as_tuple(data, 0)
                        dia = str(d)
                        mes = str(mont)
                        ano = str(year)
                        fecha = dia.zfill(2) + '/' + mes.zfill(2) + '/' + ano
                        registro = (dni, apel, nome, fecha)
                        if (funcionescli.selectcli(dni) == None):
                            funcionescli.insertarcli(registro)
                            funcionescli.listadocli(variables.listclientes)
                            funcionescli.limpiarentry(variables.filacli)
                            todo = 1
        if todo == 1:
            variables.vendialogimportar.show()
예제 #3
0
    def on_btnelegirRutaAceptar_clicked(self, widget):
        """
        Importa el archivo seleccionado en el filechooser.

        Importa el archivo que se haya seleccionado en el filechooser,
        lo introduce en la base de datos y actuliza los treeviews.
        Tambien cierra la ventana en cuestion.

        :param widget:
        :return: void
        """
        try:
            destino = variables.filechooserRuta.get_filename()
            print(str(destino))

            document = xlrd.open_workbook(str(destino))
            # Abrimos el fichero excel
            clientes = document.sheet_by_index(0)
            book_datemode = document.datemode
            for i in range(clientes.nrows - 1):
                # Ignoramos la primera fila, que indica los campos
                for j in range(clientes.ncols):
                    if i != 0:
                        if j == 0:
                            dni = str(clientes.cell_value(i, 0))
                            apel = str(clientes.cell_value(i, 1))
                            nome = str(clientes.cell_value(i, 2))
                            data = float(clientes.cell_value(i, 3))
                            year, mont, d, h, m, s = xlrd.xldate_as_tuple(
                                data, 0)
                            dia = str(d)
                            mes = str(mont)
                            año = str(year)
                            fecha = dia.zfill(2) + '/' + mes.zfill(
                                2) + '/' + año
                            registro = (dni, apel, nome, fecha)
                            if (funcionescli.selectcli(dni) == None):
                                funcionescli.insertarcli(registro)
                                funcionescli.listadocli(variables.listclientes)
                                funcionescli.limpiarentry(variables.filacli)

        except Exception as e:
            print(e)

        try:
            variables.filechooserRuta.connect('delete-event',
                                              lambda w, e: w.hide() or True)
            variables.filechooserRuta.hide()
        except:
            print('error cerrar file chooser')
예제 #4
0
 def on_btnAltacli_clicked(self, widget):
     try:
         dni = variables.filacli[0].get_text()
         apel = variables.filacli[1].get_text()
         nome = variables.filacli[2].get_text()
         data = variables.filacli[3].get_text()
         registro = (dni, apel, nome, data)
         if funcionescli.validoDNI(dni):
             funcionescli.insertarcli(registro)
             funcionescli.listadocli(variables.listclientes)
             funcionescli.limpiarentry(variables.filacli)
         else:
             variables.menslabel[0].set_text('ERROR DNI')
     except:
         print("Error alta cliente")
예제 #5
0
 def on_btnAltacli_clicked(self, widget):
     """
     Evento que gestiona el botón para dar de alta un cliente
     """
     try:
         dni = variables.filacli[0].get_text()
         apelidos = variables.filacli[1].get_text()
         nome = variables.filacli[2].get_text()
         data = variables.filacli[3].get_text()
         registro = (dni, apelidos, nome, data)
         if funcionescli.validoDNI(dni):
             funcionescli.insertarcli(registro)
             funcionescli.listarcli(variables.listclientes)
             funcionescli.limpiarentry(variables.filacli)
             #variables.menserror[3].set_text("Cliente dado de alta correctamente")
     except Exception as e:
         print(e)
         print("Error alta cliente")
예제 #6
0
 def on_btnAltacli_clicked(self, widget):
     '''
     Se encarga de recoger los datos de los clientes y meterlos en una lista, manda a validar el dni recogido e inserta el cliente.
     Despues llama a listado para actualizar la lista del treeview y vacia los datos de entrada para altas clientes
     @param widget:
     @return:
     '''
     try:
         dni = variables.filacli[0].get_text()
         apel = variables.filacli[1].get_text()
         nome = variables.filacli[2].get_text()
         data = variables.filacli[3].get_text()
         registro = (dni, apel, nome, data)
         if funcionescli.validoDNI(dni):
             funcionescli.insertarcli(registro)
             funcionescli.listadocli(variables.listclientes)
             funcionescli.limpiarentry(variables.filacli)
         else:
             variables.menslabel[0].set_text('ERROR DNI')
     except:
         print("Error alta cliente")
예제 #7
0
    def on_btnAltacli_clicked(self, widget):
        """
        Gestiona el evento del botón de alta cliente.
        Da de alta un cliente
        :param widget:
        :return: No devuelve nada

        """
        try:
            dni = variables.filacli[0].get_text()
            apel = variables.filacli[1].get_text()
            nome = variables.filacli[2].get_text()
            data = variables.filacli[3].get_text()
            registro = (dni, apel, nome, data)
            if funcionescli.validoDNI(dni):
                funcionescli.insertarcli(registro)
                funcionescli.listadocli(variables.listclientes)
                funcionescli.limpiarentry(variables.filacli)
            else:
                variables.menslabel[0].set_text('ERROR DNI')
        except:
            print("Error alta cliente")