cancel
Showing results for 
Search instead for 
Did you mean: 

Unable to update the records in SAP tables

Former Member
0 Kudos

Hi All,

I have used sender JDBC for retrieving the data from SQL.

In Runtime Workbench, the adapters are working fine.

I have used RFC reciever to update teh data into a ztable.

Mappings are perfectly done and tested succesfully.

In SAP, i have created a RFC and written some code to update the ztable.

If i test this RFC manually in SAP environment, the data gets updates in Ztable.

But now, while XI is working, i am unable to update the Z table.

How to check out where my interface is failing or getting stuck....?????

Please Help me....

Regards

Pavan

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi,

1. Check if the function module is set up for remote calling.

2. Check if communication channel is configured to commit the changes

3. Run transaction SMQ2 in R/3 application to see if message is stuck in the queue.

Cheers

Colin.

Former Member
0 Kudos

In Runtime Workbench->Message Monitoring-->, I have entered the date and other details like Service, interface name, interface namespace for sender and reciever interfaces.

Now when i click "START" push button, messageis displayed as " zero messages found".

Does this means my SQL select statment is failing in Sender_jdbc adapter....?????

Now what needs to be done...????

Regards

Pavan

prateek
Active Contributor
0 Kudos

<i>Does this means my SQL select statment is failing in Sender_jdbc adapter....?????</i>

This means that the sender CC is not picking up the data properly.

Isn't there any msg in sxmb_moni of XI? If not, then again check ur sender channel status and configuration iin ID.

Regards,

Prateek

former_member192892
Active Contributor
0 Kudos

Hi Pavan,

Proceed as below...

1) Check whether your sender jdbc adapter is functioning properly. Go to communication channel monitoring for that.

2) If it is success there, then copy the SQL query from your sender JDBC channel and run it in query analyzer to see if you are getting a result set or no...

3) After this go to sxmb_moni

4)If no error in sxmb_moni, go to your RFC communication channel and check commit handling for single BAPI calls under Advanced Mode option

Thanks

Former Member
0 Kudos

Hi varun,

Thanks for your tips...

1. I have checked the JDBC sender adapter and is functioning properly. I have observer no errors in Communication channel monitoring for that.

2. Ths same sql statement (entered in the JDBC adapter) is performing perfectly in sql query analyzer. Its retrieving 126 records from the sql table.

3. When i go to SXMB_MONI and execute for today's date, there is an error message saying that " No messages available for selection". Hence there is problem lies here......

How to resolve this error........Kindly help me Varuna and All......

Regards

Pavan

former_member267355
Active Participant
0 Kudos

Hi,

Check in below mentioned link specifying ip and port of XI system

http://ip:port/MessagingSystem/monitor/monitor.jsp

check whether any error while processing.

Regards,

Sakthi

Former Member
0 Kudos

Hi

Is your sender Adapter able to pick up messages.Are the message ids available in the CC monitoring or it just says "JDBC Adapter functioning".

In case it is not showing any ids, then something is wrong with the Sender configuration or the Message Mapping you have done.

Thanks

Former Member
0 Kudos

Pavan Go for debugging the adapter :

1) Go to RWB and do communication channel monitoring.

Check if it is polling accurately or giving some messages .

2) Try to change the select query or send the query you have written in the select statement . Note that the queries written in sql query analyzer may produce output but it is a possibility that the same query will not work in the adapter .

Try to change the syntax of the select statement .

Former Member
0 Kudos

Hi,

How is your query invoked in the JDBC adapter ?

If the monitor is saying "no messages" try just executing it without any additional parameters, just the default.

It looks like the invocation may not be working.

Cheers

Colin.

Former Member
0 Kudos

Monika,

I have checked mapping.. Its working perfectly. Even checked for multiple rows...its fine...

Now in Runtime W/b-> communication channel Monitoring>, I am getting following details for SENDER_JDBC adapter.

Processing finished successfully.

Message with ID 07c07a10-1461-11eb-935d-001aa032c523 processed

Audit Log for Message: 07c07a10-1461-11eb-935d-001aa032c523

Time Stamp Status Description

2020-10-22 17:50:54 Success Channel JDBC_SENDER_CC: Query executed successfully. Start update

2020-10-22 17:50:54 Success Channel JDBC_SENDER_CC: 0 row(s) updated successfully

2020-10-22 17:50:54 Success Send query result. Size: 28115 characters

2020-10-22 17:50:54 Success Application attempting to send an XI message asynchronously using connection AFW.

2020-10-22 17:50:54 Success The application sent the message asynchronously using connection AFW. Returning to application.

2020-10-22 17:50:54 Success Message successfully put into the queue.

2020-10-22 17:50:54 Success Trying to put the message into the send queue.

2020-10-22 17:50:54 Success The message was successfully retrieved from the send queue.

2020-10-22 17:50:54 Success The message status set to DLNG.

2020-10-22 17:50:54 Error Received XI System Error. ErrorCode: EXCHANGE_PROFILE_ACCESS ErrorText: ErrorStack: Error while reading exchange profile for system IXI and client 001

I hope in last line of above log, you can find the ERROR message.

I am unable to trace what this error is....

Kindly help me.....

Regards

Pavan

Former Member
0 Kudos

HI

1) Inform your Basis team about the problem. Send them the trace too. They may re-start the XI to solve this.

2) On the SDN there are some discussion for the same so have a look.

Former Member
0 Kudos

Hi

Some exchange profile errors, it shows, just check with your basis guys..

Thanks

Former Member
0 Kudos

Hi varun and All,

I have checked the messages in Runtime w/b-->message monitoring...

But each message is having error log.

2020-10-22 17:50:54 Error Received XI System Error. ErrorCode: EXCHANGE_PROFILE_ACCESS ErrorText: ErrorStack: Error while reading exchange profile for system IXI and client 001

Checked LCRSAPRFC in SM59.

Connection is correct and no errors...

Hence checked SLDCHECK.

I came across following error.....

SLD server access settings:

host name: ibxi

port number: 50000

user : PIAPPLUSER

Use transaction SLDAPICUST if you wish to maint

Launching the SLD GUI in a separate browser win

=> Verify in the browser GUI that the SLD is in

Calling function LCR_LIST_BUSINESS_SYSTEMS

Retrieving data from the SLD server...

Function call returned exception code 4

=> Check whether the SLD is running!

Summary: Connection to SLD does not work

=> Check SLD function and configurations

Now, where does the error located...????

Is it with the JDBC sender adapter level or with SLD....??????

Kindly Help me...........

Regards

Pavan

Former Member
0 Kudos

Hi

1) Whethere you have created two communication channel one for sender and another for receiver.( check you have selected theright option sender and receiver in the adapter )

2) Are you using BPM.

3) Some time we will get this error if XIRWBUSER is locked.

Try unlocking XIRWBUSER user from su01. ( In su01 you will have a lock button which will show you the staus if the user is locked or not)

Kindly check whether you posses the roles required to access the RWB are:

1. SAP_XI_RWB_SERV_USER

2. SAP_XI_RWB_SERV_USER_MAIN

4) Cross check the below :

a)Ensure that the required JDK is being used in the client system

b)Try clearing the Web Start cache and try downloading again.

c)Start>Programs>Java Web Start>File>Preferences>Advanced>Clear Folder

5)Refresh the Cache :

a)Start transaction SXI_CACHE.

b)From the context menu XI Runtime Cache select Start Complete Cache Refresh.

And also try this :

Many actions require to access System Landscape Directory content from the Integration Builder. To optimize performance, this content is loaded into a cache so that the System Landscape Directory does not have to be accessed directly each time that System Landscape Directory content is required.

However, this cache is not automatically updated if changes are made to the content of the System Landscape Directory. For this reason that we delete the System Landscape Directory cache if changes have been made to content in the System Landscape Directory. The cache is then filled each time that the System Landscape Directory is accessed. If we log on to the Integration Builder after we have made a change in the SLD, we do not need to delete the SLD cache.

To clear the SLD cache, from the Integration Builder main menu, choose Environment ® Delete Cache for SLD Data.

Once we have deleted the cache for SLD data, accessing objects in the SLD may take longer than usual initially.

Thanks

Former Member
0 Kudos

Try a restart

Former Member
0 Kudos

Hi

Also check the transaction SLDAPICUST

It should have primary option selected and host name must be the fully qualified domain name, port is HTTP port(50XX0), User Id (XIAPPLUSER/PIAPPLUSER) and dont forget to set the correct password.

Also just retype the same username and pwd if everything is correct.

Thanks

Former Member
0 Kudos

Monika,

Tons of sincere Thanks for your help.

Our basis Consultant is left for the day and i can not move further with the required cross checks with his help.

Hope i can not resolve these issues today itself. I need to put forward this to tomorrow.

Will have an interction about this again tomorrow with you...

Kindly extend your help to close this exercise.....

Regards

Pavan

Former Member
0 Kudos

Hi Pava,

As suggested in the help link below, check if the user specified in the connection data has the ABAP user role SAP_BC_AI_LANDSCAPE_DB_RFC on the Integration Server.

http://help.sap.com/saphelp_nw04/helpdata/en/5e/f85141196ff423e10000000a155106/content.htm

Check and see if SLDCHECK is working fine and also ask the BASIS team to ensure that all the post installation steps are carried out correctly, without having missed anything.

Cheers,

Abhy

Former Member
0 Kudos

Hi Sakthi Devi,

I have tried with the link http://ip:port/MessagingSystem/monitor/monitor.jsp.

Each message is associated with error in the audit log as follows.

2020-10-23 15:36:21 Error Received XI System Error. ErrorCode: EXCHANGE_PROFILE_ACCESS ErrorText: ErrorStack: Error while reading exchange profile for system IXI and client 001

In the Details, i can see the XML code containing the data fetched from SQL server as follows....

<ns:resultset xmlns:ns="http://jdbcrfcns">

<row>

<Employee_Code>0621 </Employee_Code>

<Project_Id>103_SRV_0708 </Project_Id>

<Activity_Id>8</Activity_Id>

<Entry_Date>2007-06-01 00:00:00.0</Entry_Date>

<Hours_Spent>2.0000</Hours_Spent>

Now i am confused about the error location?

Is it with my XI configuration or with some Basis installation/post installation problems....????

In Runtime, my communication channels are perfect with green symbol and the message Id of sender_jdbc (from sql to xi) communication channel shows message with the error as follows......

2020-10-23 15:36:21 Error Received XI System Error. ErrorCode: EXCHANGE_PROFILE_ACCESS ErrorText: ErrorStack: Error while reading exchange profile for system IXI and client 001

Kindly help me to resolve and move further.....

Regards

Pavan

Former Member
0 Kudos

hi ,

check the PIAPPLUSER is working well or any lock to that user.

regards

ajai

Former Member
0 Kudos

Hi

Did you follow all the 5 steps i mentioned to solve the Exchange profile problem.I am sure one of these steps would be the solution to your problem.

Thanks

Former Member
0 Kudos

Monika,

I have followed your steps and Exchange profile problem got resolved.

Now, the messages are flowing fromSQL to XI and queued up in message monitor.

From XI, i am passing these messages to RFC via RFC adapter.

No errors with adapters and mapping.

But data is not getting updated in my SAP table.

I have defined reciever datatype exactly as RFC import parameters.

In RFC, i have coded as follows....

***********

move emp_no to i_zpoc-empid.
move name to i_zpoc-name.
move date to i_zpoc-zdate.
move proj_id to i_zpoc-projid.
move act_id to i_zpoc-actid.
move hrs to i_zpoc-hrs.
move remarks to i_zpoc-remarks.

append i_zpoc.
clear i_zpoc.
data: v_counter type zpoc_time-counter.
select max( counter ) into v_counter from zpoc_time.
if sy-subrc <> 0.
v_counter = 1.
else.
v_counter = v_counter + 1.
endif.

loop at i_zpoc.
i_zpoc-counter = v_counter.
modify i_zpoc.
v_counter = v_counter + 1.
clear i_zpoc.
endloop.


insert zpoc_time from table i_zpoc ACCEPTING DUPLICATE KEYS.
commit work.

*****************

If i manually input the values in RFC, table gets updated....

but in XI case, its not working......

How to resolve this....??????

Regards

Pavan

Former Member
0 Kudos

In Integration Directory-->Tools-->Test Configuration, i have tested the configuration with a sample payload from SXMB_MONI.

The error occured as follows....

Runtime error

No receiver agreement found for sender -JDBC_SENDER_BS to receiver -TR2,http://jdbcrfcns.jdbc_ob_mi

I have defined Reciever agreement in a proper way.

In reciever agreement, i have entered the sender business system, reciever business system, reciever interface (in my case, its BAPI imported frm SAP), and reciever communication channel.

Any idea for this error..........????????????

Regards

Pavan

Answers (3)

Answers (3)

Former Member
0 Kudos

Hi Pavan

Go to Runtime workbench --> Component monitoring --> (Display All) --> Adapter Engine --> Communication Channel Monitoring --> Adapter Type JDBC .. Use Filter

And now see if your configured JDBC Communication channed has an error or not?

I hope your JDBC adapter is activated. If yes, then there must be an arror while picking the record from the JDBC. The reason for this is that, if your don't see a message in the sxmb_moni then it means the problem has occured at adapter level ... in your case.

I hope this helped

Good luck

Vijendra

nisarkhan_n
Active Contributor
0 Kudos

go to the SXMB_MONI in the XI...this is the message monitoring tool.....enter the date range and check the interface by the namespace (check with the developer) you will get the detail of the wether the data was sent to the R/3 or was it failling....

also you can go to

SXMB_IFR>Runtime workbench>component monitoring>communication channel monitoring>enter the namne of the RFC reciver CC name and c the result it mght be some errors.

prateek
Active Contributor
0 Kudos

Check the message in sxmb_moni of receiver R3 system.

Regards,

Prateek