Some trigger error msg..
Hi all
I've encuontered 3 error msg that I'm not sure how to rectify or go about to even start troubleshooting it. Someone kindly shows me how to rectify the problem, please.
Thanks.
[02/07/2007 09:23:44][ERROR] CBOFillOrder::UpdateAverageFilledPrice: Exception C
aught: [SERVERERROR] ORA-00001: unique constraint (ITRADESYS.SYS_C0017388) viola
ted
ORA-06512: at"ITRADESYS.Partial_filled_TRIGGER", line 9
ORA-04088: error during execution of trigger'ITRADESYS.Partial_filled_TRIGGER'
This is my trigger code:
CREATE OR REPLACE TRIGGER"ITRADESYS"."Partial_filled_TRIGGER" AFTER
INSERT
OR UPDATE ON"ITRADESYS"."ORD_MST" FOR EACH ROW
DECLARE
dup_count number(4);
BEGIN
IF updating and (:NEW.ORD_STATUS = 4) then
SELECT Count(*) into dup_count from Partial_filled_TRIGGER where REF_NO=:NEW.REF_NO;
if (dup_count >=0) then
INSERT INTO PARTIAL_FILLED_TRIGGER
(TRADE_DT,
REF_NO,
ORD_NO,
ORD_SEQ_NO,
CUST_ID,
ACC_ID,
CUST_NAME,
ORD_SIDE,
XCHG_ID,
MKT_ID,
SYMBOL,
ORD_PR,
STOP_PR,
ORD_QTY,
FILLED_QTY,
OUTSTD_QTY,
ORD_TYPE,
ORD_TERM,
EXPIRY_DT,
AON,
SHORT_SELL,
DISPOSAL_SALE,
SCRIP,
ODD_LOT,
CHANNEL_ID,
SRC_REF_NO,
TRADER_ID,
TRADER_TM,
TERMINAL_ID,
AMS_ID,
AMS_TM,
APPROVAL_ID,
APPROVAL_TM,
CANCEL_QTY,
REDUCE_QTY,
ORD_STATUS,
ACTION,
EXCPT_REMARK,
REASON_CODE,
NOTIFY_FLG,
NOTIFY_TM,
ORD_TASK,
QUEUE_TM,
ORD_QUEUED,
AMEND_FROM,
AMEND_TO,
NEXT_DAY,
GROUP_ID,
BUSINESS_DT,
NEW_PR,
NEW_QTY,
REMARK,
BSK_FLG,
BSK_PARENT,
INDEX_CODE,
AVG_FILLED_PR,
OMNIBUSAC,
CONTRA,
SETT_TYPE,
SETT_CCY,
CHANNEL_REF_NO,
DISCLOSED_QTY,
MANUAL_TRADE,
DIRECT_TRADE,
COUNTERPARTY,
ALERTFLG,
ACKFLG)
VALUES
(:NEW.TRADE_DT,
:NEW.REF_NO,
:NEW.ORD_NO,
:NEW.ORD_SEQ_NO,
:NEW.CUST_ID,
:NEW.ACC_ID,
:NEW.CUST_NAME,
:NEW.ORD_SIDE,
:NEW.XCHG_ID,
:NEW.MKT_ID,
:NEW.SYMBOL,
:NEW.ORD_PR,
:NEW.STOP_PR,
:NEW.ORD_QTY,
:NEW.FILLED_QTY,
:NEW.OUTSTD_QTY,
:NEW.ORD_TYPE,
:NEW.ORD_TERM,
:NEW.EXPIRY_DT,
:NEW.AON,
:NEW.SHORT_SELL,
:NEW.DISPOSAL_SALE,
:NEW.SCRIP,
:NEW.ODD_LOT,
:NEW.CHANNEL_ID,
:NEW.SRC_REF_NO,
:NEW.TRADER_ID,
:NEW.TRADER_TM,
:NEW.TERMINAL_ID,
:NEW.AMS_ID,
:NEW.AMS_TM,
:NEW.APPROVAL_ID,
:NEW.APPROVAL_TM,
:NEW.CANCEL_QTY,
:NEW.REDUCE_QTY,
:NEW.ORD_STATUS,
:NEW.ACTION,
:NEW.EXCPT_REMARK,
:NEW.REASON_CODE,
:NEW.NOTIFY_FLG,
:NEW.NOTIFY_TM,
:NEW.ORD_TASK,
:NEW.QUEUE_TM,
:NEW.ORD_QUEUED,
:NEW.AMEND_FROM,
:NEW.AMEND_TO,
:NEW.NEXT_DAY,
:NEW.GROUP_ID,
:NEW.BUSINESS_DT,
:NEW.NEW_PR,
:NEW.NEW_QTY,
:NEW.REMARK,
:NEW.BSK_FLG,
:NEW.BSK_PARENT,
:NEW.INDEX_CODE,
:NEW.AVG_FILLED_PR,
:NEW.OMNIBUSAC,
:NEW.CONTRA,
:NEW.SETT_TYPE,
:NEW.SETT_CCY,
:NEW.CHANNEL_REF_NO,
:NEW.DISCLOSED_QTY,
:NEW.MANUAL_TRADE,
:NEW.DIRECT_TRADE,
:NEW.COUNTERPARTY,
'0',
'0');
END IF;
END IF;
END;
thanks in advance

