Seite 1 von 1

py2exe + cx_Oracle + python2.6 erzeugt Fehler

Verfasst: Montag 23. Februar 2009, 15:27
von Damaskus
Hallo,
ich hab in den letzten Tagen ein Programm was bisher auf Python2.5 mit wx und cx_Oracle 4.3.1 10g lief auf Python2.6 und cx_Oracle 5.0.1 10g aktualisiert.

Das Programm läuft mit dem Aufruf "python2.6 ARBT2.pyw" problemlos.
Sobald ich es mit py2exe gepackt habe kommt
Traceback (most recent call last):
File "wx\_misc.pyc", line 1342, in Notify
File "wx\_core.pyc", line 14680, in Notify
File "ARBT2.pyw", line 556, in DB_abfrage_Timer
File "ARBT2.pyw", line 606, in DB_Abfrage
NameError: global name 'cx_Oracle' is not defined
der Import sieht so aus:

Code: Alles auswählen

try:
    import cx_Oracle
except ImportError, error:
    import traceback
    print traceback.format_exc()
    debug = True
    from debug_daten import debug_data
und die DB Abfrage so:

Code: Alles auswählen

            try:
                db = cx_Oracle.Connection(str(self.user), str(self.password), "dbserver_ora")
                c = db.cursor()
                c.execute("""SELECT * FROM AUFTRAGGEBER.BELEG WHERE DATUM = :datum AND PROJEKTART = 'A'""", dict(datum=abfrage_Datum))
                erg = c.fetchall()
                c.close()
                db.close()
                self.SetStatusText("Online", 1)
                self.DB_Abfrage_verarbeiten_MaxiFrame(erg)
            except ValueError, error:
                import traceback
                print traceback.format_exc()
                self.PushStatusText("Keine Verbindung zur DB!", 0)
                self.SetStatusText("Offline", 1)
                # Timer reseten und neu starten
                self.key_timer = 30
                self.db_timer.Restart(1000)
Ich probiers jetzt noch mit einer älteren cx_Oracle Version aber ich würd schon gerne die 5.01 verwenden.
Hat jemand eine Idee zu dem Problem?

Gruß
Damaskus

EDIT: Mit cx_Oracle 4.x funktionierts.
Falls trotzdem noch jemand eine Idee dazu hat trotzdem bitte melden :)