Редакция 230 | Редакция 233 | К новейшей редакции | Весь файл | Не учитывать пробелы | Содержимое файла | Авторство | Последнее изменение | Открыть журнал | RSS
Редакция 230 | Редакция 231 | ||
---|---|---|---|
Строка 1217... | Строка 1217... | ||
1217 | icon_field_index = q.record().indexOf(tr("Icon")); |
1217 | icon_field_index = q.record().indexOf(tr("Icon")); |
1218 | 1218 | ||
1219 | int k=0; |
1219 | int k=0; |
1220 | QStringList fieldsNamesList;// ñïèñîê èì¸í ïîëåé òàáëèöû |
1220 | QStringList fieldsNamesList;// ñïèñîê èì¸í ïîëåé òàáëèöû |
1221 | QList<TField> FieldsList; //ñïèñîê ïîëåé êëàññà |
1221 | QList<TField> FieldsList; //ñïèñîê ïîëåé êëàññà |
1222 | - | ||
- | 1222 | QMap<QString, TField> fieldsMap;// çäåñü áóäåì â êà÷åñòâå êëþ÷åé õðàíèòü èìåíà ïîëåé, à â êà÷åñòâå çíà÷åíèé - íåïîñðåäñòâåííî ñîîòâåòñòâóþùèå ïîëÿ |
|
- | 1223 | QMap <QString, QString> fieldsValues;// çäåñü áóäåì õðàíèòü çíà÷åíèÿ ïîëåé, êëþ÷àìè áóäóò ñëóæèòü èìåíà ïîëåé |
|
1223 | FieldsList = getFieldList(classID); // ïîëó÷àåì ñïèñîê ïîëåé |
1224 | FieldsList = getFieldList(classID); // ïîëó÷àåì ñïèñîê ïîëåé |
1224 | 1225 | ||
1225 | 1226 | ||
- | 1227 | ||
- | 1228 | ||
- | 1229 | ||
1226 | if(FieldsList.count()>0){ |
1230 | if(FieldsList.count()>0){ |
1227 | for(int i=0; i < FieldsList.count(); i++){ //ñîñòàâèì ïàðû (èìÿ ïîëÿ-òèï ïîëÿ) |
1231 | for(int i=0; i < FieldsList.count(); i++){ //ñîñòàâèì ïàðû (èìÿ ïîëÿ-òèï ïîëÿ) |
1228 | fieldsTypesList.insert(FieldsList.at(i).FieldName, FieldsList.at(i).FieldType); |
1232 | fieldsTypesList.insert(FieldsList.at(i).FieldName, FieldsList.at(i).FieldType); |
- | 1233 | fieldsMap.insert(FieldsList.at(i).FieldName, FieldsList.at(i)); |
|
1229 | }
|
1234 | }
|
1230 | 1235 | ||
1231 | // fieldsNamesList = fieldsTypesList.keys(); // ïîëó÷èì ñïèñîê èìåí ïîëåé
|
1236 | // fieldsNamesList = fieldsTypesList.keys(); // ïîëó÷èì ñïèñîê èìåí ïîëåé
|
1232 | }
|
1237 | }
|
1233 | 1238 | ||
Строка 1331... | Строка 1336... | ||
1331 | if(advanced && (fieldsNamesList.count()>0)){ // åñëè îò÷åò ðàñøèðåííûé |
1336 | if(advanced && (fieldsNamesList.count()>0)){ // åñëè îò÷åò ðàñøèðåííûé |
1332 | 1337 | ||
1333 | QString tmp_string;
|
1338 | QString tmp_string;
|
1334 | sql_str.clear(); |
1339 | sql_str.clear(); |
1335 | 1340 | ||
- | 1341 | // // // QTextTable *table = cursor->insertTable(fieldsNamesList.count()-2, 2);// ñîçäàäèì òàáëèöó äëÿ ïîëåé êëàññà, êðîìå ïåðâûõ äâóõ (ID è íàçâàíèå îáúåêòà)
|
|
- | 1342 | ||
- | 1343 | ||
- | 1344 | ||
- | 1345 | /************************
|
|
1336 | QTextTable *table = cursor->insertTable(fieldsNamesList.count()-2, 2);// ñîçäàäèì òàáëèöó äëÿ ïîëåé êëàññà, êðîìå ïåðâûõ äâóõ (ID è íàçâàíèå îáúåêòà) |
1346 | QTextTable *table = cursor->insertTable(fieldsNamesList.count(), 2);// ñîçäàäèì òàáëèöó äëÿ ïîëåé êëàññà, êðîìå ïåðâûõ äâóõ (ID è íàçâàíèå îáúåêòà)
|
- | 1347 | ||
- | 1348 | ************************/
|
|
- | 1349 | ||
- | 1350 | ||
- | 1351 | ||
- | 1352 | ||
- | 1353 | ||
- | 1354 | ||
1337 | 1355 | ||
- | 1356 | ||
- | 1357 | ||
- | 1358 | ||
1338 | // cursor->insertText(tr("Ïðîâåðêà òàáëèöû"));
|
1359 | // cursor->insertText(tr("Ïðîâåðêà òàáëèöû"));
|
1339 | 1360 | ||
1340 | 1361 | ||
1341 | // *cursor = table->cellAt(0,1).firstCursorPosition();
|
1362 | // *cursor = table->cellAt(0,1).firstCursorPosition();
|
1342 | // cursor->insertText(tr("Ïðîâåðêà òàáëèöû 2"));
|
1363 | // cursor->insertText(tr("Ïðîâåðêà òàáëèöû 2"));
|
1343 | // *cursor = table->cellAt(1,1).lastCursorPosition();
|
1364 | // *cursor = table->cellAt(1,1).lastCursorPosition();
|
Строка 1354... | Строка 1375... | ||
1354 | 1375 | ||
1355 | //table->cellAt(2,2).firstCursorPosition().insertText(tr("4"));
|
1376 | //table->cellAt(2,2).firstCursorPosition().insertText(tr("4"));
|
1356 | // cursor->insertText(tr("1 \t 2"));
|
1377 | // cursor->insertText(tr("1 \t 2"));
|
1357 | // cursor->insertText(tr("3 \t 4"));
|
1378 | // cursor->insertText(tr("3 \t 4"));
|
1358 | 1379 | ||
- | 1380 | for(int i=0; i < fieldsNamesList.count(); i++) |
|
- | 1381 | {
|
|
- | 1382 | ||
- | 1383 | ||
- | 1384 | if (fieldsNamesList.at(i)== tr("Icon") || fieldsNamesList.at(i)== tr("ID")) { tmp_string = tr("íå âîçìîæíî îòîáðàçèòü"); |
|
- | 1385 | continue; |
|
- | 1386 | }
|
|
- | 1387 | ||
- | 1388 | QString fieldType;
|
|
- | 1389 | fieldType = fieldsTypesList.value(fieldsNamesList.at(i)); //îïðåäåëÿåì òèï ïîëÿ |
|
- | 1390 | if(fieldType == tr("pointer")) // åñëè òèï ïîëÿ - óêàçàòåëü |
|
- | 1391 | {
|
|
- | 1392 | QSqlQuery q_tmp;
|
|
- | 1393 | QString sql_str;
|
|
- | 1394 | // QString val_str;
|
|
- | 1395 | QString parent_class_id;// èäåíòèôèêàòîð êëàññà, íà îáúåêòû êîòîðîãî ññûëàåòñÿ ïîëå |
|
- | 1396 | QString parent_class_inctance; // õðàíèëèùå îáúåêòîâ ðîäèòåëüñêîãî êëàññà |
|
- | 1397 | bool ok; |
|
- | 1398 | TField field_tmp;
|
|
- | 1399 | field_tmp = fieldsMap.value(fieldsNamesList.at(i)); |
|
- | 1400 | parent_class_id = field_tmp.DefaultValue; |
|
- | 1401 | if (parent_class_id.isEmpty()) continue; // íå ñìîãëè îïðåäåëèòü id ðîäèòåëüñêîãî êëàññà |
|
- | 1402 | else parent_class_inctance = getClassInctance(parent_class_id); |
|
- | 1403 | if (parent_class_inctance.isEmpty()) continue; // íå ñìîãëè îïðåäåëèòü id ðîäèòåëüñêîãî êëàññà |
|
- | 1404 | sql_str = tr("select * from `"); |
|
- | 1405 | sql_str.append(parent_class_inctance); |
|
- | 1406 | sql_str.append(tr("` where `ID` = '")); |
|
- | 1407 | sql_str.append(q.record().value(i).asString()); |
|
- | 1408 | sql_str.append(tr("'")); |
|
- | 1409 | ok = q_tmp.prepare(sql_str); |
|
- | 1410 | ok = q_tmp.exec(); |
|
- | 1411 | ||
- | 1412 | if (!ok) { |
|
- | 1413 | QString debug_str;
|
|
- | 1414 | debug_str.append(tr("ôóí showObjects(): Database Error ")); |
|
- | 1415 | debug_str.append(tr(" õð: ")); |
|
- | 1416 | debug_str.append(inctance); |
|
- | 1417 | debug_str.append(tr(" ô: ")); |
|
- | 1418 | debug_str.append(filtr); |
|
- | 1419 | debug_str.append(q.lastError().text()); |
|
- | 1420 | QMessageBox::critical( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå. |
|
- | 1421 | this, // Ðîäèòåëüñêèé âèäæåò. |
|
- | 1422 | QObject::tr("ôóíêöèÿ showObjects(): Database Error"), // Çàãîëîâîê. |
|
- | 1423 | debug_str |
|
- | 1424 | // q.lastError().text()
|
|
- | 1425 | ); // Òåêñò ñîîáùåíèÿ. |
|
- | 1426 | return; |
|
- | 1427 | }
|
|
- | 1428 | ||
- | 1429 | tmp_string.clear(); |
|
- | 1430 | while (q_tmp.next()){ |
|
- | 1431 | tmp_string = q_tmp.record().value(1).asString(); |
|
- | 1432 | ||
- | 1433 | }
|
|
- | 1434 | ||
- | 1435 | fieldsValues.insert(fieldsNamesList.at(i), tmp_string);// äîáàâëÿåì çíà÷åíèå â ñïèñîê çíà÷åíèé |
|
- | 1436 | ||
- | 1437 | continue;// ïåðåõîäèì ê ñëåäóþùåé èíòåðàöèè |
|
- | 1438 | ||
- | 1439 | } // äàëüøå åñëè òèï ïîëÿ íå pointer |
|
- | 1440 | ||
- | 1441 | if(fieldType == tr("file")){ // åñëè òèï ïîëÿ - ôàéë, íå áóäåì îòîáðàæàòü |
|
- | 1442 | ||
- | 1443 | tmp_string = tr("íå âîçìîæíî îòîáðàçèòü"); |
|
- | 1444 | continue; |
|
- | 1445 | ||
- | 1446 | }
|
|
- | 1447 | ||
- | 1448 | tmp_string = q.record().value(i).asString(); // ýòî íå èêîíêà, íå ôàéë è íå ïîëå-óêàçàòåëü, ïðîñòî îòîáðàæàåì çíà÷åíèå |
|
- | 1449 | fieldsValues.insert(fieldsNamesList.at(i), tmp_string);// äîáàâëÿåì çíà÷åíèå â ñïèñîê çíà÷åíèé |
|
- | 1450 | ||
- | 1451 | ||
- | 1452 | }
|
|
- | 1453 | ||
- | 1454 | ||
- | 1455 | ||
- | 1456 | ||
- | 1457 | ||
- | 1458 | ||
- | 1459 | QTextTable *table = cursor->insertTable(fieldsValues.count(), 2);// ñîçäàäèì òàáëèöó äëÿ ïîëåé êëàññà, êðîìå ïåðâûõ äâóõ (ID è íàçâàíèå îáúåêòà) |
|
- | 1460 | for(int i=0; i < fieldsValues.count(); i++){ // ïðîïóñòèì ïîëÿ: ID è ïîëå, ñîäåðæàùåå èìÿ îáúåêòà (îíî è òàê óæå îòîáðàæåíî) |
|
- | 1461 | QStringList keys_list = fieldsValues.keys(); |
|
- | 1462 | QStringList values_list = fieldsValues.values(); |
|
- | 1463 | *cursor = table->cellAt(i,0).firstCursorPosition();// ñòðîêà i-òàÿ, ñòîëáåö ïåðâûé |
|
- | 1464 | cursor->insertText(keys_list.at(i));//ñþäà çàíîñèì èìÿ ïîëÿ |
|
- | 1465 | *cursor = table->cellAt(i,1).firstCursorPosition();// ñòðîêà i-òàÿ, ñòîëáåö âòîðîé |
|
- | 1466 | cursor->insertText(values_list.at(i));//ñþäà çàíîñèì èìÿ ïîëÿ |
|
- | 1467 | }
|
|
- | 1468 | ||
- | 1469 | cursor->movePosition(QTextCursor::End);//âûõîäèì èç òàáëèöû |
|
- | 1470 | cursor->insertText( tr("\n")); |
|
- | 1471 | ||
- | 1472 | ||
- | 1473 | ||
- | 1474 | /******************************
|
|
- | 1475 | ||
- | 1476 | table = cursor->insertTable(fieldsNamesList.count(), 2);// ñîçäàäèì òàáëèöó äëÿ ïîëåé êëàññà, êðîìå ïåðâûõ äâóõ (ID è íàçâàíèå îáúåêòà)
|
|
1359 | 1477 | ||
1360 | for(int i=2; i < fieldsNamesList.count(); i++){ // ïðîïóñòèì ïîëÿ: ID è ïîëå, ñîäåðæàùåå èìÿ îáúåêòà (îíî è òàê óæå îòîáðàæåíî) |
1478 | for(int i=2; i < fieldsNamesList.count(); i++){ // ïðîïóñòèì ïîëÿ: ID è ïîëå, ñîäåðæàùåå èìÿ îáúåêòà (îíî è òàê óæå îòîáðàæåíî)
|
1361 | // if (i !=icon_field_index) tmp_string = q.record().value(i).asString(); // åñëè ýòî íå èêîíêà, òî ñ÷èòûâàåì çíà÷åíèå êàê ñòðîêó
|
1479 | // if (i !=icon_field_index) tmp_string = q.record().value(i).asString(); // åñëè ýòî íå èêîíêà, òî ñ÷èòûâàåì çíà÷åíèå êàê ñòðîêó
|
1362 | if (i !=icon_field_index) tmp_string = q.record().value(i).asString(); // åñëè ýòî íå èêîíêà, òî ñ÷èòûâàåì çíà÷åíèå êàê ñòðîêó |
1480 | if (i !=icon_field_index) tmp_string = q.record().value(i).asString(); // åñëè ýòî íå èêîíêà, òî ñ÷èòûâàåì çíà÷åíèå êàê ñòðîêó
|
1363 | 1481 | ||
Строка 1373... | Строка 1491... | ||
1373 | cursor->insertText(tmp_string);//ñþäà çíà÷åíèå ïîëÿ |
1491 | cursor->insertText(tmp_string);//ñþäà çíà÷åíèå ïîëÿ
|
1374 | // cursor->insertText( tr("\n"));
|
1492 | // cursor->insertText( tr("\n"));
|
1375 | }
|
1493 | }
|
1376 | 1494 | ||
1377 | //// }
|
1495 | //// }
|
- | 1496 | ||
- | 1497 | ||
- | 1498 | ||
- | 1499 | ||
- | 1500 | ||
- | 1501 | ||
- | 1502 | ||
- | 1503 | ||
- | 1504 | ||
- | 1505 | ||
1378 | cursor->movePosition(QTextCursor::End);//âûõîäèì èç òàáëèöû |
1506 | cursor->movePosition(QTextCursor::End);//âûõîäèì èç òàáëèöû
|
1379 | cursor->insertText( tr("\n")); |
1507 | cursor->insertText( tr("\n"));
|
- | 1508 | ||
- | 1509 | *********************************/
|
|
- | 1510 | ||
1380 | }
|
1511 | }
|
1381 | 1512 | ||
1382 | 1513 | ||
1383 | 1514 | ||
1384 | /********************************************************
|
1515 | /********************************************************
|