`

Cognos API Connection

阅读更多

Cognos Connection, 通过 Cogons API 访问Cogons 已经安装好的平台,获取已经创建好的Report,修改此report,或者运行此report获取结果等。。。

分析Connection. 简单代码如下:

 

package test;

import java.net.URL;

import javax.xml.namespace.QName;

import org.apache.axis.client.Stub;
import org.apache.axis.message.SOAPHeaderElement;

import com.cognos.developer.schemas.bibus._3.BaseClass;
import com.cognos.developer.schemas.bibus._3.BiBusHeader;
import com.cognos.developer.schemas.bibus._3.ContentManagerService_PortType;
import com.cognos.developer.schemas.bibus._3.ContentManagerService_ServiceLocator;
import com.cognos.developer.schemas.bibus._3.PropEnum;
import com.cognos.developer.schemas.bibus._3.QueryOptions;
import com.cognos.developer.schemas.bibus._3.Report;
import com.cognos.developer.schemas.bibus._3.SearchPathMultipleObject;
import com.cognos.developer.schemas.bibus._3.Sort;
import com.cognos.developer.schemas.bibus._3.XmlEncodedXML;

public class CognosConnectionUtil
{
    private ContentManagerService_PortType cmService = null;

    public static void main(String[] a) throws Exception
    {
        //1. instantiate the class
        CognosConnectionUtil mainClass = new CognosConnectionUtil(); 

        // Step 2: Logon to Cognos
        mainClass.logonToCognos();

        // Step 3: Execute tasks
        mainClass.executeTasks();

        // Step 4: Logoff from Cognos
        mainClass.logoffFromCognos();
    }

    // Step 2: Logon to Cognos
    private void logonToCognos() throws Exception
    {

        String dispatcherURL = "http://xxxxxxxxxxxxxxxxxx/p2pd/servlet/dispatch";

        String nameSpaceID = "XXXXX";

        String userName = "XXXX";

        String password = "XXXXX";

        ContentManagerService_ServiceLocator cmServiceLocator = new ContentManagerService_ServiceLocator();

        URL url = new URL(dispatcherURL);
        cmService = cmServiceLocator.getcontentManagerService(url);

        StringBuffer credentialXML = new StringBuffer();

        credentialXML.append("<credential>");
        credentialXML.append("<namespace>").append(nameSpaceID).append("</namespace>");
        credentialXML.append("<username>").append(userName).append("</username>");
        credentialXML.append("<password>").append(password).append("</password>");
        credentialXML.append("</credential>");

        String encodedCredentials = credentialXML.toString();
        XmlEncodedXML xmlCredentials = new XmlEncodedXML();
        xmlCredentials.set_value(encodedCredentials);

        cmService.logon(xmlCredentials, null);
        SOAPHeaderElement temp = ((Stub) cmService).getResponseHeader("http://developer.cognos.com/schemas/bibus/3/", "biBusHeader");
        System.out.println(temp.toString());
        BiBusHeader CMbibus = (BiBusHeader) temp.getValueAsType(new QName("http://developer.cognos.com/schemas/bibus/3/", "biBusHeader"));
        ((Stub) cmService).setHeader("http://developer.cognos.com/schemas/bibus/3/", "biBusHeader", CMbibus);

    }

    // Step 3: Execute tasks
    private String executeTasks()
    {
        PropEnum props[] = Util.getAllPropEnum();
        BaseClass bc[] = null;
        String searchPath = "/content/folder[@name='Test']/report[@name='test']";

        try
        {
            SearchPathMultipleObject spMulti = new SearchPathMultipleObject(searchPath);
            bc = cmService.query(spMulti, props, new Sort[] {}, new QueryOptions());
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }

        System.out.println("PACKAGES:\n");
        if (bc != null)
        {
            for (int i = 0; i < bc.length; i++)
            {
                Report report = (Report) bc[i];
                System.out.println(report.getDefaultName());
            }
        }
        return searchPath;
    }

    // Step 4: Logoff from Cognos
    private void logoffFromCognos()
    {
        try
        {
            cmService.logoff();
        }
        catch (Exception ex)
        {
            ex.printStackTrace();
        }
    }
}



 

分享到:
评论

相关推荐

    cognos中文帮助文档

    Cognos Connection作为Cognos8的统一访问点,集成了所有主要的工作流和工具,包括Query Studio、Report Studio和Analysis Studio。用户可以通过一个界面访问和管理所有的分析项目,大大提升了工作效率。 3. **...

    cognos8整合的例子

    2. **引入Cognos API**:`tcognos`压缩包中的JAR文件包含了Cognos的API,它们是实现整合的核心。例如,`CognosConnection`接口和`ReportJob`类等,用于创建和管理报表任务。将这些JAR文件添加到项目的类路径中,确保...

    cognos 报表实现一键导出

    2. **与Cognos集成**:通过Cognos的API(如Cognos Connection API或Cognos Framework Manager API),Java服务可以与Cognos系统进行通信,获取报表数据或执行导出任务。 3. **处理导出**:在Java服务中,你可以使用...

    cognos8使用的SDK

    - **Cognos Connection API**:用于创建和管理与Cognos服务器的连接,获取目录信息,以及执行查询和报告。 - **Report Studio API**:允许开发者在应用程序中嵌入Cognos Report Studio的功能,使用户能够设计和...

    cognos sdk所需jar包

    1. **Cognos Connection**:Cognos SDK提供了一种方式来创建和管理Cognos连接,包括登录、身份验证以及与Cognos服务器的通信。 2. **Cognos API**:SDK包含一组丰富的API,如`ICognosConnection`、`IReportService`...

    cognos集成

    1. **API交互**:Cognos提供了API,如Cognos Connection SDK和Report Studio API,这些API使得JSP能够与Cognos服务器进行通信,包括登录、查询、获取报表和数据等操作。 2. **安全性和权限管理**:集成时需确保用户...

    Cognos SDK介绍与案例

    1. **Cognos Connection API**:允许开发者创建、管理和控制用户与Cognos环境的交互,例如登录、浏览目录、执行查询等。 2. **Report Studio API**:用于创建、编辑和运行Cognos Report Studio报告。开发者可以...

    cognos和jsp的参数传递

    Cognos提供了一个名为Cognos Connection的Web应用,用户可以通过它来访问和交互报告。当我们需要在JSP页面中嵌入Cognos报告时,通常会通过URL来传递报告的ID和其他相关参数,以便Cognos服务器能够正确地渲染报告。 ...

    Cognos 官方文档 中文.rar

    2. **Cognos Connection**:它是Cognos的用户界面,用户可以在此浏览、创建、编辑和发布报告。文档会涵盖如何设置用户权限、组织内容、使用查询向导创建SQL查询,以及使用图表和图形来展示数据。 3. **Cognos ...

    Cognos10安装和sample配置

    - **Cognos-Server 安装**:这是Cognos的基础组件,包含了服务器端的所有必要服务,如Cognos Connection、Cognos Administration等。安装时需按照安装向导的指引进行,包括设置安装路径、服务账户、数据库连接等。 ...

    Cognos_系统底层原理

    - **Cognos Connection**:用户界面,用于访问和交互报告、仪表板和其他BI内容。 - **Cognos Framework Manager**:元数据设计工具,用于构建数据模型,将企业数据转换为可分析的形式。 - **Cognos Report Studio...

    cognos10.2.2中文文档中的用户指南

    此外,通过 SDK 和 API,开发者可以扩展 Cognos 功能,定制符合企业需求的 BI 解决方案。 综上所述,Cognos 10.2.2 提供了一套全面的 BI 解决方案,涵盖了数据的获取、分析、呈现和决策支持,是现代企业进行数据...

    Cognos问题

    1. **Cognos安装与配置**:确保正确安装所有组件,如Cognos Connection、Cognos Framework Manager、Cognos Administration等,并配置数据库连接、Web服务器设置和安全策略。 2. **数据模型设计**:使用Cognos ...

    cognos高级应用培训

    此外,探讨如何通过Cognos Connection进行协作和分享,以及如何设置工作流和通知,提升团队效率。 **6. 性能优化与维护** 学习监控和优化Cognos系统的技巧,包括调整服务器设置、优化查询性能、缓存管理和日志分析...

    COGNOS 8.4 中文文档-使用入门

    Cognos 8.4 包含了多种组件,如Cognos Connection(用于访问和交互)、Query Studio(查询工具)、Report Studio(报告设计工具)、Analysis Studio(多维分析工具)等。这些组件协同工作,提供了一个完整的BI解决...

    Cognos资料下载

    学习Cognos首先要掌握其工作环境,包括Cognos Connection和Cognos Workspace。在Cognos Connection中,用户可以访问和管理所有BI资源,而在Cognos Workspace中则可以创建和编辑分析内容。了解数据模型、框架模型和包...

    COGNOS使用笔记

    同时,Cognos API允许开发人员进行自定义开发,扩展其功能以满足特定业务需求。 **9. 实践技巧与最佳实践** 在实际使用中,掌握一些技巧和最佳实践能提高效率。例如,合理规划数据模型可以优化查询性能;灵活运用...

    cognos中文文档(使用入门,新增功能,用户指南)

    2. **环境启动**:如何启动Cognos Connection,这是访问Cognos服务的主要入口。 3. **基本操作**:登录过程、界面导航、个人工作区的使用。 4. **创建报告**:介绍如何利用Cognos Report Studio创建简单的数据报告,...

    IBM Cognos Software Development Kit

    BI Bus API是IBM Cognos SDK中的一个核心组件,它为开发者提供了与IBM Cognos环境进行交互的能力。通过这个API,开发者可以执行诸如创建报告、更新数据源等操作。 ##### 5. **IBM Cognos BI Services** IBM Cognos...

Global site tag (gtag.js) - Google Analytics