RAISE_EXCEPTION condition NO_AUTHORITY
Hi,
I am getting the RAISE_EXCEPTION since two day can some please sugget on this issue. these dumps are generating when the job is SM:FILL SD CACHE FOR WORKCENTER is after starting the Step 001 started (program RAGS_WORK_SD_CACHE, variant , user ID SOLMAN_BTC)and job got cancelled with RAISE_EXCEPTION,
plase checkthe dumps below.
Short text
Exception condition "NO_AUTHORITY" raised.
Error analysis
A RAISE statement in the program "SAPLDSWP_CI" raised the exception
condition "NO_AUTHORITY".
Since the exception was not intercepted by a superior
program, processing was terminated.
Short description of exception condition:
For detailed documentation of the exception condition, use
Transaction SE37 (Function Library). You can take the called
function module from the display of active calls.
How to correct the error
If the error occures in a non-modified SAP program, you may be able to
find an interim solution in an SAP Note.
If you have access to SAP Notes, carry out a search with the following
keywords:
"RAISE_EXCEPTION" " "
"SAPLDSWP_CI" or "LDSWP_CIU53"
"DSWP_CI_GET_CRM_OF_SOLUTION"
or
"SAPLDSWP_CI" "NO_AUTHORITY"
or
"RAGS_WORK_SD_CACHE " "NO_AUTHORITY"
If you cannot solve the problem yourself and want to send an error
notification to SAP, include the following information:
1. The description of the current problem (short dump)
To save the description, choose "System->List->Save->Local File
(Unconverted)".
2. Corresponding system log
Display the system log by calling transaction SM21.
Restrict the time interval to 10 minutes before and five minutes
after the short dump. Then choose "System->List->Save->Local File
(Unconverted)".
Information on where terminated
Termination occurred in the ABAP program "SAPLDSWP_CI" - in
"DSWP_CI_GET_CRM_OF_SOLUTION".
The main program was "RAGS_WORK_SD_CACHE ".
In the source code you have the termination point in line 19
of the (Include) program "LDSWP_CIU53".
The program "SAPLDSWP_CI" was started as a background job.
Job Name....... "SM:FILL SD CACHE FOR WORKCENTER"
Job Initiator.. "SOLMAN_ADMIN"
Job Number..... 19070501
thanks
saprock
Edited by: saprock006 on Apr 21, 2010 8:52 AM
Hi,
It is a problem of authorization for user SOLMAN_BTC.
Refer the below note:
[Note 1314587 - User SOLMAN_BTC missing authorization|https://service.sap.com/sap/support/notes/1314587]
Follow the instructions given in the note.
Hope, your problem will get solved.
Regards.
Rajesh Narkhede
Similar Messages
-
Content installation fails in 7.3 at ABAP program SAPLRRSI
Hi all,
We have a brand new 7.3 system, when we are trying to install standard content, we are getting a DUMP. Any clue what we are missing or anybody faced the same issue?
Category ABAP Programming Error
Runtime Errors RAISE_EXCEPTION
ABAP Program SAPLRRSI
Application Component BW-BEX-OT
And what is the highest SP level on 7.3? I tried to find it on service market place - but I dont see 7.3 listed out there.
Any pointer would be appreciated.
Thanks,
VoodiHi ,
The below link's may help u.
Dump RAISE_EXCEPTION; condition "X_MESSAGE"
Dump when activating Business Content 7.35
http://sap-core.com/troubleshoot/bw/bex/ot/class_RSDD/ -
Runtime error RAISE_EXCEPTION Exception condition "METADATA_MISSING" raised
Hi All,
I am facing a runtime error, while using transaction DSWP --> Set-up System Monitoring --> Copy Customizing -->
At that time we are getting "Runtime error RAISE_EXCEPTION Exception condition "METADATA_MISSING" raised
===========================================
Runtime Errors RAISE_EXCEPTION
Date and Time 25.07.2008 08:31:11
Short text
Exception condition "METADATA_MISSING" raised.
What happened?
The current ABAP/4 program encountered an unexpected
situation.
What can you do?
Note down which actions and inputs caused the error.
To process the problem further, contact you SAP system
administrator.
Using Transaction ST22 for ABAP Dump Analysis, you can look
at and manage termination messages, and you can also
keep them for a long time.
Error analysis
A RAISE statement in the program "SAPLDSVAS_SERV" raised the exception
condition "METADATA_MISSING".
Since the exception was not intercepted by a superior
program, processing was terminated.
Short description of exception condition:
For detailed documentation of the exception condition, use
Transaction SE37 (Function Library). You can take the called
function module from the display of active calls.
How to correct the error
If the error occures in a non-modified SAP program, you may be able to
find an interim solution in an SAP Note.
If you have access to SAP Notes, carry out a search with the following
keywords:
"RAISE_EXCEPTION" " "
"SAPLDSVAS_SERV" or "LDSVAS_SERVC7I"
"MAP_DSVAS_TT_DATA_TO_TT_25"
or
"SAPLDSVAS_SERV" "METADATA_MISSING"
or
"RDSMOP_MAIN " "METADATA_MISSING"
If you cannot solve the problem yourself and want to send an error
notification to SAP, include the following information:
1. The description of the current problem (short dump)
To save the description, choose "System->List->Save->Local File
(Unconverted)".
2. Corresponding system log
Display the system log by calling transaction SM21.
Restrict the time interval to 10 minutes before and five minutes
after the short dump. Then choose "System->List->Save->Local File
(Unconverted)".
3. If the problem occurs in a problem of your own or a modified SAP
program: The source code of the program
In the editor, choose "Utilities->More
Utilities->Upload/Download->Download".
4. Details about the conditions under which the error occurred or which
actions and input led to the error.
System environment
SAP-Release 700
Application server... "terra"
Network address...... "172.16.1.198"
Operating system..... "Windows NT"
Release.............. "5.2"
Hardware type........ "4x Intel 801586"
Character length.... 16 Bits
Pointer length....... 32 Bits
Work process number.. 2
Shortdump setting.... "full"
Database server... "TERRA"
Database type..... "ORACLE"
Database name..... "DSM"
Database user ID.. "SAPSR3"
Char.set.... "C"
SAP kernel....... 700
created (date)... "Oct 23 2007 01:07:18"
create on........ "NT 5.0 2195 Service Pack 4 x86 MS VC++ 13.10"
Database version. "OCI_10201_SHARE (10.2.0.1.0) "
Patch level. 133
Patch text.. " "
Database............. "ORACLE 9.2.0.., ORACLE 10.1.0.., ORACLE 10.2.0.."
SAP database version. 700
Operating system..... "Windows NT 5.0, Windows NT 5.1, Windows NT 5.2, Windows
NT 6.0"
Memory consumption
Roll.... 8176
EM...... 37628064
Heap.... 0
Page.... 65536
MM Used. 31785376
| MM Free. 1656912
=============================================
Configuration:
OS :Windows 2003 server.
Solution Manager 7.0 SP15
Oracle 10.2
RAM - 2 GB
Its bit urgent, Please help out us.
Thanks in advance.
Best Regards,
PratyushaHi
Check the SP level for ABAP and Basis. Download the latest SP level from SWDC and apply it on the system
This error is related to ABAP program.
Currently the latest available patch level is 16. Please download both ABAP and BASIS SP 16 and apply them on the system. -
Runtime error raise_exception (Exception condition "NOT_EXIST" raised)
Hi,
I tried to ran a DTP to load data in a Standard DSO. Once I run the DTP ,instantly it is showing me short dump.I tried to ran it 2 times. Every time it shows me dump
Runtime Errors RAISE_EXCEPTION
Short Text : Exception condition "NOT_EXIST" raised.
Error Analysis : A RAISE statement in the program "SAPLRSSM" raised the exception
condition "NOT_EXIST".
Since the exception was not intercepted by a superior
program, processing was terminated.
Short description of exception condition:
For detailed documentation of the exception condition, use
Transaction SE37 (Function Library). You can take the called
function module from the display of active calls.
Thanks in advance,
Regards,
SnehasishHi,
This kind of issues occur in BI7.0, the cause is not clear.
You can once again delete the Data in the DSO using SE14(If Production system, make sure you contact your Basis team for this).
You will have to use the table names(check the Delete data option & click on Activate and adjust databas)
Thanks, -
RAISE_EXCEPTION with exception condition "PARAMETER_INCOMLETE" raised.
Hi,
we are getting this Runtime error daily more than 10 times...please find below details.
Runtime Errors RAISE_EXCEPTION
Date and Time 2010.09.22 04:04:18
Short text
Exception condition "PARAMETER_INCOMLETE" raised.
Client.............. 700
User................ "TME10X"
Language key........ "V"
Transaction......... "VA01 "
Transactions ID..... "4C97B7A4B90A004DE10080000A281E0C"
Program............. "SAPLZSDCHECK"
Screen.............. "SAPMV45A 4001"
error analysis
A RAISE statement in the program "SAPLZSDCHECK" raised the exception
condition "PARAMETER_INCOMLETE".
Since the exception was not intercepted by a superior
program, processing was terminated.
Short description of exception condition:
For detailed documentation of the exception condition, use
Transaction SE37 (Function Library). You can take the called
function module from the display of active calls.
Can you please suggest us..
we hope this is related to functional issue.. any suggesions from BASIS end.
regards,
balaramHi Balaram,
How did you resolve the problem?Please provide the solution so that I will be helpful for others
Regards
Uday -
RAISE_EXCEPTION with exception condition "SYSTEM_FAILURE"
Hi Gurus,
I got a dump RAISE_EXCEPTION with exception condition "SYSTEM_FAILURE" in my system.
When i check the trace file of the work process dev_w0 , i see the following in it.
Tue Feb 3 19:47:33 2009
ABAP Program SAPLOLEA .
Source LOLEAU10 Line 352.
Error Code RAISE_EXCEPTION.
Module $Id: //bas/700_REL/src/krn/runt/abfunc.c#16 $ SAP.
Function ab_jfune Line 2561.
** RABAX: level LEV_RX_STDERR completed.
** RABAX: level LEV_RX_RFC_ERROR entered.
** RABAX: level LEV_RX_RFC_ERROR completed.
** RABAX: level LEV_RX_RFC_CLOSE entered.
** RABAX: level LEV_RX_RFC_CLOSE completed.
** RABAX: level LEV_RX_IMC_ERROR entered.
** RABAX: level LEV_RX_IMC_ERROR completed.
** RABAX: level LEV_RX_DATASET_CLOSE entered.
** RABAX: level LEV_RX_DATASET_CLOSE completed.
** RABAX: level LEV_RX_RESET_SHMLOCKS entered.
** RABAX: level LEV_RX_RESET_SHMLOCKS completed.
** RABAX: level LEV_RX_ERROR_SAVE entered.
** RABAX: level LEV_RX_ERROR_SAVE completed.
** RABAX: level LEV_RX_ERROR_TPDA entered.
** RABAX: level LEV_RX_ERROR_TPDA completed.
** RABAX: level LEV_RX_PXA_RELEASE_RUDI entered.
** RABAX: level LEV_RX_PXA_RELEASE_RUDI completed.
** RABAX: level LEV_RX_LIVE_CACHE_CLEANUP entered.
** RABAX: level LEV_RX_LIVE_CACHE_CLEANUP completed.
** RABAX: level LEV_RX_END entered.
** RABAX: level LEV_RX_END completed.
** RABAX: end no http/smtp
** RABAX: end RX_GOTO_RABAX
Exception condition "SYSTEM_FAILURE" raised..
Could you please guide me what to do when i see the following dump.
My env is ECC6 / DB2 /AIX.
Thanks in Advance,
Vikram.Hi
i supose this is a GUI Installation error pls install the latest version of SAP GUI version and avalable Patch and clean of the older one
Thx
Shilpa -
Hi SAP Gurus,
I have activated Document splitting & when iam trying to post the document then iam getting the following Run Time Error.
Iam using SAP ECC 6.0
Short text
Exception condition "WRONG_PARAMETERS" raised.
What happened?
The current ABAP/4 program encountered an unexpected
situation.
Error analysis
A RAISE statement in the program "SAPLGLT2" raised the exception
condition "WRONG_PARAMETERS".
Since the exception was not intercepted by a superior
program, processing was terminated.
Short description of exception condition:
For detailed documentation of the exception condition, use
Transaction SE37 (Function Library). You can take the called
function module from the display of active calls.
Trigger Location of Runtime Error
Program SAPLGLT2
Include LGLT2F07
Row 12
Module type (FUNCTION)
Module Name G_BEB_MOVE_ACCIT_TO_STRING
Source Code Extract
Line SourceCde
1 ----
2 * Created by : SAP* *
3 * Date : 13.09.2007 *
4 * Time : 16:57.56 *
5 ----
6 * This Report is generated by Report RGUGGLT0 *
7 ----
8
9 IF I_LEDGER = SPACE.
10 RAISE WRONG_PARAMETERS.
11 ELSE.
>>>>> RAISE WRONG_PARAMETERS.
13 ENDIF.
Kindly help me for the above.
Regards,
AmitabhHi Amitabh,
check this out:
1) Start transaction: SA38
2) Execute program: RGUGGLT0 (# to generate includes for flexible G/L)
3) Go back & repeat your posting transaction
4) Tell us if transaction worked fine
5) Reward me with points
Cheers!
B -
Hello Expert,
Please help me with Raise_Exception dump.Customer is facing this problem daily .we have debugged program many time and all but we are not able to find any clue.Its based on Fund plan id and campaign. And i have checked SAP Note-1475108. it doesn't support.Now please tell me valid solution to resolve this problem.
From this dump analysis i have take fund plan id and all campaign and took web ui screen screen shot.you can find screen shot in attachment. if you need variable details on web ui.
Category ABAP Programming Error
Runtime Errors RAISE_EXCEPTION
ABAP Program CL_CRM_MKTCA_PROCESSMODEL=====CP
Application Component CRM-MKT-MPL-CA-MOD
Date and Time 23.02.2015 01:58:22
|Short text |
| Exception condition "OBJECT_NOT_FOUND" raised. |
|What happened? |
| The current ABAP/4 program encountered an unexpected |
| situation. |
Error analysis |
| A RAISE statement in the program "CL_CGPL_STATUS_MANAGEMENT=====CP" raised the |
| exception |
| condition "OBJECT_NOT_FOUND". |
| Since the exception was not intercepted by a superior |
| program, processing was terminated. |
| |
| Short description of exception condition: |
| |
| Status Object Does Not Exist |
| |
| For detailed documentation of the exception condition, use |
| Transaction SE37 (Function Library). You can take the called |
| function module from the display of active calls.
|How to correct the error |
| |
| If the error occures in a non-modified SAP program, you may be able to |
| find an interim solution in an SAP Note. |
| If you have access to SAP Notes, carry out a search with the following |
| keywords: |
| |
| "RAISE_EXCEPTION" " " |
| "CL_CGPL_STATUS_MANAGEMENT=====CP" or "CL_CGPL_STATUS_MANAGEMENT=====CM004" |
| "STATUS_CHECK" |
| |
| or |
| |
| "CL_CGPL_STATUS_MANAGEMENT=====CP" "OBJECT_NOT_FOUND" |
| |
| or |
| |
| "SAPMSSY1 " "OBJECT_NOT_FOUND" |
| If you cannot solve the problem yourself and want to send an error |
| notification to SAP, include the following information: |
| |
| 1. The description of the current problem (short dump) |
| |
| To save the description, choose "System->List->Save->Local File |
| (Unconverted)". |
| |
| 2. Corresponding system log |
| |
| Display the system log by calling transaction SM21. |
| Restrict the time interval to 10 minutes before and five minutes |
| after the short dump. Then choose "System->List->Save->Local File |
| (Unconverted)". |
| |
| 3. If the problem occurs in a problem of your own or a modified SAP |
| program: The source code of the program |
| In the editor, choose "Utilities->More |
| Utilities->Upload/Download->Download". |
| |
| 4. Details about the conditions under which the error occurred or which |
| actions and input led to the error.
|Information on where terminated |
| Termination occurred in the ABAP program "CL_CGPL_STATUS_MANAGEMENT=====CP" - |
| in "STATUS_CHECK". |
| The main program was "SAPMSSY1 ". |
| |
| In the source code you have the termination point in line 12 |
| of the (Include) program "CL_CGPL_STATUS_MANAGEMENT=====CM004". |
|Source Code Extract |
|Line |SourceCde |
| 1|METHOD status_check. |
| 2|* ... |
| 3| CALL FUNCTION 'CRM_STATUS_CHECK' |
| 4| EXPORTING |
| 5| objnr = im_guid |
| 6| status = im_status |
| 7| EXCEPTIONS |
| 8| object_not_found = 1 |
| 9| status_not_active = 2. |
| 10| CASE sy-subrc. |
| 11| WHEN 1. |
|>>>>>| RAISE object_not_found. |
| 13| WHEN 2. |
| 14| RAISE status_not_active. |
| 15| ENDCASE. |
| 16| |
| 17|ENDMETHOD. |
|Contents of system fields |
|Name |Val. |
|SY-SUBRC|1 |
|SY-INDEX|0 |
|SY-TABIX|6 |
|SY-DBCNT|0 |
|SY-FDPOS|3 |
|SY-LSIND|0 |
|SY-PAGNO|0 |
|SY-LINNO|1 |
|SY-COLNO|1 |
|SY-PFKEY| |
|SY-UCOMM| |
|SY-TITLE|CPIC and RFC Control |
|SY-MSGTY|E |
|SY-MSGID|BS |
|SY-MSGNO|001 |
|SY-MSGV1|<Unknown Object> |
|SY-MSGV2|001999C211111ED3A39A399B369454CA |
|SY-MSGV3| |
|SY-MSGV4| |
|SY-MODNO|0 |
|SY-DATUM|20150223 |
|SY-UZEIT|015818 |
|SY-XPROG|SAPLRREL |
|SY-XFORM|CONVERSION_EXIT |
|Active Calls/Events |
|No. Ty. Program Include Line |
| Name |
| 16 METHOD CL_CGPL_STATUS_MANAGEMENT=====CP CL_CGPL_STATUS_MANAGEMENT=====CM004 12 |
| CL_CGPL_STATUS_MANAGEMENT=>STATUS_CHECK |
| 15 METHOD CL_CRM_MKTCA_PROCESSMODEL=====CP CL_CRM_MKTCA_PROCESSMODEL=====CM01A 19 |
| CL_CRM_MKTCA_PROCESSMODEL=>GET_MESSAGE_TYPE |
| 14 METHOD CL_CRM_MKTCA_PROCESSMODEL=====CP CL_CRM_MKTCA_PROCESSMODEL=====CM012 49 |
| CL_CRM_MKTCA_PROCESSMODEL=>CHECK_NODE_POSITIONS |
| 13 METHOD CL_CRM_MKTCA_PROCESSMODEL=====CP CL_CRM_MKTCA_PROCESSMODEL=====CM011 13 |
| CL_CRM_MKTCA_PROCESSMODEL=>CHECK |
| 12 METHOD CL_CRM_MKTCA_PROCESSMODELS====CP CL_CRM_MKTCA_PROCESSMODELS====CM00C 15 |
| CL_CRM_MKTCA_PROCESSMODELS=>CHECK |
| 11 METHOD CL_CRM_MKTPL_APPLICATION_MGR==CP CL_CRM_MKTPL_APPLICATION_MGR==CM012 11 |
| CL_CRM_MKTPL_APPLICATION_MGR=>DO_CHECK_BEFORE_SAVE |
| 10 METHOD CL_CRM_MKTGS_APPLICATION_MGR==CP CL_CRM_MKTGS_APPLICATION_MGR==CM003 52 |
| CL_CRM_MKTGS_APPLICATION_MGR=>CHECK_BEFORE_SAVE |
| 9 METHOD CL_CRM_MKTGS_APPLICATION_MGR==CP CL_CRM_MKTGS_APPLICATION_MGR==CM00D 17 |
| CL_CRM_MKTGS_APPLICATION_MGR=>SAVE_AND_COMMIT |
| 8 METHOD CL_CRM_MKTPL_CPG_FM_ERP_FPO===CP CL_CRM_MKTPL_CPG_FM_ERP_FPO===CM001 265 |
| CL_CRM_MKTPL_CPG_FM_ERP_FPO=>POST_ERP_AMOUNTS |
| 7 METHOD YWCRM_CL_MKTPL_PURCH_UPD_FUNDSCP YWCRM_CL_MKTPL_PURCH_UPD_FUNDSCM002 83 |
| YWCRM_CL_MKTPL_PURCH_UPD_FUNDS=>PERFORM_EXTERNAL_SETTLEMENT |
| 6 METHOD YWCRM_CL_MKTPL_PURCH_UPD_FUNDSCP YWCRM_CL_MKTPL_PURCH_UPD_FUNDSCM003 89 |
| YWCRM_CL_MKTPL_PURCH_UPD_FUNDS=>IF_CRM_FM_ACL_JOB~PROCESS_OBJECTS |
| 5 METHOD CL_CRM_FM_ACL_JOB_PROCESSING==CP CL_CRM_FM_ACL_JOB_PROCESSING==CM00D 87 |
| CL_CRM_FM_ACL_JOB_PROCESSING=>IF_CRM_FM_ACL_JOB_REPORT_IL~EXECUTE_DIRECT_JOB |
| 4 FUNCTION SAPLCRM_FM_ACL_JOB LCRM_FM_ACL_JOBU01 73 |
| CRM_FM_ACL_JOB_PARALLEL_EXEC |
| 3 FORM SAPLCRM_FM_ACL_JOB LCRM_FM_ACL_JOBU01 1 |
| CRM_FM_ACL_JOB_PARALLEL_EXEC |
| 2 FORM SAPMSSY1 SAPMSSY1 167 |
| REMOTE_FUNCTION_CALL |
| 1 MODULE (PBO) SAPMSSY1 SAPMSSY1 35 |
| %_RFC_START |
If you want to see full details regarding variable also so please find in attachment.Hi Kamal,
I recommend to open a ticket for SAP with the runtime error attached.
Best regards,
Andreas -
Dump RAISE_EXCEPTION PARTNER_NOT_VALID
Hi,
Got a dump in production system.Dont know the cause.Please help in finding solution
What happened?
The current ABAP/4 program encountered an unexpected
situation.
What can you do?
Note down which actions and inputs caused the error.
To process the problem further, contact you SAP system
administrator.
Using Transaction ST22 for ABAP Dump Analysis, you can look
at and manage termination messages, and you can also
keep them for a long time.
Error analysis
A RAISE statement in the program "SAPLBBP_BUPA" raised the exception
condition "PARTNER_NOT_VALID".
Since the exception was not intercepted by a superior
program, processing was terminated.
Short description of exception condition:
For detailed documentation of the exception condition, use
Transaction SE37 (Function Library). You can take the called
function module from the display of active calls.
How to correct the error
If the error occures in a non-modified SAP program, you may be able to
find an interim solution in an SAP Note.
If you have access to SAP Notes, carry out a search with the following
keywords:
"RAISE_EXCEPTION" " "
"SAPLBBP_BUPA" or "LBBP_BUPAU22"
"BBP_PARTNER_GET_PURCH_DATA_NEW"
or
"SAPLBBP_BUPA" "PARTNER_NOT_VALID"
or
"SAPLBBP_PO_UI_ITS " "PARTNER_NOT_VALID"
Contents of system fields
Name Val.
SY-SUBRC 0
SY-INDEX 0
SY-TABIX 1
SY-DBCNT 12
SY-FDPOS 72
SY-LSIND 0
SY-PAGNO 0
SY-LINNO 1
SY-COLNO 1
SY-PFKEY
SY-UCOMM PVIEW
SY-TITLE Create Purchase Order
SY-MSGTY E
SY-MSGID R11
SY-MSGNO 177
SY-MSGV1 9000000207
SY-MSGV2
SY-MSGV3
SY-MSGV4
SY-MODNO 0
SY-DATUM 20100610
SY-UZEIT 132611
SY-XPROG SAPCNVE
SY-XFORM CONVERSION_EXIT
Regards,
ShivaHi,
This error probably happened due to an issue with report BBPUPDVD, this is used to update vendor data (eg address). Check when vendors are getting updated and see if there are any conflicts occuring here.
Also it would be no harm check for recent notes valid for your release level for BBP_VENDOR_SYNC and BBPUPDVD.
I hope this helps,
Lisa -
Change Pricing Condition for an item with CRM_ORDER_MAINTAIN
Hi community,
I try to change an existing condition with the function module crm_order_maintain.
Everything looks fine, no error no dump, but no success
The condition stays the same!
Can anybody find a solution for this?
Heres my report so far:
*& Report ZTEST_PRICING2
REPORT ztest_pricing2.
DATA: lt_guid TYPE crmt_object_guid_tab,
lt_item TYPE crmt_object_guid_tab,
lt_saved TYPE crmt_return_objects,
lt_pridoc TYPE crmt_pric_cond_t,
ls_pridoc TYPE crmt_pric_cond,
lt_pricom TYPE crmt_pridoc_comt,
ls_pricom TYPE crmt_pridoc_com,
lt_header TYPE crmt_orderadm_h_comt,
lt_input TYPE crmt_input_field_tab,
ls_input TYPE crmt_input_field,
ls_input_fn TYPE CRMT_INPUT_FIELD_NAMES,
ls_cond_chg TYPE prct_cond_external_change,
ls_cond TYPE PRCT_COND_DU,
lt_pricing_i TYPE CRMT_PRICING_I_WRKT.
PARAMETERS: lv_head TYPE crmt_object_guid DEFAULT 'C4C61C4E35DDF306E10000000A024089'.
PARAMETERS: lv_item TYPE crmt_object_guid DEFAULT '09C71C4E35DDF306E10000000A024089'.
PARAMETERS: lv_kbetr TYPE prct_cond_rate DEFAULT '100'.
INSERT lv_head INTO TABLE lt_guid.
INSERT lv_item INTO TABLE lt_item.
CALL FUNCTION 'CRM_ORDER_READ'
EXPORTING
it_header_guid = lt_guid
it_item_guid = lt_item
* IV_MODE =
* IV_ONLY_SPEC_ITEMS =
* IT_REQUESTED_OBJECTS =
* IV_NO_AUTH_CHECK =
* IT_ITEM_USAGE_RANGE =
* IV_SUBITEM_DEPTH = -1
* IT_OBJECT_FILTER =
* IV_ONLY_CHANGED_OBJ = FALSE
* IV_STATUS_H_CHECK_RELEVANCE = FALSE
IMPORTING
et_pridoc = lt_pridoc
et_pricing_i = lt_pricing_i
* CHANGING
* CV_LOG_HANDLE =
EXCEPTIONS
document_not_found = 1
error_occurred = 2
document_locked = 3
no_change_authority = 4
no_display_authority = 5
no_change_allowed = 6
OTHERS = 7.
IF sy-subrc <> 0 AND lt_pridoc IS NOT INITIAL.
WRITE: / 'ERROR'.
EXIT.
ENDIF.
READ TABLE lt_pridoc INDEX 1 INTO ls_pridoc.
IF sy-subrc <> 0.
WRITE: / 'ERROR'.
EXIT.
ENDIF.
READ TABLE ls_pridoc-pric_cond INTO ls_cond WITH KEY kschl = 'PB00'.
IF sy-subrc <> 0.
WRITE: / 'ERROR'.
EXIT.
ENDIF.
ls_input-ref_guid = lv_head.
ls_input-ref_kind = 'A'.
ls_input-objectname = 'PRIDOC'.
ls_input_fn-fieldname = 'WAERS'.
INSERT ls_input_fn INTO TABLE ls_input-field_names.
ls_input_fn-fieldname = 'KBETR'.
INSERT ls_input_fn INTO TABLE ls_input-field_names.
INSERT ls_input INTO TABLE lt_input.
ls_pricom-ref_guid = lv_head.
ls_pricom-ref_kind = 'A'.
*ls_pricom-PRICING_TYPE = 'B'.
*ls_pricom-pricing_procedure = 'ZZMTA'.
ls_pricom-pric_cond[] = ls_pridoc-pric_cond[].
MOVE-CORRESPONDING ls_cond TO ls_cond_chg.
ls_cond_chg-waers = 'EUR'.
ls_cond_chg-kbetr = lv_kbetr.
INSERT ls_cond_chg INTO TABLE ls_pricom-cond_change.
APPEND ls_pricom TO lt_pricom.
CALL FUNCTION 'CRM_ORDER_MAINTAIN'
EXPORTING
it_pridoc = lt_pricom
CHANGING
* ct_orderadm_h = lt_header
ct_input_fields = lt_input
EXCEPTIONS
error_occurred = 1
document_locked = 2
no_change_allowed = 3
no_authority = 4
OTHERS = 5.
IF sy-subrc <> 0.
EXIT.
ENDIF.
CALL FUNCTION 'CRM_ORDER_SAVE'
EXPORTING
it_objects_to_save = lt_guid
IMPORTING
et_saved_objects = lt_saved
* ET_EXCEPTION =
* ET_OBJECTS_NOT_SAVED =
EXCEPTIONS
document_not_saved = 1
OTHERS = 2.
IF sy-subrc EQ 0.
COMMIT WORK AND WAIT.
ELSE.
ROLLBACK WORK.
ENDIF.
regards
MarkusHello Jordi,
The example below is whereby i was trying to copy all the pricing condition on one document to another and deleting what's not present on the source document.
You can used this piece of code to adapt your requirement.
CALL FUNCTION 'ZCRC_FM_COPY_PRICE_COND_ALL'
EXPORTING
id_object_guid_src = <fs_el_con_guid>
id_object_guid_dest = <fs_el_so_guid>
id_commit = abap_false
EXCEPTIONS
not_allowed = 1
error_occured = 2
OTHERS = 3.
PERFORM f_recup_donnees USING id_object_guid_src
id_object_guid_dest.
PERFORM f_modif_condition_prix USING id_object_guid_src
id_object_guid_dest.
PERFORM f_header_copy_pricing using id_object_guid_src
id_object_guid_dest.
FORM f_recup_donnees USING pd_object_guid_src TYPE crmt_object_guid
pd_object_guid_dest TYPE crmt_object_guid.
DATA:
lt_header_guid TYPE crmt_object_guid_tab.
INSERT pd_object_guid_src INTO TABLE lt_header_guid.
INSERT pd_object_guid_dest INTO TABLE lt_header_guid.
CLEAR: gt_orderadm_i, gt_doc_flow.
CALL FUNCTION 'CRM_ORDER_READ'
EXPORTING
it_header_guid = lt_header_guid
IMPORTING
et_doc_flow = gt_doc_flow
et_orderadm_i = gt_orderadm_i
EXCEPTIONS
document_not_found = 1
error_occurred = 2
document_locked = 3
no_change_authority = 4
no_display_authority = 5
no_change_allowed = 6
OTHERS = 7.
IF sy-subrc NE 0.
RAISE error_occured.
ENDIF.
" F_RECUP_DONNEES
FORM f_modif_condition_prix USING pd_guid_src TYPE crmt_object_guid
pd_guid_dest TYPE crmt_object_guid.
DATA : ld_pd_handle_src TYPE prct_handle,
ld_pd_handle_dest TYPE prct_handle,
lt_komv_print_src TYPE prct_cond_print_t,
lt_komv_print_dest TYPE prct_cond_print_t,
ls_komv_print_dest LIKE LINE OF lt_komv_print_dest,
ls_komv_print_src LIKE LINE OF lt_komv_print_src,
lt_cond_chg TYPE prct_cond_print_t,
lt_cond_chg_insert TYPE prct_cond_print_t,
ls_cond_chg TYPE prct_cond_print,
ls_cond_chg_tmp TYPE prct_cond_print,
ls_input_fields TYPE crmt_input_field,
lt_input_fields TYPE crmt_input_field_tab.
DATA : bal_log TYPE balloghndl,
lt_item_ret TYPE prct_item_ret_t,
lt_cond_ret TYPE prct_cond_print_t,
ld_data_changed TYPE xfeld,
gv_decimal TYPE usdefaults-dcpfm,
ld_lines TYPE i,
ld_ajout_cond TYPE abap_bool.
FIELD-SYMBOLS : <fs_orderadm_i_dest> TYPE crmt_orderadm_i_wrk,
<fs_orderadm_i_src> TYPE crmt_orderadm_i_wrk,
<fs_cond_chg> TYPE prct_cond_print,
<fs_cond_chg_insert> TYPE prct_cond_print.
* Début Ajout CD1K904313-001.
DATA: ld_guid_src TYPE crmt_object_guid.
FIELD-SYMBOLS: <fs_doc_flow> TYPE crmt_doc_flow_wrk.
* Début Ajout CD1K904313-001.
* Verrouillage des documents source et destinataire
PERFORM f_lock_document USING pd_guid_src.
PERFORM f_lock_document USING pd_guid_dest.
*Récupérer le pricing handle des documents
* Document source
CALL FUNCTION 'CRM_PRIDOC_GET_HANDLE_OW'
EXPORTING
iv_header_guid = pd_guid_src
IMPORTING
ev_pd_handle = ld_pd_handle_src
EXCEPTIONS
error_occurred = 1
handle_determination_error = 2
orgdata_error = 3
OTHERS = 4.
IF sy-subrc <> 0.
RETURN.
ENDIF.
* Document destinataire
CALL FUNCTION 'CRM_PRIDOC_GET_HANDLE_OW'
EXPORTING
iv_header_guid = pd_guid_dest
IMPORTING
ev_pd_handle = ld_pd_handle_dest
EXCEPTIONS
error_occurred = 1
handle_determination_error = 2
orgdata_error = 3
OTHERS = 4.
IF sy-subrc <> 0.
RETURN.
ENDIF.
* A ne pas traiter les postes de type ZPDF
DELETE gt_orderadm_i WHERE itm_type = 'ZPDF'.
LOOP AT gt_orderadm_i ASSIGNING <fs_orderadm_i_dest> WHERE header = pd_guid_dest.
REFRESH : lt_komv_print_src,
lt_komv_print_dest,
lt_cond_chg,
lt_cond_chg_insert.
* Début Modif CD1K904313-001.
* Récupérer le guid de l'item liée au item destinataire.
READ TABLE gt_doc_flow ASSIGNING <fs_doc_flow> WITH KEY objkey_b = <fs_orderadm_i_dest>-guid.
CHECK sy-subrc EQ 0.
ld_guid_src = <fs_doc_flow>-objkey_a.
* READ TABLE gt_orderadm_i ASSIGNING <fs_orderadm_i_src> WITH KEY header = pd_guid_src
* number_int = <fs_orderadm_i_dest>-number_int.
* Fin Modif CD1K904313-001.
* Récupérer les pricing document
IF sy-subrc EQ 0.
* Document source
CALL FUNCTION 'PRC_PD_ITEM_SHOW'
EXPORTING
iv_pd_handle = ld_pd_handle_src
* iv_item_no = <fs_orderadm_i_src>-guid "Supression CD1K904313-001
iv_item_no = ld_guid_src "Addition CD1K904313-001
IMPORTING
et_komv_print = lt_komv_print_src
EXCEPTIONS
non_existing_handle = 1
non_existing_item = 2
ipc_error = 3
OTHERS = 4.
ENDIF.
* Document destinataire
CALL FUNCTION 'PRC_PD_ITEM_SHOW'
EXPORTING
iv_pd_handle = ld_pd_handle_dest
iv_item_no = <fs_orderadm_i_dest>-guid
IMPORTING
et_komv_print = lt_komv_print_dest
EXCEPTIONS
non_existing_handle = 1
non_existing_item = 2
ipc_error = 3
OTHERS = 4.
* Modification et Suppression des conditions de prix
LOOP AT lt_komv_print_dest INTO ls_komv_print_dest .
CLEAR: ls_cond_chg,
ls_komv_print_src.
MOVE-CORRESPONDING ls_komv_print_dest TO ls_cond_chg.
* Rechercher la condition sur le document source
READ TABLE lt_komv_print_src INTO ls_komv_print_src WITH KEY kschl = ls_komv_print_dest-kschl
zaehk = ls_komv_print_dest-zaehk. "CD1K904313
IF sy-subrc EQ 0.
ls_cond_chg-kbetr_prt = ls_komv_print_src-kbetr_prt.
ls_cond_chg-kwert = ls_komv_print_src-kwert.
ls_cond_chg-kinak = ls_komv_print_src-kinak.
ELSEIF ls_cond_chg-kschl IS NOT INITIAL.
CLEAR ls_cond_chg.
CONTINUE.
ENDIF.
* Format décimal
CASE gv_decimal.
WHEN space. "format N.NNN,NN
REPLACE ALL OCCURRENCES OF '.' IN ls_cond_chg-kbetr_prt WITH ','.
WHEN 'Y'. "format N NNN NNN,NN
REPLACE ALL OCCURRENCES OF '.' IN ls_cond_chg-kbetr_prt WITH ','.
ENDCASE.
INSERT ls_cond_chg INTO TABLE lt_cond_chg.
CLEAR ls_cond_chg.
ENDLOOP.
* Ajout des conditions de prix
LOOP AT lt_komv_print_src INTO ls_komv_print_src WHERE kschl IS NOT INITIAL.
CLEAR: ls_cond_chg, ld_lines, ls_komv_print_dest, ls_cond_chg_tmp, ld_ajout_cond.
* Vérifier la présence de la condition sur le document destinataire
READ TABLE lt_komv_print_dest INTO ls_komv_print_dest WITH KEY kschl = ls_komv_print_src-kschl
zaehk = ls_komv_print_src-zaehk. "CD1K904313.
IF sy-subrc EQ 0.
CLEAR: ls_cond_chg, ls_komv_print_dest.
CONTINUE.
ELSE.
DESCRIBE TABLE lt_cond_chg LINES ld_lines.
READ TABLE lt_cond_chg INTO ls_cond_chg_tmp INDEX ld_lines.
IF sy-subrc EQ 0.
ld_ajout_cond = abap_true.
MOVE-CORRESPONDING ls_komv_print_src TO ls_cond_chg.
ls_cond_chg-knumv = ls_cond_chg_tmp-knumv.
ls_cond_chg-kposn = ls_cond_chg_tmp-kposn.
ls_cond_chg-stunr = ls_cond_chg_tmp-stunr + 10.
ELSE.
CLEAR: ls_cond_chg, ld_lines, ls_komv_print_dest, ls_cond_chg_tmp.
CONTINUE.
ENDIF.
ENDIF.
* Format décimal
CASE gv_decimal.
WHEN space. "format N.NNN,NN
REPLACE ALL OCCURRENCES OF '.' IN ls_cond_chg-kbetr_prt WITH ','.
WHEN 'Y'. "format N NNN NNN,NN
REPLACE ALL OCCURRENCES OF '.' IN ls_cond_chg-kbetr_prt WITH ','.
ENDCASE.
* Récupérer les nouvelles conditions qui seront ajouté au document destinataire
IF ld_ajout_cond EQ abap_true.
INSERT ls_cond_chg INTO TABLE lt_cond_chg_insert.
ENDIF.
INSERT ls_cond_chg INTO TABLE lt_cond_chg.
CLEAR ls_cond_chg.
ENDLOOP.
CALL FUNCTION 'PRC_INT_ITEM_INPUT'
EXPORTING
iv_pd_handle = ld_pd_handle_dest
iv_item_no = <fs_orderadm_i_dest>-guid
it_cond_prt = lt_cond_chg
iv_bal_log = bal_log
iv_req_ret = abap_true
iv_req_cond_prt = abap_true
IMPORTING
et_item_ret = lt_item_ret
et_cond_prt = lt_cond_ret
ev_data_changed = ld_data_changed
EXCEPTIONS
non_existing_handle = 1
non_existing_item = 2
ipc_error = 3.
IF sy-subrc = 0.
* En cas d'ajout de nouvelles conditions de prix, appeler le MF PRC_INT_ITEM_INPUT
* avec les montants
IF lt_cond_chg_insert IS NOT INITIAL.
REFRESH lt_cond_chg[].
lt_cond_chg[] = lt_cond_ret[].
LOOP AT lt_cond_chg_insert ASSIGNING <fs_cond_chg_insert>.
READ TABLE lt_cond_chg ASSIGNING <fs_cond_chg> WITH KEY kschl = <fs_cond_chg_insert>-kschl.
IF sy-subrc EQ 0.
<fs_cond_chg>-kwert = <fs_cond_chg_insert>-kwert.
<fs_cond_chg>-kbetr_prt = <fs_cond_chg_insert>-kbetr_prt.
ENDIF.
ENDLOOP.
REFRESH lt_cond_ret[].
CALL FUNCTION 'PRC_INT_ITEM_INPUT'
EXPORTING
iv_pd_handle = ld_pd_handle_dest
iv_item_no = <fs_orderadm_i_dest>-guid
it_cond_prt = lt_cond_chg
iv_bal_log = bal_log
iv_req_ret = abap_true
iv_req_cond_prt = abap_true
IMPORTING
et_item_ret = lt_item_ret
et_cond_prt = lt_cond_ret
ev_data_changed = ld_data_changed
EXCEPTIONS
non_existing_handle = 1
non_existing_item = 2
ipc_error = 3.
ENDIF.
* Publish event afin de sauvegarder les conditions de prix
CALL FUNCTION 'CRM_EVENT_PUBLISH_OW'
EXPORTING
iv_obj_name = 'PRIDOC'
iv_guid_hi = pd_guid_dest
iv_kind_hi = 'A'
iv_event = 'SAVE'
EXCEPTIONS
OTHERS = 1.
* As no order_maintain will follow implicitly and therefore no
* exec times for the events will be set, call CRM_ORDER_MAINTAIN
* without any parameters
* Then the exec time 'end of document' will be set and with the
* group logic also all exec times before
* But at least one object is needed in input_fields
* --> use PRIDOC
ls_input_fields-ref_guid = <fs_orderadm_i_dest>-guid.
ls_input_fields-ref_kind = 'B'.
ls_input_fields-objectname = 'PRIDOC'.
INSERT ls_input_fields INTO TABLE lt_input_fields.
CLEAR ls_input_fields.
CALL FUNCTION 'CRM_ORDER_MAINTAIN'
CHANGING
ct_input_fields = lt_input_fields
EXCEPTIONS
error_occurred = 1
document_locked = 2
no_change_allowed = 3
no_authority = 4
OTHERS = 5.
ENDIF.
ENDLOOP.
" F_MODIF_CONDITION_PRIX
*& Form F_LOCK_DOCUMENT
* Verrouillage d'un document
FORM f_lock_document USING pd_guid TYPE crmt_object_guid.
CONSTANTS : lc_orderadm_h TYPE crmt_object_name VALUE 'ORDERADM_H',
lc_orderadm_i TYPE crmt_object_name VALUE 'ORDERADM_I'.
DATA: lv_process_mode TYPE crmt_mode,
lv_order_initialized TYPE crmt_boolean,
lv_process_type TYPE crmt_process_type,
lv_already_locked TYPE abap_bool.
DATA: ls_admin_ui_status TYPE crmt_admin_ui_status,
ls_item_usage_range TYPE crmt_item_usage_range.
DATA: lt_objects_to_read TYPE crmt_object_guid_tab,
lt_requested_objects TYPE crmt_object_name_tab,
lt_item_usage_range TYPE crmt_item_usage_range_tab,
lt_locked_contract TYPE crmt_object_guid_tab.
INSERT pd_guid INTO TABLE lt_objects_to_read.
INSERT lc_orderadm_h INTO TABLE lt_requested_objects.
INSERT lc_orderadm_i INTO TABLE lt_requested_objects.
ls_item_usage_range-sign = 'E'.
ls_item_usage_range-value = '02'.
INSERT ls_item_usage_range INTO TABLE lt_item_usage_range.
* LAM: Financing Options should be viewed in a separate screen:
ls_item_usage_range-sign = 'E'.
ls_item_usage_range-value = '05'. "Financing options
INSERT ls_item_usage_range INTO TABLE lt_item_usage_range.
*-> read document in change mode
CALL FUNCTION 'CRM_ORDER_READ'
EXPORTING
it_header_guid = lt_objects_to_read
iv_mode = 'B'
it_requested_objects = lt_requested_objects
it_item_usage_range = lt_item_usage_range
EXCEPTIONS
document_not_found = 1
error_occurred = 2
document_locked = 3
no_change_authority = 4
no_display_authority = 5
OTHERS = 6.
PERFORM enqueue_order IN PROGRAM saplcrm_order_ow IF FOUND
USING pd_guid
abap_false
abap_false
abap_false
CHANGING sy-subrc
lv_already_locked
lt_locked_contract.
" F_LOCK_DOCUMENT
* Fin Ajout CD1K904074-001
FORM f_header_copy_pricing USING pd_guid_src
pd_guid_dest.
DATA : ld_pd_handle_src TYPE prct_handle,
ld_pd_handle_dest TYPE prct_handle,
lt_komv_print_src TYPE prct_cond_print_t,
lt_komv_print_dest TYPE prct_cond_print_t,
ls_komv_print_dest LIKE LINE OF lt_komv_print_dest,
ls_komv_print_src LIKE LINE OF lt_komv_print_src,
lt_cond_chg TYPE prct_cond_print_t,
ls_cond_chg TYPE prct_cond_print,
ls_input_fields TYPE crmt_input_field,
lt_input_fields TYPE crmt_input_field_tab.
DATA : bal_log TYPE balloghndl,
lt_cond_ret TYPE prct_cond_print_t,
ld_data_changed TYPE xfeld,
gv_decimal TYPE usdefaults-dcpfm.
* Verrouillage des documents source et destinataire
PERFORM f_lock_document USING pd_guid_src.
PERFORM f_lock_document USING pd_guid_dest.
* Récupérer le pricing handle des documents
* Document source
CALL FUNCTION 'CRM_PRIDOC_GET_HANDLE_OW'
EXPORTING
iv_header_guid = pd_guid_src
IMPORTING
ev_pd_handle = ld_pd_handle_src
EXCEPTIONS
error_occurred = 1
handle_determination_error = 2
orgdata_error = 3
OTHERS = 4.
IF sy-subrc <> 0.
RETURN.
ENDIF.
* Document destinataire
CALL FUNCTION 'CRM_PRIDOC_GET_HANDLE_OW'
EXPORTING
iv_header_guid = pd_guid_dest
IMPORTING
ev_pd_handle = ld_pd_handle_dest
EXCEPTIONS
error_occurred = 1
handle_determination_error = 2
orgdata_error = 3
OTHERS = 4.
IF sy-subrc <> 0.
RETURN.
ENDIF.
* * Récupérer les pricing document
* Document Source
CALL FUNCTION 'PRC_PD_HEAD_SHOW'
EXPORTING
iv_pd_handle = ld_pd_handle_src
IMPORTING
et_komv_print = lt_komv_print_src
EXCEPTIONS
non_existing_handle = 1
ipc_error = 2
OTHERS = 3.
CHECK sy-subrc EQ 0.
* Document Destinataire
CALL FUNCTION 'PRC_PD_HEAD_SHOW'
EXPORTING
iv_pd_handle = ld_pd_handle_dest
IMPORTING
et_komv_print = lt_komv_print_dest
EXCEPTIONS
non_existing_handle = 1
ipc_error = 2
OTHERS = 3.
CHECK sy-subrc EQ 0.
* * Modification et Suppression des conditions de prix
LOOP AT lt_komv_print_src INTO ls_komv_print_src .
CLEAR: ls_cond_chg,
ls_komv_print_dest.
MOVE-CORRESPONDING ls_komv_print_src TO ls_cond_chg.
* Rechercher la condition sur le document source
READ TABLE lt_komv_print_dest INTO ls_komv_print_dest WITH KEY kschl = ls_komv_print_src-kschl
zaehk = ls_komv_print_src-zaehk.
IF sy-subrc EQ 0.
IF ls_komv_print_src-kbetr NE ls_komv_print_dest-kbetr.
ls_cond_chg-kbetr_prt = ls_komv_print_src-kbetr_prt.
ls_cond_chg-kwert = ls_komv_print_src-kwert.
ls_cond_chg-kinak = ls_komv_print_src-kinak.
CASE gv_decimal.
WHEN space. "format N.NNN,NN
REPLACE ALL OCCURRENCES OF '.' IN ls_cond_chg-kbetr_prt WITH ','.
WHEN 'Y'. "format N NNN NNN,NN
REPLACE ALL OCCURRENCES OF '.' IN ls_cond_chg-kbetr_prt WITH ','.
ENDCASE.
ENDIF.
ENDIF.
CLEAR ls_cond_chg-krech.
INSERT ls_cond_chg INTO TABLE lt_cond_chg.
CLEAR ls_cond_chg.
ENDLOOP.
CALL FUNCTION 'PRC_INT_HEAD_INPUT'
EXPORTING
iv_pd_handle = ld_pd_handle_dest
iv_bal_log = bal_log
it_cond_prt = lt_cond_chg
iv_req_ret = abap_true
iv_req_cond_prt = abap_true
IMPORTING
et_cond_prt = lt_cond_ret
ev_data_changed = ld_data_changed
EXCEPTIONS
non_existing_handle = 1
ipc_error = 2
not_allowed = 3
OTHERS = 4.
CHECK sy-subrc EQ 0.
* * Publish event afin de sauvegarder les conditions de prix
CALL FUNCTION 'CRM_EVENT_PUBLISH_OW'
EXPORTING
iv_obj_name = 'PRIDOC'
iv_guid_hi = pd_guid_dest
iv_kind_hi = 'A'
iv_event = 'SAVE'
EXCEPTIONS
OTHERS = 1.
* As no order_maintain will follow implicitly and therefore no
* exec times for the events will be set, call CRM_ORDER_MAINTAIN
* without any parameters
* Then the exec time 'end of document' will be set and with the
* group logic also all exec times before
* But at least one object is needed in input_fields
* --> use PRIDOC
ls_input_fields-ref_guid = pd_guid_dest.
ls_input_fields-ref_kind = 'A'.
ls_input_fields-objectname = 'PRIDOC'.
INSERT ls_input_fields INTO TABLE lt_input_fields.
CLEAR ls_input_fields.
CALL FUNCTION 'CRM_ORDER_MAINTAIN'
CHANGING
ct_input_fields = lt_input_fields
EXCEPTIONS
error_occurred = 1
document_locked = 2
no_change_allowed = 3
no_authority = 4
OTHERS = 5.
ENDFORM.
FORM f_header_copy_pricing USING pd_guid_src
pd_guid_dest.
DATA : ld_pd_handle_src TYPE prct_handle,
ld_pd_handle_dest TYPE prct_handle,
lt_komv_print_src TYPE prct_cond_print_t,
lt_komv_print_dest TYPE prct_cond_print_t,
ls_komv_print_dest LIKE LINE OF lt_komv_print_dest,
ls_komv_print_src LIKE LINE OF lt_komv_print_src,
lt_cond_chg TYPE prct_cond_print_t,
ls_cond_chg TYPE prct_cond_print,
ls_input_fields TYPE crmt_input_field,
lt_input_fields TYPE crmt_input_field_tab.
DATA : bal_log TYPE balloghndl,
lt_cond_ret TYPE prct_cond_print_t,
ld_data_changed TYPE xfeld,
gv_decimal TYPE usdefaults-dcpfm.
PERFORM f_lock_document USING pd_guid_src.
PERFORM f_lock_document USING pd_guid_dest.
* Récupérer le pricing handle des documents
* Document source
CALL FUNCTION 'CRM_PRIDOC_GET_HANDLE_OW'
EXPORTING
iv_header_guid = pd_guid_src
IMPORTING
ev_pd_handle = ld_pd_handle_src
EXCEPTIONS
error_occurred = 1
handle_determination_error = 2
orgdata_error = 3
OTHERS = 4.
IF sy-subrc <> 0.
RETURN.
ENDIF.
* Document destinataire
CALL FUNCTION 'CRM_PRIDOC_GET_HANDLE_OW'
EXPORTING
iv_header_guid = pd_guid_dest
IMPORTING
ev_pd_handle = ld_pd_handle_dest
EXCEPTIONS
error_occurred = 1
handle_determination_error = 2
orgdata_error = 3
OTHERS = 4.
IF sy-subrc <> 0.
RETURN.
ENDIF.
* * Récupérer les pricing document
* Document Source
CALL FUNCTION 'PRC_PD_HEAD_SHOW'
EXPORTING
iv_pd_handle = ld_pd_handle_src
IMPORTING
et_komv_print = lt_komv_print_src
EXCEPTIONS
non_existing_handle = 1
ipc_error = 2
OTHERS = 3.
CHECK sy-subrc EQ 0.
* Document Destinataire
CALL FUNCTION 'PRC_PD_HEAD_SHOW'
EXPORTING
iv_pd_handle = ld_pd_handle_dest
IMPORTING
et_komv_print = lt_komv_print_dest
EXCEPTIONS
non_existing_handle = 1
ipc_error = 2
OTHERS = 3.
CHECK sy-subrc EQ 0.
* * Modification et Suppression des conditions de prix
LOOP AT lt_komv_print_src INTO ls_komv_print_src .
CLEAR: ls_cond_chg,
ls_komv_print_dest.
MOVE-CORRESPONDING ls_komv_print_src TO ls_cond_chg.
* Rechercher la condition sur le document source
READ TABLE lt_komv_print_dest INTO ls_komv_print_dest WITH KEY kschl = ls_komv_print_src-kschl
zaehk = ls_komv_print_src-zaehk.
IF sy-subrc EQ 0.
IF ls_komv_print_src-kbetr NE ls_komv_print_dest-kbetr.
ls_cond_chg-kbetr_prt = ls_komv_print_src-kbetr_prt.
ls_cond_chg-kwert = ls_komv_print_src-kwert.
ls_cond_chg-kinak = ls_komv_print_src-kinak.
CASE gv_decimal.
WHEN space. "format N.NNN,NN
REPLACE ALL OCCURRENCES OF '.' IN ls_cond_chg-kbetr_prt WITH ','.
WHEN 'Y'. "format N NNN NNN,NN
REPLACE ALL OCCURRENCES OF '.' IN ls_cond_chg-kbetr_prt WITH ','.
ENDCASE.
ENDIF.
ENDIF.
CLEAR ls_cond_chg-krech.
INSERT ls_cond_chg INTO TABLE lt_cond_chg.
CLEAR ls_cond_chg.
ENDLOOP.
CALL FUNCTION 'PRC_INT_HEAD_INPUT'
EXPORTING
iv_pd_handle = ld_pd_handle_dest
iv_bal_log = bal_log
it_cond_prt = lt_cond_chg
iv_req_ret = abap_true
iv_req_cond_prt = abap_true
IMPORTING
et_cond_prt = lt_cond_ret
ev_data_changed = ld_data_changed
EXCEPTIONS
non_existing_handle = 1
ipc_error = 2
not_allowed = 3
OTHERS = 4.
CHECK sy-subrc EQ 0.
CALL FUNCTION 'CRM_EVENT_PUBLISH_OW'
EXPORTING
iv_obj_name = 'PRIDOC'
iv_guid_hi = pd_guid_dest
iv_kind_hi = 'A'
iv_event = 'SAVE'
EXCEPTIONS
OTHERS = 1.
ls_input_fields-ref_guid = pd_guid_dest.
ls_input_fields-ref_kind = 'A'.
ls_input_fields-objectname = 'PRIDOC'.
INSERT ls_input_fields INTO TABLE lt_input_fields.
CLEAR ls_input_fields.
CALL FUNCTION 'CRM_ORDER_MAINTAIN'
CHANGING
ct_input_fields = lt_input_fields
EXCEPTIONS
error_occurred = 1
document_locked = 2
no_change_allowed = 3
no_authority = 4
OTHERS = 5. -
PO BAPI Problem in condition types
Hi,
I am facing a strange problem in creation of PO through "BAPI_PO_CREATE1".
In the Item condition internal table, I am passing the condition types.
The PO is getting created successfully.
Eg. I pass conditions and their values as follows:
PB00 : 1000
ZB00 : 1000
FRB1 : 1000
The PO is created successfully and we can check the prices updated properly.
Now,
When I create a second PO with the same values, the prices are taken from the last PO and the prices from
my code(which are passed through BAPI) are added to the last value.
If I run the program with the same values as above, the PO is created with the values 2000.
Third time it is 3000 and so.
The value from the last PO is coming into the new PO.
Please advise me if anything missing.
My code is below::
================
*& Report ZTEST_PO
REPORT ZTEST_PO.
data : HEADER like BAPIMEPOHEADER .
data : HEADERX like BAPIMEPOHEADERX .
data : POITEM like BAPIMEPOITEM occurs 0 with header line.
data : POITEMX like BAPIMEPOITEMX occurs 0 with header line.
data : POSCHEDULE like BAPIMEPOSCHEDULE occurs 0 with header line.
data : POSCHEDULEX like BAPIMEPOSCHEDULX occurs 0 with header line.
DATA : RET LIKE BAPIRET2 OCCURS 0 WITH HEADER LINE.
DATA : ret1 like bapiret2.
Data PO like BAPIMEPOHEADER-PO_NUMBER.
data : pocond like BAPIMEPOCOND occurs 0 with header line.
data : pocondx like BAPIMEPOCONDX occurs 0 with header line.
*pocond-CONDITION_NO = '00000'.
pocond-itm_number = '000010'.
pocond-COND_ST_NO = '001' .
*pocond-COND_COUNT = '1'.
pocond-COND_TYPE = 'PB00'.
pocond-COND_value = '500'.
pocond-CURRENCY = 'EUR'.
pocond-CURRENCY_ISO = 'EUR'.
pocond-CHANGE_ID = 'I'.
APPEND POCOND.
**pocond-CONDITION_NO = '00000'.
*pocond-itm_number = '000010'.
*pocond-COND_ST_NO = '10' .
*pocond-COND_COUNT = '2'.
*pocond-COND_TYPE = 'PBXX'.
*pocond-COND_value = '555'.
*pocond-CURRENCY = 'EUR'.
*pocond-CURRENCY_ISO = 'EUR'.
*pocond-CHANGE_ID = 'U'.
*APPEND POCOND.
**pocond-CONDITION_NO = '00000'.
*pocond-itm_number = '000010'.
*pocond-COND_ST_NO = '20' .
*pocond-COND_COUNT = 0.
*pocond-COND_TYPE = 'ZB00'.
*pocond-COND_value = '666'.
*pocond-CURRENCY = 'EUR'.
*pocond-CHANGE_ID = 'U'.
*APPEND POCOND.
**pocond-CONDITION_NO = '00000'.
*pocond-itm_number = '000010'.
*pocond-COND_ST_NO = '30' .
*pocond-COND_COUNT = 0.
*pocond-COND_TYPE = 'FRB1'.
*pocond-COND_value = '777'.
*pocond-CURRENCY = 'EUR'.
*pocond-CHANGE_ID = 'U'.
*APPEND POCOND.
*pocondx-CONDITION_NO = '00000'.
POCONDX-ITM_NUMBER = '000010'.
POCONDX-COND_ST_NO = '000'.
*POCONDX-CONDITION_NOX = 'X'.
*POCONDX-COND_ST_NOX = 'X'.
POCONDX-ITM_NUMBERX = 'X'.
*POCONDX-COND_COUNT = 'X'.
POCONDX-COND_TYPE = 'X'.
POCONDX-COND_value = 'X'.
pocondX-CURRENCY = 'X'.
*pocondX-CURRENCY_ISO = 'X'.
pocondX-CHANGE_ID = 'X'.
APPEND POCONDX.
HEADER-COMP_CODE = 'TF01'.
HEADER-DOC_TYPE = 'DMPO'.
HEADER-VENDOR = '0000000317'.
HEADER-LANGU = 'EN'.
HEADER-PURCH_ORG = '1001'.
HEADER-PUR_GROUP = '110'.
HEADER-CURRENCY = 'EUR'.
HEADER-DOC_DATE = '22.10.2007'.
HEADER-REF_1 = '999999999999'.
HEADERX-VENDOR = 'X'.
HEADERX-PURCH_ORG = 'X'.
HEADERX-PUR_GROUP = 'X'.
HEADERX-REF_1 = 'X'.
POITEM-PO_ITEM = '00010'.
POITEM-MATERIAL = '00042199730L'.
POITEM-PLANT = '1000'.
POITEM-STGE_LOC = '1030'.
POITEM-MATL_GROUP = '01'.
POITEM-QUANTITY = '10'.
POITEM-PRICE_UNIT = 500.
poitem-calctype = 'C'.
append POITEM.
POITEMX-PO_ITEM = '00010'.
POITEMX-MATERIAL = 'X'.
POITEMX-PLANT = 'X'.
POITEMX-QUANTITY = 'X'.
POITEMX-PRICE_UNIT = 'X'.
append POITEMX.
POSCHEDULE-PO_ITEM = '00010'.
POSCHEDULE-DELIVERY_DATE = '30.10.2007'.
append POSCHEDULE.
POSCHEDULEX-PO_ITEM = '00010'.
POSCHEDULEX-PO_ITEMX = 'X'.
POSCHEDULEX-DELIVERY_DATE = 'X'.
append POSCHEDULEX.
CALL FUNCTION 'BAPI_PO_CREATE1'
EXPORTING
poheader = HEADER
POHEADERX = HEADERX
POADDRVENDOR =
TESTRUN =
MEMORY_UNCOMPLETE =
MEMORY_COMPLETE =
POEXPIMPHEADER =
POEXPIMPHEADERX =
VERSIONS =
NO_MESSAGING =
NO_MESSAGE_REQ =
NO_AUTHORITY =
NO_PRICE_FROM_PO =
IMPORTING
EXPPURCHASEORDER = PO
EXPHEADER =
EXPPOEXPIMPHEADER =
TABLES
RETURN = RET
POITEM = POITEM
POITEMX = POITEMX
POADDRDELIVERY =
POSCHEDULE = POSCHEDULE
POSCHEDULEX = POSCHEDULEX
POACCOUNT =
POACCOUNTPROFITSEGMENT =
POACCOUNTX =
POCONDHEADER = POCOND
POCONDHEADERX = POCONDX
POCOND = POCOND
POCONDX = POCONDX
POLIMITS =
POCONTRACTLIMITS =
POSERVICES =
POSRVACCESSVALUES =
POSERVICESTEXT =
EXTENSIONIN =
EXTENSIONOUT =
POEXPIMPITEM =
POEXPIMPITEMX =
POTEXTHEADER =
POTEXTITEM =
ALLVERSIONS =
POPARTNER =
POCOMPONENTS =
POCOMPONENTSX =
POSHIPPING =
POSHIPPINGX =
POSHIPPINGEXP =
NFMETALLITMS =
if RET-type NE 'E'.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
WAIT = 'X'
IMPORTING
RETURN = ret1.
write : ' PO Created : ', PO .
ELSE.
CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'
IMPORTING
RETURN = ret1.
ENDIF.
================Any input??
-
Exception condition "CONVERSION_ERROR" raised.
Hi,
We have been getting short dumps in our production system daily. I was unable to locate the problem by looking at the dump. The dump says that CONVERSION_ERROR raised.
Which application raised this exception? Again no clue on the same. Please find the text of the dump.
Short text
Exception condition "CONVERSION_ERROR" raised.
What happened?
The current ABAP/4 program encountered an unexpected
situation.
What can you do?
Note down which actions and inputs caused the error.
To process the problem further, contact you SAP system
administrator.
Using Transaction ST22 for ABAP Dump Analysis, you can look
at and manage termination messages, and you can also
keep them for a long time.
Error analysis
A RAISE statement in the program "CL_SWF_CNT_CONTAINER==========CP" raised the
exception
condition "CONVERSION_ERROR".
Since the exception was not intercepted by a superior
program, processing was terminated.
Short description of exception condition:
For detailed documentation of the exception condition, use
Transaction SE37 (Function Library). You can take the called
function module from the display of active calls.
How to correct the error
If the error occures in a non-modified SAP program, you may be able to
find an interim solution in an SAP Note.
If you have access to SAP Notes, carry out a search with the following
keywords:
"RAISE_EXCEPTION" " "
"CL_SWF_CNT_CONTAINER==========CP" or "CL_SWF_CNT_CONTAINER==========CM02J"
"IF_SWF_CNT_CONVERSION~TO_XML"
or
"CL_SWF_CNT_CONTAINER==========CP" "CONVERSION_ERROR"
or
"SAPMSSY1 " "CONVERSION_ERROR"
If you cannot solve the problem yourself and want to send an error
notification to SAP, include the following information:
1. The description of the current problem (short dump)
To save the description, choose "System->List->Save->Local File
(Unconverted)".
2. Corresponding system log
Display the system log by calling transaction SM21.
Restrict the time interval to 10 minutes before and five minutes
after the short dump. Then choose "System->List->Save->Local File
(Unconverted)".
3. If the problem occurs in a problem of your own or a modified SAP
program: The source code of the program
In the editor, choose "Utilities->More
Utilities->Upload/Download->Download".
4. Details about the conditions under which the error occurred or which
actions and input led to the error.
System environment
SAP-Release 700
Application server... "zacwtbsrv0
Network address...... "10.27.191.
Operating system..... "Windows NT
Release.............. "5.2"
Hardware type........ "4x AMD64 L
Character length.... 16 Bits
Pointer length....... 64 Bits
Work process number.. 9
Shortdump setting.... "full"
Database server... "ZACWTBSRV063"
Database type..... "MSSQL"
Database name..... "EP1"
Database user ID.. "ep1"
Char.set.... "C"
SAP kernel....... 700
created (date)... "Apr 21 2008 00:12:39"
create on........ "NT 5.2 3790 Service Pack 1 x86 MS VC++ 14.00"
Database version. "SQL_Server_8.00 "
Patch level. 157
Patch text.. " "
Database............. "MSSQL 7.00.699 or higher, MSSQL 8.00.194"
SAP database version. 700
Operating system..... "Windows NT 5.0, Windows NT 5.1, Windows NT 5.2, Windows
NT 6.0"
Memory consumption
Roll.... 16192
EM...... 8379680
Heap.... 0
Page.... 16384
MM Used. 8164576
MM Free. 212256
User and Transaction
Client.............. 100
User................ "WF-BATCH"
Language Key........ "E"
Transaction......... " "
Transactions ID..... "FB565CDDF6D0F1BFA292001E0B5D7336"
Program............. "CL_SWF_CNT_CONTAINER==========CP"
Screen.............. "SAPMSSY1 3004"
Screen Line......... 2
Information on caller of Remote Function Call (RFC):
System.............. "EP1"
Database Release.... 700
Kernel Release...... 700
Connection Type..... 3 (2=R/2, 3=ABAP System, E=Ext., R=Reg. Ext.)
Call Type........... "synchron and transactional (emode 0, imode 0)"
Inbound TID.........." "
Inbound Queue Name..." "
Outbound TID........."0A1BBF4011A4488D408222BD"
Outbound Queue Name.." "
Client.............. 100
User................ "HPRETORIUS"
Transaction......... " "
Call Program........."SAPLERFC"
Function Module..... "ARFC_DEST_SHIP"
Call Destination.... "WORKFLOW_LOCAL_100"
Source Server....... "zacwtbsrv064_EP1_00"
Source IP Address... "10.27.191.64"
Additional information on RFC logon:
Trusted Relationship " "
Logon Return Code... 0
Trusted Return Code. 0
Note: For releases < 4.0, information on the RFC caller are often
only partially available.
Information on where terminated
Termination occurred in the ABAP program "CL_SWF_CNT_CONTAINER==========CP" -
in "IF_SWF_CNT_CONVERSION~TO_XML".
The main program was "SAPMSSY1 ".
In the source code you have the termination point in line 67
of the (Include) program "CL_SWF_CNT_CONTAINER==========CM02J".
Source Code Extract
Line SourceCde
37 lv_xml_table_req = 'X'.
38 ENDIF.
39 IF xml_stream IS REQUESTED.
40 lv_xml_stream_req = 'X'.
41 ENDIF.
42
43 IF use_xslt NE space.
44
45 cl_swf_cnt_conversion_service=>to_xml_xslt(
46 EXPORTING
47 container = me
48 include_null_values = include_null_values
49 include_initial_values = include_initial_values
50 include_change_data = include_change_data
51 include_texts = include_texts
52 include_extension_elements = include_extension_elements
53 save_delta_handling_info = save_delta_handling_info
54 xml_dom_req = lv_xml_dom_req
55 xml_table_req = lv_xml_table_req
56 xml_stream_req = lv_xml_stream_req
57 IMPORTING
58 xml_dom = xml_dom
59 xml_table = xml_table
60 xml_stream = xml_stream
61 xml_rendered_size = xml_rendered_size
62 EXCEPTIONS
63 conversion_error = 1
64 OTHERS = 2
65 ).
66 IF sy-subrc <> 0.
>>>> RAISE conversion_error.
68 ENDIF.
69
70 ELSE.
71
72 cl_swf_cnt_conversion_service=>to_xml_ixml(
73 EXPORTING
74 container = me
75 include_null_values = include_null_values
76 include_initial_values = include_initial_values
77 include_typenames = include_typenames
78 include_change_data = include_change_data
79 include_texts = include_texts
Could you please help me out in resolving this issue?
Is there any need to apply any OSS notes?
Thanks in advance. And reward points will be given for the solution..
Thanks,
Ravikumar.Hi,
U will receive this error when ever it is not possible to achieve runtime conversion.
i.e When u r passing the data from one type variable to another type if the conversion is not defined or not possible u will get this dump. Just analyze the dump in ST22.
Look at this simple example. Here i am trying to assign 101.23 to l_p for which length is not sufficient. So i will get dump. But if u do the same with character variable it will truncate the data.
DATA: l_p(2) TYPE P DECIMALS 2.
l_p = '103.23'.
WRITE l_p.
So check the place where u r getting the dump. It must be some assignment statement.
Hope it gave some idea on ur case.
Thanks,
Vinod. -
Exception condition "FAILED" raised.
My TRM functional consultant has been trying to run end of day processes in the Transaction RKLNACHT but the following dump appears:
Runtime Errors RAISE_EXCEPTION
Date and Time 16.05.2008 10:33:21
Short text
Exception condition "FAILED" raised.
What happened?
The current ABAP/4 program encountered an unexpected
situation.
What can you do?
Note down which actions and inputs caused the error.
To process the problem further, contact you SAP system
administrator.
Using Transaction ST22 for ABAP Dump Analysis, you can look
at and manage termination messages, and you can also
keep them for a long time.
Error analysis
A RAISE statement in the program "CL_POSITIONSERVICE_TRQ========CP" raised the
exception
condition "FAILED".
Since the exception was not intercepted by a superior
program, processing was terminated.
Short description of exception condition:
For detailed documentation of the exception condition, use
Transaction SE37 (Function Library). You can take the called
function module from the display of active calls.
How to correct the error
If the error occures in a non-modified SAP program, you may be able to
find an interim solution in an SAP Note.
If you have access to SAP Notes, carry out a search with the following
keywords:
"RAISE_EXCEPTION" " "
"CL_POSITIONSERVICE_TRQ========CP" or "CL_POSITIONSERVICE_TRQ========CM00I"
"GET_POSITIONS_BY_DIFF"
or
"CL_POSITIONSERVICE_TRQ========CP" "FAILED"
or
"RKLNACHT " "FAILED"
If you cannot solve the problem yourself and want to send an error
notification to SAP, include the following information:
1. The description of the current problem (short dump)
To save the description, choose "System->List->Save->Local File
(Unconverted)".
2. Corresponding system log
Display the system log by calling transaction SM21.
Restrict the time interval to 10 minutes before and five minutes
after the short dump. Then choose "System->List->Save->Local File
(Unconverted)".
3. If the problem occurs in a problem of your own or a modified SAP
program: The source code of the program
In the editor, choose "Utilities->More
Utilities->Upload/Download->Download".
4. Details about the conditions under which the error occurred or which
actions and input led to the error.
System environment
SAP-Release 700
Application server... "tetradev"
Network address...... "192.168.1.81"
Operating system..... "SunOS"
Release.............. "5.9"
Hardware type........ "sun4u"
Character length.... 16 Bits
Pointer length....... 64 Bits
Work process number.. 0
Shortdump setting.... "full"
Database server... "tetradev"
Database type..... "ORACLE"
Database name..... "DEV"
Database user ID.. "SAPSR3"
Char.set.... "C"
SAP kernel....... 700
created (date)... "Aug 31 2006 20:59:23"
create on........ "SunOS 5.9 Generic_117171-13 sun4u"
Database version. "OCI_102 (10.2.0.2.0) "
Patch level. 75
Patch text.. " "
Database............. "ORACLE 9.2.0.., ORACLE 10.1.0.., ORACLE 10.2.0.."
SAP database version. 700
Operating system..... "SunOS 5.9, SunOS 5.10"
Memory consumption
Roll.... 16192
EM...... 16759392
Heap.... 0
Page.... 180224
MM Used. 10608952
MM Free. 1957592
User and Transaction
Client.............. 300
User................ "DARLINGTON"
Language key........ "E"
Transaction......... "KLNACHT "
Program............. "CL_POSITIONSERVICE_TRQ========CP"
Screen.............. "SAPMSSY0 1000"
Screen line......... 6
Information on where terminated
Termination occurred in the ABAP program "CL_POSITIONSERVICE_TRQ========CP" -
in "GET_POSITIONS_BY_DIFF".
The main program was "RKLNACHT ".
In the source code you have the termination point in line 37
of the (Include) program "CL_POSITIONSERVICE_TRQ========CM00I".
Source Code Extract
Line SourceCde
7 l_selector TYPE REF TO cl_flow_selector_dif,
8 * workarea for table with positions
9 l_tab_position TYPE trqy_position_obj,
10 l_position TYPE REF TO if_position_trq,
11 l_count type i.
12
13 * initialization
14 CLEAR re_tab_position.
15
16 * Get positions for ranges
17 CALL METHOD ca_pos_identifier_dif=>agent->get_persistent_by_range
18 EXPORTING
19 im_context = trqco_con_trq
20 im_ranges = im_ranges
21 RECEIVING
22 re_identifiers = l_tab_identifier.
23 CHECK NOT l_tab_identifier IS INITIAL.
24
25 LOOP AT l_tab_identifier INTO l_identifier.
26
27 l_selector = l_identifier->derive_selector( ).
28
29 * get TRQ positions for selectors
30 CALL METHOD read_positions_by_selector
31 EXPORTING
32 im_selector = l_selector
33 RECEIVING
34 re_tab_positions = l_tab_position.
35 DESCRIBE TABLE l_tab_position LINES l_count.
36 IF l_count <> 1.
>>>>> raise failed.
38 ENDIF.
39 APPEND LINES OF l_tab_position TO re_tab_position.
40 ENDLOOP.
41
42 ENDMETHOD.
Contents of system fields
Name Val.
SY-SUBRC 0
SY-INDEX 0
SY-TABIX 2
SY-DBCNT 1
SY-FDPOS 0
SY-LSIND 0
SY-PAGNO 0
SY-LINNO 1
SY-COLNO 1
SY-PFKEY
SY-UCOMM
SY-TITLE End-of-Day Processing
SY-MSGTY E
SY-MSGID 64
SY-MSGNO 030
SY-MSGV1
SY-MSGV2
SY-MSGV3
SY-MSGV4
SY-MODNO 0
SY-DATUM 20080516
SY-UZEIT 103319
SY-XPROG SAPLSBAL_DB
SY-XFORM %_CONTROL_EXIT_DYNPRO
Does anyone have suggestions as to how I can solve this problem?
Assistance will be appreciated.bumping...any suggestions...welcome
-
Exception condition "INTERNAL_ERROR" raised
Runtime Errors RAISE_EXCEPTION
Date and Time 21.08.2014 21:53:43
What happened?
The current ABAP/4 program encountered an unexpected
situation.
What can you do?
Note down which actions and inputs caused the error.
To process the problem further, contact you SAP system
administrator.
Using Transaction ST22 for ABAP Dump Analysis, you can look
at and manage termination messages, and you can also
keep them for a long time.
Error analysis
A RAISE statement in the program "SAPLCEI0" raised the exception
condition "INTERNAL_ERROR".
Since the exception was not intercepted by a superior
program, processing was terminated.
Short description of exception condition:
For detailed documentation of the exception condition, use
Transaction SE37 (Function Library). You can take the called
function module from the display of active calls.
How to correct the error
If the error occures in a non-modified SAP program, you may be able to
find an interim solution in an SAP Note.
If you have access to SAP Notes, carry out a search with the following
keywords:
"RAISE_EXCEPTION" " "
"SAPLCEI0" or "LCEI0U30"
"VC_I_GET_CONFIGURATION"
or
"SAPLCEI0" "INTERNAL_ERROR"
or
"SAPMSSY1 " "INTERNAL_ERROR"
If you cannot solve the problem yourself and want to send an error
notification to SAP, include the following information:
1. The description of the current problem (short dump)
To save the description, choose "System->List->Save->Local File
(Unconverted)".
2. Corresponding system log
Display the system log by calling transaction SM21.
Restrict the time interval to 10 minutes before and five minutes
after the short dump. Then choose "System->List->Save->Local File
(Unconverted)".
3. If the problem occurs in a problem of your own or a modified SAP
program: The source code of the program
In the editor, choose "Utilities->More
Utilities->Upload/Download->Download".
4. Details about the conditions under which the error occurred or which
actions and input led to the error.
System environment
SAP-Release 700
Application server... "sap01717"
Network address...... "10.61.89.105"
Operating system..... "Linux"
Release.............. "2.6.40-0.8-default"
Hardware type........ "x86_64"
Character length.... 16 Bits
Pointer length....... 64 Bits
Work process number.. 15
Shortdump setting.... "full"
Database server... "sap01716"
Database type..... "ORACLE"
Database name..... "QWT"
Database user ID.. "SAPDAT"
Terminal................. "10.61.31.114"
Char.set.... "C"
SAP kernel....... 720
created (date)... "Mar 17 2013 18:46:25"
create on........ "Linux GNU SLES-11 x86_64 cc4.3.4 use-pr121116"
Database version. "OCI_102, 11.2.0.3.0, V1, default"
Patch level. 420
Patch text.. " "
Database............. "ORACLE 10.1.0.*.*, ORACLE 10.2.0.*.*, ORACLE 11.2.*.*.*"
SAP database version. 720
Operating system..... "Linux 2.6, Linux 3"
Memory consumption
Roll.... 0
EM...... 16759232
Heap.... 0
Page.... 16384
MM Used. 14978448
MM Free. 1777544
User and Transaction
Client.............. 500
User................ "RFC_TAULIA"
Language Key........ "E"
Transaction......... " "
Transactions ID..... "53F6515E320E5BBBE10000000A3D5969"
Program............. "SAPLCEI0"
Screen.............. "SAPMSSY1 3004"
Screen Line......... 2
Information on caller of Remote Function Call (RFC):
System.............. "########"
Database Release.... 720
Kernel Release...... 720
Connection Type..... "E" (2=R/2, 3=ABAP System, E=Ext., R=Reg. Ext.)
Call Type........... "synchronous and non-transactional (emode 0, imode 0)"
Inbound TID.........." "
Inbound Queue Name..." "
Outbound TID........." "
Outbound Queue Name.." "
Client.............. "###"
User................ "############"
Transaction......... " "
Call Program........."SAPJCo30"
Function Module..... "/TAULIA/CT_RFC_BUS_DOC_GET"
Call Destination.... "SAPR3"
Source Server....... "SWDETDOLPHPODD"
Source IP Address... "10.61.31.114"
Additional information on RFC logon:
Trusted Relationship " "
Logon Return Code... 0
Trusted Return Code. 0
Note: For releases < 4.0, information on the RFC caller are often
only partially available.
Information on where terminated
Termination occurred in the ABAP program "SAPLCEI0" - in
"VC_I_GET_CONFIGURATION".
The main program was "SAPMSSY1 ".
In the source code you have the termination point in line 259
of the (Include) program "LCEI0U30".Hi Arun,
the exception INTERNAL_ERROR of function module VC_I_GET_CONFIGURATION hasn't been caught, which leads to a short dump.
Check, where INTERNAL_ERROR is raised in your system In our system the only remaining code is after call of function module CUCQ_GET_CONFIGURATION_PARAMS.
Please try to debug, why this exception is raised.
Regards,
Klaus -
HOW TO EXTRACT THE PO CONDITIONS
HI,
i am using the following code,but in this i am not geting the po conditions values,is there any way to get the condition values into excel sheet.
report ztest1.
TABLES: EKKO.
*PARAMETERS : P_EBELN TYPE EBELN.
SELECT-OPTIONS: S_EBELN FOR EKKO-EBELN OBLIGATORY.
TYPES: BEGIN OF T_PO,
EBELN TYPE EBELN,
END OF T_PO.
DATA: IT_PO TYPE STANDARD TABLE OF T_PO,
WA_PO TYPE T_PO.
DATA : IT_ITEMS TYPE TABLE OF BAPIEKPO WITH HEADER LINE.
DATA: PO_ITEMS_SHEDULE TYPE TABLE OF BAPIEKET WITH HEADER LINE.
DATA: PO_ITEM_TEXT TYPE TABLE OF BAPIEKPOTX WITH HEADER LINE.
DATA: PO_ITEM_ACCOUNT_ASSIGNMENT TYPE TABLE OF BAPIEKKN
WITH HEADER LINE.
DATA: PO_HEADER_TEXTS TYPE TABLE OF BAPIEKKOTX WITH HEADER LINE.
DATA: PO_HEADER TYPE BAPIEKKOL.
DATA: RETURN1 TYPE TABLE OF BAPIRETURN WITH HEADER LINE.
DATA: RC TYPE I.
SELECT EBELN INTO TABLE IT_PO FROM EKKO WHERE EBELN IN S_EBELN.
PERFORM FILE_DELETE.
LOOP AT IT_PO INTO WA_PO.
CLEAR: PO_HEADER_TEXTS[], IT_ITEMS[], PO_ITEM_ACCOUNT_ASSIGNMENT[],
PO_ITEMS_SHEDULE[], PO_ITEM_TEXT[], RETURN1[].
CALL FUNCTION 'BAPI_PO_GETDETAIL'
EXPORTING
PURCHASEORDER = WA_PO-EBELN
ITEMS = 'X'
ACCOUNT_ASSIGNMENT = 'X'
SCHEDULES = ' '
HISTORY = 'X'
ITEM_TEXTS = 'X'
HEADER_TEXTS = 'X'
TABLES
PO_HEADER_TEXTS = PO_HEADER_TEXTS
PO_ITEMS = IT_ITEMS
PO_ITEM_ACCOUNT_ASSIGNMENT = PO_ITEM_ACCOUNT_ASSIGNMENT
PO_ITEM_SCHEDULES = PO_ITEMS_SHEDULE
PO_ITEM_TEXTS = PO_ITEM_TEXT
RETURN = RETURN1.
PERFORM DOWNLOAD_DATA: TABLES PO_HEADER_TEXTS USING 'BAPIEKKOTX',
TABLES IT_ITEMS USING 'BAPIEKPO',
TABLES PO_ITEM_ACCOUNT_ASSIGNMENT USING
'BAPIEKKN',
TABLES PO_ITEMS_SHEDULE USING 'BAPIEKET',
TABLES PO_ITEM_TEXT USING 'BAPIEKPOTX'.
ENDLOOP.
*& Form DOWNLOAD_DATA
FORM DOWNLOAD_DATA TABLES IT_TAB
USING STRUC_NAME.
DATA: IT_DD03P TYPE TABLE OF DD03P WITH HEADER LINE,
IT_DD03P1 TYPE TABLE OF DD03P WITH HEADER LINE.
DATA: IT_HEAD TYPE TABLE OF STRING,
WA_HEAD TYPE STRING.
DATA: L_TAB(1) TYPE C VALUE CL_ABAP_CHAR_UTILITIES=>HORIZONTAL_TAB.
IF NOT IT_TAB[] IS INITIAL.
CALL FUNCTION 'DD_GET_DD03P_ALL'
EXPORTING
TABNAME = STRUC_NAME
TABLES
A_DD03P_TAB = IT_DD03P
N_DD03P_TAB = IT_DD03P1
EXCEPTIONS
ILLEGAL_VALUE = 1
OTHERS = 2.
IF SY-SUBRC EQ 0.
LOOP AT IT_DD03P.
IF SY-TABIX EQ 1.
MOVE IT_DD03P-DDTEXT TO WA_HEAD.
ELSE.
CONCATENATE WA_HEAD IT_DD03P-DDTEXT INTO WA_HEAD SEPARATED BY L_TAB.
ENDIF.
ENDLOOP.
APPEND WA_HEAD TO IT_HEAD.
ENDIF.
ENDIF.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
FILENAME = 'C:\poextract.xls'
APPEND = 'X'
WRITE_FIELD_SEPARATOR = 'X'
TABLES
DATA_TAB = IT_HEAD
FIELDNAMES = IT_HEAD
EXCEPTIONS
FILE_WRITE_ERROR = 1
NO_BATCH = 2
GUI_REFUSE_FILETRANSFER = 3
INVALID_TYPE = 4
NO_AUTHORITY = 5
UNKNOWN_ERROR = 6
HEADER_NOT_ALLOWED = 7
SEPARATOR_NOT_ALLOWED = 8
FILESIZE_NOT_ALLOWED = 9
HEADER_TOO_LONG = 10
DP_ERROR_CREATE = 11
DP_ERROR_SEND = 12
DP_ERROR_WRITE = 13
UNKNOWN_DP_ERROR = 14
ACCESS_DENIED = 15
DP_OUT_OF_MEMORY = 16
DISK_FULL = 17
DP_TIMEOUT = 18
FILE_NOT_FOUND = 19
DATAPROVIDER_EXCEPTION = 20
CONTROL_FLUSH_ERROR = 21
OTHERS = 22.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
FILENAME = 'C:\poextract.xls'
APPEND = 'X'
WRITE_FIELD_SEPARATOR = 'X'
TABLES
DATA_TAB = IT_TAB
FIELDNAMES = IT_HEAD
EXCEPTIONS
FILE_WRITE_ERROR = 1
NO_BATCH = 2
GUI_REFUSE_FILETRANSFER = 3
INVALID_TYPE = 4
NO_AUTHORITY = 5
UNKNOWN_ERROR = 6
HEADER_NOT_ALLOWED = 7
SEPARATOR_NOT_ALLOWED = 8
FILESIZE_NOT_ALLOWED = 9
HEADER_TOO_LONG = 10
DP_ERROR_CREATE = 11
DP_ERROR_SEND = 12
DP_ERROR_WRITE = 13
UNKNOWN_DP_ERROR = 14
ACCESS_DENIED = 15
DP_OUT_OF_MEMORY = 16
DISK_FULL = 17
DP_TIMEOUT = 18
FILE_NOT_FOUND = 19
DATAPROVIDER_EXCEPTION = 20
CONTROL_FLUSH_ERROR = 21
OTHERS = 22.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " DOWNLOAD_DATA
*& Form FILE_DELETE
FORM FILE_DELETE .
CALL METHOD CL_GUI_FRONTEND_SERVICES=>FILE_DELETE
EXPORTING
FILENAME = 'C:\poextract.xls'
CHANGING
RC = RC
EXCEPTIONS
FILE_DELETE_FAILED = 1
CNTL_ERROR = 2
ERROR_NO_GUI = 3
FILE_NOT_FOUND = 4
ACCESS_DENIED = 5
UNKNOWN_ERROR = 6
NOT_SUPPORTED_BY_GUI = 7
WRONG_PARAMETER = 8
OTHERS = 9.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " FILE_DELETEHI Ram
Am not able to access SAP now, I guess FM: 'BAPI_PO_GETDETAIL' itself can return PO conditions as well. Please check the same.
Kind Regards
Eswar
Maybe you are looking for
-
What happened to the Buy Button on my Itunes Wish List.
I know I have purchased the songs from my Wishlist in the past. Has anyone else experienced this problem and is there a solution. I find it very inconvient to save songs to my wishlist and then have to go back and look them all up again to purchase.
-
I am fairly new to MapViwer / Builder so appologies if this is has been asked before. I have uploaded a .gif image as a custom marker into mapbuilder and added this to a theme which correctly displayes when I preview the theme. The issue I have is th
-
Error when using LOV on ADF Form
Hi All, I am using a LOV for one of the fields on form and I get the data through webservice call. When I select the value from LOV and populate one of the fields from my editable form it throws the below error on the UI: oracle.jbo.NoObjException: J
-
No connection message for Web Content areas.
I have a live twitter panel loading into a Web Content overlay. In the event they do not have a connection, is there an alternate page that can be displayed with a simple message? I'm looking through the docs/search and oddly nothing has come up for
-
Having trouble with this kernel panic
Hi everyone. I've been having kernel panics for the past few months and I've been having trouble figuring out what's causing it. I have an early 2011 15" MacBook Pro, with a quad core 2GHz i7 My OS is 10.8.2 Here is the most recent panic: Interval S