def try_connection(self):
        from pyarchinit_conn_strings import *
        conn = Connection()
        conn_str = conn.conn_str()

        from pyarchinit_db_manager import *
        self.DB_MANAGER = Pyarchinit_db_management(
            conn_str
        )  #sqlite:///\Users\Windows\pyarchinit_DB_folder\pyarchinit_db.sqlite
        test = self.DB_MANAGER.connection()
        test = str(test)
        if test == "":
            QMessageBox.warning(self, "Messaggio",
                                "Connessione avvenuta con successo",
                                QMessageBox.Ok)
        elif test.find("create_engine") != -1:
            QMessageBox.warning(
                self, "Alert",
                "Verifica i parametri di connessione. <br> Se sono corretti RIAVVIA QGIS",
                QMessageBox.Ok)
        else:
            QMessageBox.warning(
                self, "Alert", "Errore di connessione: <br>" + str(test) +
                "<br> Cambia i parametri e riprova a connetterti. Se cambi server (Postgres o Sqlite) ricordati di cliccare su connetti e RIAVVIARE Qgis",
                QMessageBox.Ok)
Пример #2
0
	def on_pushButton_connect_pressed(self):
		from pyarchinit_conn_strings import *
		conn = Connection()
		conn_str = conn.conn_str()
		test_conn = conn_str.find('sqlite')

		if test_conn == 0:
			self.DB_SERVER = "sqlite"
		try:
			self.DB_MANAGER = Pyarchinit_db_management(conn_str)
			self.DB_MANAGER.connection()
			self.charge_records() #charge records from DB
			#check if DB is empty
			if bool(self.DATA_LIST) == True:
				self.REC_TOT, self.REC_CORR = len(self.DATA_LIST), 0
				self.DATA_LIST_REC_TEMP = self.DATA_LIST_REC_CORR = self.DATA_LIST[0]
				self.BROWSE_STATUS = 'b'
				self.label_status.setText(self.STATUS_ITEMS[self.BROWSE_STATUS])
				self.label_sort.setText(self.SORTED_ITEMS["n"])
				self.set_rec_counter(len(self.DATA_LIST), self.REC_CORR+1)
				self.charge_list()
				self.fill_fields()
			else:
				QMessageBox.warning(self, "BENVENUTO", "Benvenuto in pyArchInit" + self.NOME_SCHEDA + ". Il database e' vuoto. Premi 'Ok' e buon lavoro!",  QMessageBox.Ok)
				self.charge_list()
				self.BROWSE_STATUS = 'x'
				self.on_pushButton_new_rec_pressed()
		except Exception as e:
			e = str(e)
			if e.find("no such table"):
				QMessageBox.warning(self, "Alert", "La connessione e' fallita <br><br> Tabella non presente. E' NECESSARIO RIAVVIARE QGIS" + str(e) ,  QMessageBox.Ok)
			else:
				QMessageBox.warning(self, "Alert", "Attenzione rilevato bug! Segnalarlo allo sviluppatore<br> Errore: <br>" + str(e) ,  QMessageBox.Ok)
	def DB_connect(self):
		from pyarchinit_conn_strings import *
		conn = Connection()
		conn_str = conn.conn_str()

		try:
			self.DB_MANAGER = Pyarchinit_db_management(conn_str)
			self.DB_MANAGER.connection()
		except Exception as e:
			e = str(e)
			QMessageBox.warning(self, "Alert", "Attenzione rilevato bug! Segnalarlo allo sviluppatore <br> Errore: <br>" + str(e) ,  QMessageBox.Ok)
Пример #4
0
	def load_connection(self):
		QMessageBox.warning(self, "Alert", "Sistema in corso di abbandono. A breve verra' eliminato." ,  QMessageBox.Ok)
		from pyarchinit_conn_strings import *

		conn = Connection()
		conn_str = conn.conn_str()
		try:
			self.DB_MANAGER = Pyarchinit_db_management(conn_str)
			self.DB_MANAGER.connection()
		except:
			pass
Пример #5
0
 def on_pushButton_crea_db_sqlite_pressed(self):
     try:
         conn = Connection()
         conn_str = conn.conn_str()
         self.DB_MANAGER = Pyarchinit_db_management(conn_str)
         self.DB_MANAGER.connection()
         self.DB_MANAGER.execute_sql_create_spatialite_db()
     except:
         QMessageBox.warning(
             self, "Alert",
             "L'installazione e' fallita. Riavvia Qgis. Se l'errore persiste verifica che i layer non siano gia' installati oppure sia stia usando un db Postgres",
             QMessageBox.Ok)
     else:
         QMessageBox.warning(self, "Alert",
                             "L'installazione ha avuto successo!",
                             QMessageBox.Ok)
 def connect(self):
     from pyarchinit_conn_strings import *
     conn = Connection()
     conn_str = conn.conn_str()
     try:
         self.DB_MANAGER = Pyarchinit_db_management(conn_str)
         self.DB_MANAGER.connection()
     except Exception as e:
         e = str(e)
         if e.find("no such table"):
             QMessageBox.warning(
                 self, "Alert",
                 "La connessione e' fallita <br><br> Tabella non presente. E' NECESSARIO RIAVVIARE QGIS",
                 QMessageBox.Ok)
         else:
             QMessageBox.warning(
                 self, "Alert",
                 "Attenzione rilevato bug! Segnalarlo allo sviluppatore<br> Errore: <br>"
                 + str(e), QMessageBox.Ok)
Пример #7
0
    def connect(self):
        QMessageBox.warning(
            self, "Alert",
            "Sistema sperimentale. Esporta le schede PDF in /vostro_utente/pyarchinit_DB_folder. Sostituisce i documenti gia' presenti. Se volete conservarli fatene una copia o rinominateli.",
            QMessageBox.Ok)
        from pyarchinit_conn_strings import *

        conn = Connection()
        conn_str = conn.conn_str()
        try:
            self.DB_MANAGER = Pyarchinit_db_management(conn_str)
            self.DB_MANAGER.connection()
        except Exception as e:
            e = str(e)
            if e.find("no such table"):
                QMessageBox.warning(
                    self, "Alert",
                    "La connessione e' fallita <br><br> %s. E' NECESSARIO RIAVVIARE QGIS"
                    % (str(e)), QMessageBox.Ok)
            else:
                QMessageBox.warning(
                    self, "Alert",
                    "Attenzione rilevato bug! Segnalarlo allo sviluppatore<br> Errore: <br>"
                    + str(e), QMessageBox.Ok)
Пример #8
0
def create_dict_field_value(f):
    fields = f  #riceve la lista dei campi
    diz_field_value = {}
    for field in fields:  #per ogni campi esegue una query per ricavare il valore
        field_copy = field[1:]
        print("query su", field_copy)
        value = "qui il valore"  #query al db per ricavare il singolo valore, deve cerca in base a nome_tabella, id record e nome campo
        ##		"""VERIFICARE COME ARRIVA IL DATO DAL DB"""
        diz_field_value[field] = value

    return diz_field_value


#http://www.anthropology-resources.net/Texts/files.html dynamic_replace("il mio /sw preferito: /nome!", ["/gig", "/ugo"],["plugin", "pyArchInit"])

cell_schema = [[
    'Nr US: /us', 'numero di us: /us', '03', 'Area: /area', '05', '06', '07',
    '09'
],
               [
                   'la fava: /us', 'numero di us: /us', '03', 'Area: /area',
                   '05', '06', '07', '09'
               ]]

conn = Connection()
conn_str = conn.conn_str()

db = Pyarchinit_db_management(conn_str)
print(db.query(ast.literal_eval('SITE')))
#print convert_cell_schema(cell_schema, ['/us', '/area'])