In my company’s web SAP app, there is a button which is faded/not clickable until it finishes loading, then it becomes clickable. However, the UiPath simply “clicks” on the button since the element is present, regardless of whether it is actually clickable.
How can I make the robot wait until an element is clickable, then perform the click? I want to avoid using the Timeout function.
Hi vvaidya
The WaitForReady doesn not work Even if I have specified WaitForReady Complete, the robot still clicks the SAP button before it is clickable.
Hi Aksh
The attribute method sort of works, but intermittently.
So it turns out when the button is not clickable, its parentclass attribute has a value of “urSTC urST3TD”; when it is clickable, the attribute has a value of “urSTC urST3TD urCursorClickable”.
What I have done, and I know it is correct since it works intermittently, is:
Drag/drop a Do/While loop
Inside of the loop, put a Get Attribute activity for the parentclass attribute. Save the output as buttonAttributte
In the condition, set buttonAttribute = “urSTC urST3TD”
Basically what it does, is continuously getting the button’s attribute while the button is still not clickable, i.e. leave the loop when the button is clickable
It has worked intermittently. However, sometimes I would get an error for the Get Attribute activity: “Error HRESULT E_FAIL has been returned from a call to a COM component.”; exception type: ElementOperationException