This is a Database error, so you'll have to dig in the database to learn what is not working. Depending on the type of database you are trying to perform the operation the solution might differ, but I would began with common database basics.
- The message Not enough rights for object "PUBLIC.SALES" suggest that you are connecting to the database with a user that might have privileges to query the table SALES but doesn't have privileges to TRUNCATE the table and/or INSERT into the table.
- So which user is the owner of SALES table?
- Which user you have defined in the Database connection in Pentaho to connect to the database
- Does the user of the DB connector in Pentaho have the proper privileges over the SALES table?
One thing that comes to my mind, usual behaviour in Databases (at least in Oracle, the DB I usually work with) suggest that PUBLIC.SALES is a synonym of a table granted to all users (PUBLIC in Oracle refers to all users in the database), usually that synonym comes with only the SELECT privilege (or the DB Administrator will have a fit, even granting a PUBLIC synonym might be a big no-no, depending on the type of data held in the table)