Metamask showing error

Some times meta mask is showing error mentioned in the images- and trasaction gets failed.

you have there an error message that says that transfer caller is not owner nor approved, in case of an execution error that is what you will see in metamask

what is solution for this error?

it depends on the contract, it looks like an approval was not called and the execution will fail when it checks if current address is allowed to make a transfer

What is solution for this error?

you will have to understand the contract function, what checks it makes on execution, in this case you may have to make a transaction with the owner address or after the current address is approved