|
02.09.2011, 10:20 | #1 |
Участник
|
Цитата:
Цитата:
Сообщение от gl00mie
С ним идея была в том, чтобы в сообщениях на запись практически любой таблицы можно было ссылаться с помощью одного placeholder'а (%1), но чтобы описание при этом получалось необходимым и достаточным для идентификации записи, о которой идет речь: если это SalesTable, то чтобы был указан SalesId, если CustTable/VendTable - чтобы там был AccountNum, если CustTrans/VendTrans - чтобы обязательно были Voucher и TransDate и т.п., ну и чтобы везде был RecId, как в отладчике.
при таком подходе информация об источнике возникновения выводится там, где она реально имеется. при таком подходе эту информацию не нужно спускать на нижние уровни. если юзать SysInfoAction то пользователю не нужно будет перевбивать в поиск recId - достаточно просто нажать на кнопку в инфологе. беда в том, что люди не юзают даже стандартные подходы. Даже в Майкрософте. ================= краткий совет - если не хватает информации об источнике ошибки, то всего-лишь добавьте setprefix в циклы верхнего уровня. |
|
02.09.2011, 10:54 | #2 |
Участник
|
Цитата:
Цитата:
Цитата:
На счет setprefix - целиком и полностью поддерживаю. |
|
02.09.2011, 11:45 | #3 |
Участник
|
Попробуйте setpprefix - уверен, понравится.
|
|
09.09.2011, 14:48 | #4 |
Участник
|
Цитата:
И есть вопрос, может не совсем по SUBJ. А как самому понизить уровень лога? Например, в цикле выводятся сообщения не требующие уточнения, но если будет ошибка в table.validateWrite(), то хорошо бы вывести префикс с уточнением. И, как выяснилось, оператор continue почему-то не сбрасывает уровень лога. В результате может фигня получиться. |
|