Bonjour,

en faisant un round trip body d'un fichier cpp voila l'erreur "explicite" de BOUML:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
cannot update body of formatIsoStringYmdTHMS
voici le code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
/**
 * @brief Returns a string formated "%Y%m%dT%H%M%S"
 * @param time is the ptime that needs to be formated
 */
std::string OracleRepository::formatIsoStringYmdTHMS(boost::posix_time::ptime time) {
LOG4CXX_DEBUG(OracleRepository::logger, _T("+formatIsoStringYmdTHMS"));
  // Bouml preserved body begin 00024F03
if (time.is_not_a_date_time()) {
    return "";
}
boost::posix_time::time_facet * outputFacet = new boost::posix_time::time_facet();
boost::posix_time::time_input_facet * inputFacet = new boost::posix_time::time_input_facet();
inputFacet->format("%Y%m%dT%H%M%S");
outputFacet->format("%Y%m%dT%H%M%S");
std::stringstream ss;
ss.imbue(std::locale(std::locale::classic(), outputFacet));
ss.imbue(std::locale(ss.getloc(), inputFacet));

ss << time;

return ss.str();
  // Bouml preserved body end 00024F03

LOG4CXX_DEBUG(OracleRepository::logger, _T("-formatIsoStringYmdTHMS"));
}
j'ai la meme erreur pour cette fonction:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
/**
 * @brief Sends a query to insert or delete dates from a calendar
 * @param query is the query that will be inserted or deleted
 * @param idCur is the id of the calendar
 * @param dates is the map of dates to insert or delete
 */
void OracleCalendarRepository::sendDates(std::string query, int idCur, const com::fxoverlay::business::time::M_DateEvent & dates) {
LOG4CXX_DEBUG(OracleCalendarRepository::logger, _T("+sendDates"));
  // Bouml preserved body begin 00021F83
isDb("OracleCalendarRepository");
try {
    otl_stream insert(50, query.c_str(), *db);
    insert.set_commit(0);
    for (com::fxoverlay::business::time::ciM_DateEvent i = dates.begin(); i != dates.end(); i++) {
        for (std::set<int>::const_iterator j = i->second.begin(); j != i->second.end(); ++j) { 
            insert << idCur << formatIsoStringYmdTHMS(i->first) << *j;
        }
    }
    insert.flush();
    db->commit();
}
catch (otl_exception& p){ // intercept OTL exceptions
    db->rollback();
    std::string strErr = formatOracleError(p);
    LOG4CXX_ERROR(OracleCalendarRepository::logger, strErr);
    com::fxoverlay::support::exception::dao::DataRetrievalFailureDaoException exptErr(strErr);
    throw exptErr;
}
  // Bouml preserved body end 00021F83

LOG4CXX_DEBUG(OracleCalendarRepository::logger, _T("-sendDates"));
}
J'aimerais savoir pourquoi et comment le corriger si possible.

Cdlt,

EDIT: les deux fonctions sont les dernieres du fichier.cpp je sais pas si ca a un rapport.. (évidement ca marche tres bien pour d autres fichiers cpp)