本文整理汇总了C++中XSqlQuery类的典型用法代码示例。如果您正苦于以下问题:C++ XSqlQuery类的具体用法?C++ XSqlQuery怎么用?C++ XSqlQuery使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了XSqlQuery类的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: releaseCRMAccountNumber
void vendor::sCheck()
{
_number->setText(_number->text().trimmed().toUpper());
if (_number->text().length() && _cachedNumber != _number->text())
{
if(cNew == _mode && -1 != _NumberGen && _number->text().toInt() != _NumberGen)
{
XSqlQuery query;
query.prepare( "SELECT releaseCRMAccountNumber(:Number);" );
query.bindValue(":Number", _NumberGen);
query.exec();
ErrorReporter::error(QtCriticalMsg, this, tr("Releasing Number"),
query, __FILE__, __LINE__);
_NumberGen = -1;
}
XSqlQuery dupq;
dupq.prepare("SELECT vend_id, 1 AS type"
" FROM vendinfo "
" WHERE (vend_number=:vend_number)"
" UNION "
"SELECT crmacct_id, 2 AS type "
" FROM crmacct "
" WHERE (crmacct_number=:vend_number)"
" ORDER BY type;");
dupq.bindValue(":vend_number", _number->text());
dupq.exec();
if (dupq.first())
{
if ((dupq.value("type").toInt() == 1) && (_notice))
{
if (QMessageBox::question(this, tr("Vendor Exists"),
tr("<p>This number is currently "
"used by an existing Vendor. "
"Do you want to edit "
"that Vendor?"),
QMessageBox::Yes,
QMessageBox::No | QMessageBox::Default) == QMessageBox::No)
{
_number->setText(_cachedNumber);
_number->setFocus();
return;
}
_vendid = dupq.value("vend_id").toInt();
_mode = cEdit;
sPopulate();
_name->setFocus();
}
else if ( (_mode == cEdit) &&
((dupq.value("type").toInt() == 2) ) &&
(_notice))
{
QMessageBox::critical(this, tr("Invalid Number"),
tr("<p>This number is currently "
"assigned to another Account."));
_number->setText(_cachedNumber);
_number->setFocus();
_notice = false;
return;
}
else if ((dupq.value("type").toInt() == 2) && (_notice))
{
if (QMessageBox::question(this, tr("Convert"),
tr("<p>This number is currently assigned to Account. "
"Do you want to convert the Account to a Vendor?"),
QMessageBox::Yes,
QMessageBox::No | QMessageBox::Default) == QMessageBox::No)
{
_number->clear();
_number->setFocus();
return;
}
sLoadCrmAcct(dupq.value("vend_id").toInt());
}
}
else if (ErrorReporter::error(QtCriticalMsg, this, tr("Getting Vendor"),
dupq, __FILE__, __LINE__))
return;
}
}
开发者ID:Dinesh-Ramakrishnan,项目名称:qt-client,代码行数:80,代码来源:vendor.cpp
示例2: qDebug
bool vendor::sPopulate()
{
if (DEBUG)
qDebug("vendor::sPopulate() entered with _vendid %d and _crmacctid %d",
_vendid, _crmacctid);
MetaSQLQuery mql(
"<? if exists('vend_id') ?>"
"SELECT vendinfo.*, crmacct_id, crmacct_owner_username, "
"<? if exists('key') ?>"
" CASE WHEN LENGTH(vend_ach_routingnumber) > 0 THEN"
" formatbytea(decrypt(setbytea(vend_ach_routingnumber),"
" setbytea(<? value('key') ?>), 'bf'))"
" ELSE '' END AS routingnum,"
" CASE WHEN LENGTH(vend_ach_accntnumber) > 0 THEN"
" formatbytea(decrypt(setbytea(vend_ach_accntnumber),"
" setbytea(<? value('key') ?>), 'bf'))"
" ELSE '' END AS accntnum "
"<? else ?>"
" <? value('na') ?> AS routingnum,"
" <? value('na') ?> AS accntnum "
"<? endif ?>"
"FROM vendinfo "
" JOIN crmacct ON (vend_id=crmacct_vend_id) "
"WHERE (vend_id=<? value('vend_id') ?>);"
"<? elseif exists('crmacct_id') ?>"
"SELECT crmacct_number AS vend_number, crmacct_name AS vend_name,"
" crmacct_active AS vend_active,"
" crmacct_cntct_id_1 AS vend_cntct1_id,"
" crmacct_cntct_id_2 AS vend_cntct2_id,"
" fetchMetricText('DefaultPOShipVia') AS vend_shipvia,"
" NULL AS vend_accntnum, NULL AS vend_vendtype_id,"
" NULL AS vend_name, NULL AS vend_addr_id,"
" fetchMetricValue('DefaultTerms') AS vend_terms_id,"
" NULL AS vend_curr_id,"
" FALSE AS vend_po, FALSE AS vend_restrictpurch,"
" FALSE AS vend_1099, NULL AS vend_match,"
" FALSE AS vend_qualified, NULL AS vend_comments,"
" NULL AS vend_pocomments, NULL AS vend_taxzone_id,"
" 'W' AS vend_fobsource, NULL AS vend_fob,"
" NULL AS vend_ach_enabled, NULL AS routingnum,"
" NULL AS accntnum, NULL AS vend_ach_use_vendinfo,"
" NULL AS vend_ach_indiv_number, NULL AS vend_ach_indiv_name,"
" NULL AS vend_ach_accnttype,"
" crmacct_id, crmacct_owner_username"
" FROM crmacct"
" WHERE crmacct_id=<? value('crmacct_id') ?>;"
"<? endif ?>");
ParameterList params;
if (_vendid > 0)
params.append("vend_id", _vendid);
else if (_crmacctid > 0)
params.append("crmacct_id", _crmacctid);
params.append("key", omfgThis->_key);
params.append("na", tr("N/A"));
XSqlQuery getq = mql.toQuery(params);
if (getq.first())
{
_notice = FALSE;
_cachedNumber = getq.value("vend_number").toString();
_crmacctid = getq.value("crmacct_id").toInt();
_crmowner = getq.value("crmacct_owner_username").toString();
_number->setText(getq.value("vend_number"));
_accountNumber->setText(getq.value("vend_accntnum"));
_vendtype->setId(getq.value("vend_vendtype_id").toInt());
_active->setChecked(getq.value("vend_active").toBool());
_name->setText(getq.value("vend_name"));
_contact1->setId(getq.value("vend_cntct1_id").toInt());
_contact1->setSearchAcct(_crmacctid);
_contact2->setId(getq.value("vend_cntct2_id").toInt());
_contact2->setSearchAcct(_crmacctid);
_address->setId(getq.value("vend_addr_id").toInt());
_defaultTerms->setId(getq.value("vend_terms_id").toInt());
_defaultShipVia->setText(getq.value("vend_shipvia").toString());
_defaultCurr->setId(getq.value("vend_curr_id").toInt());
_poItems->setChecked(getq.value("vend_po").toBool());
_restrictToItemSource->setChecked(getq.value("vend_restrictpurch").toBool());
_receives1099->setChecked(getq.value("vend_1099").toBool());
_match->setChecked(getq.value("vend_match").toBool());
_qualified->setChecked(getq.value("vend_qualified").toBool());
_notes->setText(getq.value("vend_comments").toString());
_poComments->setText(getq.value("vend_pocomments").toString());
_taxzone->setId(getq.value("vend_taxzone_id").toInt());
if (getq.value("vend_fobsource").toString() == "V")
{
_useVendorFOB->setChecked(TRUE);
_vendorFOB->setText(getq.value("vend_fob"));
}
else
_useWarehouseFOB->setChecked(TRUE);
_achGroup->setChecked(getq.value("vend_ach_enabled").toBool());
_routingNumber->setText(getq.value("routingnum").toString());
_achAccountNumber->setText(getq.value("accntnum").toString());
_useACHSpecial->setChecked(! getq.value("vend_ach_use_vendinfo").toBool());
_individualId->setText(getq.value("vend_ach_indiv_number").toString());
//.........这里部分代码省略.........
开发者ID:Dinesh-Ramakrishnan,项目名称:qt-client,代码行数:101,代码来源:vendor.cpp
示例3: sSave
void productCategory::sSave()
{
XSqlQuery productSave;
if (_category->text().trimmed().isEmpty())
{
QMessageBox::critical(this, tr("Missing Category"),
tr("You must name this Category before saving it."));
_category->setFocus();
return;
}
if (_mode == cEdit)
{
productSave.prepare( "SELECT prodcat_id "
"FROM prodcat "
"WHERE ( (prodcat_id<>:prodcat_id)"
" AND (prodcat_code=:prodcat_code) );");
productSave.bindValue(":prodcat_id", _prodcatid);
productSave.bindValue(":prodcat_code", _category->text());
productSave.exec();
if (productSave.first())
{
QMessageBox::critical( this, tr("Cannot Create Product Category"),
tr( "A Product Category with the entered code already exists."
"You may not create a Product Category with this code." ) );
_category->setFocus();
return;
}
productSave.prepare( "UPDATE prodcat "
"SET prodcat_code=:prodcat_code, prodcat_descrip=:prodcat_descrip "
"WHERE (prodcat_id=:prodcat_id);" );
productSave.bindValue(":prodcat_id", _prodcatid);
productSave.bindValue(":prodcat_code", _category->text().toUpper());
productSave.bindValue(":prodcat_descrip", _description->text());
productSave.exec();
}
else if (_mode == cNew)
{
productSave.prepare( "SELECT prodcat_id "
"FROM prodcat "
"WHERE (prodcat_code=:prodcat_code);");
productSave.bindValue(":prodcat_code", _category->text().trimmed());
productSave.exec();
if (productSave.first())
{
QMessageBox::critical( this, tr("Cannot Create Product Category"),
tr( "A Product Category with the entered code already exists.\n"
"You may not create a Product Category with this code." ) );
_category->setFocus();
return;
}
productSave.exec("SELECT NEXTVAL('prodcat_prodcat_id_seq') AS prodcat_id;");
if (productSave.first())
_prodcatid = productSave.value("prodcat_id").toInt();
else
{
systemError(this, tr("A System Error occurred at %1::%2.")
.arg(__FILE__)
.arg(__LINE__) );
return;
}
productSave.prepare( "INSERT INTO prodcat "
"( prodcat_id, prodcat_code, prodcat_descrip ) "
"VALUES "
"( :prodcat_id, :prodcat_code, :prodcat_descrip );" );
productSave.bindValue(":prodcat_id", _prodcatid);
productSave.bindValue(":prodcat_code", _category->text().toUpper());
productSave.bindValue(":prodcat_descrip", _description->text());
productSave.exec();
}
done(_prodcatid);
}
开发者ID:ChristopherCotnoir,项目名称:qt-client,代码行数:76,代码来源:productCategory.cpp
示例4: NEXTVAL
SetResponse vendor::set(const ParameterList &pParams)
{
XWidget::set(pParams);
QVariant param;
bool valid;
param = pParams.value("crmacct_id", &valid);
if (valid)
_crmacctid = param.toInt();
param = pParams.value("vend_id", &valid);
if (valid)
_vendid = param.toInt();
if (_vendid > 0 || _crmacctid > 0)
if (! sPopulate())
return UndefinedError;
param = pParams.value("mode", &valid);
if (valid)
{
if (param.toString() == "new")
{
_mode = cNew;
XSqlQuery idq;
idq.exec("SELECT NEXTVAL('vend_vend_id_seq') AS vend_id;");
if (idq.first())
_vendid = idq.value("vend_id").toInt();
else if (ErrorReporter::error(QtCriticalMsg, this, tr("Getting Id"),
idq, __FILE__, __LINE__))
return UndefinedError;
if(((_metrics->value("CRMAccountNumberGeneration") == "A") ||
(_metrics->value("CRMAccountNumberGeneration") == "O"))
&& _number->text().isEmpty() )
{
XSqlQuery numq;
numq.exec("SELECT fetchCRMAccountNumber() AS number;");
if (numq.first())
{
_number->setText(numq.value("number"));
_NumberGen = numq.value("number").toInt();
}
}
if (_privileges->check("MaintainVendorAddresses"))
{
connect(_vendaddr, SIGNAL(valid(bool)), _editAddress, SLOT(setEnabled(bool)));
connect(_vendaddr, SIGNAL(valid(bool)), _deleteAddress, SLOT(setEnabled(bool)));
connect(_vendaddr, SIGNAL(itemSelected(int)), _editAddress, SLOT(animateClick()));
}
else
{
_newAddress->setEnabled(FALSE);
connect(_vendaddr, SIGNAL(itemSelected(int)), _viewAddress, SLOT(animateClick()));
}
connect(_charass, SIGNAL(valid(bool)), _editCharacteristic, SLOT(setEnabled(bool)));
connect(_charass, SIGNAL(valid(bool)), _deleteCharacteristic, SLOT(setEnabled(bool)));
emit newId(_vendid);
}
else if (param.toString() == "edit")
{
_mode = cEdit;
if (_privileges->check("MaintainVendorAddresses"))
{
connect(_vendaddr, SIGNAL(valid(bool)), _editAddress, SLOT(setEnabled(bool)));
connect(_vendaddr, SIGNAL(valid(bool)), _deleteAddress, SLOT(setEnabled(bool)));
connect(_vendaddr, SIGNAL(itemSelected(int)), _editAddress, SLOT(animateClick()));
}
else
{
_newAddress->setEnabled(FALSE);
connect(_vendaddr, SIGNAL(itemSelected(int)), _viewAddress, SLOT(animateClick()));
}
connect(_charass, SIGNAL(valid(bool)), _editCharacteristic, SLOT(setEnabled(bool)));
connect(_charass, SIGNAL(valid(bool)), _deleteCharacteristic, SLOT(setEnabled(bool)));
}
else if (param.toString() == "view")
{
_mode = cView;
_number->setEnabled(FALSE);
_vendtype->setEnabled(FALSE);
_active->setEnabled(FALSE);
_name->setEnabled(FALSE);
_accountNumber->setEnabled(FALSE);
_defaultTerms->setEnabled(FALSE);
_defaultShipVia->setEnabled(FALSE);
_defaultCurr->setEnabled(FALSE);
_contact1->setEnabled(FALSE);
_contact2->setEnabled(FALSE);
_address->setEnabled(FALSE);
_notes->setReadOnly(TRUE);
_poComments->setReadOnly(TRUE);
_poItems->setEnabled(FALSE);
//.........这里部分代码省略.........
开发者ID:Dinesh-Ramakrishnan,项目名称:qt-client,代码行数:101,代码来源:vendor.cpp
示例5: NEXTVAL
void package::sSave()
{
XSqlQuery packageSave;
if (_mode == cNew)
{
packageSave.exec("SELECT NEXTVAL('pkghead_pkghead_id_seq') AS _pkghead_id");
if (packageSave.first())
_pkgheadid = packageSave.value("_pkghead_id").toInt();
else if (ErrorReporter::error(QtCriticalMsg, this, tr("Error Retrieving Package Information"),
packageSave, __FILE__, __LINE__))
{
return;
}
packageSave.prepare( "INSERT INTO pkghead ("
" pkghead_id, pkghead_name, pkghead_descrip,"
" pkghead_version, pkghead_developer, pkghead_notes,"
" pkghead_indev"
") VALUES ("
" :pkghead_id, :pkghead_name, :pkghead_descrip, "
" :pkghead_version, :pkghead_developer, :pkghead_notes,"
" :pkghead_indev);");
}
else if (_mode == cEdit)
{
packageSave.prepare( "SELECT pkghead_id "
"FROM pkghead "
"WHERE ( (UPPER(pkghead_name)=UPPER(:pkghead_name))"
" AND (pkghead_id<>:pkghead_id) );" );
packageSave.bindValue(":pkghead_id", _pkgheadid);
packageSave.bindValue(":pkghead_name", _name->text());
packageSave.exec();
if (packageSave.first())
{
QMessageBox::warning( this, tr("Cannot Save Package"),
tr("<p>You may not rename this Package to %1 as "
"this value is used by a different Package.") );
return;
}
packageSave.prepare( "UPDATE pkghead "
"SET pkghead_name=:pkghead_name,"
" pkghead_descrip=:pkghead_descrip,"
" pkghead_version=:pkghead_version,"
" pkghead_developer=:pkghead_developer,"
" pkghead_notes=:pkghead_notes,"
" pkghead_indev=:pkghead_indev "
"WHERE (pkghead_id=:pkghead_id);" );
}
packageSave.bindValue(":pkghead_id", _pkgheadid);
packageSave.bindValue(":pkghead_name", _name->text());
packageSave.bindValue(":pkghead_descrip", _description->text());
packageSave.bindValue(":pkghead_version", _version->text());
packageSave.bindValue(":pkghead_developer",_developer->text());
packageSave.bindValue(":pkghead_notes", _notes->toPlainText());
packageSave.bindValue(":pkghead_indev", _indev->isChecked());
packageSave.exec();
if (ErrorReporter::error(QtCriticalMsg, this, tr("Error Saving Package Information"),
packageSave, __FILE__, __LINE__))
{
return;
}
if (DEBUG) qDebug("_enabled->isChecked: %d\tprior state: %d",
_enabled->isChecked(), _priorEnabledState);
if (_enabled->isChecked() != _priorEnabledState)
{
XSqlQuery eq;
QString funcname;
if (_enabled->isChecked())
{
eq.prepare("SELECT enablePackage(:id) AS result;");
funcname = "enablePackage";
}
else
{
eq.prepare("SELECT disablePackage(:id) AS result;");
funcname = "disablePackage";
}
eq.bindValue(":id", _pkgheadid);
eq.exec();
if (eq.first())
{
int result = eq.value("result").toInt();
if (result < 0)
{
ErrorReporter::error(QtCriticalMsg, this, tr("Error Saving Package Information"),
storedProcErrorLookup("funcname", result),
__FILE__, __LINE__);
return;
}
}
else if (ErrorReporter::error(QtCriticalMsg, this, tr("Error Saving Package Information"),
eq, __FILE__, __LINE__))
{
return;
}
}
//.........这里部分代码省略.........
开发者ID:dwatson78,项目名称:qt-client,代码行数:101,代码来源:package.cpp
示例6: populate
void package::populate()
{
XSqlQuery packagepopulate;
if (DEBUG) qDebug("package::populate() entered");
packagepopulate.prepare("SELECT *, packageIsEnabled(pkghead_name) AS enabled "
"FROM pkghead WHERE (pkghead_id=:pkghead_id);");
packagepopulate.bindValue(":pkghead_id", _pkgheadid);
packagepopulate.exec();
if (packagepopulate.first())
{
if (DEBUG) qDebug("package::populate() select pkghead succeeded");
_name->setText(packagepopulate.value("pkghead_name").toString());
_description->setText(packagepopulate.value("pkghead_descrip").toString());
if (DEBUG) qDebug("package::populate() select pkghead half done");
_version->setText(packagepopulate.value("pkghead_version").toString());
_developer->setText(packagepopulate.value("pkghead_developer").toString());
_notes->setText(packagepopulate.value("pkghead_notes").toString());
_enabled->setChecked(packagepopulate.value("enabled").toBool());
_priorEnabledState = _enabled->isChecked();
_indev->setChecked(packagepopulate.value("pkghead_indev").toBool());
if (DEBUG) qDebug("package::populate() select pkghead complete");
}
else if (ErrorReporter::error(QtCriticalMsg, this, tr("Error Retrieving Package Information"),
packagepopulate, __FILE__, __LINE__))
{
return;
}
ParameterList params;
params.append("pkgname", _name->text());
params.append("script", tr("Script"));
params.append("cmd", tr("Custom Command"));
params.append("function",tr("Stored Procedure"));
params.append("trigger", tr("Trigger"));
params.append("image", tr("Image"));
params.append("metasql", tr("MetaSQL"));
params.append("priv", tr("Privilege"));
params.append("report", tr("Report"));
params.append("schema", tr("Schema"));
params.append("table", tr("Table"));
params.append("uiform", tr("Screen"));
params.append("view", tr("View"));
params.append("sequence",tr("Sequence"));
params.append("index", tr("Index"));
if (_showSystemDetails->isChecked())
params.append("showsystemdetails");
MetaSQLQuery itemmql = mqlLoad("package", "items");
packagepopulate = itemmql.toQuery(params);
packagepopulate.exec();
if (DEBUG) qDebug("package::populate() select pkgitem exec'ed");
_rec->populate(packagepopulate);
if (DEBUG) qDebug("package::populate() populate pkgitem done");
else if (ErrorReporter::error(QtCriticalMsg, this, tr("Error Retrieving Package Information"),
packagepopulate, __FILE__, __LINE__))
{
return;
}
// TODO: make this recursive?
packagepopulate.prepare("SELECT pkghead.* "
"FROM pkgdep, pkghead "
"WHERE ((pkgdep_pkghead_id=pkghead_id)"
" AND (pkgdep_parent_pkghead_id=:pkghead_id));");
packagepopulate.bindValue(":pkghead_id", _pkgheadid);
packagepopulate.exec();
if (DEBUG) qDebug("package::populate() select pkgdep exec'ed");
_dep->populate(packagepopulate);
if (DEBUG) qDebug("package::populate() populate pkgdep done");
if (ErrorReporter::error(QtCriticalMsg, this, tr("Getting Package Info"),
packagepopulate, __FILE__, __LINE__))
{
return;
}
// TODO: make this recursive?
packagepopulate.prepare("SELECT * "
"FROM pkgdep, pkghead "
"WHERE ((pkgdep_parent_pkghead_id=pkghead_id)"
" AND (pkgdep_pkghead_id=:pkghead_id));");
packagepopulate.bindValue(":pkghead_id", _pkgheadid);
packagepopulate.exec();
if (DEBUG) qDebug("package::populate() select pkgdep exec'ed");
_req->populate(packagepopulate);
if (DEBUG) qDebug("package::populate() populate pkgdep done");
if (ErrorReporter::error(QtCriticalMsg, this, tr("Getting Package Info"),
packagepopulate, __FILE__, __LINE__))
{
return;
}
}
开发者ID:dwatson78,项目名称:qt-client,代码行数:94,代码来源:package.cpp
示例7: sReassign
void reassignLotSerial::sReassign()
{
XSqlQuery reassignReassign;
if (_expirationDate->isEnabled())
{
if (!_expirationDate->isValid() || _expirationDate->isNull())
{
QMessageBox::critical( this, tr("Enter a valid date"),
tr("You must enter a valid expiration date before you can continue.") );
_expirationDate->setFocus();
return;
}
}
if (_source->currentItem() == 0)
{
QMessageBox::critical( this, tr("Select Source Location"),
tr("You must select a Source Location before reassigning its Lot/Serial #.") );
_source->setFocus();
return;
}
if (_qty->toDouble() == 0)
{
QMessageBox::critical( this, tr("Enter Quantity to Reassign"),
tr("You must enter a quantity to reassign.") );
_qty->setFocus();
return;
}
if (_lotNumber->text().length() == 0)
{
QMessageBox::critical( this, tr("Enter New Lot Number to Reassign"),
tr("You must enter a New Lot Number to reassign.") );
_qty->setFocus();
return;
}
QDoubleValidator* qtyVal = (QDoubleValidator*)(_qty->validator());
reassignReassign.prepare("SELECT reassignLotSerial(:source, CAST (:qty AS NUMERIC(100,:decimals)), "
" :lotNumber, :expirationDate, :warrantyDate) AS result;");
reassignReassign.bindValue(":source", _source->id());
reassignReassign.bindValue(":qty", _qty->toDouble());
reassignReassign.bindValue(":decimals", qtyVal->decimals());
reassignReassign.bindValue(":lotNumber", _lotNumber->text());
if (_expirationDate->isEnabled())
reassignReassign.bindValue(":expirationDate", _expirationDate->date());
else
reassignReassign.bindValue(":expirationDate", omfgThis->endOfTime());
if (_warrantyDate->isEnabled())
reassignReassign.bindValue(":warrantyDate", _warrantyDate->date());
reassignReassign.exec();
if (reassignReassign.first())
{
int result = reassignReassign.value("result").toInt();
if (result < 0)
{
systemError(this, storedProcErrorLookup("reassignLotSerial", result),
__FILE__, __LINE__);
return;
}
}
else if (reassignReassign.lastError().type() != QSqlError::NoError)
{
systemError(this, reassignReassign.lastError().databaseText(), __FILE__, __LINE__);
return;
}
if (_captive)
accept();
else
{
_close->setText(tr("&Close"));
sFillList();
if (_qty->isEnabled())
_qty->clear();
_qty->setFocus();
_lotNumber->clear();
_expirationDate->setNull();
_warrantyDate->setNull();
}
}
开发者ID:Dinesh-Ramakrishnan,项目名称:qt-client,代码行数:88,代码来源:reassignLotSerial.cpp
示例8: sFillList
void reassignLotSerial::sFillList()
{
XSqlQuery reassignFillList;
if (_item->isValid())
{
reassignFillList.prepare( "SELECT itemsite_id, itemsite_perishable, itemsite_controlmethod, itemsite_warrpurc "
"FROM itemsite "
"WHERE ( (itemsite_item_id=:item_id)"
" AND (itemsite_warehous_id=:warehous_id) );" );
reassignFillList.bindValue(":item_id", _item->id());
reassignFillList.bindValue(":warehous_id", _warehouse->id());
reassignFillList.exec();
if (reassignFillList.first())
{
if (reassignFillList.value("itemsite_controlmethod").toString() == "S")
{
_qty->setEnabled(FALSE);
_qty->setDouble(1.0);
}
else if (reassignFillList.value("itemsite_controlmethod").toString() == "L")
_qty->setEnabled(TRUE);
else
{
_source->clear();
return;
}
int itemsiteid = reassignFillList.value("itemsite_id").toInt();
_expirationDate->setEnabled(reassignFillList.value("itemsite_perishable").toBool());
_warrantyDate->setEnabled(reassignFillList.value("itemsite_warrpurc").toBool());
reassignFillList.prepare( "SELECT itemloc_id, formatLocationName(itemloc_location_id) AS locationname, ls_number,"
" itemloc_expiration, itemloc_warrpurc, itemloc_qty, "
" 'qty' AS itemloc_qty_xtnumericrole "
"FROM itemloc "
" LEFT OUTER JOIN ls ON (itemloc_ls_id=ls_id), itemsite "
"WHERE ( (itemloc_itemsite_id=itemsite_id)"
" AND (itemsite_id=:itemsite_id) ) "
"ORDER BY locationname;" );
reassignFillList.bindValue(":never", tr("Never"));
reassignFillList.bindValue(":itemsite_id", itemsiteid);
reassignFillList.exec();
_source->populate(reassignFillList);
}
else if (reassignFillList.lastError().type() != QSqlError::NoError)
{
systemError(this, reassignFillList.lastError().databaseText(), __FILE__, __LINE__);
return;
}
}
else
_source->clear();
}
开发者ID:Dinesh-Ramakrishnan,项目名称:qt-client,代码行数:53,代码来源:reassignLotSerial.cpp
示例9: GuiErrorCheck
void vendor::sSave()
{
XSqlQuery vendorSave;
QList<GuiErrorCheck> errors;
errors << GuiErrorCheck(_number->text().trimmed().isEmpty(), _number,
tr("Please enter a Number for this new Vendor."))
<< GuiErrorCheck(_name->text().trimmed().isEmpty(), _name,
tr("Please enter a Name for this new Vendor."))
<< GuiErrorCheck(_defaultTerms->id() == -1, _defaultTerms,
tr("You must select a Terms code for this Vendor."))
<< GuiErrorCheck(_vendtype->id() == -1, _vendtype,
tr("You must select a Vendor Type for this Vendor."))
// << GuiErrorCheck(_accountSelected->isChecked() &&
// !_account->isValid(),
// _account
// tr("You must select a Default Distribution Account for this Vendor."))
// << GuiErrorCheck(_expcatSelected->isChecked() &&
// !_expcat->isValid(),
// _expcat
// tr("You must select a Default Distribution Expense Category for this Vendor."))
// << GuiErrorCheck(_taxSelected->isChecked() &&
// !_taxCode->isValid(),
// _taxCode
// tr("You must select a Default Distribution Tax Code for this Vendor."))
<< GuiErrorCheck(_achGroup->isChecked() &&
! _routingNumber->hasAcceptableInput() &&
!omfgThis->_key.isEmpty(),
_routingNumber,
tr("The Routing Number is not valid."))
<< GuiErrorCheck(_achGroup->isChecked() &&
! _achAccountNumber->hasAcceptableInput() &&
!omfgThis->_key.isEmpty(), _achAccountNumber,
tr("The Account Number is not valid."))
<< GuiErrorCheck(_achGroup->isChecked() &&
_useACHSpecial->isChecked() &&
_individualName->text().trimmed().isEmpty() &&
!omfgThis->_key.isEmpty(),
_individualName,
tr("Please enter an Individual Name if EFT Check "
"Printing is enabled and '%1' is checked.")
.arg(_useACHSpecial->title()))
;
if (_number->text().trimmed().toUpper() != _cachedNumber.toUpper())
{
XSqlQuery dupq;
dupq.prepare("SELECT vend_name "
"FROM vendinfo "
"WHERE (UPPER(vend_number)=UPPER(:vend_number)) "
" AND (vend_id<>:vend_id);" );
dupq.bindValue(":vend_number", _number->text().trimmed());
dupq.bindValue(":vend_id", _vendid);
dupq.exec();
if (dupq.first())
GuiErrorCheck(true, _number,
tr("<p>The newly entered Vendor Number cannot be "
"used as it is already used by the Vendor '%1'. "
"Please correct or enter a new Vendor Number." )
.arg(vendorSave.value("vend_name").toString()) );
}
if (GuiErrorCheck::reportErrors(this, tr("Cannot Save Vendor"), errors))
return;
XSqlQuery rollback;
rollback.prepare("ROLLBACK;");
XSqlQuery begin("BEGIN;");
if (ErrorReporter::error(QtCriticalMsg, this, tr("Database Error"),
begin, __FILE__, __LINE__))
return;
int saveResult = _address->save(AddressCluster::CHECK);
if (-2 == saveResult)
{
int answer = QMessageBox::question(this,
tr("Question Saving Address"),
tr("<p>There are multiple uses of this Vendor's "
"Address. What would you like to do?"),
tr("Change This One"),
tr("Change Address for All"),
tr("Cancel"),
2, 2);
if (0 == answer)
saveResult = _address->save(AddressCluster::CHANGEONE);
else if (1 == answer)
saveResult = _address->save(AddressCluster::CHANGEALL);
}
if (saveResult < 0) // not else-if: this is error check for CHANGE{ONE,ALL}
{
rollback.exec();
ErrorReporter::error(QtCriticalMsg, this, tr("Error Saving Address"),
tr("<p>There was an error saving this address (%1). "
"Check the database server log for errors.")
.arg(saveResult), __FILE__, __LINE__);
_address->setFocus();
return;
}
QString sql;
//.........这里部分代码省略.........
开发者ID:Dinesh-Ramakrishnan,项目名称:qt-client,代码行数:101,代码来源:vendor.cpp
示例10: WHERE
void vendor::sLoadCrmAcct(int crmacctId)
{
_notice = FALSE;
_crmacctid = crmacctId;
XSqlQuery getq;
getq.prepare("SELECT * FROM crmacct WHERE (crmacct_id=:crmacct_id);");
getq.bindValue(":crmacct_id", crmacctId);
getq.exec();
if (getq.first())
{
_crmowner = getq.value("crmacct_owner_username").toString();
_number->setText(getq.value("crmacct_number").toString());
_cachedNumber=_number->text().trimmed().toUpper();
_name->setText(getq.value("crmacct_name").toString());
_active->setChecked(getq.value("crmacct_active").toBool());
_contact1->setId(getq.value("crmacct_cntct_id_1").toInt());
_contact1->setSearchAcct(_crmacctid);
_contact2->setId(getq.value("crmacct_cntct_id_2").toInt());
_contact2->setSearchAcct(_crmacctid);
if (getq.value("crmacct_cntct_id_1").toInt() != 0)
{
XSqlQuery contactQry;
contactQry.prepare("SELECT cntct_addr_id FROM cntct WHERE (cntct_id=:cntct_id);");
contactQry.bindValue(":cntct_id", _contact1->id());
contactQry.exec();
if (contactQry.first())
{
_address->setId(contactQry.value("cntct_addr_id").toInt());
_address->setSearchAcct(_crmacctid);
}
}
}
else if (ErrorReporter::error(QtCriticalMsg, this, tr("Getting Account"),
getq, __FILE__, __LINE__))
return;
_crmacct->setEnabled(_crmacctid > 0 &&
(_privileges->check("MaintainAllCRMAccounts") ||
_privileges->check("ViewAllCRMAccounts") ||
(omfgThis->username() == _crmowner && _privileges->check("MaintainPersonalCRMAccounts")) ||
(omfgThis->username() == _crmowner && _privileges->check("ViewPersonalCRMAccounts"))));
_name->setFocus();
}
开发者ID:Dinesh-Ramakrishnan,项目名称:qt-client,代码行数:47,代码来源:vendor.cpp
注:本文中的XSqlQuery类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论