QSqlRecord DatabaseLayout::formatRecord(const LoggingEvent &rEvent) { QSqlField field; QSqlRecord record; if (!mTimeStamp.isEmpty()) { field.setName(mTimeStamp); field.setType(QVariant::DateTime); field.setGenerated(true); field.setValue(DateTime::fromMSecsSinceEpoch(rEvent.timeStamp())); record.append(field); } if (!mLoggerName.isEmpty()) { field.setName(mLoggerName); field.setType(QVariant::String); field.setGenerated(true); field.setValue(rEvent.loggerName()); record.append(field); } if (!mThreadName.isEmpty()) { field.setName(mThreadName); field.setType(QVariant::String); field.setGenerated(true); field.setValue(rEvent.threadName()); record.append(field); } if (!mLevel.isEmpty()) { field.setName(mLevel); field.setType(QVariant::String); field.setGenerated(true); field.setValue(rEvent.level().toString()); record.append(field); } if (!mMessage.isEmpty()) { field.setName(mMessage); field.setType(QVariant::String); field.setGenerated(true); field.setValue(rEvent.message()); record.append(field); } return record; }
static PyObject *meth_QSqlField_setValue(PyObject *sipSelf, PyObject *sipArgs) { PyObject *sipParseErr = NULL; { const QVariant * a0; int a0State = 0; QSqlField *sipCpp; if (sipParseArgs(&sipParseErr, sipArgs, "BJ1", &sipSelf, sipType_QSqlField, &sipCpp, sipType_QVariant,&a0, &a0State)) { Py_BEGIN_ALLOW_THREADS sipCpp->setValue(*a0); Py_END_ALLOW_THREADS sipReleaseType(const_cast<QVariant *>(a0),sipType_QVariant,a0State); Py_INCREF(Py_None); return Py_None; } } /* Raise an exception if the arguments couldn't be parsed. */ sipNoMethod(sipParseErr, sipName_QSqlField, sipName_setValue, NULL); return NULL; }
/*! Updates the SQL field with the value from the \a widget it is mapped to. Nothing happens if no SQL field is mapped to the \a widget. */ void Q3SqlForm::writeField(QWidget * widget) { sync(); QSqlField * field = 0; Q3SqlPropertyMap * pmap = (d->propertyMap == 0) ? Q3SqlPropertyMap::defaultMap() : d->propertyMap; field = widgetToField(widget); if(field) field->setValue(pmap->property(widget)); }
void ContextModel::addNewContext(QString newContext) { if (newContext.isEmpty()) { return; } QSqlQuery query; query.prepare("select count(id) from context where shortdescr like :context"); query.bindValue(":context", newContext); query.exec(); if (query.next()) { if (query.record().value("count(id)").toInt() > 0) return; } qDebug() << "save new context " << newContext << " in database."; QSqlRecord record; QSqlField shortDescr = QSqlField("shortdescr", QVariant::String); shortDescr.setValue(newContext); record.append(shortDescr); QSqlField id = QSqlField("id", QVariant::Int); shortDescr.setValue(20); record.append(id); if(!insertRecord( -1, record)) { qDebug("could not create new context."); } if (!submitAll()) { qDebug("could not create new context."); } select(); }
/*! Updates the SQL fields with values from the widgets they are mapped to. To actually update the database with the contents of the record buffer, use Q3SqlCursor::insert(), Q3SqlCursor::update() or Q3SqlCursor::del() as appropriate. */ void Q3SqlForm::writeFields() { sync(); QSqlField * f; QMap< QWidget *, QSqlField * >::Iterator it; Q3SqlPropertyMap * pmap = (d->propertyMap == 0) ? Q3SqlPropertyMap::defaultMap() : d->propertyMap; for(it = d->map.begin() ; it != d->map.end(); ++it){ f = widgetToField(it.key()); if(!f) continue; f->setValue(pmap->property(it.key())); } }
bool KalkatiParser::endElement(const QString &uri,const QString &local,const QString &name) { signed int i; if(name=="Synonym") { isSynonym=false; } else if(name=="Service") { if(servValid<0) return(true); QSqlQuery query(db); QSqlField nameField; QString sql,data,validOld,validNew; QTextStream str(&sql); nameField.setValue(servName); validNew=valid.value(servValid); data=servData.join(" "); //qDebug() << servValid << valid.value(servValid) << valid.value(2); str << "SELECT servid,valid FROM servicedata WHERE first=" << servFirst; str << " AND long='" << servLong << "' AND data='" << data << "' AND compid=" << servComp; str << " AND name='" << driver->formatValue(nameField,true) << "';"; query.exec(sql); query.first(); if(query.isValid()) { QSqlRecord record=query.record(); servId=record.value(0).toInt(); validOld=record.value(1).toString(); for(i=0;i<dayCount;i++) { if(validOld[i]=='1') validNew[i]='1'; } sql=""; str << "UPDATE servicedata SET valid='" << validNew << "' WHERE servid=" << servId << ";"; query.exec(sql); } else { sql=""; str << "INSERT INTO servicedata (servid,mode,first,compid,long,short,name,valid,data) VALUES (" << servId << "," << servMode << "," << servFirst << "," << servComp; str << ",'" << servLong << "','" << servShort << "','"; str << driver->formatValue(nameField,true) << "','" << validNew << "','" << data << "');"; query.exec(sql); } } return(true); }
static QString qCreateParamString(const QVector<QVariant> boundValues, const QSqlDriver *driver) { if (boundValues.isEmpty()) return QString(); QString params; QSqlField f; for (int i = 0; i < boundValues.count(); ++i) { const QVariant &val = boundValues.at(i); f.setType(val.type()); if (val.isNull()) f.clear(); else f.setValue(val); if(!params.isNull()) params.append(QLatin1String(", ")); params.append(driver->formatValue(f)); } return params; }
QSqlRecord QsoEntry::getRecord() const { QSqlRecord record; // create a field for each property const QMetaObject* obj = metaObject(); for (int i = 0; i < obj->propertyCount(); i++) { QMetaProperty metaProperty = obj->property(i); const char* name = metaProperty.name(); // create field QSqlField field; field.setName(QLatin1String(name)); field.setValue(property(name)); // insert field into record record.insert(i, field); } return record; }
bool KalkatiParser::startElement(const QString &uri,const QString &local,const QString &name,const QXmlAttributes &attrs) { signed int i,l; if(isSynonym) { return(true); } if(name=="jp_database") { } else if(name=="Delivery") { } else if(name=="Language") { } else if(name=="Company") { QString sql; QSqlQuery query(db); unsigned int compid; QSqlField nameField; l=attrs.count(); for(i=0;i<l;i++) { if(attrs.localName(i)=="CompanyId") compid=attrs.value(i).toInt(); if(attrs.localName(i)=="Name") nameField.setValue(attrs.value(i)); } QTextStream str(&sql); str << "INSERT INTO company (compid,name) VALUES (" << compid << ","; str << "'" << driver->formatValue(nameField,true) << "');"; query.exec(sql); } else if(name=="Country") { } else if(name=="Timezone") { } else if(name=="Period") { } else if(name=="Station") { QString sql; QSqlQuery query(db); unsigned int statid,virt,type,cityid; QSqlField statname; unsigned int lat,lon; l=attrs.count(); for(i=0;i<l;i++) { if(attrs.localName(i)=="StationId") statid=attrs.value(i).toInt(); if(attrs.localName(i)=="Name") statname.setValue(attrs.value(i)); if(attrs.localName(i)=="X") { lon=(attrs.value(i).toDouble()+180)*1000000+0.5; lon-=180*1000000; } if(attrs.localName(i)=="Y") { lat=(attrs.value(i).toDouble()+90)*1000000+0.5; lat-=90*1000000; } if(attrs.localName(i)=="isVirtual") virt=attrs.value(i).toInt(); if(attrs.localName(i)=="Type") type=attrs.value(i).toInt(); if(attrs.localName(i)=="city_id") cityid=attrs.value(i).toInt(); } QTextStream str(&sql); str << "INSERT INTO station (statid,name,lat,lon,virt,type,cityid) VALUES (" << statid << ","; str << "'" << driver->formatValue(statname,true) << "',"; str << lat << "," << lon << "," << virt << "," << type << ","; str << cityid << ");"; query.exec(sql); } else if(name=="Trnsmode") { } else if(name=="Synonym") { isSynonym=true; } else if(name=="Footnote") { unsigned int y,m,d; unsigned int footid; signed int offset,days; QStringList dateParts; QDate firstDate; QString bits,bitsOut; l=attrs.count(); for(i=0;i<l;i++) { if(attrs.localName(i)=="FootnoteId") footid=attrs.value(i).toInt(); if(attrs.localName(i)=="Firstdate") { dateParts=attrs.value(i).split(QChar('-')); y=dateParts.at(0).toInt(); m=dateParts.at(1).toInt(); d=dateParts.at(2).toInt(); firstDate=QDate(y,m,d); } if(attrs.localName(i)=="Vector") { bits=attrs.value(i); days=bits.length(); } } offset=startDate.daysTo(firstDate); if(offset<=dayCount && offset+days>0) { bitsOut=blankBits; for(i=0;i<dayCount;i++) { if(i-offset>=0 && i-offset<days) { bitsOut[i]=bits[i-offset]; } } if(bitsOut!=blankBits) { valid.insert(footid,bitsOut); qDebug() << footid << bitsOut << firstDate << days; } } } else if(name=="Timetbls") { } else if(name=="Service") { l=attrs.count(); for(i=0;i<l;i++) { if(attrs.localName(i)=="ServiceId") servId=attrs.value(i).toInt(); } servData.clear(); servFirst=-1; servValid=-1; } else if(name=="ServiceNbr") { l=attrs.count(); for(i=0;i<l;i++) { if(attrs.localName(i)=="CompanyId") servComp=attrs.value(i).toInt(); if(attrs.localName(i)=="ServiceNbr") servLong=attrs.value(i); if(attrs.localName(i)=="Variant") servShort=attrs.value(i); if(attrs.localName(i)=="Name") servName=attrs.value(i); } } else if(name=="ServiceValidity") { l=attrs.count(); for(i=0;i<l;i++) { if(attrs.localName(i)=="FootnoteId") { servValid=attrs.value(i).toInt(); if(!valid.contains(servValid)) servValid=-1; } } } else if(name=="ServiceTrnsmode") { l=attrs.count(); for(i=0;i<l;i++) { if(attrs.localName(i)=="TrnsmodeId") servMode=attrs.value(i).toInt(); } } else if(name=="Stop") { if(servValid<0) return(true); QString id,t; l=attrs.count(); for(i=0;i<l;i++) { if(attrs.localName(i)=="StationId") id=attrs.value(i); if(attrs.localName(i)=="Arrival") t=attrs.value(i); } if(servFirst<0) servFirst=t.toInt(); servData.append(id); servData.append(t); } else { qDebug() << name; } return(true); }