cancel
Showing results for 
Search instead for 
Did you mean: 

CBTA script partly manual (hybrid) execution is it possible ?

Former Member
0 Kudos

Hi CBTA experts,

I have a problem with a CBTA script for Portal application - namely Time entry for employees. It runs ECC transactions at back end, but visibly executes every step in portal screen.

The recording went fine with no issues, but the script would not execute as some URIs cannot be resolved.

I tried different options with Object Spy and HTML code - nothing works so far.

But now I am hearing a proposal from business: what if you run the script to go thru the first steps that work, but then stop the script (breakpoint) and let us enter data manually, then continue the script to the end.

I know it is possible in DEBUG mode, but

1) not sure if i can make business people to run script in debug and know exactly where to put a breakpoint

2) execution report from DEBUG mode shows status DONE (as opposed to PASS or FAIL) - it tells you nothing about real status of test.

Are there any other options to compose a CBTA script so that it accepts manual activity from the user ?

Appreciate any response.

Thank you

Elena

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

(SOLVED) After upgrading CBTA 3.0 client to SP05, my original problem (URI could not be resolved) is now fixed, so while the script recording extracts a completely wrong URI, the newer Object Spy retrieves the correct URI, and I can now proceed with automatic recording of the Portal script and don't worry about stopping for a manual user entry. I like it even better !

Elena

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi Elena.

Have you tried to use CBTA component to wait? It could give you a time to manually modify data before script can go on. It has to be properly synchronized so I also recommend to use IF-ELSE component or LOOP.

Let me know how it goes for you.

Former Member
0 Kudos

Hi Jan, thank you for quick response.

I was thinking about WAIT too, but I don't think it will help because

1) I don't know how long it may take for user to enter data, nor user will know to start entering data into the screen fields, the script can wake up from WAIT suddenly in the middle of user entering data, which will be very confusing;

2) even if all goes fine and user enters everything and timing is good, the CBTA script will always finish with PASS, right ? because it will not know the results of user's entry.

How would you suggest to use IF-ELSE in this case ? I cannot check any user-entry fields because URI cannot be resolved. So what should I check with IF condition ?

Thank you

Elena

Former Member
0 Kudos

Hi Elena.

Is there any status log when user will enter data? or after he/she will enter data is there any other button or something you can check? This could be use of IF-ELSE, you can check if this element is available and if it does it means that user entered data and script can go on.

A was also thinking, have you tried to find URI with regular expressions? Try to look at this new document it might help you.

https://support.sap.com/content/dam/library/SAP%20Support%20Portal/support-programs-services/solutio...

Former Member
0 Kudos

Thank you Jan for the newer document, I was using one for SP03 before.

I have CBTA 3.0  SP04 client on my machine currently.I am waiting for the CBTA client SP05 upgrade on my computer to see if the URI could be resolved with that version.

So far the Object Spy returns same attributes that I see in the script populated automatically while recording - and it does not work, just freezes the window and eventually fails with message "Control not found".

I tried many different variations of search for the screen elements, my last attempt was one with fragments as described in your newest guide on page 155:

id=isolatedWorkArea; tag=IFRAME > label=Review; ls.type=B; ls.tag=A; ls.id=aaaaKEBH.VcCatRecordEntryView.ButtonNext

targeting the button on the screen that user will have to press to finish the timesheet entry, still nothing:

Error Message:

Operation Failed - Control not found: 'id=isolatedWorkArea; tag=IFRAME > label=Review; ls.type=B; ls.tag=A; ls.id=aaaaKEBH.VcCatRecordEntryView.ButtonNext'

Once I have SP05 installed I will try recording and object spy again.

Thank you

Elena

Former Member
0 Kudos

Hi Elena.

From my experience with dynamic user interface it is difficult to exactly determine perfect URI. sometimes the user interface has not been ready and you have to wait for all background processes to take place. after that you can see your element. If you try a syntax with parent tag > be careful how source code of application is written and do not miss any parent or child element on the way. you could also try using regular expression to find innerText or other parameter.

In SP5 I saw a helpful tools to determine proper URI and also some alternative approach to create and check URI.

let me know how it goes for you.