ITQuants blog

Author: Created: 2/17/2012 1:03 PM RssIcon
My personal blog on ITQuants
By Philippe Bonneau on 9/27/2013 9:22 AM

When changing some stored procedure which generated doublons due to the fact that it made always insertions instead of insertions or updates, I got the fatal Oracle error - ORA-22920 row containing the LOB value is not locked - when trying to update the BLOB field.

By Philippe Bonneau on 9/19/2013 4:58 PM
When taking a look at some database fields which contain absolute and relative dates, it appears that both formats are stored in a numeric value. In order to know the real value that is stored, some conversion has to be made, using specific limits. In other words, it means that the Sophis Oracle num_to_date method has not be used alone.
By Philippe Bonneau on 7/30/2013 8:39 AM
After debugging some code, in order to know why the methods CSRInstrument::GetInstance and gApplicationContext->GetCSRInstrument returned null in some cases, I discovered that the method CSRInstrument::MultiSave was used badly. In this case, the instrument was duplicated using the Clone method, setting the instrument code using the SetCode to 0, and using reserveCode in relationship with GetNewCode. The insertion into database was done using the CSRInstrument::MultiSave with a pmModification flag.
By Philippe Bonneau on 7/27/2013 11:40 AM

It's an old well-known subject, but since I've seen recently developers who were using the STL vector::clear method and who believed that this method make some deallocation, this post is to remember which method to use in such a case.

By Philippe Bonneau on 6/14/2013 11:58 AM

If you need to run SQL scripts in order to update some deals stored into the Oracle table of deals, HISTOMVTS, several things have to be done in  order to permit the update done by the Oracle triggers at the same time. The steps to respect are the following ones:

By Philippe Bonneau on 5/29/2013 4:38 PM
Something quite easy, not necessary done every day, but that could be usefull in some cases... I just wonder that the method was not static. This post gives the solution:
By Philippe Bonneau on 5/14/2013 4:48 PM
This post describes the steps to follow in order to compile a C++ project created under VS2005 (or even VC6), and to migrate it to a VS2010 .vcxproj one, but keeping VS2005 as compiler (v80 configuration in the General tab, Platform Toolset entry of the project properties).
By Philippe Bonneau on 3/6/2013 4:02 PM

Even if the AddClauseOfThisType and SetNthclauseOfThisType exist on the CSRInstrument class, these methods work fine an a CSROption but do nothing on a CSRFuture, at least on versions < Risque 7.1. Thus, the only way to save them is to insert them directly into the database using the CSRSqlQuery class. To prevent some problems, the right way to implement it is the following one:

By Philippe Bonneau on 3/5/2013 12:16 PM

Sometimes, we need to save informations ourselves in some Oracle table without using the mapping between some CSREdit control and some field in the Oracle TITRES table. Sadly, on Sophis Risque, and despite several requests I made, there is no specific callback to implement for the Oracle rollback or commit. Thus, the only way to implement the save of additional informations, and recommended by Sophis, is the following one:

By Philippe Bonneau on 2/14/2013 5:26 PM

When developing an executable, there are several solutions to follow the memory consumption on a process. A third party performance monitor could be used in order to store the information and follow the memory growth on the time. I know some like Sysload, provided by Orsyp.

Another solution is to dump the memory used at different steps of the process in some log files and using this log files to make some statistics.

Search blog