![]() |
#5 |
HAI; CAN HAS STDIO?
|
в том-то и дело, что транзакции все внутри try/catch. попробую сейчас изобразить листинг.
вот функция, которую вызывает внешняя программа и в которой всё происходит: X++: public Anytype updateTable(tableId _tablenum, TransTypes _type, recId _recId = 0, Container _values = connull()) { anytype _object = new DictTable(_tablenum).makeRecord(); int logPoint; int line; Container c; ; buffer = _object; logPoint = infolog.num(); try { switch (_type) { case (TransTypes::RecSelect) : break; case (TransTypes::RecInsert) : _object = this.RecInsert(_object, _recId, _values); break; case (TransTypes::RecUpdate) : _object = this.RecUpdate(_object, _recid, _values); break; case(TransTypes::RecDelete) : _object = this.RecDelete(_object, _recId, _values); break; } } catch (exception::Break) { abs(1); } catch (exception::DDEerror) { abs(1); } catch (exception::Deadlock) { abs(1); } catch (exception::Error) { abs(1); } catch (exception::Info) { abs(1); } catch (exception::Internal) { abs(1); } catch (exception::Numeric) { abs(1); } catch (exception::Sequence) { abs(1); } catch (exception::Warning) { abs(1); } catch { line = infolog.line(); c = infolog.cut(logPoint + 1, line); MyErrorLog::processError(_tablenum, _type, _recId, _values, c); } return _object; }
__________________
our sharp bitter vitriol is not that of the vulgar. |
|
|
|