Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Get data from web page using JavaScript in BluePrism

Could someone tell me how can I, in Blue Prism, get data into Data Item from web page using action in Navigate stage Invoke JavaScript or Insert JavaSript fragment?

For example I'm using function:

function myFunction()
{var x=document.getelementById("demo").innerHTML;
return x;}

and I'd like to get this return value into Data item in Blue Prism for processing.

like image 408
Tomasz Sukiennik Avatar asked Dec 28 '25 19:12

Tomasz Sukiennik


1 Answers

Unfortunately there is no quick way of doing that, however there is a very easy workaround.

You need to create a "bridge" between JavaScript and Blue Prism, something both technologies can interact with. In this case the simplest bridge is an HTML textbox.

JavaScript can create and write to a temporary, invisible textbox on the page and Blue Prism can spy it and read from it.

I use the following script to add the textbox and/or clear its value...

if (document.getElementById("JSOutput") == null){
    // Add invisible textbox
    var body = document.getElementsByTagName("body")[0];
    var text = document.createElement("input");
    text.id = "JSOutput";
    text.style.display = "none";
    body.insertBefore(text, body.firstChild);
}
else  {
    // Clear invisible textbox
    document.getElementById("JSOutput").innerText = "";
}

... and then the following script to write something to it.

var output = document.getElementById("JSOutput");
output.innerText = "Hello World!"

You can then spy or manually add the element into application modeler:

enter image description here

like image 106
Marek Stejskal Avatar answered Dec 31 '25 07:12

Marek Stejskal