on 12-01-2006 1:57 PM
Hi,
We have a client copy of our production system which we use to test things in. We were testing VAT and trying to do invoices, and whenever we run a VA01 it does not go through, instead emailing a Update was terminated error:
Update was terminated
System ID.... D11
Client....... 120
User..... DOSSANRY
Transaction.. VA01
Update key... A576763642074F06B7F62121D96DCFC4
Generated.... 30.11.2006, 10:51:19
Completed.... 30.11.2006, 10:51:23
Error info... 00 671: ABAP/4 processor: SAPSQL_ARRAY_INSERT_DUPREC
Can someone please advise?
check short dump in ST22 it will show which table you tried to insert duplicate records into. Then you need to determine if it's a problem with number ranges (like you assign a number to any object which exists already) or it's an error in any of your tables (like $TEMP entry in pricing table may cause problems like this ).
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I have checked the short dump, but I am not sure of the table. I believe it is DA_XVBPAI. I picked this up from the source code extract, around line 004790. Parts of the dump are as follows:
User, transaction...
Client.............. 120
User................ "DOSSANRY"
Language key........ "E"
Transaction......... "VA01 "
Program............. "SAPLV05I "
Screen.............. "RSM13000 3000"
Screen line......... 2
___________________________
Information on where termination occurred
The termination occurred in the ABAP program "SAPLV05I " in
"SD_PARTNER_UPDATE".
The main program was "RSM13000 ".
The termination occurred in line 480 of the source code of the (Include)
program "LV05IU15 "
of the source code of program "LV05IU15 " (when calling the editor 4800).
The program "SAPLV05I " was started in the update system.
Processing was terminated because the exception "CX_SY_OPEN_SQL_DB" occurred in
the
procedure "SD_PARTNER_UPDATE" "(FUNCTION)" but was not handled locally, not
declared in the
RAISING clause of the procedure.
The procedure is in the program "SAPLV05I ". Its source code starts in line 5
of the (Include) program "LV05I$15 ".
Source code extract
004500 POSNR = I_XVBPA-POSNR
004510 PARVW = I_XVBPA-PARVW.
004520 IF I_YVBPA-STCD1 <> I_XVBPA-STCD1 OR
004530 I_YVBPA-STCD2 <> I_XVBPA-STCD2 OR
004540 I_YVBPA-STCD3 <> I_XVBPA-STCD3 OR
004550 I_YVBPA-STCD4 <> I_XVBPA-STCD4 OR
004560 I_YVBPA-STCDT <> I_XVBPA-STCDT OR
004570 I_YVBPA-STKZN <> I_XVBPA-STKZN OR
004580 I_YVBPA-J_1KFREPRE <> I_XVBPA-J_1KFREPRE OR
004590 I_YVBPA-J_1KFTBUS <> I_XVBPA-J_1KFTBUS OR
004600 I_YVBPA-J_1KFTIND <> I_XVBPA-J_1KFTIND.
004610 MOVE-CORRESPONDING I_XVBPA TO WA_XVBPA3I.
004620 APPEND WA_XVBPA3I TO DA_XVBPA3I.
004630 ENDIF.
004640 ENDIF.
004650 ENDIF.
004660 WHEN UPDKZ_OLD.
004670 IF DA_VBPA-ADRDA CA GCF_ADDR_IND_COMB_MAN_OLD OR
004680 DA_VBPA-ADRDA CA GCF_ADDR_IND_COMB_MAN_ADRC.
004690 YADR-ADRNR = DA_VBPA-ADRNR. COLLECT YADR.
004700 ENDIF.
004710 IF DA_VBPA-ADRDA CA GCF_ADDR_IND_COMB_MAN_OLD OR
004720 DA_VBPA-ADRDA CA GCF_ADDR_IND_COMB_MAN_ADRC.
004730 XADR-ADRNR = DA_VBPA-ADRNR. COLLECT XADR.
004740 ENDIF.
004750 ENDCASE.
004760 ENDLOOP.
004770 UPDATE (OBJECT) FROM TABLE DA_XVBPAU.
004780 UPDATE VBPA3 FROM TABLE DA_XVBPA3U.
004790
INSERT (OBJECT) FROM TABLE DA_XVBPAI.
004810 INSERT VBPA3 FROM TABLE DA_XVBPA3I.
004820
004830 IF SY-SUBRC > 0.
004840 MESSAGE A700 WITH OBJECT SY-SUBRC DA_XVBPAI(21).
004850 ENDIF.
004860
004870 * Sonderfall neue VBPA (VBPA2) für Rollen AA und AW
004880 LOOP AT I_XVBPA2.
004890 DA_VBPA2 = I_XVBPA2.
004900 CASE DA_VBPA2-UPDKZ.
004910 WHEN UPDKZ_NEW.
004920 IF DA_VBPA2-ADRDA CA GCF_ADDR_IND_COMB_MAN_OLD OR
004930 DA_VBPA2-ADRDA CA GCF_ADDR_IND_COMB_MAN_ADRC.
004940 XADR-ADRNR = DA_VBPA2-ADRNR. COLLECT XADR.
004950 ENDIF.
004960 I_XVBPA-MANDT = SY-MANDT.
004970 IF I_XVBPA2-VBELN IS INITIAL.
004980 I_XVBPA2-VBELN = F_VBELN.
004990 ENDIF.
Contents of system fields
- set breakpoint before this insert statement,
- enable update debugging (enter /h in command line before clicking on SAVE, then in debug - settings-> update debugging)
- click on continue in debug till it stops at your breakpoint
- check the entries in DA_XVBPAI table and then check VBPA in SE16, I think you have some entries in VBPA already and it causes update termination.
If you have documents already in the system - check the last number in VBAK for your doc. type, then check number range for object RV_BELEG and set current number to the last number used in your system (trnansaction SNRO).
Thank you all for your help.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
dear ryan,
if you see duprec message in dump, it should be related to Number range problem, can u please check the number range assignments for the sales orders in you client copy system.
regards
Kamalesh
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Refere OSS Note 661864
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
107 | |
12 | |
11 | |
6 | |
6 | |
4 | |
4 | |
3 | |
3 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.