Relatório TReport - Dúvidas

Gostaria de saber se é possível, definir as colunas no relatório TReport de acordo com o tipo de impressão... Por exemplo quando o usuário mandar imprimir o relatório Treport com o tipo de impressão excel apareça os campos a, b, c, d, e Quando o usuário selecionar outro tipo de impressão a não ser excel saia os campos a, b, c apenas. O relatorio precisaria estar no formato TReport Alguem sabe me informar se seria possivel esta condição dentro do TReport?

Bom dia Lucas,

Temos uma situação semelhante e tratamos ela dentro da função PrintReport(), verificando o atributo nDevice do objeto TReport. Segue exemplo:


Static Function PrintReport()
//.....
    If oReport:nDevice == 4 //Opções: 1-Arquivo,2-Impressora,3-email,4-Planilha e 5-Html
        oSection1:Cell("C2_NUM"):Disable()
    EndIf
//.....
Return

Porém, revisando a documentação agora, vi que a classe TRCell tem a função SetCanPrint( ). Acredito que com ela poderia ser resolvido isso na própria definição do reçatório, sem a necessidade de alterar a função PrintReport. Seria algo do tipo:


oSection1:Cell("C2_NUM"):SetCanPrint({|| !(oReport:nDevice == 4)})

Não cheguei a testar, mas deve funcionar também.