Descrição:
Como posso escolher a orientação de impressão (Paisagem ou Retrato) de um Relatório de Seção no Elipse E3?
Solução:
Para escolher a orientação da impressão de seu relatório, acesse as configurações do relatório de seção no Studio, e então clique no botão Configurar relatório.

Esta ação abre uma janela. Nela, selectione a opção Printer Settings na aba lateral. Na opção Orientation, escolha entre Portrait (Retrato) ou Landscape (Paisagem).

Para alterar essa opção em tempo de execução, deve-se alterar a propriedade Orientation do objeto PageSettings do relatório. Para isso é necessário criar um script neste relatório que altere suas propriedades.
Exemplo:
- Crie um TagInterno (ex: Pagetype);
- No relatório acesse a janela Script Editor (botão com a folha branca e engrenagem azul).
Botão do editor de scripts. - Selecione o objeto ActiveReport Document e, dentro do evento ReportStart, insira o script que altera a seguinte propriedade, conforme a orientação desejada: “rpt.PageSettings.Orientation”.
- Editor de scripts do relatório.
- Sub ActiveReport_ReportStart
- dim Application = Activator.CreateInstance(Type.GetTypeFromProgID("Reports.E3ApplicationLink"))
- Application.LinkWithApplication(rpt)
- 'Orientação da impressão
- If Application.GetViewerValue("PageType") = 1 then
- rpt.PageSettings.Orientation = GrapeCity.ActiveReports.Document.Section.PageOrientation.Portrait
- Else
- rpt.PageSettings.Orientation = GrapeCity.ActiveReports.Document.Section.PageOrientation.Landscape
- End If
- End Sub
- Script do E3 para alterar o tag de orientação.
- Sub CommandButton1_Click()
- IF MsgBox("Imprimir em modo paisagem?", vbQuestion+vbYesNo, "Orientação da página") = vbYes THEN
- Application.Item("PageType").Value = 2
- ELSE
- Application.Item("PageType").Value = 1
- End IF
- Set Report = Application.LoadReport("RelatorioSecaoDetalhado")
- Report.Print()
- End Sub