Parâmetros no iReport

Estou montando um sql dentro de um parâmetro tipo: $P{sql}. Só que dentro deste sql tenho passar outro parâmetro e não estou conseguindo rodar o relatório, o iReport compila mas na hora que mando rodar o relatório dá a seguinte mensagem :

Filling report… Error filling print… java.sql.SQLException: ERROR: parser: parse error at or near “$” at character 599

Meu parâmetro “sql” está assim:
new String(“Select Pessoa.id_pessoa, … FROM Pessoa, TipoPessoa, PessoaFisica PF, Entidade WHERE Entidade.id_entidade = $P{pentidade} AND TipoPessoa.id_tipopessoa = Pessoa.id_tipopessoa AND PF.id_pessoa = Pessoa.id_pessoa Order By Pessoa.nome”) . O problema está no outro parâmetro o $P{pentidade}.
Espero que vocês me ajudem a resolver este problema.
Franco Caldas

Nao sei se entendi bem pq sou novato no iReport mas se vc ja passa o SQL como parametro, passe tambem a indentidade ou seja ja mande o sql pronto pro ireport e nao faltando um pedaço.

new String("Select Pessoa.id_pessoa, ... FROM Pessoa, TipoPessoa, PessoaFisica PF, Entidade WHERE Entidade.id_entidade = \""+stIdentidade+"\" AND TipoPessoa.id_tipopessoa = Pessoa.id_tipopessoa AND PF.id_pessoa = Pessoa.id_pessoa Order By Pessoa.nome") 

espero ter ajudado !

Valeu WarlockWS, desta maneira ficou bem mais fácil.