Datenbank-Alias existiert nicht/ist ungültig

Alle Fragen um die Programmierung, die sich sonst nicht kategorisieren lassen. Von Makro bis Codeblock, von IF bis ENDIF

Moderator: Moderatoren

Antworten
Werner
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 118
Registriert: Sa, 18. Mär 2006 16:08

Datenbank-Alias existiert nicht/ist ungültig

Beitrag von Werner »

Hi!

Ich habe bei einem Kunden einen Fehler, der bei mir nicht auftritt. Aus einer .DBF wurde ein Fall mit der betreffenden Satznummer ausgewählt. Dann soll das Programm die spezielle Datei öffnen und zu der gesuchten Satznummer gehen:

Code: Alles auswählen

USE &vs_grund  exclusive       ==> mit vs_grund = C:\RGB\ARCHIV\vs_grund.dbf 
go satzx                                ==> satzx=349
Dann kommt die folgende Fehlermeldung:
oError:args :
->VALTYPE: N VALUE: 349
oError:canDefault : J
oError:canRetry : N
oError:canSubstitute : N
oError:cargo : NIL
oError:description : Datenenbank-Alias existiert nicht/ist ungültig
oError:filename : 66
oError:operation : DbGoto
oError:osCode :
oError:severity : 2
oError:subCode : 8021
oError:thread : 1
oError:tries : 0

CALLSTACK:

aufgerufen von: VS_IMP(1245) ( ==> go satzx)
Frage: Wo liegt mein Fehler?

Gruß Werner
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Datenbank-Alias existiert nicht/ist ungültig

Beitrag von brandelh »

zuerst sollte man das nun so schreiben, ist ohne Macro und daher besser ...

USE (vs_grund) exclusive

als weiteres, KANN ein USE fehlschlagen, daher sollte man immer mit NetErr() prüfen, ob die Datei geöffnet werden konnte !
Gruß
Hubert
Werner
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 118
Registriert: Sa, 18. Mär 2006 16:08

Re: Datenbank-Alias existiert nicht/ist ungültig

Beitrag von Werner »

Ich bin noch nicht so vertraut mit der neterr() Funktion! Wenn ich

Code: Alles auswählen

If neterr()
Message 1
else
Message 2
endif 
eingebe, bekomme ich dann ein .F. oder ein .T. als Rückgabewert, je nachdem, ob die entsprechende Datei geöffnet ist oder nicht ... oder was heißt das: neterr() = .T.?

Ich glaube übrigens, dass ich den genannten Fehler gefunden habe: Es sieht so aus, als wenn die Datei: vs_grund.dbf, in der ich den Datensatz 349 auslesen wollte, an dieser Stelle nicht mehr geöffnet war. Kann das die Ursache sein, denn die daraus resulierende Fehlermeldung ist genau identisch mit der Ausgangsfehlermeldung beim Kunden.

Gruß Werner
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: Datenbank-Alias existiert nicht/ist ungültig

Beitrag von Manfred »

IF neterr() --> gab es einen fehler?
.T. wenn ja und .F. wenn nein
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!!
Antworten