private void createExtraViewControls() {
        if (logViewer != null) {
            logViewer.dispose();
            logViewer = null;
        }
        if (variablesViewer != null) {
            variablesViewer.dispose();
            variablesViewer = null;
        }
        if (outputViewer != null) {
            outputViewer.dispose();
            outputViewer = null;
        }
        if (sqlExtraPanelFolder != null) {
            for (CTabItem ti : sqlExtraPanelFolder.getItems()) {
                ti.dispose();
            }
        }

        //planView = new ExplainPlanViewer(this, resultTabs);
        CTabFolder folder = getFolderForExtraPanels();

        logViewer = new SQLLogPanel(folder, this);
        variablesViewer = new SQLVariablesPanel(folder, this);
        outputViewer = new SQLEditorOutputViewer(getSite(), folder, SWT.LEFT);
        outputViewer.setExecutionContext(executionContext);

        if (getFolderForExtraPanels() != sqlExtraPanelFolder) {
            sqlExtraPanelSash.setMaximizedControl(sqlExtraPanelSash.getChildren()[0]);
        }
    }
Changes mode of showing result for script execution - multiple results per tab or one tab per result.
plugins/org.jkiss.dbeaver.ui.editors.sql/src/org/jkiss/dbeaver/ui/editors/sql/SQLEditor.java