<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic inserting javascript throws error in Product Forum</title>
    <link>https://community.blueprism.com/t5/Product-Forum/inserting-javascript-throws-error/m-p/79332#M31236</link>
    <description>I have this javascript code that runs fine in the Developer Tools' Console in IE.&amp;nbsp; But when I try to insert that javascript into BP, it throws an error:

Failed to perform step 1 in Navigate Stage 'Embed' on page 'Check Message Area' - More than one element matched the query terms

Also, BP sometimes does insert this js code, but when I invoke it, it gives the same error at that time.

Any ideas?

Code:

//helper function

function&amp;nbsp; initBridge() {
&amp;nbsp; if (document.getElementById("JSOutput") == null){
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Add invisible textbox
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var body = document.getElementsByTagName("body")[0];
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var text = document.createElement("input");
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text.id = "JSOutput";
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text.style.display = "none";
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; body.insertBefore(text, body.firstChild);
&amp;nbsp; }
&amp;nbsp; else&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Clear invisible textbox
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; document.getElementById("JSOutput").value = "";
&amp;nbsp; }
}

// main function

function getErrors(args) {
&amp;nbsp;var i = 1;
&amp;nbsp;var j = 0;
&amp;nbsp;var errors = "";
&amp;nbsp;var frameId= "CRMApplicationFrame";
&amp;nbsp;//var topAreaId = "FRAME_TOPAREA";
&amp;nbsp;var subFrameId = "FRAME_APPLICATION";
&amp;nbsp;var formId = "myFormId";
&amp;nbsp;

// this section drills down into the webpage to extract the right elements from&amp;nbsp;nested iframes
&amp;nbsp;var mainFrame = document.getElementById(frameId);
&amp;nbsp;var div2 = mainFrame.contentWindow.document.getElementById("APP_FRAME_ANCHOR");

mainFrame = div2.querySelector("iframe");

mainFrame = mainFrame.contentWindow.document.getElementById(frameId);

var subFrame = mainFrame.contentWindow.document.getElementById(subFrameId);

var frameset = subFrame.contentWindow.document.frames['WorkAreaFrame1'];

var form = frameset.document.getElementById(formId);

&amp;nbsp;//main work loop

while(true) {
&amp;nbsp;&amp;nbsp;var divId= "CRMMessageLine" + i;
&amp;nbsp;&amp;nbsp;var div = form.querySelector("#" + divId);
&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;if (!div) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;break;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;var img = div.querySelector('.th-mes-line-img');
&amp;nbsp;&amp;nbsp;var alt = img.getAttribute("alt");
&amp;nbsp;&amp;nbsp;if (alt == 'Error') {
&amp;nbsp;&amp;nbsp;&amp;nbsp;if (j)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;errors += ", ";
&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;var data = div.querySelector('.th-mes-line[title]');
&amp;nbsp;&amp;nbsp;&amp;nbsp;if (data) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var title = data.getAttribute("title");
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;errors += title;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;j++;
&amp;nbsp;&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;i++;
&amp;nbsp;}

&amp;nbsp; initBridge();
&amp;nbsp;if (j) {
&amp;nbsp;&amp;nbsp;document.getElementById("JSOutput").value= errors;
&amp;nbsp;}
&amp;nbsp;else {
&amp;nbsp;&amp;nbsp;var output = document.getElementById("JSOutput");
&amp;nbsp;&amp;nbsp;output.value= "No errors found";
&amp;nbsp;}
}</description>
    <pubDate>Sat, 05 Jan 2019 00:34:00 GMT</pubDate>
    <dc:creator>ThomasTong</dc:creator>
    <dc:date>2019-01-05T00:34:00Z</dc:date>
    <item>
      <title>inserting javascript throws error</title>
      <link>https://community.blueprism.com/t5/Product-Forum/inserting-javascript-throws-error/m-p/79332#M31236</link>
      <description>I have this javascript code that runs fine in the Developer Tools' Console in IE.&amp;nbsp; But when I try to insert that javascript into BP, it throws an error:

Failed to perform step 1 in Navigate Stage 'Embed' on page 'Check Message Area' - More than one element matched the query terms

Also, BP sometimes does insert this js code, but when I invoke it, it gives the same error at that time.

Any ideas?

Code:

//helper function

function&amp;nbsp; initBridge() {
&amp;nbsp; if (document.getElementById("JSOutput") == null){
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Add invisible textbox
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var body = document.getElementsByTagName("body")[0];
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var text = document.createElement("input");
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text.id = "JSOutput";
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; text.style.display = "none";
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; body.insertBefore(text, body.firstChild);
&amp;nbsp; }
&amp;nbsp; else&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Clear invisible textbox
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; document.getElementById("JSOutput").value = "";
&amp;nbsp; }
}

// main function

function getErrors(args) {
&amp;nbsp;var i = 1;
&amp;nbsp;var j = 0;
&amp;nbsp;var errors = "";
&amp;nbsp;var frameId= "CRMApplicationFrame";
&amp;nbsp;//var topAreaId = "FRAME_TOPAREA";
&amp;nbsp;var subFrameId = "FRAME_APPLICATION";
&amp;nbsp;var formId = "myFormId";
&amp;nbsp;

// this section drills down into the webpage to extract the right elements from&amp;nbsp;nested iframes
&amp;nbsp;var mainFrame = document.getElementById(frameId);
&amp;nbsp;var div2 = mainFrame.contentWindow.document.getElementById("APP_FRAME_ANCHOR");

mainFrame = div2.querySelector("iframe");

mainFrame = mainFrame.contentWindow.document.getElementById(frameId);

var subFrame = mainFrame.contentWindow.document.getElementById(subFrameId);

var frameset = subFrame.contentWindow.document.frames['WorkAreaFrame1'];

var form = frameset.document.getElementById(formId);

&amp;nbsp;//main work loop

while(true) {
&amp;nbsp;&amp;nbsp;var divId= "CRMMessageLine" + i;
&amp;nbsp;&amp;nbsp;var div = form.querySelector("#" + divId);
&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;if (!div) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;break;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;var img = div.querySelector('.th-mes-line-img');
&amp;nbsp;&amp;nbsp;var alt = img.getAttribute("alt");
&amp;nbsp;&amp;nbsp;if (alt == 'Error') {
&amp;nbsp;&amp;nbsp;&amp;nbsp;if (j)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;errors += ", ";
&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;var data = div.querySelector('.th-mes-line[title]');
&amp;nbsp;&amp;nbsp;&amp;nbsp;if (data) {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var title = data.getAttribute("title");
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;errors += title;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;j++;
&amp;nbsp;&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;i++;
&amp;nbsp;}

&amp;nbsp; initBridge();
&amp;nbsp;if (j) {
&amp;nbsp;&amp;nbsp;document.getElementById("JSOutput").value= errors;
&amp;nbsp;}
&amp;nbsp;else {
&amp;nbsp;&amp;nbsp;var output = document.getElementById("JSOutput");
&amp;nbsp;&amp;nbsp;output.value= "No errors found";
&amp;nbsp;}
}</description>
      <pubDate>Sat, 05 Jan 2019 00:34:00 GMT</pubDate>
      <guid>https://community.blueprism.com/t5/Product-Forum/inserting-javascript-throws-error/m-p/79332#M31236</guid>
      <dc:creator>ThomasTong</dc:creator>
      <dc:date>2019-01-05T00:34:00Z</dc:date>
    </item>
  </channel>
</rss>

