本文整理汇总了C++中XSqlQuery::findFirst方法的典型用法代码示例。如果您正苦于以下问题:C++ XSqlQuery::findFirst方法的具体用法?C++ XSqlQuery::findFirst怎么用?C++ XSqlQuery::findFirst使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类XSqlQuery
的用法示例。
在下文中一共展示了XSqlQuery::findFirst方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: findFirst
int XSqlQueryProto::findFirst(const QString & col, const QString & val)
{
XSqlQuery *item = qscriptvalue_cast<XSqlQuery*>(thisObject());
if (item)
return item->findFirst(col, val);
return -1;
}
示例2: sModuleSelected
void user::sModuleSelected(const QString &pModule)
{
XTreeWidgetItem *granted = NULL;
XTreeWidgetItem *available = NULL;
_availableGroup->clear();
_grantedGroup->clear();
XSqlQuery groups;
groups.prepare("SELECT grp_id, grp_name, grp_descrip, usrgrp_id"
" FROM grp LEFT OUTER JOIN usrgrp"
" ON (usrgrp_grp_id=grp_id AND usrgrp_username=:username);");
groups.bindValue(":username", _cUsername);
groups.exec();
while(groups.next())
{
if (groups.value("usrgrp_id").toInt() == 0)
available = new XTreeWidgetItem(_availableGroup, available, groups.value("grp_id").toInt(), groups.value("grp_name"), groups.value("grp_descrip"));
else
granted = new XTreeWidgetItem(_grantedGroup, granted, groups.value("grp_id").toInt(), groups.value("grp_name"), groups.value("grp_descrip"));
}
if (ErrorReporter::error(QtCriticalMsg, this, tr("Getting Groups"),
groups, __FILE__, __LINE__))
return;
_available->clear();
_granted->clear();
XSqlQuery privs;
privs.prepare( "SELECT priv_id, priv_name, priv_descrip "
"FROM priv "
"WHERE (priv_module=:priv_module) "
"ORDER BY priv_name;" );
privs.bindValue(":priv_module", pModule);
privs.exec();
if (privs.first())
{
granted = NULL;
available = NULL;
// Insert each priv into either the available or granted list
XSqlQuery usrpriv;
usrpriv.prepare( "SELECT priv_id "
"FROM priv, usrpriv "
"WHERE ( (usrpriv_priv_id=priv_id)"
" AND (usrpriv_username=:username)"
" AND (priv_module=:priv_module) );" );
usrpriv.bindValue(":username", _cUsername);
usrpriv.bindValue(":priv_module", _module->currentText());
usrpriv.exec();
XSqlQuery grppriv;
grppriv.prepare("SELECT priv_id"
" FROM priv, grppriv, usrgrp"
" WHERE((usrgrp_grp_id=grppriv_grp_id)"
" AND (grppriv_priv_id=priv_id)"
" AND (usrgrp_username=:username)"
" AND (priv_module=:priv_module));");
grppriv.bindValue(":username", _cUsername);
grppriv.bindValue(":priv_module", _module->currentText());
grppriv.exec();
do
{
if (usrpriv.findFirst("priv_id", privs.value("priv_id").toInt()) == -1 && grppriv.findFirst("priv_id", privs.value("priv_id").toInt()) == -1)
available = new XTreeWidgetItem(_available, available, privs.value("priv_id").toInt(), privs.value("priv_name"), privs.value("priv_descrip"));
else
{
granted = new XTreeWidgetItem(_granted, granted, privs.value("priv_id").toInt(), privs.value("priv_name"), privs.value("priv_descrip"));
if(usrpriv.findFirst("priv_id", privs.value("priv_id").toInt()) == -1)
granted->setTextColor(Qt::gray);
}
}
while (privs.next());
}
}
示例3: sDelete
void expenseCategories::sDelete()
{
XSqlQuery expenseDelete;
expenseDelete.prepare( "SELECT poitem_status, COUNT(*) "
"FROM poitem "
"WHERE (poitem_expcat_id=:expcat_id) "
"GROUP BY poitem_status;" );
expenseDelete.bindValue(":expcat_id", _expcat->id());
expenseDelete.exec();
if (expenseDelete.first())
{
if (expenseDelete.findFirst("poitem_status", "U") != -1)
QMessageBox::warning( this, tr("Cannot Delete Expense Category"),
tr( "<p>The selected Expense Category cannot be deleted as there are unposted P/O Lines assigned to it. "
"You must reassign these P/O Lines before you may delete the selected Expense Category.</p>" ) );
else if (expenseDelete.findFirst("poitem_status", "O") != -1)
QMessageBox::warning( this, tr("Cannot Delete Expense Category"),
tr( "<p>The selected Expense Category cannot be deleted as there are open P/O Lines assigned to it. "
"You must close these P/O Lines before you may delete the selected Expense Category.</p>" ) );
else if (expenseDelete.findFirst("poitem_status", "C") != -1)
{
int result = QMessageBox::warning( this, tr("Cannot Delete Expense Category"),
tr( "<p>The selected Expense Category cannot be deleted as there are closed P/O Lines assigned to it. "
"Would you like to mark the selected Expense Category as inactive instead?</p>" ),
tr("&Yes"), tr("&No"), QString::null );
if (result == 0)
{
expenseDelete.prepare( "UPDATE expcat "
"SET expcat_active=FALSE "
"WHERE (expcat_id=:expcat_id);" );
expenseDelete.bindValue(":expcat_id", _expcat->id());
expenseDelete.exec();
sFillList();
}
}
}
else
{
expenseDelete.prepare( "SELECT checkhead_id AS id"
" FROM checkhead"
" WHERE(checkhead_expcat_id=:expcat_id)"
" UNION "
"SELECT vodist_id AS id"
" FROM vodist"
" WHERE(vodist_expcat_id=:expcat_id)");
expenseDelete.bindValue(":expcat_id", _expcat->id());
expenseDelete.exec();
if(expenseDelete.first())
{
QMessageBox::warning( this, tr("Cannot Delete Expense Category"),
tr( "<p>The selected Expense Category cannot be deleted as there are Checks and Voucher Distributions assigned to it. "
"You must change these before you may delete the selected Expense Category.</p>" ) );
}
else
{
expenseDelete.prepare( "DELETE FROM expcat "
"WHERE (expcat_id=:expcat_id); ");
expenseDelete.bindValue(":expcat_id", _expcat->id());
expenseDelete.exec();
sFillList();
}
}
}