<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Java軟件報表軟件技術博客

    java報表軟件技術匯總 java報表軟件制作 報表軟件新聞
    posts - 355, comments - 100, trackbacks - 0, articles - 3
       :: 首頁 :: 新隨筆 ::  :: 聚合  :: 管理

    最近出現了很多關于帆軟報表和泛微OA的集成問題,均出現在“單點登錄”上。直接也有相關的文章介紹一些FineReport和泛微集成的背景、價值等,以及FineReport和OA的深度集成的方案,但是并沒有提到單點登錄的集成方案,今天就簡單介紹下FineReport和OA單點登錄集成方式。

    同步用戶信息

    單點登錄的基礎,就是用戶信息的同步,FineReport的決策系統中有一個很強大的功能,可以自動幫助用戶實現用戶信息同步。具體菜單:決策系統-管理系統-用戶管理。點擊用戶管理菜單后,右側頁面右上角有一個“設置”按鈕,如下圖:


    點擊“設置”,則會出現如下圖的界面。按照下圖中的配置進行對應的配置。


    認證方式:選擇平臺內置認證。單點登錄的集成是通過平臺內置認證進行集成的。

    用戶同步數據集:選擇“已開啟”

    服務器數據集:服務器數據集是需要去帆軟報表的開發工具上進行配置。如下圖:


     

     

    進入設計器,點擊菜單服務器-服務器數據集,新增一個數據集,選擇OA的數據源,寫入SQL“select * from hrmresource”,保存即可。

    保存后,需要去本地的開發環境上找到對應的xml,復制到決策系統服務器端,才可使用。本地開發環境的xml路徑見上圖“保存路徑”后面的對應文件路徑。

    通過EditPlus編輯器打開datasource.xml文件后,找到“OA用戶”這塊xml代碼。將這塊代碼復制到服務器上的datasource.xml上,路徑和/WebReport/WEB-INF/resourcr/datasource.xml,粘貼格式參見本地的開發環境。如下圖:

     

    注:不要用記事本打開xml,保存可能會損壞xml。更新服務器文件時,做好備份。

    繼續配置用戶同步

    用戶名:XXX

    姓名:XXX

    密碼:XXX,注意,OA的密碼已經進行了32位大寫的MD5加密。

    加密方式:不設置密碼加密

    其他選填。

    點擊保存,OK,決策系統已經開始在后臺執行了用戶同步了。只需要在決策系統中的用戶管理上查看同步的用戶信息結果即可。

    泛微OA的登錄方式和如何編寫單點登錄

    了解單點登錄之前,先了解下OA的登錄方式。泛微OA的登錄方式有2種。第一種,是通過頁面登錄進OA;第二種是,是通過E-Message上的快捷方式進入到OA。

    這樣的話,如果實現FineReport和泛微OA集成的單點登錄,以上的兩種登錄方式均瑤實現這個效果。很多用戶和泛微的實施團隊會在OA的login.jsp上編寫單點登錄代碼。在login.jsp上編寫單點登錄代碼智能解決第一種登錄方式“通過頁面登錄進OA”。而通過E-Message上的快捷方式進入到OA是不能實現帆軟決策系統的單點登錄的。如果要實現兩種登錄方式的單點登錄,可以在泛微OA登錄后頁面上編寫單點登錄代碼。泛微OA登錄后頁面的jsp為“/ecology/wui/theme/ecology7/page/main.jsp”。

    第一步,引入js代碼:

    <script type="text/javascript" src="http://***.***.***.***:**/WebReport/ReportServer?op=emb&resource=finereport.js"></script>  

     


    第二步,獲取當前用戶的登錄名和密碼的java代碼:

      String nodeSql ="select loginid,password from HrmResource where id =  " + user.getUID(); 

            RecordSet.executeSql(nodeSql);
            if (RecordSet.next()){
                    userpasswordstr = RecordSet.getString("password");     
                    loginidstr = RecordSet.getString("loginid");
            }

    從上面的代碼可以很明顯的看到,這個和sql和rs的取值字段跟之前配置用戶同步信息對應的表和字段是一樣的。

    第三步,編寫js代碼:

    var username =FR.cjkEncode("<%=loginidstr%>");  
    var password ="<%=userpasswordstr%>";
    password = password.toUpperCase();//把密碼小寫字母轉換成大寫字母
    var scr = document.createElement("iframe");                
    scr.src = "http://***.***.***.***:**/WebReport/ReportServer?op=touchfs&username="+username+"&__redirect__=false&password="+password; 

    這里是采用iframe的跨域單點登錄方式,所以在JS中需要創建一個iframe,然后在iframe上設置SRC。

    第四步,保存main.jsp,備份服務器的main.jsp,更新main.jsp。

    第五步,重新登錄OA,單點登錄成功。校驗方式,在OA的瀏覽器上,新建一個頁簽,輸入“http://***.***.***.***:**/WebReport/ReportServer?op=fs”,如果出現如下圖,且登錄名為自己的用戶,則表示單點登錄成功。但是。。。還沒完。


    在泛微OA上配置決策系統入口

    完成了上述的配置,但是OA用戶通過什么方式進入決策平臺呢?提供2個方式供參考。

    第一,用系統管理員配置自定義左側菜單。

    第二,設置用戶元素。

    以上3點完成后,FineReport和OA的集成工作就大功告成了。



    主站蜘蛛池模板: 国产在线国偷精品产拍免费| 亚洲福利精品电影在线观看| 亚洲精品成人片在线观看精品字幕| 亚洲自偷自偷精品| 亚洲av无码一区二区三区人妖| 天黑黑影院在线观看视频高清免费 | 日韩在线观看免费| 免费国产成人高清在线观看麻豆 | 暖暖日本免费中文字幕| 国产自产拍精品视频免费看| 亚洲熟妇无码一区二区三区 | 免费视频爱爱太爽了| 亚洲成综合人影院在院播放| 免费成人激情视频| 亚洲久悠悠色悠在线播放| 老司机永久免费网站在线观看| 亚洲av永久无码精品表情包| 国产尤物在线视精品在亚洲| 亚洲av无码国产精品色在线看不卡| 四虎国产精品永免费| 国产亚洲综合网曝门系列| 桃子视频在线观看高清免费视频| 亚洲国产精品无码久久青草| 中文字幕免费在线视频| 免费又黄又爽的视频| 91精品全国免费观看青青| 久久亚洲中文字幕精品有坂深雪 | 8x8×在线永久免费视频| 亚洲精品成人片在线播放| 99久久人妻精品免费一区| 亚洲国产精品一区第二页| GOGOGO免费观看国语| 亚洲日本中文字幕天堂网| 羞羞视频网站免费入口| 亚洲AV中文无码乱人伦下载| 成年女人毛片免费观看97| 亚洲国产精品成人综合色在线| 最近中文字幕无吗免费高清| 四虎影视永久在线精品免费| 亚洲国产综合91精品麻豆| 一区二区免费视频|