[RESOLVIDO] Esconder coluna na exportação para PDF

Boa tarde!

Tenho uma aplicação de consulta que possui um campo Texto e eu gostaria que ele não aparecesse na exportação em PDF. Tem alguma forma de fazer isto? Pensei em fazer no evento onLoad, mas não sei detectar se o evento está sendo executado na exportação do PDF ou na aplicação comum.

Obrigado!

Anderson, boa tarde!!

Eu acredito que pra você fazer isso, precise montar o pdf a mão mesmo.

É mais fácil montar na mão mesmo.
Na consulta, para tu executar codificacão javascript é necessário utilizar no evento OnFooter ( modificar para “sim” o item “exibir rodapé” em “cabeçalho e rodapé”.
E a macro para exibir/ocultar o campo, funciona apenas no evento OnScriptInit.

Dai tu teria que fazer um código para quando clicar no botão “PDF” esconder toda a coluna. ( Jquery ou JS ) como o abaixo:

?>

<?php

[font=verdana, arial, helvetica, sans-serif]Olá pessoal! Muito obrigado pela disposição em ajudar![/font]

[font=verdana, arial, helvetica, sans-serif]Vasculhando o código gerado pelo ScriptCase (uso a vesão 7), achei uma forma de detectar se está sendo gerado o PDF (também funciona com XLS; em outros formatos eu não testei, mas deve funcionar também…).[/font]

[font=verdana, arial, helvetica, sans-serif]Eu fiz assim (no evento onRecord):[/font]

[code]
// quando está sendo feito exportação (ao menos para PDF e XLS), esta variável na sessão contém o formato que está sendo exportado
$appOption = $_SESSION[“sc_session”][$this->Ini->sc_page][$this->Ini->nm_cod_apl][“opcao”];
$isExporting = in_array($appOption, Array(“pdf”, “xls”));

// aí quando é exportação eu altero o campo (se ocultar com sc_field_display, o
// cabeçalho do campo continua visível; então eu apenas deixei o campo vazio)
if($isExporting){
{campo} = “”;
}
[/code][font=verdana, arial, helvetica, sans-serif]

Para o meu caso deu certo, pois eu transformava o campo em uma imagem e não queria que essa imagem aparecesse no PDF nem no XLS, e fazer as exportações na mão daria muito trabalho rs

Abraço![/font]

Show, Anderson. Obrigado por compartilhar!!