#include "newvendorform.h"
#include "ui_newvendorform.h"
#include "sqliteinpstring.h"
#include <QSqlError>
#include <QSqlField>
#include <QDebug>
NewVendorForm
::NewVendorForm(int id,
QWidget *parent
) : ui(new Ui::NewVendorForm)
{
rec_id = id;
ui->setupUi(this);
ui->tableView_phone->resizeRowsToContents();
ui
->tableView_phone
->setEditTriggers
(QTableView::AllEditTriggers);
le = new DBLineEdit(rec_id, "vendor", "name", this);
pte = new DBPlainTextEdit(rec_id, "vendor", "address", this);
le->move(160, 35);
le->setFixedWidth(130);
pte->move(10, 155);
pte->setFixedWidth(140);
pte->setFixedHeight(140);
table_mod->setTable("phone_number");
table_mod
->setFilter
("vendor_id == " + QString::number(rec_id
));
table_mod->select();
table_mod->setHeaderData(3, Qt::Horizontal, "Type");
table_mod->setHeaderData(4, Qt::Horizontal, "Country Code");
table_mod->setHeaderData(5, Qt::Horizontal, "Area Code");
table_mod->setHeaderData(6, Qt::Horizontal, "Number");
table_mod
->setRelation
(3,
QSqlRelation("phone_type",
"id",
"term"));
ui->tableView_phone->setModel(table_mod);
ui->tableView_phone->update();
connect(ui
->tableView_phone,
SIGNAL(customContextMenuRequested
(QPoint)),
this,
SLOT(slot_new_phone
(QPoint)));
ui->tableView_phone->setColumnHidden(0, true);
ui->tableView_phone->setColumnHidden(1, true);
ui->tableView_phone->setColumnHidden(2, true);
ui->tableView_phone->resizeColumnsToContents();
ui->tableView_phone->resizeRowsToContents();
}
void NewVendorForm
::slot_new_phone(QPoint) { qDebug() << "slot_new_phone";
tmp_record = table_mod->record();
qDebug() << tmp_record;
tmp_record.setGenerated(0, false);
tmp_record.setGenerated(1, false);
tmp_record.setGenerated(3, false);
tmp_record.setGenerated(4, false);
tmp_record.setGenerated(5, false);
tmp_record.setValue("vendor_id", rec_id);
tmp_record.setValue("number", "555-5555");
qDebug() << tmp_record;
table_mod->select();
qDebug() << "Insert was successful " << table_mod->insertRecord(-1, tmp_record); [COLOR="red"]// Here is my current headache.[/COLOR]
qDebug() << table_mod->query().lastError().text();
table_mod->select();
ui->tableView_phone->update();
ui->tableView_phone->resizeRowsToContents();
ui->tableView_phone->resizeColumnsToContents();
}
NewVendorForm::~NewVendorForm() {
le->destroying();
pte->destroying();
delete le;
SQLiteInpString fix_str;
qry_str
= "SELECT address FROM vendor WHERE id == " + QString::number(rec_id
);
query.prepare(qry_str);
query.exec();
query.next();
fix_str = query.value(0).toString();
fix_str = fix_str.replace("\n\r", ", ");
fix_str = fix_str.replace("\n", ", ");
query.clear();
qry_str = "UPDATE vendor SET address = '" + fix_str;
qry_str
+= "' WHERE id == " + QString::number(rec_id
);
query.prepare(qry_str);
query.exec();
query.next();
delete pte;
delete ui;
}