Seite 2 von 2

Verfasst: 31.07.2006 17:44
von Kiffi
> Also mit deinem Programm Kiffi, öffnet sich schon ein weisses Fenster, das
> ist sehr gut.

nee, das ist überhaupt nicht gut ;-)

Führe den folgenden Code mal aus. OpenDatabase() und DatabaseQuery()
füllst Du natürlich wieder mit Deinen Werten. Wenn eine MessageBox
kommt, dann stimmt was nicht mit Deiner DB-Verbindung oder Deiner
Abfrage.

Code: Alles auswählen

Enumeration
  #myWindow
  #myEditorGadget
EndEnumeration
 
OpenWindow(#myWindow, #PB_Ignore, #PB_Ignore, 300, 300, "DB", #PB_Window_ScreenCentered | #PB_Window_SystemMenu)
 
CreateGadgetList(WindowID(#myWindow))
 
EditorGadget(#myEditorGadget, 0, 0, 300, 300)
 
InitDatabase()
 
DB = OpenDatabase(#PB_Any, "Deine_ODBC_Connection", "DeinUsername", "DeinPasswort")
 
If DB
 
  Debug DB 
 
  If DatabaseQuery(DB, "Select Top 10 * From DeineTabelle")
   
    ColumnCount = DatabaseColumns(DB) - 1
   
    While NextDatabaseRow(DB)
      DataBaseRow$=""
      For ColumnCounter = 0 To ColumnCount
        DataBaseRow$ + GetDatabaseString(DB, ColumnCounter)
        If ColumnCounter < ColumnCount
          DataBaseRow$ + ";"
        EndIf
      Next
      AddGadgetItem(#myEditorGadget, -1, DataBaseRow$)
    Wend
   
  Else

    MessageRequester("!", "Konnte DatabaseQuery nicht ausführen!")

  EndIf
 
  CloseDatabase(DB)
 
Else

  MessageRequester("!", "Konnte Datenbank nicht öffnen!")

EndIf
 
Repeat
 
Until WaitWindowEvent()=#PB_Event_CloseWindow
Grüße ... Kiffi

Verfasst: 31.07.2006 18:05
von razor
Hallo Kiffi,
Danke ich habe schon alle Probleme dank deiner Hilfe gelöst! :D
Na gut eins habe ich noch: wie kann ich die Spalten sortieren?
Dass es übersichtlich bleibt! ----> ; <----- ist das Trennzeichen für die Spalten. Kann man das ganze irgendwie sortieren und den Spalten Namen geben?Auch eine Leerzeile zwischen den Zeilen!
Kenne mich da garnet aus :(


Code: Alles auswählen

31.07.2006;17:36:21;88;1;1;4;36;36;8066;36;36;2;36;36;1019;1020;115;116;1019;1020;1;1;0;0
31.07.2006;17:37:46;76;1;1;4;36;36;8066;36;36;2;36;36;1019;1020;115;116;1019;1020;1;1;0;0
31.07.2006;17:41:02;215;1;1;4;36;36;8066;36;36;2;36;36;1019;1020;115;116;1019;1020;1;1;0;0
31.07.2006;17:41:32;127;1;1;4;36;36;8066;36;36;2;36;36;1019;1020;115;116;1019;1020;1;1;0;0
31.07.2006;17:42:32;61;1;1;4;36;36;8066;36;36;2;36;36;1019;1020;115;116;1019;1020;1;1;0;0
31.07.2006;17:43:56;216;1;1;4;36;36;8066;36;36;2;36;36;1019;1020;115;116;1019;1020;1;1;0;0
31.07.2006;17:49:52;208;1;1;4;36;36;8066;36;36;2;36;36;1019;1020;115;116;1019;1020;1;1;0;0


Vielen Dank dass du mir so schnell helfen konntest. Hätte ich nicht gedacht.

Verfasst: 31.07.2006 20:19
von Kiffi
> Na gut eins habe ich noch: wie kann ich die Spalten sortieren?

ja, das macht man aber in Deinem Fall mit einer leicht veränderten
Datenbankabfrage.

Nehmen wir an, Deine Tabelle heisst Adressen und Du möchtest nach
Nachnamen sortieren, so würde Deine Abfrage folgendermaßen aussehen:

Code: Alles auswählen

DatabaseQuery(DB, "Select Top 10 * From Adressen Order By Nachname") 
> Auch eine Leerzeile zwischen den Zeilen!

einfach hinter

Code: Alles auswählen

AddGadgetItem(#myEditorGadget, -1, DataBaseRow$)
nochmal ein

Code: Alles auswählen

AddGadgetItem(#myEditorGadget, -1, "")
einfügen.

Grüße ... Kiffi

Verfasst: 31.07.2006 20:31
von razor
wow das funzt, suppppi :lol:

Aber wie mache ich das abwärts sortieren des Datums und dass semikolons (;) wegkommen und eine richtige tabelle entsteht.

Von selber komme ich wahrscheinlich nicht drauf!!

Verfasst: 31.07.2006 22:08
von Kiffi
> Aber wie mache ich das abwärts sortieren des Datums

Hinter 'Order' schreibst Du entweder 'Desc' für absteigend oder 'Asc' für
aufsteigend.

> und dass semikolons (;) wegkommen und eine richtige tabelle entsteht.

diese Art der Fensterdarstellung habe ich aus dem Grund gewählt, weil es
die einfachste Möglichkeit ist, um Daten anzuzeigen. Wenn Du so etwas
wie eine Tabellendarstellung haben möchtest, ist ein ListIconGadget() wohl
geeigneter.

> Von selber komme ich wahrscheinlich nicht drauf!!

ja, das merke ich langsam auch ;-)

Gut, wir befinden uns zwar im allgemeinen Forum und nicht im
Anfänger-Forum und es ist auch nicht meine Art, vorgekauten Code zu
präsentieren, aber wenn wir uns darauf einigen, dass Du in Zukunft auch
Willens bist, Dich mal selber vorher ein wenig in der PB-Hilfe umzuschauen
und die Suchfunktion dieses Boards fleissig zu benutzen, drücke ich noch
mal ein Auge zu. ;-)

Schreib mal bitte, wie die Tabelle heisst, die Du auslesen willst und wie die
darin enthaltenen Felder benannt sind.

Grüße ... Kiffi

// Edit: Das Du das Crossposten nicht sein lassen kannst,
ziehe ich hiermit mein Angebot zurück. Dir wird ja schon an anderer Stelle
geholfen.
/:->

Verfasst: 01.08.2006 18:32
von razor
Trotdem vielen Dank Kiffi!!!
Das mit dem Cross posting mache ich doch nur weil ich das Programm schnell fertig haben soll, und so kann ich mir dann viele Meinungen bilden.
Das erwarte ich auch nicht dass du für mich das Programm schreibst, ein bissschen Hirnschmelz muss ich ja auch investieren :wink:

Aber du hast mich auf den richtigen weg gebracht und das finde ich toll!!

also dann

alles gute

Razor