20#include <kexidb/object.h>
21#include <kexidb/error.h>
22#include <kexidb/msghandler.h>
30 { if (m_msgHandler) m_msgHandler->showErrorMessage(a); }
33: m_previousServerResultNum(0)
34, m_previousServerResultNum2(0)
35, m_msgHandler(handler)
45#define STORE_PREV_ERR \
46 m_previousServerResultNum = m_previousServerResultNum2; \
47 m_previousServerResultName = m_previousServerResultName2; \
48 m_previousServerResultNum2 = serverResult(); \
49 m_previousServerResultName2 = serverResultName(); \
50 KexiDBDbg << "Object ERROR: " << m_previousServerResultNum2 << ": " \
51 << m_previousServerResultName2 <<endl
59 if (m_errno==ERR_OTHER && msg.isEmpty())
60 m_errMsg = i18n( "Unspecified error encountered");
63 m_hasError = code!=ERR_NONE;
79 TQString origMsgTitle( m_msgTitle );
88 m_msgTitle = origMsgTitle;
102 m_hasError = obj-> error();
107 m_errMsg = (prependMessage.isEmpty() ? TQString() : (prependMessage + " "))
110 m_errorSql = obj->m_errorSql;
112 if (m_serverResult==0)
113 m_serverResult = obj->m_serverResult;
115 if (m_serverResultName.isEmpty())
116 m_serverResultName = obj->m_serverResultName;
118 if (m_serverErrorMsg.isEmpty())
119 m_serverErrorMsg = obj->m_serverErrorMsg;
121 if (code!=0 && code!=ERR_OTHER)
127 setError( code!=0 ? code : ERR_OTHER, prependMessage );
135 m_errMsg = TQString();
137 m_errorSql = TQString();
139 m_serverResultName = TQString();
140 m_serverErrorMsg = TQString();
146 return m_serverErrorMsg;
151 return m_serverResult;
156 return m_serverResultName;
162 KexiDBDbg << "KEXIDB ERROR: " << errorMsg() << endl;
165 KexiDBDbg << "KEXIDB SERVER ERRMSG: " << s << endl;
167 KexiDBDbg << "KEXIDB SERVER RESULT NAME: " << sn << endl;
169 KexiDBDbg << "KEXIDB SERVER RESULT #: " << serverResult() << endl;
171 KexiDBDbg << "KEXIDB OK." << endl;
175 KMessageBox::DialogType dlgType, KMessageBox::ButtonCode defaultResult,
176 const KGuiItem &buttonYes,
177 const KGuiItem &buttonNo,
178 const TQString &dontShowAskAgainName,
183 return msgHandler-> askQuestion(message, dlgType, defaultResult, buttonYes, buttonNo,
184 dontShowAskAgainName, options);
187 return m_msgHandler-> askQuestion(message, dlgType, defaultResult, buttonYes, buttonNo,
188 dontShowAskAgainName, options);
190 return defaultResult;
virtual int askQuestion(const TQString &message, KMessageBox::DialogType dlgType, KMessageBox::ButtonCode defaultResult, const KGuiItem &buttonYes=KStdGuiItem::yes(), const KGuiItem &buttonNo=KStdGuiItem::no(), const TQString &dontShowAskAgainName=TQString(), int options=KMessageBox::Notify)
virtual TQString serverResultName()
virtual int askQuestion(const TQString &message, KMessageBox::DialogType dlgType, KMessageBox::ButtonCode defaultResult, const KGuiItem &buttonYes=KStdGuiItem::yes(), const KGuiItem &buttonNo=KStdGuiItem::no(), const TQString &dontShowAskAgainName=TQString(), int options=KMessageBox::Notify, MessageHandler *msgHandler=0)
TQString m_sql used to store of actually executed SQL statement
virtual void clearError()
virtual TQString serverErrorMsg()
virtual void setError(int code=ERR_OTHER, const TQString &msg=TQString())
virtual int serverResult()
virtual void drv_clearServerResult()
const TQString & errorMsg() const
High-level database connectivity library with database backend drivers.
|