Deutsch
Forum

Datenbankeintrag löschen

 
Mit diesem Code lösche ich gezielt einen Datenbankeintrag:
KompilierenMarkierenSeparieren
IF CLICKED(kill%) | MenuItem(60)

    MessageBox(Wollen Sie den Eintrag
    +UPPER$(titel$)+
    wirklich löschen ?,Lösch-Funktion,292)

    IF %Button = 6

        CHDIR pfad$+\+verz01$
        @db(Open, #3, pfad$+\+verz01$+\DB_KATALOG.DBF)
        @db(Use,#3)
        @db(Go, Z%)
        @db(Delete)
        @db(Pack)
        @db(close,#3)
        @db(Open, #4, pfad$+\+verz01$+\DB_KATALOG.DBF)
        @db(Use,#4)
        @db(CreateIndex, NAME, IXNAME)
        @db(CreateIndex, BILD, IXBILD)
        @db(close,#4)
        @db(Open, #5, pfad$+\+verz01$+\DB_KATALOG.DBF)
        @db(Use,#5)
        @db(Index, IXNAME, IXBILD)
        @db(close,#5)
        INHALTS_ANZEIGE Hier wird die Eintragsanzeige aktualisiert
        SetFocus(mn_inhalt&)

    ENDIF

ENDIF


Der Eintrag wird auch gelöscht aber anschliessend stehen die Texte der anderen Daten durcheinander. In der Daten-Bank sind 1 Feld mit dem Namen, 1 Feld mit einem Bildernamen und zwei Memofelder. Alles klappt, bloss das Löschen schlägt Purzelbaum - Was ist falsch ?
 
13.06.2008  
 




Thomas
Freier
Irgendwie habe ich Zweifel, dass das vorher so ging. Im Prinzip kann für ein MEMO-Feld keine Index-Datei erstellt werden.
 
Gruß Thomas
Windows XP SP2, XProfan X2
13.06.2008  
 




Dieter
Zornow
Du öffnest die Datenbank setzt keinen Index und benutzt aber bei db(go,Index die mit Indexvariante anstatt db(GO,feldnr&) Wie Jac schon geschrieben hat dürfen keine Memofelder als Indizes verwendet werden. 4 x Indizes werden auch nicht mehr gepflegt maximal 2
 
Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2
14.06.2008  
 



Nun hab ich nach Euren Ratschlägen den Code modifiziert (im ersten Beitrag hab ich den Code ausgetauscht) und es ist genau so wie vorher. Warum bekomme ich, wenn ich X%=@db(Index, IXNAME, IXBILD) abfrage, eine Null. Laut Hilfe müsste hier eine Eins angezeigt werden. Die Index-Dateien sind doch vorhanden. Seht mir meine blöde Fragerei nach. Nach vielen Jahren Profan-Benutzen arbeite ich das erste Mal mit Datenbank-Dateien. Da sind die Fehler schon vorprogrammiert ! Nobody is perfect !

Nachschlag:
Der Fehler lag bei mir - Getcount ist Nullbasierend (schönes Wort) und die Feldeinträge beginnen mit Eins. Meine Schleife für die Inhaltsanzeige begann auch mit Eins zu zählen und dadurch kam nach dem Löschen eines Datensatzes alles durcheinander ! - Jetzt beginnt die Schleife bei Null und alls klappt.
Danke aber trotzdem für die Tipps zum Thema INDEX
 
14.06.2008  
 




Jac
de
Lad
@Dieter: Ich hatte hier noch nichts geschrieben, schließe mich aber sofort der Meinung an.
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
14.06.2008  
 




Dieter
Zornow
@Jac, du hast recht war ja von Thomas, hatte wohl noch deinen Namen im Kopf, da ich zuvor dein wieder rauf und runter gelesen hatte.
 
Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2
14.06.2008  
 




Jac
de
Lad
Oh du denkst an mich.
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
14.06.2008  
 



...ich krieg noch die Krise
Alles nach Vorschrift gemacht. Löschen geht jetzt, wenn ich den letzten Eintrag in der Gridbox lösche.
Nehme ich einen willkürlichen Eintrag , werden die Texte in den Memo-Feldern vertauscht. - Und was ist das für eine Datei, welche beim Löschen erstellt wird - DB3$$$.D$$ ? - Nervlich total am Boden bitte ich um Aufklärung
 
15.06.2008  
 




Dieter
Zornow
Ich denke mal, dass es mehr mit der Gridbox als mit der Datenbank zusammenhängt, aber ohne zu wissen was du da machst kann dir niemand helfen.
So wie es aussieht liest du die Datenbank in die Gridbox ein, wenn du dann was änderst hat der erste Eintrag in der Gridbox den Index 0 in der Datenbank aber 1 oder wenn du über einen Index einliest irgend eine andere Datensatznummer, da hängt vielleicht dein Fehler.
 
Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2
15.06.2008  
 



@Dieter - sowas in der Art hab ich auch in Verdacht. Arbeite schon mit zwei Variablen (Gridbox und Index) - Schalte ich eine Messagebox dazwischen zur Kontrolle, zeigt mir diese den gewählten Eintrag auch an und er wird gelöscht, aber seltsamerweise verschieben sich die Texte der Memo-Felder - das passiert nur, wenn ich eine freie Auswahl treffe. Der letzte angezeigte Eintrag wird ohne Komplikationen gelöscht. - komme aber noch dahinter
 
15.06.2008  
 




Thomas
Freier
@Horst: ich mach es etwas unkonventionell....Datensatz lesen...Felderinhalte + Datensatznummer mit Spaltenbreite 0 in eine Zeile.
KompilierenMarkierenSeparieren
1. Spalten definieren
Titel$ = Links;0;180;Mitte;2;100;Nummer;1;0
2. Gridbox erstellen
hGrid&   = Create(GridBox, Dlg%, Titel$, 3, 3, 0, 400, 190)
3. hier werden die Gridbox-Zeilen hinzugefügt
AddString(hGrid&, FELD1|FELD2|Datensatz-Nr)

Zum Ändern (eigene Maske) oder Löschen lese ich die Datensatznummer aus und gehe damit zum Datensatz.
Damit hatte ich bisher Null Probleme, egal wie indiziert oder eine Gridbox oder ein Listview umsortiert wurde.
 
Gruß Thomas
Windows XP SP2, XProfan X2
15.06.2008  
 




Thomas
Freier
@Horst, ich hoffe du hast die Krise überwunden und dbf nicht in die Ecke verbannt.
In meiner Müllkiste fand ich ein Script für MEMO-Feld Daten in einem Listview (bisher nicht verwendet) und etwas in deine Richtung angepasst. Vielleicht findest du da Lösungen.

389 kB
Hochgeladen:17.06.2008
Ladeanzahl121
Herunterladen
 
Gruß Thomas
Windows XP SP2, XProfan X2
17.06.2008  
 




Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

1.770 Betrachtungen

Unbenanntvor 0 min.
Tommy18.02.2014
Uwe Lang17.07.2012
funkheld25.05.2012
Georg14.12.2011

Themeninformationen



Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie