Buchverwaltung auf Basis von Trallala´s Bibliothek

  • Meine sqlite Befehle im Nachfolgenden Script haben leider einen Wurm drin den ich nicht finde!

    Spoiler anzeigen
    [autoit]

    Opt("GUIOnEventMode", 0)
    #NoTrayIcon
    #include <GuiListView.au3>
    #include <GUIConstants.au3>
    #include "SQLite.au3"
    #include <Date.au3>
    ; ---> gtaspider
    Global Const $NM_FIRST = 0
    Global Const $NM_DBLCLK = -3
    Global $ListView
    ; <---
    $datei1 = @ScriptDir & "\bibliothek.db"
    ;
    $a_Status = ""
    $b_Status = ""
    $i_Status = ""
    $s_Status = ""
    $v_Status = ""
    $i_Bearbeiten = ""
    ;--- Haupt-Menue
    ;
    $Haupt_Menue = GUICreate("", 580, 488, -1, -1);--> ,$WS_POPUPWINDOW,$WS_EX_TOOLWINDOW)
    GUISetBkColor(0x004A6F)
    $Menue1 = GUICtrlCreateGroup("", 8, 4, 564, 474)
    $LabelEins = GUICtrlCreateLabel("",16,30,554,20,$SS_CENTER)
    GUICtrlSetData ($LabelEins, "Bibliothek V 1.0.0.30082006 beta 3 (C)2006 by Trallala")
    GUICtrlSetFont($LabelEins, 10, 400, 0, "")
    GUICtrlSetColor($LabelEins, 0xC0C0FF)
    GUICtrlCreateLabel("Neue Bücher",100,120,250,20)
    GUICtrlSetFont(-1, 12, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0FF)
    $Eingabe = GUICtrlCreateButton("Eingeben",420, 120, 60, 20)
    GUICtrlCreateLabel("Nummer, Titel, Autor, Jahrgang",100,170,300,20)
    GUICtrlSetFont(-1, 12, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0FF)
    $Suche = GUICtrlCreateButton("Suchen",420, 170, 60, 20)
    GUICtrlCreateLabel("Archiv-Übersicht",100,220,250,20)
    GUICtrlSetFont(-1, 12, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0FF)
    $Archiv = GUICtrlCreateButton("Archiv",420, 220, 60, 20)
    GUICtrlCreateLabel("Verleih-Übersicht",100,270,220,20)
    GUICtrlSetFont(-1, 12, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0FF)
    $Verleih = GUICtrlCreateButton("Verleih",420, 270, 60, 20)
    GUICtrlCreateLabel("Gesamt-Übersicht",100,320,220,20)
    GUICtrlSetFont(-1, 12, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0FF)
    $Gesamt = GUICtrlCreateButton("Gesamt",420, 320, 60, 20)
    GUICtrlCreateLabel("Programm verlassen",100,370,320,20)
    GUICtrlSetFont(-1, 12, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0FF)
    $Beenden = GUICtrlCreateButton("Beenden",420, 370, 60, 20)
    $Stelle = 0
    $Treffer = 0
    GUISetState()
    ;
    ; --- Eingabe-Menue
    ;
    $Eingabe_Menue = GUICreate("", 580, 488, -1, -1); --> ,$WS_POPUPWINDOW,$WS_EX_TOOLWINDOW)
    GUISetBkColor(0x004A6F)
    $Menue2 = GUICtrlCreateGroup("", 8, 4, 564, 474)
    $LabelEins = GUICtrlCreateLabel("",16,30,554,20,$SS_CENTER)
    GUICtrlSetData ($LabelEins, "Bibliothek V 1.0.0.30082006 beta 3 (C)2006 by Trallala, modded by computerfritze")
    GUICtrlSetFont($LabelEins, 10, 400, 0, "")
    GUICtrlSetColor($LabelEins, 0xC0C0FF)
    $i_Bearbeiten = GUICtrlCreateLabel("",115,110,100,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0x0FFCA00)
    GUICtrlCreateLabel ("Anzahl", 115,140,100,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0FF)
    $i_Anzahl= GUICtrlCreateEdit("", 215, 140, 70, 20,BitOR($ES_NUMBER,$ES_AUTOVSCROLL,$ES_WANTRETURN))
    GUICtrlSetLimit ($i_Anzahl , 8)
    GUICtrlCreateLabel ("Titel", 115,170,100,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0FF)
    $i_Titel = GUICtrlCreateEdit("", 215, 170, 250, 20,BitOR($ES_AUTOVSCROLL,$ES_WANTRETURN))
    GUICtrlSetLimit ($i_Titel , 40)
    GUICtrlCreateLabel ("Verlag", 115,200,100,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0FF)
    $i_Verlag = GUICtrlCreateEdit("", 215, 200, 125, 20,BitOR($ES_AUTOVSCROLL,$ES_WANTRETURN))
    GUICtrlSetLimit ($i_Verlag, 20)
    GUICtrlCreateLabel ("Jahrgang", 115,230,100,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0FF)
    $i_Jahrgang = GUICtrlCreateEdit("", 215, 230, 35, 20,BitOR($ES_NUMBER,$ES_AUTOVSCROLL,$ES_WANTRETURN))
    GUICtrlSetLimit ($i_Jahrgang, 4)
    GUICtrlCreateLabel ("Stelle:", 115,260,100,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0FF)
    GUIStartGroup()
    $Check_Verleih = GUICtrlCreateCheckbox("Archiv", 215, 260, 60, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xA0DC00)
    $Label_Verleih1 = GUICtrlCreateLabel ("Ausgeliehen an:", 115,290,100,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0FF)
    $i_wer = GUICtrlCreateEdit("", 215, 290, 125, 20,BitOR($ES_AUTOVSCROLL,$ES_WANTRETURN))
    GUICtrlSetLimit ($i_wer , 20)
    $Label_Verleih2 = GUICtrlCreateLabel ("Ausgabe:", 115,320,100,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0FF)
    $i_date1 = GUICtrlCreateDate ("", 215,320,80,20,$WS_TABSTOP)
    $Label_Verleih3 = GUICtrlCreateLabel ("Rückgabe:", 115,350,100,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0FF)
    $i_date2 = GUICtrlCreateDate ("", 215,350,80,20,$WS_TABSTOP )
    ;
    $i_Status = GUICtrlCreateLabel ("", 115,400,235,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xFEADD1)
    ;
    $Eingabe_Loeschen = GUICtrlCreateButton("Löschen",265, 440, 60, 20)
    $Eingabe_Speichern = GUICtrlCreateButton("Speichern",375, 440, 60, 20)
    $Eingabe_Aendern = GUICtrlCreateButton("Ändern",375, 440, 60, 20)
    $Eingabe_Abbruch = GUICtrlCreateButton("Abbruch",485, 440, 60, 20)
    ;
    ;--- Such-Menue
    ;
    $Such_Menue = GUICreate("", 580, 488, -1, -1); --> ,$WS_POPUPWINDOW,$WS_EX_TOOLWINDOW)
    GUISetBkColor(0x004A6F)
    $Menue3 = GUICtrlCreateGroup("", 8, 4, 564, 474)
    $LabelEins = GUICtrlCreateLabel("",16,30,554,20,$SS_CENTER)
    GUICtrlSetData ($LabelEins, "Bibliothek V 1.0.0.30082006 beta 3 (C)2006 by Trallala")
    GUICtrlSetFont($LabelEins, 10, 400, 0, "")
    GUICtrlSetColor($LabelEins, 0xC0C0FF)
    GUICtrlCreateLabel("Suche nach:",115,150,80,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xFFCA00)
    GUIStartGroup()
    $radio_suche1 = GUICtrlCreateRadio ("Nummer", 115,180,100,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0FF)
    GUICtrlSetState ($radio_suche1, $GUI_CHECKED)
    $Suche_das = 1
    $s_Nr = GUICtrlCreateEdit("", 215, 180, 70, 20,BitOR($ES_AUTOVSCROLL,$ES_WANTRETURN))
    GUICtrlSetLimit ($s_Nr , 8)
    $radio_suche2 = GUICtrlCreateRadio ("Titel", 115,210,100,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0FF)
    $s_Titel = GUICtrlCreateEdit("", 215, 210, 250, 20,BitOR($ES_AUTOVSCROLL,$ES_WANTRETURN))
    GUICtrlSetLimit ($s_Titel , 40)
    $radio_suche3 = GUICtrlCreateRadio ("Autor", 115,240,100,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0FF)
    $s_Autor = GUICtrlCreateEdit("", 215, 240, 100, 20,BitOR($ES_AUTOVSCROLL,$ES_WANTRETURN))
    GUICtrlSetLimit ($s_Autor, 20)
    $radio_suche4 = GUICtrlCreateRadio ("Jahrgang", 115,270,100,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0FF)
    $s_Jahrgang = GUICtrlCreateEdit("", 215, 270, 35, 20,BitOR($ES_NUMBER,$ES_AUTOVSCROLL,$ES_WANTRETURN))
    GUICtrlSetLimit ($s_Jahrgang, 4)
    GUICtrlCreateLabel("Suche in:",115,300,80,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0FF)
    $Check_Suche = GUICtrlCreateCheckbox("Archiv", 215, 300, 60, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xA0DC00)
    $Suche_Start = GUICtrlCreateButton("Suche",395, 440, 60, 20)
    $Suche_Abbruch = GUICtrlCreateButton("Abbruch",485, 440, 60, 20)
    ;
    ;--- Archiv-Übersicht
    ;
    $Archiv_Menue = GUICreate("", 580, 488, -1, -1); --> ,$WS_POPUPWINDOW,$WS_EX_TOOLWINDOW)
    GUISetBkColor(0x004A6F)
    $Menue5 = GUICtrlCreateGroup("", 8, 4, 564, 474)
    $LabelEins = GUICtrlCreateLabel("",16,30,554,20,$SS_CENTER)
    GUICtrlSetData ($LabelEins, "Bibliothek V 1.0.0.30082006 beta 3 (C)2006 by Trallala")
    GUICtrlSetFont($LabelEins, 10, 400, 0, "")
    GUICtrlSetColor($LabelEins, 0xC0C0FF)
    GUICtrlCreateLabel("Archiv-Übersicht:",30,60,110,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xFFCA00)
    $ListView1 = GUICtrlCreateListView("ID: |Nummer: |Titel: |Autor: |Jahrgang: ", 30, 90, 518, 320)
    ;
    ;
    GUICtrlCreateLabel("Mit einem Doppel-Click auf den gewünschten Eintrag, können",30,420,400,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0C0)
    GUICtrlCreateLabel("Daten geändert und gelöscht werden.",30,440,400,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0C0)
    $Archiv_Abbruch = GUICtrlCreateButton("Abbruch",485, 440, 60, 20)
    ;
    ;--- Verleih-Übersicht
    ;
    $Verleih_Menue = GUICreate("", 580, 488, -1, -1); --> ,$WS_POPUPWINDOW,$WS_EX_TOOLWINDOW)
    GUISetBkColor(0x004A6F)
    $Menue6 = GUICtrlCreateGroup("", 8, 4, 564, 474)
    $LabelEins = GUICtrlCreateLabel("",16,30,554,20,$SS_CENTER)
    GUICtrlSetData ($LabelEins, "Bibliothek V 1.0.0.30082006 beta 3 (C)2006 by Trallala")
    GUICtrlSetFont($LabelEins, 10, 400, 0, "")
    GUICtrlSetColor($LabelEins, 0xC0C0FF)
    GUICtrlCreateLabel("Verleih-Übersicht:",30,60,110,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xFFCA00)
    $ListView2 = GUICtrlCreateListView("ID: |Nummer: |Titel: |Autor: |Jahrgang: |Verleih: (Person) |Ausgabe: |Rückgabe: ", 30, 90, 518, 320)
    ;
    ;
    GUICtrlCreateLabel("Mit einem Doppel-Click auf den gewünschten Eintrag, können",30,420,400,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0C0)
    GUICtrlCreateLabel("Daten geändert und gelöscht werden.",30,440,400,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0C0)
    $Verleih_Abbruch = GUICtrlCreateButton("Abbruch",485, 440, 60, 20)
    ;
    ;
    ;--- Archiv-Treffer
    ;
    $A_treffer = GUICreate("", 580, 488, -1, -1); --> ,$WS_POPUPWINDOW,$WS_EX_TOOLWINDOW)
    GUISetBkColor(0x004A6F)
    $Menue7 = GUICtrlCreateGroup("", 8, 4, 564, 474)
    $LabelEins = GUICtrlCreateLabel("",16,30,554,20,$SS_CENTER)
    GUICtrlSetData ($LabelEins, "Bibliothek V 1.0.0.30082006 beta 3 (C)2006 by Trallala")
    GUICtrlSetFont($LabelEins, 10, 400, 0, "")
    GUICtrlSetColor($LabelEins, 0xC0C0FF)
    GUICtrlCreateLabel("Archiv-Treffer:",30,60,110,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xFFCA00)
    $ListView3 = GUICtrlCreateListView("ID: |Nummer: |Titel: |Autor: |Jahrgang: |Verleih: (Person) |Ausgabe: |Rückgabe: ", 30, 90, 518, 320)
    ;
    ;
    GUICtrlCreateLabel("Mit einem Doppel-Click auf den gewünschten Eintrag, können",30,420,400,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0C0)
    GUICtrlCreateLabel("Daten geändert und gelöscht werden.",30,440,400,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0C0)
    $A_Abbruch = GUICtrlCreateButton("Abbruch",485, 440, 60, 20)
    ;
    ;--- Verleih-Treffer
    ;
    $V_treffer = GUICreate("", 580, 488, -1, -1); --> ,$WS_POPUPWINDOW,$WS_EX_TOOLWINDOW)
    GUISetBkColor(0x004A6F)
    $Menue8 = GUICtrlCreateGroup("", 8, 4, 564, 474)
    $LabelEins = GUICtrlCreateLabel("",16,30,554,20,$SS_CENTER)
    GUICtrlSetData ($LabelEins, "Bibliothek V 1.0.0.30082006 beta 3 (C)2006 by Trallala")
    GUICtrlSetFont($LabelEins, 10, 400, 0, "")
    GUICtrlSetColor($LabelEins, 0xC0C0FF)
    GUICtrlCreateLabel("Verleih-Treffer:",30,60,110,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xFFCA00)
    $ListView4 = GUICtrlCreateListView("ID: |Nummer: |Titel: |Autor: |Jahrgang: |Verleih: (Person) |Ausgabe: |Rückgabe: ", 30, 90, 518, 320)
    ;
    ;
    GUICtrlCreateLabel("Mit einem Doppel-Click auf den gewünschten Eintrag, können",30,420,400,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0C0)
    GUICtrlCreateLabel("Daten geändert und gelöscht werden.",30,440,400,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0C0)
    $V_Abbruch = GUICtrlCreateButton("Abbruch",485, 440, 60, 20)
    ;
    ;
    ;--- Gesamt-Übersicht
    ;
    $Gesamt_Menue = GUICreate("", 580, 488, -1, -1); --> ,$WS_POPUPWINDOW,$WS_EX_TOOLWINDOW)
    GUISetBkColor(0x004A6F)
    $Menue9 = GUICtrlCreateGroup("", 8, 4, 564, 474)
    $LabelEins = GUICtrlCreateLabel("",16,30,554,20,$SS_CENTER)
    GUICtrlSetData ($LabelEins, "Bibliothek V 1.0.0.30082006 beta 3 (C)2006 by Trallala")
    GUICtrlSetFont($LabelEins, 10, 400, 0, "")
    GUICtrlSetColor($LabelEins, 0xC0C0FF)
    GUICtrlCreateLabel("Gesamt-Übersicht:",30,60,110,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xFFCA00)
    $ListView5 = GUICtrlCreateListView("ID: |Nummer: |Titel: |Autor: |Jahrgang: ", 30, 90, 518, 320)
    ;
    GUICtrlCreateLabel("Mit einem Doppel-Click auf den gewünschten Eintrag, können",30,420,400,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0C0)
    GUICtrlCreateLabel("Daten geändert und gelöscht werden.",30,440,400,20)
    GUICtrlSetFont(-1, 10, 400, 0, "")
    GUICtrlSetColor(-1, 0xC0C0C0)
    $Gesamt_Abbruch = GUICtrlCreateButton("Abbruch",485, 440, 60, 20)

    [/autoit] [autoit][/autoit] [autoit]

    GUIRegisterMsg(0x004E, "_DoubleClickOnListView");Die Funktion wird bei einem Klick auf die GUI aufgerufen!

    [/autoit] [autoit][/autoit] [autoit]

    ;
    ;
    GUISetState($Haupt_Menue)
    While 1
    $msg = GuiGetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE
    _DoSQL("VACUUM Biblio1;", $datei1)
    ExitLoop
    ;
    ;--- Eingabe-Menue - start mit Eingabe-Modus: Archiv
    Case $msg = $Eingabe
    ;
    GUICtrlSetData($i_Bearbeiten,"Eingabe:")
    GUICtrlSetData($i_Anzahl,"")
    GUICtrlSetData($i_Titel,"")
    GUICtrlSetData($i_Verlag,"")
    GUICtrlSetData($i_Jahrgang,"")
    GUICtrlSetData($i_wer,"")
    GUICtrlSetState($Label_Verleih1, $GUI_HIDE)
    GUICtrlSetState($i_wer, $GUI_HIDE)
    GUICtrlSetState($Label_Verleih2, $GUI_HIDE)
    GUICtrlSetState($i_date1, $GUI_HIDE)
    GUICtrlSetState($Label_Verleih3, $GUI_HIDE)
    GUICtrlSetState($i_date2, $GUI_HIDE)
    GUICtrlSetState ($Check_Verleih, $GUI_UNCHECKED)
    GUICtrlSetData($Check_Verleih,"Archiv")
    GUICtrlSetState($Eingabe_Loeschen, $GUI_HIDE)
    GUICtrlSetState($Eingabe_Aendern, $GUI_HIDE)
    GUICtrlSetState($Eingabe_Speichern, $GUI_SHOW)
    GUISetState(@SW_HIDE, $Haupt_Menue)
    GUISwitch($Eingabe_Menue)
    GUISetState()
    ;
    ;--- Checkbox endscheidet ob die Daten für's Archiv oder Verleih gespeichert werden.
    Case $Msg = $Check_Verleih
    ;
    If GUICtrlRead( $Check_Verleih) = 4 Then
    GUICtrlSetData($Check_Verleih,"Archiv")
    GUICtrlSetState($Label_Verleih1, $GUI_HIDE)
    GUICtrlSetState($i_wer, $GUI_HIDE)
    GUICtrlSetData($i_wer,"")
    GUICtrlSetState($Label_Verleih2, $GUI_HIDE)
    GUICtrlSetState($i_date1,$GUI_HIDE)
    GUICtrlSetState($Label_Verleih3, $GUI_HIDE)
    GUICtrlSetState($i_date2,$GUI_HIDE)
    $Stelle = 0
    Else
    GUICtrlSetData($Check_Verleih,"Verleih")
    GUICtrlSetState($Label_Verleih1, $GUI_SHOW)
    GUICtrlSetState($i_wer, $GUI_SHOW)
    GUICtrlSetState($Label_Verleih2, $GUI_SHOW)
    GUICtrlSetState($i_date1, $GUI_SHOW)
    GUICtrlSetState($Label_Verleih3, $GUI_SHOW)
    GUICtrlSetState($i_date2, $GUI_SHOW)
    $Stelle = 1
    EndIf
    ;
    ;--- Eingaben speichern
    Case $Msg = $Eingabe_Speichern
    If GUICtrlRead($i_Anzahl) = "" Then
    GUICtrlSetData($i_Status,"")
    GUICtrlSetData($i_Status,"Bitte die Anzahl eingeben!")
    ElseIf GUICtrlRead($i_Anzahl) = "0" Then
    GUICtrlSetData($i_Status,"")
    GUICtrlSetData($i_Status,"Bitte die Anzahl größer als 0 angeben!")
    ElseIf GUICtrlRead($i_Titel) = "" Then
    GUICtrlSetData($i_Status,"")
    GUICtrlSetData($i_Status,"Bitte den Titel eingeben!")
    ElseIf GUICtrlRead($i_Verlag) = "" Then
    GUICtrlSetData($i_Status,"")
    GUICtrlSetData($i_Status,"Bitte den Verlag eingeben!")
    ElseIf GUICtrlRead($i_Jahrgang) = "" Then
    GUICtrlSetData($i_Status,"")
    GUICtrlSetData($i_Status,"Bitte den Jahrgang eingeben!")
    ElseIf GUICtrlRead($Check_Verleih) = 1 And GUICtrlRead($i_wer) = "" Then
    GUICtrlSetData($i_Status,"")
    GUICtrlSetData($i_Status,"Bitte Eingabe fortsetzen!")
    Else
    GUICtrlSetData($i_Status,"Einen Moment bitte ...")
    _speichern()
    GUICtrlSetData($i_Status,"Daten wurden gespeichert!")
    EndIf

    Case $Msg = $Eingabe_Loeschen
    GUICtrlSetState($Eingabe_Loeschen, $GUI_HIDE)
    _Loeschen()
    ;
    ; --- Such-Menue - start
    Case $msg = $Suche
    ;
    ;
    GUICtrlSetState($Check_Suche, $GUI_UNCHECKED)
    GUICtrlSetData($Check_Suche,"Archiv")
    GUISetState(@SW_HIDE,$Haupt_Menue)
    GUISwitch($Such_Menue)
    GUISetState()
    ;
    ; --- Was gesucht werden soll
    Case $msg = $radio_suche1
    ;GUICtrlSetData($Suche_Nummer, "")
    GUICtrlSetData($s_Titel, "")
    GUICtrlSetData($s_Autor, "")
    GUICtrlSetData($s_Jahrgang, "")
    $Suche_das = 1
    Case $msg = $radio_suche2
    GUICtrlSetData($s_Nr, "")
    ;GUICtrlSetData($Suche_Titel, "")
    GUICtrlSetData($s_Autor, "")
    GUICtrlSetData($s_Jahrgang, "")
    $Suche_das = 2
    Case $msg = $radio_suche3
    GUICtrlSetData($s_Nr, "")
    GUICtrlSetData($s_Titel, "")
    ;GUICtrlSetData($Suche_Autor, $GUI_ENABLE)
    GUICtrlSetData($s_Jahrgang, "")
    $Suche_das = 3
    Case $msg = $radio_suche4
    GUICtrlSetData($s_Nr, "")
    GUICtrlSetData($s_Titel, "")
    GUICtrlSetData($s_Autor, "")
    $Suche_das = 4
    ;GUICtrlSetData($Suche_Jahrgang, $GUI_ENABLE)
    ; --- Wo gesucht werden soll
    Case $msg = $Check_Suche
    If GUICtrlRead( $Check_Suche) = 4 Then
    GUICtrlSetData($Check_Suche,"Archiv")
    $Stelle = 0
    Else
    GUICtrlSetData($Check_Suche,"Verleih")
    $Stelle = 1
    EndIf
    ;
    Case $msg = $Suche_Start
    ;
    If $Stelle = 0 Then
    GUISetState(@SW_HIDE,$Such_Menue)
    GUISwitch($A_treffer)
    GUISetState()
    _GUICtrlListViewDeleteAllItems($ListView3)
    $x_Suche = _DoSQL("SELECT * FROM Biblio1 WHERE `Stelle`='0';",$datei1)
    For $i = 1 To $x_Suche[0][0]
    If $Suche_das = 1 And $x_Suche[$i][1] = GUICtrlRead($s_Nr) Then
    $inhalt3 = $x_Suche[$i][0] & "|" & $x_Suche[$i][1] & "|" & $x_Suche[$i][2] & "|" & $x_Suche[$i][3] & "|" & $x_Suche[$i][4]
    GUICtrlCreateListViewItem($inhalt3, $ListView3)
    ElseIf $Suche_das = 2 And $x_Suche[$i][2] = GUICtrlRead($s_Titel) Then
    $inhalt3 = $x_Suche[$i][0] & "|" & $x_Suche[$i][1] & "|" & $x_Suche[$i][2] & "|" & $x_Suche[$i][3] & "|" & $x_Suche[$i][4]
    GUICtrlCreateListViewItem($inhalt3, $ListView3)
    ElseIf $Suche_das = 3 And $x_Suche[$i][3] = GUICtrlRead($s_Autor) Then
    $inhalt3 = $x_Suche[$i][0] & "|" & $x_Suche[$i][1] & "|" & $x_Suche[$i][2] & "|" & $x_Suche[$i][3] & "|" & $x_Suche[$i][4]
    GUICtrlCreateListViewItem($inhalt3, $ListView3)
    ElseIf $Suche_das = 4 And $x_Suche[$i][4] = GUICtrlRead($s_Jahrgang) Then
    $inhalt3 = $x_Suche[$i][0] & "|" & $x_Suche[$i][1] & "|" & $x_Suche[$i][2] & "|" & $x_Suche[$i][3] & "|" & $x_Suche[$i][4]
    GUICtrlCreateListViewItem($inhalt3, $ListView3)
    EndIf
    Next
    $Treffer = 0
    $Stelle = 0
    $ListView = $ListView3
    ElseIf $Stelle = 1 Then
    GUISetState(@SW_HIDE,$Such_Menue)
    GUISwitch($V_treffer)
    GUISetState()
    _GUICtrlListViewDeleteAllItems($ListView4)
    $x_Suche = _DoSQL("SELECT * FROM Biblio1 WHERE `Stelle`='1';",$datei1)
    For $i = 1 To $x_Suche[0][0]
    If $Suche_das = 1 And $x_Suche[$i][1] = GUICtrlRead($s_Nr) Then
    $inhalt4 = $x_Suche[$i][0] & "|" & $x_Suche[$i][1] & "|" & $x_Suche[$i][2] & "|" & $x_Suche[$i][3] & "|" & $x_Suche[$i][4] & "|" & $x_Suche[$i][6] & "|" & $x_Suche[$i][7] & "|" & $x_Suche[$i][8]
    GUICtrlCreateListViewItem($inhalt4, $ListView4)
    ElseIf $Suche_das = 2 And $x_Suche[$i][2] = GUICtrlRead($s_Titel) Then
    $inhalt4 = $x_Suche[$i][0] & "|" & $x_Suche[$i][1] & "|" & $x_Suche[$i][2] & "|" & $x_Suche[$i][3] & "|" & $x_Suche[$i][4] & "|" & $x_Suche[$i][6] & "|" & $x_Suche[$i][7] & "|" & $x_Suche[$i][8]
    GUICtrlCreateListViewItem($inhalt4, $ListView4)
    ElseIf $Suche_das = 3 And $x_Suche[$i][3] = GUICtrlRead($s_Autor) Then
    $inhalt4 = $x_Suche[$i][0] & "|" & $x_Suche[$i][1] & "|" & $x_Suche[$i][2] & "|" & $x_Suche[$i][3] & "|" & $x_Suche[$i][4] & "|" & $x_Suche[$i][6] & "|" & $x_Suche[$i][7] & "|" & $x_Suche[$i][8]
    GUICtrlCreateListViewItem($inhalt4, $ListView4)
    ElseIf $Suche_das = 4 And $x_Suche[$i][4] = GUICtrlRead($s_Jahrgang) Then
    $inhalt4 = $x_Suche[$i][0] & "|" & $x_Suche[$i][1] & "|" & $x_Suche[$i][2] & "|" & $x_Suche[$i][3] & "|" & $x_Suche[$i][4] & "|" & $x_Suche[$i][6] & "|" & $x_Suche[$i][7] & "|" & $x_Suche[$i][8]
    GUICtrlCreateListViewItem($inhalt4, $ListView4)
    EndIf
    Next
    $Treffer = 1
    $Stelle = 1
    $ListView = $ListView4
    EndIf
    ;
    ;--- Archiv-Menue - start
    Case $msg = $Archiv
    ;
    GUISetState(@SW_HIDE,$Haupt_Menue)
    GUISwitch($Archiv_Menue)
    GUISetState()
    _GUICtrlListViewDeleteAllItems($ListView1)
    $B_Archiv = _DoSQL("SELECT * FROM Biblio1 WHERE `Stelle`='0';",$datei1)
    For $i = 1 To $B_Archiv[0][0]
    $inhalt1 = $B_Archiv[$i][0] & "|" & $B_Archiv[$i][1] & "|" & $B_Archiv[$i][2] & "|" & $B_Archiv[$i][3] & "|" & $B_Archiv[$i][4]
    GUICtrlCreateListViewItem($inhalt1, $ListView1)
    Next
    $Stelle = 0
    $ListView = $ListView1
    ;
    ;--- Verleih-Menue - start
    Case $msg = $Verleih
    GUISetState(@SW_HIDE,$Haupt_Menue)
    GUISwitch($Verleih_Menue)
    GUISetState()
    _GUICtrlListViewDeleteAllItems($ListView2)
    $B_Verleih = _DoSQL("SELECT * FROM Biblio1 WHERE `Stelle`='1';",$datei1)
    For $i = 1 To $B_Verleih[0][0]
    $inhalt2 = $B_Verleih[$i][0] & "|" & $B_Verleih[$i][1] & "|" & $B_Verleih[$i][2] & "|" & $B_Verleih[$i][3] & "|" & $B_Verleih[$i][4] & "|" & $B_Verleih[$i][6] & "|" & $B_Verleih[$i][7] & "|" & $B_Verleih[$i][8]
    GUICtrlCreateListViewItem($inhalt2, $ListView2)
    Next
    $Treffer = 1
    $Stelle = 1
    $ListView = $ListView2
    ;
    ;--- Gesamt-Menue - start
    Case $msg = $Gesamt
    ;
    GUISetState(@SW_HIDE,$Haupt_Menue)
    GUISwitch($Gesamt_Menue)
    GUISetState()
    _GUICtrlListViewDeleteAllItems($ListView5)
    $B_Gesamt = _DoSQL("SELECT * FROM Biblio1",$datei1)
    For $i = 1 To $B_Gesamt[0][0]
    $inhalt5 = $B_Gesamt[$i][0] & "|" & $B_Gesamt[$i][1] & "|" & $B_Gesamt[$i][2] & "|" & $B_Gesamt[$i][3] & "|" & $B_Gesamt[$i][4]
    GUICtrlCreateListViewItem($inhalt5, $ListView5)
    Next
    $Stelle = 0
    $ListView = $ListView5
    ;--- ABBRUCH - zurück in's Hauptmenue
    Case $msg = $Eingabe_Abbruch
    GUICtrlSetData($i_Status,"")
    GUISetState(@SW_HIDE, $Eingabe_Menue)
    GUISwitch($Haupt_Menue)
    GUISetState()
    ;
    ;
    Case $msg = $Suche_Abbruch
    $Stelle = 0
    GUICtrlSetData($s_Status,"")
    GUICtrlSetState ($Check_Verleih, $GUI_UNCHECKED)
    GUISetState(@SW_HIDE, $Such_Menue)
    GUISwitch($Haupt_Menue)
    GUISetState()
    Case $msg = $Archiv_Abbruch
    $Stelle = 0
    GUICtrlSetData($a_Status,"")
    GUISetState(@SW_HIDE, $Archiv_Menue)
    GUISwitch($Haupt_Menue)
    GUISetState()
    Case $msg = $Verleih_Abbruch
    $Stelle = 0
    ;GUICtrlSetData($v_Status,"")
    GUISetState(@SW_HIDE, $Verleih_Menue)
    GUISwitch($Haupt_Menue)
    GUISetState()
    ;
    Case $msg = $Gesamt_Abbruch
    $Stelle = 0
    ;GUICtrlSetData($v_Status,"")
    GUISetState(@SW_HIDE, $Gesamt_Menue)
    GUISwitch($Haupt_Menue)
    GUISetState()
    ;
    Case $msg = $A_Abbruch
    $Stelle = 0
    GUICtrlSetData($v_Status,"")
    GUISetState(@SW_HIDE, $A_treffer)
    GUISwitch($Haupt_Menue)
    GUISetState()
    Case $msg = $V_Abbruch
    $Stelle = 0
    ;GUICtrlSetData($v_Status,"")
    GUISetState(@SW_HIDE, $V_treffer)
    GUISwitch($Haupt_Menue)
    GUISetState()
    ;
    ;--- BEENDEN - Beenden-Button
    Case $msg = $Beenden
    _DoSQL("VACUUM Biblio1;", $datei1)
    ExitLoop
    EndSelect
    WEnd
    ;
    ;
    ;--- Eingabe (neue Daten speichern)
    Func _Speichern()
    Local $i_Nummer
    $i_UrNummer=IniRead("Nummer.bwlfbgwf", "Main", "Main", "1")
    Local $i_Buch
    For $i_Nummer = $i_UrNummer To $i_Anzahl
    _DoSQL("INSERT INTO Biblio1 (id, Nummer, Titel, Autor, Jahrgang, Stelle, weraus, vonwann, biswann) VALUES (NULL, '" & GUICtrlRead($i_Nummer) & "', '" & GUICtrlRead($i_Titel) & "', '" & GUICtrlRead($i_Verlag) & "', '" & GUICtrlRead($i_Jahrgang) & "', '" & $Stelle & "', '" & GUICtrlRead($i_wer) & "', '" & GUICtrlRead($i_date1) & "', '" & GUICtrlRead($i_date2) & "');", $datei1)
    Next
    IniWrite("Nummer.bwlfbgwf", "Main", "Main", $i_UrNummer+$i_Anzahl)
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    ;
    Func _Loeschen()
    If MsgBox(32+8192+4, "Löschen?", "Soll der Datensatz mit der " & @CRLF & "Nummer " & GUICtrlRead($i_Anzahl) & @CRLF & "wirklich gelöscht werden?") = 6 Then
    _DoSQL("DELETE FROM Biblio1 WHERE `Nummer`='" & GUICtrlRead($i_Anzahl) & "';",$datei1)
    EndIf
    ;_DoSQL("VACUUM Biblio1;", $datei1)
    EndFunc
    ;
    ; ---> gtaspider
    Func _DoubleClickOnListView($hWndGUI, $MsgID, $wParam, $lParam);Die Eigentliche Funktion

    Local $tagNMHDR, $event, $hwndFrom, $code
    $tagNMHDR = DllStructCreate("int;int;int", $lParam)
    If @error Then Return
    $event = DllStructGetData($tagNMHDR, 3); Checkt wie das EVENT aussieht
    $LVSRead = StringSplit(GUICtrlRead(GUICtrlRead($wParam)), "|")
    If $Stelle = 0 Then
    If $wParam = $ListView Then;Wenn der Klick auf das ListView ging..
    If $event = $NM_DBLCLK Then;.. Wenn es ein DoppelKlick war
    If $LVSRead[1] = '0' Then Return 0
    ; Hier kommt hin was er machen soll:
    GUISetState(@SW_HIDE,$Archiv_Menue)
    GUISwitch($Eingabe_Menue)
    GUISetState()
    GUICtrlSetData($i_Bearbeiten,"Ändern:")
    $indiz = $LVSRead[1]
    GUICtrlSetData($i_Anzahl,$LVSRead[2])
    GUICtrlSetData($i_Titel,$LVSRead[3])
    GUICtrlSetData($i_Verlag,$LVSRead[4])
    GUICtrlSetData($i_Jahrgang,$LVSRead[5])
    GUICtrlSetState ($Check_Verleih, $GUI_UNCHECKED)
    GUICtrlSetData($Check_Verleih,"Archiv")
    GUICtrlSetState($Label_Verleih1, $GUI_HIDE)
    GUICtrlSetState($i_wer, $GUI_HIDE)
    GUICtrlSetState($Label_Verleih2, $GUI_HIDE)
    GUICtrlSetState($i_date1,$GUI_HIDE)
    GUICtrlSetState($Label_Verleih3, $GUI_HIDE)
    GUICtrlSetState($i_date2,$GUI_HIDE)
    GUICtrlSetState($Eingabe_Loeschen, $GUI_SHOW)
    GUICtrlSetState($Eingabe_Speichern, $GUI_HIDE)
    GUICtrlSetState($Eingabe_Aendern, $GUI_SHOW)
    EndIf
    EndIf
    ElseIf $Stelle = 1 Then
    If $wParam = $ListView Then;Wenn der Klick auf das ListView ging..
    If $event = $NM_DBLCLK Then;.. Wenn es ein DoppelKlick war
    If $LVSRead[1] = '0' Then Return 0
    ; Hier kommt hin was er machen soll:
    GUISetState(@SW_HIDE,$Verleih_Menue)
    GUISwitch($Eingabe_Menue)
    GUISetState()
    GUICtrlSetData($i_Bearbeiten,"Ändern:")
    $indiz = $LVSRead[1]
    GUICtrlSetData($i_Anzahl,$LVSRead[2])
    GUICtrlSetData($i_Titel,$LVSRead[3])
    GUICtrlSetData($i_Verlag,$LVSRead[4])
    GUICtrlSetData($i_Jahrgang,$LVSRead[5])
    GUICtrlSetState ($Check_Verleih, $GUI_CHECKED)
    GUICtrlSetData($Check_Verleih,"Verleih")
    GUICtrlSetState($Label_Verleih1, $GUI_SHOW)
    GUICtrlSetState($i_wer, $GUI_SHOW)
    GUICtrlSetData($i_wer,$LVSRead[6])
    GUICtrlSetState($Label_Verleih2, $GUI_SHOW)
    GUICtrlSetState($i_date1, $GUI_SHOW)
    GUICtrlSetData($i_date1,$LVSRead[7])
    GUICtrlSetState($Label_Verleih3, $GUI_SHOW)
    GUICtrlSetState($i_date2, $GUI_SHOW)
    GUICtrlSetData($i_date2,$LVSRead[8])
    GUICtrlSetState($Eingabe_Loeschen, $GUI_SHOW)
    GUICtrlSetState($Eingabe_Speichern, $GUI_HIDE)
    GUICtrlSetState($Eingabe_Aendern, $GUI_SHOW)
    EndIf
    EndIf
    EndIf
    $tagNMHDR = 0
    $event = 0
    $lParam = 0
    EndFunc ;==>_DoubleClickOnListView
    ;
    ; ---> peethebee (Danke an jonk!)
    Func _DoSQL($_SQL_Code, $cal_filename)
    Dim $ret_array[250][15]
    ; Datenbank initialisieren und öffnen
    _SQLite_Startup (@ScriptDir & "\sqlite3.dll")
    If @error > 0 Then
    MsgBoX(0, "Meldung", "SQLite-DLL konnte nicht geladen werden")
    Return 0
    EndIf
    ; hier kann man einen Standardpfad festlegen
    $dbname = $cal_filename
    _sqLiTe_opEn ($dbname)
    If @error > 0 Then
    MsgBoX(0, "Meldung", $dbname & " konnte nicht geöffnet werden (Rechte?, Datei in Benutzung?)")
    Return 0
    EndIf
    Dim $hQuery, $aRow
    $iTmp = _SQlite_Query (-1, $_SQL_Code, $hQuery)
    If Not $iTmp = $SQLITE_OK Then
    MsgBoX(0, "Meldung", "SQLite-Befehl verursachte einen Fehler: " & $_SQL_Code)
    EndIf
    $num_results = 0
    While _SQLite_FetchData ($hQuery, $aRow) = $SQLITE_OK
    $num_results += 1
    ; Daten in Array kippen und dann zurückgeben (noch nicht getestet)
    For $i = 0 To UBound($aRow) - 1
    $ret_array[$num_results][$i] = $aRow[$i]
    Next
    WEnd
    ; Länge des Ergebnisses erfassen, Ergebnisse ab $ret_array[1]
    $ret_array[0][0] = $num_results
    $ret_array[0][1] = UBound($aRow)
    $iTmp = _SQLite_Close ()
    If Not $iTmp = $SQLITE_OK Then
    MsgBoX(0, "Meldung", "Datenbank konnte nicht geschlossen werden.")
    MsgBoX(0, "Meldung", "SQLite ErrCode: " & $iTmp)
    MsgBoX(0, "Meldung", "SQLite ErrMsg: " & _SQLite_ErrMsg ())
    Return 0
    EndIf
    _SQLite_Shutdown ()
    Return $ret_array
    EndFunc ;==>_DoSQL
    ; <---
    ; --- EOF

    [/autoit]


    Dieses Script ist ein Mod von trallala´s Bibliothek, und wird von mir so umgeschrieben das man dort Schulbücher, ohne großen Aufwand, eintragen kann, von denen es natürlich viele gleicher Indentität gibt.

  • Hallo Computerfritze

    So wie dieser Thread reingestellt wurde, passt es absolut nicht.

    Wie ich von Anfang an via PM mitteilt, habe ich nichts dagegen wenn du auf Basis meines Scriptes deine "Buchverwaltung" bastelst.

    Aber:

    Sehe ich an Hand des Threadstarst das goldene Tablett mit allerlei Leckereien, worauf man wartet das es doch endlich serviert wird.

    Ich hätte auch gerne erstmal von Dir einen "geistigen" Entwurf. Was hilft es , das gesamte Script zu posten mit lediglich einer irrelevanten ini-abfrage die zudem eh erstmal keine Funktion erfüllt - jedenfalls nicht in meinem Script.

    Wie gesagt wenn für Dein Projekt erstmal der Grundstein gelegt ist, erst dann ist es meiner Meinung nach sinnvoll, eine "Anlehnung" an die "Bibliothek" vorzunehmen. Aber so empfinde ich es als Fehlstart. Etwas mehr Eigeninitiative am Anfang - dann sehen wir weiter.

    Was ich schlußendlich damit sagen will, dürfte jeden klar sein.

    MfG
    trallala