on 06-29-2011 10:21 PM
Hello:
I am doing a BI7.01 TDTIM.
Patch level is :
DMIS 2006_1_700 :15
DMIS_CNT 2006_1_700 :15
DMIS_BSC 2008_1_700 :7
When saving the "FROM DATE", I get the short dump on the control system ONLY. I have tried to use different
"From Date" but get the same short dump. If anybody saw the same error, would you please share your experience?
Thanks a lot!
Runtime Errors SAPSQL_ARRAY_INSERT_DUPREC
Except. CX_SY_OPEN_SQL_DB
Date and Time 29.06.2011 14:40:32
-
-
Short text |
The ABAP/4 Open SQL array insert results in duplicate database records. |
-
-
What happened? |
Error in the ABAP Application Program |
The current ABAP program "CNV_TDMS_BW_FROM_DATE" had to be terminated because |
it has |
come across a statement that unfortunately cannot be executed. |
-
-
Error analysis |
An exception occurred that is explained in detail below. |
The exception, which is assigned to class 'CX_SY_OPEN_SQL_DB', was not caught |
in |
procedure "SAVE_CHANGES" "(FORM)", nor was it propagated by a RAISING clause. |
Since the caller of the procedure could not have anticipated that the |
exception would occur, the current program is terminated. |
The reason for the exception is: |
If you use an ABAP/4 Open SQL array insert to insert a record in |
the database and that record already exists with the same key, |
this results in a termination. |
(With an ABAP/4 Open SQL single record insert in the same error |
situation, processing does not terminate, but SY-SUBRC is set to 4.) |
-
-
Missing RAISING Clause in Interface |
Program CNV_TDMS_BW_FROM_DATE |
Include CNV_TDMS_BW_FROM_DATE_INIT_F01 |
Row 741 |
Module type (FORM) |
Module Name SAVE_CHANGES |
-
-
Trigger Location of Exception |
Program CNV_TDMS_BW_FROM_DATE |
Include CNV_TDMS_BW_FROM_DATE_INIT_F01 |
Row 784 |
Module type (FORM) |
Module Name SAVE_CHANGES |
-
-
Source Code Extract |
-
Line | SourceCde |
-
754 | CLEAR lt_eval. |
755 | |
756 | LOOP AT gt_date_rating ASSIGNING <gt_date_rating>. |
757 | ls_eval-client = sy-mandt. |
758 | ls_eval-packid = p_pack. |
759 | ls_eval-from_date = <gt_date_rating>-from_date. |
760 | ls_eval-rating = <gt_date_rating>-rating. |
761 | APPEND ls_eval TO lt_eval. |
762 | ENDLOOP. |
763 | |
764 | UNASSIGN <gt_date_rating>. |
765 | |
766 |
|
767 | MODIFY cnvtdms_01_eval FROM TABLE lt_eval. |
768 | |
769 |
|
770 | MODIFY cnvtdms_01_perio FROM TABLE gt_periods. |
771 | |
772 | |
773 |
|
774 | DELETE cnvtdms_01_eval FROM TABLE gt_del_eval. |
775 | DELETE cnvtdms_01_perio FROM TABLE gt_del_periods. |
776 | |
777 | CLEAR gt_del_eval. |
778 | CLEAR gt_del_periods. |
779 | |
780 | DELETE FROM cnvtdms_01_selec |
781 | WHERE packid = p_pack. |
782 | SORT gt_selec. |
783 | DELETE ADJACENT DUPLICATES FROM gt_selec COMPARING ALL FIELDS. |
>>>>> | INSERT cnvtdms_01_selec FROM TABLE gt_selec. |
785 | |
786 | DELETE FROM cnvtdms_01_scen |
787 | WHERE packid = p_pack. |
788 | |
789 |
|
790 | SORT gt_scen BY client packid fieldtype. |
791 | |
792 | DELETE ADJACENT DUPLICATES FROM gt_scen |
793 | COMPARING ALL FIELDS. |
794 | |
795 | MODIFY cnvtdms_01_scen FROM TABLE gt_scen. |
796 | |
797 |
|
798 | UPDATE cnvmbtpack |
799 | SET accessplanid = '' |
800 | WHERE packid = p_pack. |
801 | *Update the table to map given date with best date |
802 | MODIFY cnvtdmsbw_bstdt FROM TABLE gt_bst_dat. |
803 |
|
-
I am sorry for the messy message but I cannot make it neat.
You could copy and paste to your notepad to have better visual effect.
BTW: The table called cnvtdms_01_selec does NOT have any entry for my package. So I REALLY do NOT
know why it complains duplicates.
Thanks!
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
85 | |
10 | |
10 | |
9 | |
7 | |
6 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.