delete next 1 löscht die ganze DBF !?!

Eigentlich ist mir die Frage peinlich, aber es kann sonst niemand helfen ... :)

Moderator: Moderatoren

Antworten
xbaseklaus
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 246
Registriert: Mi, 04. Jun 2014 12:01
Wohnort: FRANKEN

delete next 1 löscht die ganze DBF !?!

Beitrag von xbaseklaus »

Hallo allerseits, anscheinend steh ich auf der Leitung

Ich lasse eine DBF mit dbedit anzeigen

gehe mit dem Cursor auf einen Record der gelöscht werden soll

Über Funktionstaste wird folgendes aufgerufen:

Code: Alles auswählen

CASE LASTKEY()=-4      
         	delete next 1
         	pack
         	go top                     						
         	Rueck=2 
Delete next 1 soll eigentlich nur den aktuellen Record löschen !

Warum wird dann gleich die ganze DBF gelöscht ???

Mfg Klaus
xbaseklaus
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 246
Registriert: Mi, 04. Jun 2014 12:01
Wohnort: FRANKEN

Re: delete next 1 löscht die ganze DBF !?!

Beitrag von xbaseklaus »

OK so funktioniert es:

Code: Alles auswählen

CASE LASTKEY()=-4      
         	    	delete next 1
         		KEYBOARD Chr(K_RETURN)
         		pack
         		go top                     						
         		Rueck=2 
Benutzeravatar
mini990
1000 working lines a day
1000 working lines a day
Beiträge: 592
Registriert: Sa, 28. Jan 2006 9:44
Wohnort: Berg-Richtheim bei Neumarkt i.d.Opf.
Danksagung erhalten: 1 Mal

Re: delete next 1 löscht die ganze DBF !?!

Beitrag von mini990 »

warum nicht einfach "delete" oder DBDelete()
Du stehst auf dem zu löschenden Datensatz wie Du schreibst.

Gruß Stefan
xbaseklaus
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 246
Registriert: Mi, 04. Jun 2014 12:01
Wohnort: FRANKEN

Re: delete next 1 löscht die ganze DBF !?!

Beitrag von xbaseklaus »

mini990 hat geschrieben:warum nicht einfach "delete" oder DBDelete()
Du stehst auf dem zu löschenden Datensatz wie Du schreibst.

Gruß Stefan
das hatte ich mir ja auch so gedacht, aber wenn du das aus dbedit aufrufst und nach dem DELETE ein PACK kommt , hört er erst auf wenn die ganze DBF gelöscht ist ! Probiers aus - hatte auch erst gedacht ich seh nicht richtig :-)

Mfg. Klaus
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: delete next 1 löscht die ganze DBF !?!

Beitrag von Manfred »

Ist das Pack denn überhaupt an der Stelle notwendig? Mit Set DELETE ON/OFF werden die gelöschten Sätze doch auch erst mal ausgeblendet. Je nachdem wie groß die DBF ist, dauert ein Pack doch auch seine Zeit. Das könnte man dann später machen, in einem Rutsch eventuell, falls mehr Sätze gelöscht werden. Dann ist der Ablauf mit dem Dbdelete() die elegantere Lösung. m.E.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
xbaseklaus
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 246
Registriert: Mi, 04. Jun 2014 12:01
Wohnort: FRANKEN

Re: delete next 1 löscht die ganze DBF !?!

Beitrag von xbaseklaus »

Manfred hat geschrieben:Ist das Pack denn überhaupt an der Stelle notwendig? ... Je nachdem wie groß die DBF ist, dauert ein Pack doch auch seine Zeit...
Da in der DBF nicht mehr als maximal 10 Datensätze stehen ist das PACK hier problemlos und der Kunde will es so haben :-)

MFG Klaus
Benutzeravatar
Herbert
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1991
Registriert: Do, 14. Aug 2008 0:22
Wohnort: Gmunden am Traunsee, Österreich
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: delete next 1 löscht die ganze DBF !?!

Beitrag von Herbert »

Pack provoziert exklusiven Zugriff und macht daher keinen Sinn. Das kann man im Code später machen. So ist der Kunde dann auch zufrieden... und warum soll ein Kunde so eine interne Sache verlangen wollen? Keiner meiner Kunden interessiert sich, wo was definitiv entfernt wird.
Grüsse Herbert
Immer in Bewegung...
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: delete next 1 löscht die ganze DBF !?!

Beitrag von AUGE_OHR »

xbaseklaus hat geschrieben:Ich lasse eine DBF mit dbedit anzeigen

Code: Alles auswählen

CASE LASTKEY()=-4      
                ...
         	Rueck=2 
arbeitest du noch mit deine DbEdit-UDF ?
gruss by OHR
Jimmy
Antworten