Cette page n’existe pas encore dans votre langue. Vous lisez le texte anglais.
Knowledge base
Element not found and the other lines a step can print
Where the line is written
The step log gives each step one row with its name, its state and one line of detail, which on a failed step is the reason.
Finished runs are kept on disk with their most recent rows.
A failed step does not end the run
The other profiles go on, and what this profile does next is the flow's rule, named in a line just above Run flow. A new flow stops the profile at the failed step. A flow from an earlier version of ARMANOS runs the next step anyway and reports at the end.
At the end the profile is marked failed with a count of its broken steps, and so is the whole run.
Done means the steps were done
The lines and what to change
One sentence can come from several kinds of step.
| The line | What it means | What to change |
|---|---|---|
| The browser window is closed. | The tab the run was driving is gone. Checked before every step. | Look for a step that closes a tab, or a window closed by hand. |
| The URL is empty. | After substitution nothing usable was left. | Check the variable feeding it. Only web addresses and the blank page go through. |
| Navigation failed. | The browser did not load the address. | Open it by hand in that profile, then check the proxy. |
| The element did not appear in time. | A wait step polled until its own timeout and never saw the selector. | Raise the timeout, or wait for something the page shows earlier. |
| Element not found. | Click, input, scroll and extract look once and find nothing. | Put a wait before it. A blank selector reads the same way. |
| The key could not be sent. | The browser turned down the focus or the key press. | Click into the field first, then press the key. |
| The selector is empty. | A condition or a for-each step had no selector after substitution. | Fill the selector, or check the variable in it. |
| The URL pattern is empty. | A tab switched by address, or a wait for a request, with nothing to match. | Put a fragment of the address in the match field. |
| The code is empty. | The body of the JavaScript step came out blank. | Fill the body. A variable that gave nothing empties it too. |
| No matching request arrived in time. | Listening starts with the step, and nothing matched before the timeout. | Put the step before the click that causes the request. |
| Cookie not found. | The name field was blank, or this site has nothing under that name. | Fill the name and be on the site that owns the cookie. |
| No page is open in this tab. | No domain on the step and no web page in the tab. Clearing always needs the tab on a site. | Go to the site first, or fill the domain on the step. |
| Too many screenshots in one run (limit 100). | One profile went past the ceiling for a single run. A screenshot inside a repeat counts every pass. | Move the screenshot out of the repeat, or split the flow. |
| Tab not found. | Switching by number pointed past the open tabs, switching by address matched no open tab, or the tab being closed was already gone. | Check the number against the tabs open by then, and the address fragment against what they hold. |
| The cookie could not be saved. | The browser turned down the write. The same line covers a refused removal. | Check the domain and path on the step against the real cookie. |
| This profile is shared with you to start only: the owner or someone with edit access can change it. | The account takes no changes to it from you. | Ask the owner for edit access. |
| A tag is longer than 40 characters. | Nothing was changed. | Shorten the tag or the variable in it. |
| The profile would have more than 20 tags. | Nothing was changed. | Remove tags first, or add fewer. |
| The note would be longer than 20,000 characters: choose Replace the note. | Add to the note keeps the earlier lines. Nothing was cut. | Switch the step to Replace the note. |
| The step has no line for the TXT file. | The Line field of Save to file is empty. | Fill it in. |
| The step has no columns. | A CSV, XLSX or JSON file needs at least one. | Add a column. |
| The data file was not written: check free disk space and access to the data folder. | The disk is full or the data folder is closed to writing. | Free space, then press Data folder. |
| No new tab was available, so the current tab was used. | Not a failure. The step reads as done and the address loaded in the tab already open. | Nothing, unless a later step picks a tab by number: that one is now different. |
When the line means something else
Three of these are often read wrongly and send you to the wrong field.
The URL is empty.
Also written for a variable name the flow does not know: nothing is left of it by the time the step runs. An address a flow may not open reads the same way, since a flow is a file people pass around.
Element not found.
Click, input, scroll and extract have no separate complaint about a blank selector, so it arrives here.
Cookie not found.
Reading a cookie is always tied to the site in the tab or the domain on the step, never the whole profile.
A bare word instead of a sentence
Past its own time limit the JavaScript step writes the bare word js_timeout rather than a sentence.
Collecting the evidence
Run the flow on one profile so the log stays short, then read the row above the broken one, which usually names the step that left the page wrong.
Write through Help → Write to support with the flow name and the time. The report travelling with it names the chosen engine and the app version.
What this article does not cover
- A run that never reached its first step. The launch has its own line and article.
- A flow refused before it starts: no steps, no profiles chosen, or a subscription needing attention.
- Errors written by the page itself. Those are not ours to translate.
- Building the flow and choosing the selectors. That is its own subject.
Where this is decided
Each claim above is a place in the code, with a stand where one exists.
- A broken step counts towards the result, so an all-broken run is never reported as done
- apps/desktop/test/run-result-honest.js
- A finished run is kept on disk and read back at startup
- apps/desktop/test/run-log-survives-restart.js
- A flow may only be sent to web addresses, and the check repeats as the step runs
- apps/desktop/test/rpa-reach.js
- Each line in the table is a dictionary entry with a translation per language
- apps/desktop/src/i18n/messages.js
- The condition behind each line, one per step kind
- apps/desktop/src/main/main.js
Questions
- Is there an error number to quote?
- No. Every line in the table is a sentence in the app's language, so quote it as you see it.
- Can one step hang the run forever?
- No. The waiting steps and the JavaScript step each carry their own time limit, and past it the step fails with its line.