资源描述
Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,*,本幻灯片资料仅供参考,不能作为科学依据,如有不当之处,请参考专业资料。,Cognos,高级知识库,第1页,议程,系统架构,安装与配置,系统管理,安全性管理,高级报表设计,第2页,Cognos 8,BI,产品,Cognos 8BI,产品,对以往技术和思想进行了较大幅度提升和创新,把用户操作方式全方面推向以浏览器为前端,Web,方式。它在一个产品中、一个架构上提供了极其丰富业务智能功效。,Cognos 8,模块主要包含:,Query Studio,查询,:自助报表生成工具,Report Studio,查询,:专有报表构筑工具,Analysis Studio,分析,:多维数据展示工具,Transformer,分析,:多维数据设计工具,Framework Manager,查询,:业务数据组织工具,第3页,几个模块在,Cognos,体系中位置,应用,(Consumer),专业,(Profession),查询,Query Studio,Report Studio,Framework Manager,分析,Analysis Studio,Transformer,第4页,Cognos,数据仓库处理方案中使用产品,功效,产品,门户,Cognos,门户,也可使用其它门户,Cognos Report Studio&Query Studio,Cognos Analysis Studio,OLAP,服务器,Cognos Transformation Server,ETL,工具,Cognos Data Manager,元数据模型,Cognos FrameWork Manager,数据存放,IBM DB2,Oracle,Sysbase,等各种数据库,数据仓库产品,报表与查询,OLAP,分析,前端展现,第5页,Cognos8,应用结构,Cognos 8,是,Cognos,基于,Web,业务智能处理方案,.,Cognos Connection,Query Studio,Report Studio,Analysis Studio,Framework Manager,业务数据库,文本文件,Dbase,文件、,Access,数据源,元数据建模工具,面向报表创建和管理,Web,界面,Cube,第6页,展现层,:,纯浏览器没有插件,WEB,层,应用层,数据层,BI,内容管理,BI,门户服务,COGNOS BI BUS:SOAP,XML,网关,开发接口,Cognos,门户,:,单点访问,报表,服务 和安全性管理,客户应用,脱机,OLAP,-,采取,Portlet,技术,-,报表用户,-,分析用户,(OLAP,和,ROLAP),-,业务报表制作,(Ad Hoc Query),-,专业报表制作,企业门户,客户系统,内部网,外部网网页,.,OLAP Windows,客户端,OLAP Excel,客户端,内容存放,审计,RELATIONAL,:,Relational(including Aggregate aware RDBMS)-Oracle,IBM DB2,Microsoft SQL Server,Teradata,ODBC,MULTIDIMENSIONAL,Cognos OLAP,IBM DB2 OLAP,SAP BW,Microsoft SSAS,Essbase,Oracle 10G,LEGACY*,Mainframe,MODERN,XML,统一元数据,为应用提供统一,一致视图,元数据模型,认证,大量报表,OLAP,报表,:,管理报表,生产报表,报表服务,:,调度,暴发,高效率分析,分析,:,OLAP,和,ROLAP,分析 和 报表,OLAP Server:,OLAP,连接,安全,管理,HETEROGENEOUS DATA SOURCES,事件管理,报警和探测,定义,检验,调度,形成闭合环,Metrics,管理,基于,OLAP,等各种数据源、,平衡记分卡,KPI,趋势,因果关系,ETL,直接访问,企业信息整合,即席查询,自助即席查询,Apache,、,IBM HTTP Server,、,IIS,等,Websphere,、,Weblogic,、,JBoss,、,tomcat,等,统一服务,第7页,第,1,层,Web Server:,网关,全部,Web,通信都经过,Cognos 8,网关,网关能够安装在一个或多个,Web server,上,.,Web server,操作系统:,Windows NT/XP,HP-UX 11,11i,AIX 4.4.3,5L,Solaris 8,9,Web Server,软件:,Microsoft IIS,Apache 1.3,2,iPlanet/Netscape,Web,网关:,CGI,用于所支持,Web servers,,性能最慢,ISAPI,用于,IIS,。为,IIS,提供更加好性能,apache_mod,支持,Apache Web server,servlet,所用,Web server,基础结构必须支持,servlet,网关,能够将,Web Server,请求转换为适应,SOAP,协议请求:,将请求放在,BI Bus,上,处理来自,BI Bus,响应,第8页,Report server,用于执行来自报表应用程序查询定义,(query specification),第,2,层,服务层,第三层,第一层,BI Bus,Report server,:,接收和执行来自报表应用程序查询定义,(XML,格式,),返回,Cognos Connection,用户界面。,操作报表服务和展现服务,应用程序是多线程,能够使用多进程服务器,处理并发请求。,应用层包含以下组件:,开启服务,(bootstrap service),:,开启、监视和停顿调度器。,调度器,(Dispatcher),:,Java servlet,。开启全部,ReportNet,服务并对请求进行发送。,展现服务,(presentation service),报表服务和批报表服务:,提供元数据访问、数据访问,(,查询,),、提醒和报表执行。,作业和调度监视服务:,管理批报表服务器执行调度作业和报表。,日志服务器:,管理调度器和其它服务生成日志。,第9页,第,3,层,数据,:Content Manager,在每个,Cognos 8,运行环境中,只有一个,Content Manager,和一个,Content Store,。,BI Bus,Content Manager,Content Manager,安装组件:,开启服务,调度器,展现服务,作业和调度监视服务,日志服务器,认证授权,Content Manager Service,:在,content store,中存放全部,cognos 8,信息。,第10页,Cognos 8,在一个,servlet,容器(,Container),中运行两个,servlet,。,Cognos 8,servlet,容器是,Tomcat.,Tomcat,Dispatcher,(servlet),Content Manager,(servlet),Report service,(C+),Batch report,Service,(C+),Presentation service,Content manager service,Log service,Job and schedule monitoring service,Servlet,容器,了解,Cognos 8,Servlets,第11页,Tomcat,是,:,一个,J2EE(Java 2 Enterprise Edition)servlet,容器,Cognos 8,缺省安装,由开启服务开启、停顿和监控,也能够用以下服务器配置,cognos 8:,Bea WebLogic,IBM Websphere,用,Tomcat,或一个第三方应用服务器,第12页,dispatcher,browser,Web server,report service,content manager,Content,store,Presentation service,1,2,6,5,7,3,4,4,8,8,9,9,9,query,database,Web server,从用户浏览器中取得请求,Web server,上网关对,http,请求进行处理,将其转换为,SOAP,协议兼容请求,并把它传递给调度器,调度器接收要运行报表,SOAP,请求,并传送请求到展现服务同时调用,报表阅读器功效,报表阅读器发送执行报表请求到负责均载平衡调度器。调度器发送请求到当地报表服务,报表服务接收到,调度器请求,然后,和,Content Manager,通信,索要决定报表内容和布局报表定义(,report specification,),Content Manager,和,Content store,通信,检索报表定义,然后将报表定义传送回报表服务,报表服务依据报表定义查询数据库执行报表,检索数据并格式化输出成被请求格调,报表服务生成,html,页面,并经过含有,HTML,面页调度器发送一个反馈信息到展现服务,展现服务添加察看界面,(,带有菜单、按钮等,),,并发送完整,HTML,页面到调度器,再经过网关返回到用户浏览器上,实例,:,报表请求处理过程,第13页,OLAP,服务器,Cognos Transformer Server,Cognos Transformation server,按业务逻辑,将二维数据转换为,Cube,。,Cube,为多维数据实体,按主题生成,提供用户对大数据量汇总信息高校访问。,Cube,含有安全性,不一样用户访问看到不一样内容。,Cognos OLAP Server,数据源,Cube,用户访问,NT UNIX,第14页,议程,系统架构,安装与配置,系统管理,安全性管理,高级报表设计,第15页,了解安装选项,gateway,、,cognos 8 server,和,Content Manager,装在什么地方,?,能够,:,在一台机器上安装全部服务器组件,依据环境在选项有效范围内分布安装,Framework Manager,与任意服务器组件安装在一起,或同服务器组件分开安装,content store,与其它,cognos 8,组件分开安装,第16页,平衡请求负载,用,cognos 8,组件各种组合平衡请求负载。,在调度器一级,在分布式安装中负载均衡自动完成。,第17页,添加路由器平衡请求负载,用跨接多个组件路由器分配请求。,第18页,ReportNet,安装在一台机器上,在一台机器上安装,cognos 8,全部组件,:,用于概念证实,用于测试或开发环境,Report Server,Content Manager,Web browser,Web server,gateway,Computer A,第19页,网关单独安装在一台机器上,为了提升性能,将,cognos 8,网关与其它,cognos 8,组件分开安装在一台或多台机器上。,Report Server,Content Manager,Computer C,Web server,gateway,Web server,gateway,Web browser,Computer A,Computer B,第20页,报表服务器和,Content Manager,分开安装,为了提升性能、有效性和容量,将,ReportNet,服务器组件安装在多台机器上。,Report Server,Content,Manager,Report Server,Computer D,Web browser,Web server,gateway,Computer A,Computer B,Computer C,第21页,修改缺省设置,假如报表环境需要修改缺省设置,能够:,修改,port number,用一个不一样网关界面,实施安全性(,security,)、源控制系统(,source control system,)或通知服务(,notification services,),用一个备用审计文件,用不一样密码提供者(,cryptographic provider,),配置指向名字空间网关,允许或取消设置指定处理服务,控制,ReportNet,服务可用资源,第22页,配置一个分布安装,为了确保分布安装中组件之间通信,必须如此配置:,Content Manager,要知道,content store,位置,报表服务器计算机要知道,Content Manager,位置,网关计算机要知道一个调度位置,在全部计算机上密码属性都相同,首先,必须在,Content Manager,计算机上配置和开启服务。,第23页,ISAPI:,在,Cognos Configuration,中,将网关地址中,cognos.cgi,用,cognosisapi.dll,代替,2.,保留配置信息,重新开启服务,.,3.,用,crn/isapi,访问,cognos 8,配置,ISAPI,和,Servlet,Servlet:,1.,将,cognosc8webcontent,目录下全部文件拷贝到,cognosc8webappsp2pd,目录下,.,2.,使用以下地址访问,cognos 8 :9300/p2pd/servlet/dispatch,第24页,议程,系统架构,安装与配置,系统管理,安全性管理,高级报表设计,第25页,隐藏,Connection,中对象,URL,参数说明,分发报表,修改全局格调变量,第26页,隐藏,Connection,中对象,Cognos Connection,中每个对象能够隐藏。详细方法是打开,c8templatespsportalsystem.xml,文件,加入,以下例是在,Cognos Viewer,中隐藏掉部分对象。详细参考文档,ADMINISTRATION AND SECURITY GUIDE,第,327,页,能够指定某组或角色不隐藏,第27页,URL,中参数说明,第28页,URL,中参数说明,第29页,在,Cognos Viewer,中运行报表,ui.tool,设置为“,CognosViewer”.,ui.action,设置为“,run”,或“,view”.,当查看一个静态报表时,报表搜索路径应该写在“,defaultOutput()”,中,.,报表输出格式包含,:,CSV,HTML,HTMLFragment,MHT,PDF,singleXLS,XHTML,XLS,XLWA,and XML.,传递参数用“,p_”,作为参数名称开头,如参数,product name,,则传参数使“,p_Product name”.,不显示提醒页,在,URL,结束处使用“,&run.prompt=false”,第30页,在,Cognos Viewer,中运行报表,Viewing Saved Reports,server-name/Cognos8/cgi-bin/cognos.cgi?b_action=xts.run&m=portal/launch.xts&ui.tool=CognosViewer&,ui.action=view,&,ui.object=,defaultOutput,(/content/packagename=GO Sales and Retailers/foldername=Report Studio Report Samples/reportname=Banded Report),Executing Live Reports,server-name/Cognos8/cgi-bin/cognos.cgi?b_action=xts.run&m=portal/launch.xts&ui.tool=CognosViewer&,ui.action=run,&ui.object,=/,content/packagename=GO Sales and Retailers/foldername=Report Studio Report Samples/reportname=Banded Report,Viewing Reports in Different Output Modes,server-name/Cognos8/cgi-bin/cognos.cgi?b_action=xts.run&m=portal/launch.xts&ui.tool=CognosViewer,&ui.object=/content/packagename=GO Sales and Retailers/foldername=Report Studio Report Samples/reportname=Banded Report,&ui.action=run&,run.outputFormat=PDF,Passing Prompt Answers,server-name/Cognos8/cgi-bin/cognos.cgi?b_action=xts.run&m=portal/launch.xts&ui.tool=CognosViewer,&ui.object=/content/packagename=GO Sales and Retailers/foldername=New Reports/reportname=product revenue-prompt,&ui.action=run,&p_Product name=Bear Edge&run.prompt=false,Passing Multiple Prompt Answers,server-name/Cognos8/cgi-bin/cognos.cgi?b_action=xts.run&m=portal/launch.xts&ui.tool=CognosViewer,&ui.object=/content/packagename=GO Sales and Retailers/foldername=New Reports/reportname=product revenue-prompt,&ui.action=run,&p_Product name=Bear Edge&p_Product name=Aloe Relief&run.prompt=false,第31页,Query Studio,ui.tool,设置为“,QueryStudio”.,ui.action,设置为“,new”,或者“,edit”.,只有在,Query Studio,中创建报表才能够用,Query Studio,查看,.,第32页,Query Studio,打开,Query Studio,server-name/Cognos8/cgi-bin/cognos.cgi?b_action=xts.run&m=portal/launch.xts&ui.tool=QueryStudio&ui.object=/content&ui.action=new,用,Query Studio,打开一个元数据包,server-name/Cognos8/cgi-bin/cognos.cgi?b_action=xts.run&m=portal/launch.xts&ui.tool=QueryStudio,&ui.object=/content/packagename=GO Sales and Retailers&ui.action=new,用,Query Studio,打开一张报表,server-name/Cognos8/cgi-bin/cognos.cgi?b_action=xts.run&m=portal/launch.xts&ui.tool=QueryStudio,&ui.object=/content/packagename=GO Sales and Retailers/foldername=New Reports/queryname=A Report by Product Type,&ui.action=edit,第33页,Analysis Studio,ui.tool,设置为“,AnalysisStudio”.,ui.action,设置为“,new”,或者“,edit”.,用,Analysis Studio,制作报表能够打开来运行,.,默认情况下,,Analysis Studio,在自己窗口打开,参考参数,launch.launchJSStudioInFrame=true,设置,第34页,Analysis Studio,Opening Analysis Studio,server-name/Cognos8/cgi-bin/cognos.cgi?b_action=xts.run&m=portal/launch.xts,&,ui.gateway=/Cognos8/cgi-bin/cognos.cgi,&,ui.tool=AnalysisStudio,&ui.object=/content&,ui.action=new,Opening Analysis Studio in the same browser window or frame,server-name/Cognos8/cgi-bin/cognos.cgi?b_action=xts.run&m=portal/launch.xts,&ui.gateway=/Cognos8/cgi-bin/cognos.cgi&ui.tool=AnalysisStudio&ui.object=/content&ui.action=new,&,launch.openJSStudioInFrame=true,Opening Analysis Studio to a specific package,server-name/Cognos8/cgi-bin/cognos.cgi?b_action=xts.run&m=portal/launch.xts,&ui.gateway=/Cognos8/cgi-bin/cognos.cgi&ui.tool=AnalysisStudio,&ui.object=/content/packagename=Great Outdoors Company&,ui.action=new,Viewing an Analysis Report in Analysis Studio,firstbi/Cognos8/cgi-bin/cognos.cgi?b_action=xts.run&m=portal/launch.xts&,&ui.gateway=firstbi/Cognos8/cgi-bin/cognos.cgi&ui.gateway=firstbi/Cognos8/cgi-bin/cognos.cgi,&ui.tool=AnalysisStudio&ui.tool=AnalysisStudio&ui.object=/content/foldername=demo/foldername=Analysis/analysisname=insurance,&ui.action=edit,第35页,对报表进行个性群发,使用个性群发功效一次性运行报表并对结果进行划分,分发给多个接收者。,每个接收者只能查看数据一个子集。,Burst report,能够经过邮件分布和/或保留到一个目录。,Group A,Group B,Group C,Canada,Revenue by Region,Germany,Revenue by Region,Japan,Revenue by Region,第36页,将报表分发到当地,在,Configuration,中,将,Save report outputs to a file system,设置为,True,设置环境变量,CM.OUTPUTLOCATION,存放报表当地路径,CM.OUTPUTSCRIPT,运行脚本文件,包含路径和文件名称,定义报表,分组需要分发字段,设置分发,KEY,值,定义调度器,并指定,BURST,报表,注意:报表分发到当地之后,因为文件名称都是系统自动产生,需要一个外部程序处理文件名称,以使其更有意义,详细方法是经过读取,XML,描述文件,取到,KEY,值,再修改文件名称,拷贝到其它位置。,第37页,修改全局格式变量,打开,D:Cognosc8webcontentschemasGlobalReportStyles.css,文件,修改对应,Class,值,.,报表中每个对象,Class,值,能够经过在,ReportStudio,中选中对象,第38页,议程,系统架构,安装与配置,系统管理,安全性管理,高级报表设计,第39页,安全性,Authentication,用户安全性认证,在,8,中设置安全性认证后,登陆系统会要求提供用户名和密码等相关认证信息。,安全性认证支持:,Acitve Directory,、,Cognos Series 7,、,LDAP,、,NTLM,、,SAP,、,Custom Java Provider,等各种认证方式。,Authorization,对用户访问数据进行权限控制。,8,中授权是经过用户,(User),、组,(Group),、角色(,Role,)来设置,Content Store,中对象如报表、文件夹读、写权限。,第40页,组,(Group),和角色,(Role),一个用户能够属于多个组或角色,权限是并集关系,组和角色表示是一类含有相同权限功效用户集合,组和角色在,Cognos 8,中含有相同功效,角色组员能够是用户、组、和角色,而组组员则是用户和组,只能在,Cognos 8,内置,namespace,(,Cognos,)上创建组和角色,假如要跨多个,namespace,,则需要使用组或角色,在实际应用中,能够方便布署安全性,你能够把第三方安全性认证用户归属于一些组,再将定义好组赋予,Cognos,内置组或角色,实现权限控制,第41页,权限说明,Read,查看对象属性,查看静态报表等,Write,编辑对象属性,报表静态报表,删除文件夹等,Execute,运行报表等,Set Policy,读取和修改对象权限,Traverse,浏览目录内容,第42页,内置权限对象,Anonymous,匿名用户,当在,Cognos Configuration,中将匿名登陆设置为,false,时,此用户失效。,All Authenticated Users,表示全部经过认证用户组,它组员由系统自动维护,不能查看和修改。,Everyone,表示全部经过认证用户和匿名用户组,它组员由系统自动维护,不能查看和修改。能够使用它快速设置默认权限。,System Administrators,一个特殊角色,这个角色下组员普通是管理员或超级用户,它们能够访问和编辑系统中全部对象,并能够对它们进行授权。仅仅是,System Administrators,角色下组员才能够编辑这个角色下组员。,System Administrators,不能够为空。默认情况下,组员为,Everyone,。在对系统设置权限前,一定要先把,Everyone,替换为管理员或超级用户。,第43页,系统预先定义角色,Consumers,能够读和执行系统中公共部分内容,如报表,Query Users,与,Consumers,权限一样,同时能够使用,Query Studio,Analysis Users,与,Consumers,权限一样,同时能够使用,Analsysis Studio,Authors,含有同,Query Users,一样权限,同时能够使用,Report Studio,Report Administrators,含有管理公共文件夹内容权限,并能够完全访问,同时能够使用,Query Studio,和,Report Studio,Server Administrators,能够管理,Server,、,Dispatchers,和,Jobs,Directory Administrators,能够管理,Directory,下内容,第44页,系统预先定义角色,Metrics Administrators,能够在,connection,中管理,Metric,包及任务,Metrics Authors,能够在,Metirc Studio,中创建和编辑,Scorecard,应用,Metrics Users,在,Mertric Studio,中能够查看,Scorecard,应用,Portal Administrators,能够管理,Portlets,,包含导入和自定义,Portlets,,定义,Portelt,格调,设置,portlet,访问权限等。,Controller Users,访问,Controller,基本功效,Controller Administrators,完全访问,Controller,,并能够创建私人,Controller,用户,并定义它们访问权限,第45页,议程,系统架构,安装与配置,系统管理,安全性管理,高级报表设计,第46页,Cognos 8,高级报表设计,1,、,JavaScript,报表应用,2,、条件变量、生成变量应用,3,、,OLAP,函数介绍,第47页,1,、,Javascript,报表应用,TIPS,应用,利用,HTML,脚本,bbbb,,将表示式拼出这么形式,Tab,键,利用,HTML,DIV,功效,计划完成情况,依据实际值与计划值,利用,JS,函数画出图形,报表动态排序,因为,Cognos 8,报表支持完整,HTML,报表开发技术,所以很多,HTML,功效能够很好与,COGNOS,报表功效结合在一起,从而满足用户更为复杂报表要求。,固定表头,第48页,Tips,提醒,第49页,Tab,键,第50页,JS,函数画图,第51页,Dynamic Sort,第52页,固定表头,第53页,2,、,OLAP,报表钻取,Replace Expression,Drill down:children(input item),input item,是鼠标不一样钻取值,以下列图点击,United States,,则,children(United States),结果如右图所表示,Drill up:,children(parent(input member),第54页,2,、,OLAP,报表钻取,Replace Item,Drill down:(input item),input item,是鼠标不一样钻取值,以下列图点击,United States,,则结果如右图所表示,Drill up:,parent(input member),第55页,2,、,OLAP,报表钻取,Preserve,普通在钻取过程中表示式不发生改变,如,TopTwo,计算列以下:,topCount(Country,2,Revenue),第56页,2,、,OLAP,报表钻取,Member Sets,与高级钻取设置引用,Member Sets,是自定义集合,使用高级钻取功效设置,必须使用,Member Sets,第57页,要求:,1,、表,1,中产品大类能够选择,2,、从表,1,钻取到表,2,,并将所选择产品大类传递给表,2,3,、表,2,中图是所选择产品大类及其之和所组成柱壮图,表格是所选择产品大类下全部产品销售量在前,5,名产品,4,、从表,2,中点击某个产品大类,则下面表格变成此产品大类下销售量在前,5,名产品,点击,Total,时,则是表,1,中所选择几个产品大类销售量在前,5,名产品,技术点:,1,、表,1,和表,2,中穿透钻取设置为传递参数值,2,、表,2,中使用,union,函数将,Total,和所选择产品大类组合在一起,3,、使用,descendants,函数取到产品大类下全部产品,使用,topcount,取出前,5,名产品,4,、表,2,图中,Total,和产品大类在钻取到下面表格时规则不一样,使用生成变量来对应不一样数据表格,5,、表,2,中穿透钻取设置为替换本页面,2,、,OLAP,报表钻取,-,穿透钻取应用,第58页,3,、条件变量与生成变量,条件变量,条件变量是用来对数据进行预警,但在实际应用中,门限值用户往往要求自己设置,这么能够经过,string2double(ParamValue(p1),来动态取得门限值参数,从而到达对数据动态预警效果。,预警方式能够经过颜色、图片等各种方式。,第59页,3,、条件变量与生成变量,生成变量,生成变量是定义报表中某个对象在什么条件下生成。利用生成变量,能够实现如动态选择报表列、动态切换图表等各种功效。,第60页,4,、,OLAP,函数,Block Functions,Family,、,Hieracrhy,、,Member Functions,Relative time functions,Set functions,Top and bottom functions,Value functions,第61页,(1),、,Block Functions,_firstFromSet,_firstFromSet(set_exp,numeric_exp_max,numeric_exp_overflow),假如,numeric_exp_max+numeric_exp_overflow set_exp,个数,则返回,numeric_exp_max+numeric_exp_overflow,个,member,,不然返回,numeric_exp_max,个,member,_remainderSet,_remainderSet(member_exp,set_exp,numeric_exp),假如,set_expnunmeric_exp,时,则返回,member_exp,,不然为空,第62页,(2)Family,、,Hieracrhy,、,Member Functions,Ancestor,ancestor(member,level|integer),ancestors,ancestors(member,level|integer),parent,parent(member),children,children(member),cousin,cousin(member1,member2),cousin(Q 2,)result:Q2,descendants,descendants(set_expr,level|beforewithmember|after ),普通用来取某个组员下第几层组员,firstChild,firstChild(member),firstSibling,firstSibling(member),返回,member,父节点第一个子节点,lastChild,lastChild(member),lastSibling,lastSibling(member),返回,member,父节点最终一个子节点,第63页,(2)Family,、,Hieracrhy,、,Member Functions,siblings,siblings(member),返回此组员父组员全部子组员,currentMember,currentMember(hierarchy),defaultMember,defaultMember(hierarchy),lag,lag(member,index_exp),返回此组员前第,index_exp,组员,假如,index_exp,为负,则表示是后第,index_exp,组员,lead,lead(member,index_exp),返回此组员后第,index_exp,组员,负则表示前第,index_exp,组员,member,me
展开阅读全文