cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Customer checkout and SAP Bydesign Article Sync not working

0 Likes
1,678

Hello colleagues,

I have CCO installed on a Virtualbox VM machine and are trying to connect to the ByD test tenant.

I followed this blog which is very good https://blogs.sap.com/2017/11/06/integrate-sap-customer-checkout-point-of-sales-with-sap-bydesign/ , and informative but cannot get CCO to sync. I changed network adapter to bridged mode but still have a connection issue.

I checked the CCO log and saw references to the proxy used. I am using the suggested proxy settings in the technical section.

Here is the log. Is this network related? Or have I missed something in the config?

Any help or advice would be appreciated.

2022-01-07 10:00:26,264 [BYD_SCHEDULER_Worker-2] INFO com.sap.scco.ap.pos.job.MaterialJob - >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> MaterialJob started

2022-01-07 10:00:26,270 [BYD_SCHEDULER_Worker-2] INFO com.sap.scco.ap.pos.job.MaterialJob - Loading material data from ERP...

2022-01-07 10:00:26,319 [loadAllDTOFromExternalSystem] WARN com.sap.scco.ap.pos.i14y.util.AbstractDTOService - an exception came up while retrieving all MaterialDTO from ERP (ByDesign)

com.sap.scco.util.exception.XWebServiceException: javax.xml.ws.WebServiceException: Could not send Message.

at com.sap.scco.ap.pos.i14y.byd.wrapper.ManageSalesPriceListInWrapper.readSalesPriceListByID(ManageSalesPriceListInWrapper.java:184) ~[env.jar:?]

at com.sap.scco.ap.pos.i14y.byd.MaterialDTO_ByDWebserviceImpl.runRetrieve(MaterialDTO_ByDWebserviceImpl.java:84) ~[env.jar:?]

at com.sap.scco.ap.pos.i14y.util.AbstractDTOService.lambda$1(AbstractDTOService.java:264) ~[env.jar:?]

at java.lang.Thread.run(Unknown Source) [?:?]

Caused by: javax.xml.ws.WebServiceException: Could not send Message.

at org.apache.cxf.jaxws.JaxWsClientProxy.mapException(JaxWsClientProxy.java:183) ~[env.jar:?]

at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:145) ~[env.jar:?]

at com.sun.proxy.$Proxy119.read(Unknown Source) ~[?:?]

at com.sap.scco.ap.pos.i14y.byd.wrapper.ManageSalesPriceListInWrapper.readSalesPriceListByID(ManageSalesPriceListInWrapper.java:93) ~[env.jar:?]

... 3 more

Caused by: java.net.UnknownHostException: UnknownHostException invoking https://myXXXXX.sapbydesign.com/sap/bc/srt/scs/sap/managesalespricelistin: proxy.wdf.sap.corp

at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:?]

at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) ~[?:?]

at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) ~[?:?]

at java.lang.reflect.Constructor.newInstance(Unknown Source) ~[?:?]

at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.mapException(HTTPConduit.java:1400) ~[env.jar:?]

at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1384) ~[env.jar:?]

at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56) ~[env.jar:?]

at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:671) ~[env.jar:?]

at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:63) ~[env.jar:?]

at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:308) ~[env.jar:?]

at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:530) ~[env.jar:?]

at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:441) ~[env.jar:?]

at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:356) ~[env.jar:?]

at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:314) ~[env.jar:?]

at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:96) ~[env.jar:?]

at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:140) ~[env.jar:?]

at com.sun.proxy.$Proxy119.read(Unknown Source) ~[?:?]

at com.sap.scco.ap.pos.i14y.byd.wrapper.ManageSalesPriceListInWrapper.readSalesPriceListByID(ManageSalesPriceListInWrapper.java:93) ~[env.jar:?]

... 3 more

Caused by: java.net.UnknownHostException: proxy.wdf.sap.corp

at java.net.AbstractPlainSocketImpl.connect(Unknown Source) ~[?:?]

at java.net.Socket.connect(Unknown Source) ~[?:?]

at sun.net.NetworkClient.doConnect(Unknown Source) ~[?:?]

at sun.net.www.http.HttpClient.openServer(Unknown Source) ~[?:?]

at sun.net.www.http.HttpClient$1.run(Unknown Source) ~[?:?]

at sun.net.www.http.HttpClient$1.run(Unknown Source) ~[?:?]

at java.security.AccessController.doPrivileged(Native Method) ~[?:?]

at sun.net.www.http.HttpClient.privilegedOpenServer(Unknown Source) ~[?:?]

at sun.net.www.http.HttpClient.openServer(Unknown Source) ~[?:?]

at sun.net.www.protocol.https.HttpsClient.<init>(Unknown Source) ~[?:?]

at sun.net.www.protocol.https.HttpsClient.New(Unknown Source) ~[?:?]

at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(Unknown Source) ~[?:?]

at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(Unknown Source) ~[?:?]

at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source) ~[?:?]

at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source) ~[?:?]

at sun.net.www.protocol.http.HttpURLConnection.getOutputStream0(Unknown Source) ~[?:?]

at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(Unknown Source) ~[?:?]

at sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream(Unknown Source) ~[?:?]

at org.apache.cxf.transport.http.URLConnectionHTTPConduit$URLConnectionWrappedOutputStream.setupWrappedStream(URLConnectionHTTPConduit.java:274) ~[env.jar:?]

at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleHeadersTrustCaching(HTTPConduit.java:1343) ~[env.jar:?]

at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.onFirstWrite(HTTPConduit.java:1304) ~[env.jar:?]

at org.apache.cxf.transport.http.URLConnectionHTTPConduit$URLConnectionWrappedOutputStream.onFirstWrite(URLConnectionHTTPConduit.java:307) ~[env.jar:?]

at org.apache.cxf.io.AbstractWrappedOutputStream.write(AbstractWrappedOutputStream.java:47) ~[env.jar:?]

at org.apache.cxf.io.AbstractThresholdOutputStream.write(AbstractThresholdOutputStream.java:69) ~[env.jar:?]

at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1356) ~[env.jar:?]

at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56) ~[env.jar:?]

at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:671) ~[env.jar:?]

at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:63) ~[env.jar:?]

at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:308) ~[env.jar:?]

at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:530) ~[env.jar:?]

at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:441) ~[env.jar:?]

at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:356) ~[env.jar:?]

at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:314) ~[env.jar:?]

at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:96) ~[env.jar:?]

at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:140) ~[env.jar:?]

at com.sun.proxy.$Proxy119.read(Unknown Source) ~[?:?]

at com.sap.scco.ap.pos.i14y.byd.wrapper.ManageSalesPriceListInWrapper.readSalesPriceListByID(ManageSalesPriceListInWrapper.java:93) ~[env.jar:?]

... 3 more

2022-01-07 10:00:26,335 [loadAllDTOFromExternalSystem] INFO com.sap.scco.ap.pos.i14y.util.callback.impl.MaterialDTO_RetrieveListCallback - XState=com.sap.scco.util.exception.XWebServiceException: Could not send Message.,stopSubsequentAttempts=false

2022-01-07 10:00:26,367 [BYD_SCHEDULER_Worker-2] INFO com.sap.scco.ap.pos.job.MaterialJob - <<<<<<<<<<<<<<<<<<<<<<<<<<< MaterialJob finished in 97ms

Accepted Solutions (1)

Accepted Solutions (1)

gunther_sandtner2
Product and Topic Expert
Product and Topic Expert
0 Likes

Dear ghazzali,

The warnings in the article synchronization

"Price list received is empty"

"...could not read price information"

are fixed meanwhile.

If you use the latest version of SAP Customer Checkout (CCO 2.0 FP12 PL06) the article synchronization will be successful.

Kind regards,

Gunther

Hi gunther.sandtner2 ,

After updating customer checkout to CCO 2.0 FP12 PL06 the article sync issue has been resolved.

Thank you very much for your assistance on this.

Kind regards,

Ghazzali.

Answers (2)

Answers (2)

bikash_bansal
Product and Topic Expert
Product and Topic Expert
0 Likes

Hello,
I have replaced the URL with xxxx. I dont think its a good idea to paste system URL in open forums like SAP Community.

From the system where the PoS is, are you able to login in the system(change to ur system)
myxxxxxx.sapbydesign.com
with user _MBCCO and "your password".

ByD supports login with technical user like _MBCCO
If no, then the issue is obvious. I assume this will work.
If yes, then are u able to call the service like managesalespricelistin using tools like Postman?

If not, then your ByD system is not configured correctly to access these services.
You should open a BCP ticket for ByD colleagues
myxxxxxx.sapbydesign.com/sap/bc/srt/scs/sap/managesalespricelistin

I am using the suggested proxy settings in the technical section.
Have u tried using without proxy? After changing proxy setting, u should always restart the PoS.
I am wondering if you need the proxy. Generally speaking this system is on the internet, and u might not need proxy to access it. However i am not too deep on the network level.

Best Regards,
Bikash Bansal

0 Likes

Hi Bikash, Thank you for the advice. Removing the proxy settings helped, for both the local PC and VM. I had tried this earlier but I think the VM network settings were an issue as well.

I can log in with the user _MBCCO.

The article sync now displays a yellow triangle with exclamation mark. The error ( see attached image) "Price list received is empty" and then lists some articles. However no articles are imported.

So, I checked the price lists in CCO and ByD and they are the same (attached image).

I am using a distribution chain price list and the associated distribution chain code as well.

At this point I don't have a "Discount price list ID" entered in CCO integration section.

Kind regards,

Ghazzali.

gunther_sandtner2
Product and Topic Expert
Product and Topic Expert
0 Likes

Dear ghazzali,

In the integration with ByD the price lists associated with the materials you want to synchronize need to be maintained manually in CCO Configuration -> Sales -> Price Lists. The ID you maintain in CCO must match exactly the name from ByD. Here is an example from my test system:

Kind regards,

Gunther

0 Likes

Hi Gunther, I was using a distribution chain price list "FACTORY TILL DC" but following your example I created a new Price List (Gross) , called "BASE PRICE CCO", also added items to the list with prices. I then added it to the price list section in CCO. Ran the sync again and it still failed.

gunther_sandtner2
Product and Topic Expert
Product and Topic Expert
0 Likes

Hello ghazzali,

In order to rule out a network related connection problem of any sort can you confirm if a customer synchronization is successful or not?

Best regards,

Gunther

0 Likes

Hi Gunther,

The customer sync is not successful either.

To try and eliminate issues with the VM I copied the SAP customer checkout folder to my desktop pc and ran a sync from that as well.

Here are the integration settings from CCO as well.

Kind regards,

Ghazzali.