Problem granting user privileges via roles in Oracle 12c
You did not mention it, but this is quite typical when using PL/SQL.

Privileges granted through roles are disabled for named PL/SQL blocks that are defined to execute with definer's rights.

How Roles Work in PL/SQL Blocks


  All roles are disabled in any named PL/SQL block (stored procedure,
  function, or trigger) that executes with definer's rights. Roles are
  not used for privilege checking and you cannot set roles within a
  definer's rights procedure.


More details you can find in the documentation referenced above.

Possible workarounds involve granting the privileges directly (as you already did) or define the PL/SQL program unit to execute with invoker's rights.

Another possibility starting with 12c, you can grant roles to PL/SQL program units. So if you create tables with the procedure called p1 using dynamic SQL, you can grant the above role to it as:

grant wertyq_usr_role to procedure p1;


Choose the one that suits your needs.