Fehler beim navigieren

Gerardo

Grünschnabel
Ich hab folgendes Problem:

Ich hab eine Dialogbasierende Anwendung und verwende die ADO-Schnittstelle.

Durch die Methoden MoveFirst, MoveLast, MovePrevious und MoveNext kann ich durch meine Datenbank navigieren und Datensätze anzeigen lassen.

Beim aktivieren von MoveLast oder MovePrevious bekomme ich folgende Fehler-Meldung:
Unbehandelte Ausnahme bei 0x77e4d756 in BiblioSoft.exe: Microsoft C++ exception: _com_error @ 0x0012ec84.

Beim Debuggen habe ich diesen Fehler bemerkt:

inline HRESULT Recordset15::MovePrevious ( ) {
HRESULT _hr = raw_MovePrevious();
if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
return _hr;
}

Falscher Wert:

_hr = DB_E_CANTFETCHBACKWARDS

So sieht den richtigen Wert aus:

_hr = s_ok

code:

void CKundenListe::OnBnClickedAnfang()
{

pRSKunde->MoveFirst();
Showdata();

}

void CKundenListe::OnBnClickedZurueck()
{

pRSKunde->MovePrevious();
Showdata();

}

void CKundenListe::OnBnClickedVorwaerts()
{

pRSKunde->MoveNext();
Showdata();
}

void CKundenListe::OnBnClickedEnde()
{

pRSKunde->MoveLast();
Showdata();

}

void CKundenListe::Showdata()
{
m_KundeID = pRSKunde->GetFields()->GetItem("KundeID")->GetValue();
m_Name = pRSKunde->GetFields()->GetItem("Name")->GetValue();
m_Vorname = pRSKunde->GetFields()->GetItem("Vorname")->GetValue();
m_Adresse = pRSKunde->GetFields()->GetItem("Adresse")->GetValue();
m_PLZ = pRSKunde->GetFields()->GetItem("PLZ")->GetValue();
m_Ort = pRSKunde->GetFields()->GetItem("Ort")->GetValue();
m_Telefon = pRSKunde->GetFields()->GetItem("Telefon")->GetValue();
UpdateData(false);
}

Danke für eure Hilfe:(
 
Ich weiss leider selber nicht Bescheid. Hast du versucht, die Exception zu catchen?
DB_E_CANTFETCHBACKWARDS
Woran könnte es liegen, dass Rückwärtsfetchen Probleme macht?

PS: UpdateData() ist böse! (Hat aber vermutlich nichts mit deinem Problem zu tun) ;)
 
Musst du mal unter Exceptions nachsehen. Etwa so:
Code:
try
{
  EtwasTunWasSchiefgehenKoennte();
  //...
}
catch ( Exception& e )
{
  // ausgeben, was uns die Exception verraten kann
}
 

Neue Beiträge

Zurück