Olá Pessoal,
Essa é minha primeira postagem no fórum do scriptcase, porém não é minha primeira participação aqui, pois já recorri muitas vezes a esse fórum para tirar duvidas e tentar resolver problemas que surgem com a utilização do scriptcase, então dessa forma me sinto obrigado a contribuir com o forum da melhor maneira possível.
Comecei a utilizar o scriptcase a mais ou menos dois anos atras e de lá pra cá já desenvolvi diversos sistemas para setores distintos, porem o maior e mais complexo que fiz até hoje foi um sistema para uma cooperativa de distribuição de energia elétrica nesse sistema tive que utilizar o PDF report para fazer a impressão das faturas de energia elétrica e ai que apareceu algumas limitações do PDF report como a opção de alterar dinamicamente a imagem de fundo do PDF, pois precisava ter faturas em preto e branco e faturas em colorido.
Vamos agora ver como fiz para superar esse limitação do PDF report:
Em primeiro lugar tentei alterar o campo imagem nas configurações do PDF colocando uma variavel, global mas não obtive sucesso, então fui verificar no codigo php o que o scriptcase estava fazendo com o texto inserindo no campo imagem e descobri que estava deixando entre aspas duplas invalidando a variavel global, como também a sintaxe é diferente, então coloquei a variavel global da seguinte forma no campo imagem:
" . $_SESSION[‘imagemfundo’] . "
Antes de fazer o procedimento acima rode a aplicação com cada uma das imagens que deseja utilizar no fundo do PDF, pois só dessa maneira que as imagens serão incluídas na biblioteca de imagens do projeto em modo de produção, outra coisa é guardar o nome completo do arquivo, pois irá precisar para passar essa informação na variavel global. Ex.: grp__NM__img__NM__fatura_frente_peb_a4.jpg
Agora para passar o nome da imagem na variavel global tem duas formas:
Através de aplicação externa e dessa forma você terá que acrescentar uma linha de codigo em onApplicationInit chamando a variavel global, pois o campo imagem não faz isso. Ex.: [imagemfundo];
Ou através do filtro do próprio PDF report criando um campo para escolha de cor e setando o nome da imagem na variavel global através de codigo no evento onValidate.
A aplicação em funcionamento pode ser visualizada pelo link abaixo:
http://200.98.129.86/exemplos/impressao_fatura_frente_A4_exemplo/