Browse Source

Var encoding issue

master
Maxime Wack 9 years ago
parent
commit
88f55b433c
2 changed files with 20 additions and 20 deletions
  1. +19
    -19
      CosMoS/bdd.cpp
  2. +1
    -1
      CosMoS/misc.h

+ 19
- 19
CosMoS/bdd.cpp View File

@@ -111,13 +111,13 @@ void class_bdd::Importer(const wxString& filename)
<< "\"" << item[21] << "\", " //Date_cs
<< "\"" << item[6] << "\"" //Service
<< ");";
rc += sqlite3_exec(db, requete, NULL, NULL, NULL);
rc += sqlite3_exec(db, _C(requete), NULL, NULL, NULL);
//Insertion dans la table de résultats
requete = "INSERT OR IGNORE INTO Result (id) VALUES (";
requete << item[0]
<< ");";
rc += sqlite3_exec(db, requete, NULL, NULL, NULL);
rc += sqlite3_exec(db, _C(requete), NULL, NULL, NULL);
}
is_first_line = false;
//Annulation de l'import
@@ -151,7 +151,7 @@ void class_bdd::Exporter(const wxString& filename)
wxString id = grid_consults->GetCellValue(i,13);
line="";
wxString requete = "SELECT service FROM Consult WHERE id=" + id + ";";
sqlite3_prepare_v2(db, requete, -1, &stmt, NULL);
sqlite3_prepare_v2(db, _C(requete), -1, &stmt, NULL);
sqlite3_step(stmt);
wxString service = sqlite3_column_text(stmt,0);
line << grid_consults->GetCellValue(i,13) << ";"
@@ -174,7 +174,7 @@ void class_bdd::Exporter(const wxString& filename)
if (list_publi[j].Left(1) == '@')
{
requete = "SELECT date_publi,revue,lien FROM Publi WHERE id=" + list_publi[j].AfterLast('@') + ";";
sqlite3_prepare_v2(db, requete, -1, &stmt, NULL);
sqlite3_prepare_v2(db, _C(requete), -1, &stmt, NULL);
sqlite3_step(stmt);
line << sqlite3_column_text(stmt,0) << ";" << sqlite3_column_text(stmt,1) << ";" << sqlite3_column_text(stmt,2) << ";";
}
@@ -215,7 +215,7 @@ void class_bdd::GenerateGrid()
{
wxString orig = sqlite3_column_text(stmt, i);
// corrections
rc = sqlite3_prepare_v2(db, "SELECT dest FROM Correc WHERE orig=\"" + orig + "\";", -1, &stmt_correc, NULL);
rc = sqlite3_prepare_v2(db, _C("SELECT dest FROM Correc WHERE orig=\"" + orig + "\";"), -1, &stmt_correc, NULL);
if (sqlite3_step(stmt_correc) == SQLITE_DONE)
grid_consults->SetCellValue(line_nb, i+3, orig);
@@ -309,7 +309,7 @@ void class_bdd::SetResultPubli(int row, unsigned int bitfield)
<< ", cs_associe=" << val[2]
<< " WHERE id="
<< id << ";";
rc = sqlite3_exec(db, requete, NULL, NULL, NULL);
rc = sqlite3_exec(db, _C(requete), NULL, NULL, NULL);
if (rc)
wxMessageBox("Erreur lors de la mise à jour de la valeur", "Erreur", wxOK | wxICON_ERROR);
}
@@ -333,7 +333,7 @@ void class_bdd::AddCorrec(const wxString& id, int col, const wxString& dest)
{
rc = 0;
wxString requete = "SELECT * FROM Consult WHERE id=" + id + ";";
sqlite3_prepare_v2(db, requete, -1, &stmt, NULL);
sqlite3_prepare_v2(db, _C(requete), -1, &stmt, NULL);
sqlite3_step(stmt);
wxString orig = sqlite3_column_text(stmt, col-3);
sqlite3_finalize(stmt);
@@ -343,13 +343,13 @@ void class_bdd::AddCorrec(const wxString& id, int col, const wxString& dest)
void class_bdd::SetCorrec(const wxString& orig, const wxString& dest)
{
wxString requete = "INSERT OR REPLACE INTO Correc VALUES (\"" + orig + "\",\"" + dest + "\");";
sqlite3_exec(db, requete, NULL, NULL, NULL);
sqlite3_exec(db, _C(requete), NULL, NULL, NULL);
// Mise à jour de la grille
for (int i=0; i<grid_consults->GetNumberRows(); i++)
{
requete = "SELECT * FROM Consult WHERE id=" + grid_consults->GetCellValue(i, 13) + ";";
sqlite3_prepare_v2(db, requete, -1, &stmt, NULL);
sqlite3_prepare_v2(db, _C(requete), -1, &stmt, NULL);
sqlite3_step(stmt);
for (int j=5; j<11; j++)
{
@@ -368,12 +368,12 @@ void class_bdd::SetCorrec(const wxString& orig, const wxString& dest)

void class_bdd::DelCorrec(const wxString& orig)
{
sqlite3_exec(db, "DELETE FROM Correc WHERE orig=\"" + orig + "\";", NULL, NULL, NULL);
sqlite3_exec(db, _C("DELETE FROM Correc WHERE orig=\"" + orig + "\";"), NULL, NULL, NULL);
}

int class_bdd::GetNbResults(const wxString& id)
{
sqlite3_prepare_v2(db, "SELECT nb_result FROM Result WHERE id=" + id + ";" , -1, &stmt, NULL);
sqlite3_prepare_v2(db, _C("SELECT nb_result FROM Result WHERE id=" + id + ";") , -1, &stmt, NULL);
sqlite3_step(stmt);
int out = sqlite3_column_int(stmt, 0);
sqlite3_finalize(stmt);
@@ -383,12 +383,12 @@ int class_bdd::GetNbResults(const wxString& id)

void class_bdd::SetNbResults(const wxString& id, int nb_results)
{
sqlite3_exec(db, "UPDATE Result SET nb_result=" + _itoW(nb_results) + " WHERE id=" + id + ";", NULL, NULL, NULL);
sqlite3_exec(db, _C("UPDATE Result SET nb_result=" + _itoW(nb_results) + " WHERE id=" + id + ";"), NULL, NULL, NULL);
}

wxArrayString class_bdd::GetIdResult(const wxString& id, bool stripped)
{
sqlite3_prepare_v2(db, "SELECT id_result FROM Result WHERE id=" + id + ";", -1, &stmt, NULL);
sqlite3_prepare_v2(db, _C("SELECT id_result FROM Result WHERE id=" + id + ";"), -1, &stmt, NULL);
sqlite3_step(stmt);
wxString list_id = sqlite3_column_text(stmt, 0);
sqlite3_finalize(stmt);
@@ -417,13 +417,13 @@ void class_bdd::SetIdResult(const wxString& id, wxArrayString id_results)
count++;
}
list_id = list_id.BeforeLast(',');
sqlite3_exec(db, "UPDATE Result SET id_result=\"" + list_id + "\" WHERE id=" + id + ";", NULL, NULL, NULL);
sqlite3_exec(db, _C("UPDATE Result SET id_result=\"" + list_id + "\" WHERE id=" + id + ";"), NULL, NULL, NULL);
SetNbResults(id, count);
}

void class_bdd::AddIdResult(const wxString& id, const wxString& id_result)
{
sqlite3_prepare_v2(db, "SELECT id_result FROM Result WHERE id=" + id + ";", -1, &stmt, NULL);
sqlite3_prepare_v2(db, _C("SELECT id_result FROM Result WHERE id=" + id + ";"), -1, &stmt, NULL);
sqlite3_step(stmt);
wxString list_id = sqlite3_column_text(stmt, 0);
sqlite3_finalize(stmt);
@@ -432,12 +432,12 @@ void class_bdd::AddIdResult(const wxString& id, const wxString& id_result)
else
list_id = id_result;
sqlite3_exec(db, "UPDATE Result SET id_result=\"" + list_id + "\" WHERE id=" + id + ";", NULL, NULL, NULL);
sqlite3_exec(db, _C("UPDATE Result SET id_result=\"" + list_id + "\" WHERE id=" + id + ";"), NULL, NULL, NULL);
}

bool class_bdd::IsPubli(const wxString& id)
{
sqlite3_prepare_v2(db, "SELECT * FROM Publi WHERE id=" + id + ";", -1, &stmt, NULL);
sqlite3_prepare_v2(db, _C("SELECT * FROM Publi WHERE id=" + id + ";"), -1, &stmt, NULL);
bool out = (sqlite3_step(stmt) == SQLITE_ROW);
sqlite3_finalize(stmt);
return out;
@@ -456,7 +456,7 @@ void class_bdd::AddPubli(wxString id, wxString title, wxString authors, wxString
<< "\"" << link << "\", "
<< "\"" << date << "\", "
<< "\"" << affiliation << "\");";
rc = sqlite3_exec(db, requete, NULL, NULL, NULL);
rc = sqlite3_exec(db, _C(requete), NULL, NULL, NULL);
if (rc)
wxMessageBox(_itoW(rc) + "\n" + requete);
}
@@ -464,7 +464,7 @@ void class_bdd::AddPubli(wxString id, wxString title, wxString authors, wxString
wxArrayString class_bdd::GetPublis(wxString id)
{
wxArrayString out;
sqlite3_prepare_v2(db, "SELECT * FROM Publi WHERE id=" + id + ";", -1, &stmt, NULL);
sqlite3_prepare_v2(db, _C("SELECT * FROM Publi WHERE id=" + id + ";"), -1, &stmt, NULL);
sqlite3_step(stmt);
out.Add(wxString::FromUTF8((const char*)sqlite3_column_text(stmt, 1)));
out.Add(wxString::FromUTF8((const char*)sqlite3_column_text(stmt, 2)));


+ 1
- 1
CosMoS/misc.h View File

@@ -9,7 +9,7 @@
#elif defined( __WXMSW__ )
#define slash "\\"
#endif
#define _C(string) (const char*) string.c_str() // wxString -> char*
#define _C(string) (const char*) wxString(string).mb_str(wxConvUTF8) // wxString -> char*
#define _itoW(integer) wxString::Format("%i",integer) // int -> wxString

enum


Loading…
Cancel
Save