O2OA API

source

x_component_process_Xform/SmartBI.js

MWF.xDesktop.requireApp("process.Xform", "$Module", null, false);
/** @class SmartBI 统计图表组件。
 * @o2cn 统计图表组件
 * @example
 * //可以在脚本中获取该组件
 * //方法1:
 * var div = this.form.get("name"); //获取组件
 * //方法2
 * var div = this.target; //在组件事件脚本中获取
 * @extends MWF.xApplication.process.Xform.$Module
 * @o2category FormComponents
 * @o2range {Process|CMS|Portal}
 * @hideconstructor
 */
MWF.xApplication.process.Xform.SmartBI = MWF.APPSmartBI =  new Class({
    Extends: MWF.APP$Module,

    _loadUserInterface: function(){
        if (!this.json.smartbiresource || this.json.smartbiresource==="none") this.node.destroy();
        else{
            var url;
            var value = this.json.smartbiresource;
            var SmartBIAction = o2.Actions.load("x_custom_smartbi_assemble_control");
            var addressUri = SmartBIAction.ResourceAction.address;
            
            if(addressUri){
                SmartBIAction.ResourceAction.address(value,function(json){ 
                    if(json.data.value !==""){
                        url = json.data.value;
                        url = url +"&showtoolbar="+this.json.smartbidisplaytoolbar+"&showLeftTree="+this.json.smartbidisplaylefttree;
                    }
                }.bind(this),null,false)
            }else{
                var address = SmartBIAction.ResourceAction.action.getAddress();
                var uri = SmartBIAction.ResourceAction.action.actions.open.uri;
                var url = uri.replace("{id}", encodeURIComponent(value));

                url = url +"?showtoolbar="+this.json.smartbidisplaytoolbar+"&showLeftTree="+this.json.smartbidisplaylefttree;
                
                url = o2.filterUrl(address+url);
            }
                        
            this.iframe = new Element("iframe",{
                src:url,
                frameborder:"0",
                scrolling:"auto"
            }).inject(this.node,"after");
            
            var _properties = this.json.properties||{};
            this.node.destroy();
            this.node = this.iframe.setStyles({
                "width":"100%",
                "height":"100%",
                "min-height":"300px",
                "min-width":"300px"
            });

			this.node.set(_properties)
			
        }
        
	}
});

results matching

    No results matching ''