cancel
Showing results for 
Search instead for 
Did you mean: 

Web Service - Error in Connection and Data fields missing

Former Member
0 Kudos

Hi All

We are using SAP NW VC 7.1 SP3. and Web Services as our back-end and these web services inturn call the RFC's.

One of the limitations of this VC version is that we cannot test the data service.Probably, this feature might be available in future releases.

The problem we are facing is that:

1. Certain input fields of the web service are missing in the VC StoryBoard. While I test this web service using the Web Service Navigator, I get all the input parameters and the desired response. However, when I use this web service in VC and on execution, I get the following error - "Error occurred during Data Service, E_SRV Execution"

The web services input contain nested structures. Though this version of VC supports nested structures, still certain fields are missing.

Can anyone pls tell me wat could be the problem...???Is there any limit on the amount of input data..???

2.Sometimes, I get the following error on execution - "Error in connection. Could not execute the web-service operation". Why does this happen frequently...??? Anything wrong with the configuration settings...??? If yes, how can i make it proper...??

It would be great, if anyone could tell me how to make my UDDI client up and running, so that I can register all my web services at one place instead of defining each one in the system.

Regards

Deepak Jaju

Accepted Solutions (1)

Accepted Solutions (1)

0 Kudos

Hi Deepak,

The error "Error in connection. Could not execute the web-service operation" is many time the result of not supplying all mandatory fields in the input of the service. (See note 1111062)

Regards,

Rachel Ebner

Former Member
0 Kudos

Hi Rachel

Thanks for the reply. I checked out the SAP Note and that was really helpfull.

Can you pls tell me abt the missing fields in VC..??? I have certain fields in my web service that are mandatory but when i drag the input port of web service and creat a form out of it, certain mandatory fields are missing.

What could be the problem...??? Please reply...

Former Member
0 Kudos

Hi All

The input fields are missing because VC doesn't support complex nested structures and hence we are not able to test the data service. So am hard-coding the missing input fields in VC.

Now, when i run the iView, I get neither any output nor any error message.

Can anyone pls tell me what could be the problem...??

0 Kudos

Hi Deepak,

Let me first understand the problem:

  • You have a web service, with complex data structure on the input.

  • You cannot use the "test data service" feature, becasue it does not support a clustered input.

  • And you want to model an input form that passes data to the cluster input?

Is that a correct description of your problem?

If so, then please read catefully note #1110880, which explains how to map UI elements to services whose input contains a complex structure (a.k.a. cluster)

Regards,

Rachel

Former Member
0 Kudos

Hi Rachel

Yeah, that's exactly the problem am facing. I had checked out that particular note and tried doing the same but in vain. I'll try again n will post the results. Thanks a lot.

Regards

Deepak

Former Member
0 Kudos

Hi All

It's getting really complicated for me. Here's the scenario:

I have abt 15 mandatory fields and alltogether there are abt 50 optional input fields for the web service.

Since some of the mandatory field are in clustered data set, I have used the data bridge and an input form.

Input form consist of all the 15 mandatory fields(I have manually added them in the form insteading of dragging them from the web service) and the output of the input form is connected to the data bridge with the event 'Submit'. The input form fields are mapped to the fields in the data bridge.

The data bridge is connected to the input port of the web service with the same event name 'Submit' and elements of the data bridge are automatically mapped to the relevant input fields of the web service.

Now when I give the mandatory fields and press submit on execution, there's neither response from the web service nor any errors or warning. When i check my relevant R/3 system, no records are added.

When i check the log trace in the NW Admin, even there also no error. Log trace just gives the info abt relevant mappings done.That's it... no errors no warning....

I am not sure what the problem is but i think the CreationDateTime field is giving some problem.

Payload before service in R/3 uses the following style for this field:

2008-01-04T09:11:27

What i have done is, created input fields of type Date and Time. Then, while mapping the data from input form to the bridge, I have tried the following 2 styles of assigning the value to the element(CreationDateTime) in the bridge:

@EnterDate&"T"@EnterTime

@EnterDate&@EnterTime

In the VC iView, I enter the following values for date and time:

Date: 01/04/2008

Time: 8:58:56 AM

Please guide me... Am badly stuck....

Regards

Deepak

0 Kudos

Hi Deepak,

If you suspect that your date and time conversions are the problem,

check out the dynamic expression properties DSTR and TSTR. Both take as input a date (or time) field and a mask, and return a string that formats the date as you like it.

Here's a detailed documentation of these functions:

http://help.sap.com/saphelp_nwce10/helpdata/en/09/da82ed0b70417381c34763c87345bb/frameset.htm

(look especially in tables C and D)

I would guess you need something like

DSTR(@EnterDate, 'XML_DATE') & TSTR(@EnterTime, 'XML_TIME')

(note that 'XML_TIME' formatting even adds the 'T' for you...)

I hope this helps.

Rachel

Former Member
0 Kudos

Hi Rachel

Thanks for the reply. I tried out this method also but again there's neither any error message nor any output.

The "Test Data" feature would be available in SP5 release if there are more than 15 input fields. Do you have any idea as to when SP5 would be released...??

Also, currently, when i drag a form from the input port, clustered data sets are not visible in the input form and hence have to use the concept of Data Bridges. But, my problem is that certain mandatory fields are part of these clustered data sets and hence I would like to know whether SP5 makes the all clustered data sets available for testing in the "Test Data" feature...??

But for now, what do you think could be the problem....??? The web serive is indeed working and the same was verified using the Web Services Navigator.

Regards

Deepak

0 Kudos

Hi Deepak,

SP5 will be available on February 2008.

Sorry, but I cannot figure out what the problem may be with the service or the model.

Rachel

Former Member
0 Kudos

Hi Deepak,

It occurs to me that it could be that the mapping from the data bridge to the in port of the service is not being activated. In order for the "submit" event between the data bridge and the in port of the service to occur, it needs to have an asterisk in front of it - like so - "*submit". The asterisk is VC's way of defining that an event is global - that this particular "submit" needs to take place whenever a "submit" event occurs somewhere else on the model.

However, because the "submit" event is used frequently, I would suggest renaming this event to something else - say "in1" - in the three places where it is defined - on the button's action, in between the form and data bridge, and in between the data bridge and the in port.

I hope this will solve the problem.

Good luck!

Eyal

Former Member
0 Kudos

Hi Eyal

Thanks for the reply. I followed your suggestion and accordingly made the mapping. But this time, on pressing the submit button, it goes into an infinite loop.

I'll explain the mapping:

Button1 - Named as Add Record and action given is submit.

Input form to Bridge - Event name is given as submit.

Bridge to Web Service - Event name is given as *submit.

I also tried your naming convention as follows:

Button1 - Named as Add Record and action given is in1.

Input form to Bridge - Event name is given as in1.

Bridge to Web Service - Event name is given as *in1.

When i check my log in the NW Admin, the following displayed:

-


Got the connection for system CreateSalesData.

CCInteraction.CCInteraction()

WSConnection.creatInteractionEX()

CCIConnection.CCIConnection(WSManagedConnection)

HandlersFactory.getHandler() valid Timestamp

HandlersFactory.getHandler() key: CreateSalesData::false was found in cache

HandlersFactory.getHandler()

WSManagedConnection.sameConnectionProperties4LogicalDestination() match: true

WSManagedConnection.sameConnectionProperties4LogicalDestination() after Flatten match: true

WSManagedConnection.sameConnectionProperties4LogicalDestination() after Logical DestinationName match: true

WSManagedConnection.sameConnectionPropertiesByConnectionGroup()

WSManagedConnection.sameConnectionProperties()

WSManagedConnectionFactory.matchManagedConnection(Set,Subject,ConnectionRequestInfo)

CCIConnectionFactory.getConnectionEx(): Connection properties: logicalDestinationName: CreateSalesData wsdl_caching:1 flatten: false

CCIConnectionFactory.getConnectionEx(): Client Connection Request

-


After the last message i.e. "Got the connection for system CreateSalesData", there's no msg in the log trace.

Can you please tell me whether my mapping was correct or wrong...??? Any idea as to why there's an infinite loop...??

Is it because of some mandatory fields missing or the mapping problem...???

Please guide me...

Regards

Deepak

Former Member
0 Kudos

Hi Deepak,

I'm not sure why you're running into an infinite loop. It might have nothing to do with what I am going to suggest below, but, hopefully, it might be related.

If I understood correctly, your data bridge is connected to the out port of your form. Try connecting the data bridge to the in port of a form or table. This form will be bound to the root node of the cluster - the fields should appear automatically. In order to put data in a child node of the cluster, drag another form or table from the out port of the first view. You will be able to bind this view to a child node by clicking on the node in the tree in the left side of the Define Data dialog. Your submit button will have still have an in1 event, and the mapping from the data bridge to the service will have *in1.

One last thing to check is if the mapping between the data bridge and service has the select mode "all data rows" chosen. You can see this in the configure panel of the mapping.

I hope this will help. I don't have any ideas for solving the problem if it is runtime-related.

Good luck,

Eyal

Answers (3)

Answers (3)

Lisi
Advisor
Advisor
0 Kudos

Hi Deepak,

It seems like you have a few problems here:

1. The service requires a date/time field - VC does not support this data type in this version. It won't help creating the required string using expressions since VC converts the date/time data type to date, so when you send the string you've created to the service it will be trimmed and only the date part will be taken (in the best case scenario).

2. It sounds like the model is incorrect, but it is very hard to understand what the problem is from your description. Can you export your model and attach it here? Even a screen shot would help.

3. Regarding the missing fields, are you sure that the fields are missing and not only the controls? You said that the fields are missing from the form. Are they also missing from the data bridge?

And one final question, are you using eSoa services or do you create your own services?

Regards,

Lisi

Former Member
0 Kudos

Hi Elizabeth,

I am working together with Deepak trying to solve the problems that were described above.

The one thing I can tell you is that we are using PIC compliant Enterprise Services. The field of type DateTime we are primarily talking about is the field "CreationDateTime" of the BusinessDocumentMessageHeader defined in the SAP GDT catalogue.

So it really surprises me that you tell us the data type is not supported in VC. Can you provide me with a link to any official documentation,SAPNote, etc. where this is stated? Do you have an idea of when the support for this data type is planned to be released (SP?) ...?

Thanks for a short reply

Alex

Former Member
0 Kudos

Hi All

The problem is solved now n am getting a response from the back-end....!!!

@Lisi - You are very right when u say that VC doesn't support the DateTime field together. When i drag from the input port of the service n create a form, i could see the CreationDateTime being displayed as Date only.

@Eyal - Thanks for the mapping suggestions that u gave especially abt the " *submit " event. Why i was getting infinite loop is still a mystery for me....

Thanks to Rachel and all others for giving me updates abt the CE version n it's releases.

To summarize the solution for this problem:

->Using the WS Navigator, try to find the fields that are mandatory. Pls dont use "Is Null" option in the Navigator.

->If you have DateTime field together, then supply only the Date to this field. (Probably, in future releases, this might change)

->Abt the missing fields, well the option of data bridge is best option. When u drag from the input port of the service n create a form, the clustered data sets are not visible.

->Follow the suggestions posted by everyone in this thread, they were very helpfull in solving the problem.

Awarded points to all the helpfull answers....

Regards

Deepak

0 Kudos

Hi Everybody,

concerning the testing of the service out of VC, I want to add my experience:

--> obviously in SP3 there is a limitation on the number of input field in the test-Wizard. I discovered, that I can only assign test values to the first 15 parameters. If there is a structure to be filled that has more than 15 parameters, it is not possible to assign those test values. The result is an JavaScript error if you try to assign test values...

Kind regards,

Michael

Former Member
0 Kudos

Hi,

This is a known problem and it is already solved as part of SP5.

Thanks,

- Lior

Former Member
0 Kudos

Hi Deepak,

Please follow this link for UDDI configuration.

http://help.sap.com/saphelp_nwce10/helpdata/en/45/c1ea61a1194432e10000000a155369/frameset.htm

Regards,

Niraj

ps: provide points if helpful

Former Member
0 Kudos

Hi Niraj

Thanks for the link. Quite helpfull for the configuration settings.