站长百科 | 数字化技能提升教程 数字化时代生存宝典
首页
数字化百科
电子书
▼
建站程序
开发
服务器
办公软件
开发教程
▼
服务器教程
软件使用教程
运营教程
热门电子书
▼
CSS教程
WordPress教程
导航
程序频道
推广频道
网赚频道
人物频道
网站程序
网页制作
云计算
服务器
CMS
论坛
网店
虚拟主机
cPanel
网址导航
WIKI使用导航
WIKI首页
热点词条
最新资讯
网站程序
站长人物
页面分类
使用帮助
编辑测试
创建条目
网站地图
站长百科导航
站长百科
主机侦探
IDCtalk云说
跨境电商导航
WordPress啦
站长专题
网站推广
网站程序
网站赚钱
虚拟主机
cPanel
网址导航专题
云计算
微博营销
虚拟主机管理系统
开放平台
WIKI程序与应用
美国十大主机
编辑“
使用SugarCRM连接器连接数据与外部世界
”(章节)
人物百科
|
营销百科
|
网赚百科
|
站长工具
|
网站程序
|
域名主机
|
互联网公司
|
分类索引
跳转至:
导航
、
搜索
警告:
您没有登录。如果您做出任意编辑,您的IP地址将会公开可见。如果您
登录
或
创建
一个账户,您的编辑将归属于您的用户名,且将享受其他好处。
反垃圾检查。
不要
加入这个!
==Formatter== 连接器的另一部分称为formatter,用于向用户显示连接器数据。首先创建一个扩展default_formatter类的定义文件,并添加必要的代码片段以在一个细节视图中显示连接器数据。这个文件根据这个连接器命名( custom/modules/Connectors/formatters/ext/rest/googlenews/googlenews.php) <pre><?php require_once('include/connectors/formatters/default/formatter.php'); class ext_rest_googlenews_formatter extends default_formatter { public function getDetailViewFormat() { $mapping = $this->getSourceMapping(); $mapping_name = !empty($mapping['beans'][$this->_module]['name']) ? $mapping['beans'][$this->_module]['name'] : ''; if(!empty($mapping_name)) { $this->_ss->assign('mapping_name', $mapping_name); return $this->fetchSmarty(); } $GLOBALS['log']->error($GLOBALS['app_strings']['ERR_MISSING_MAPPING _ENTRY_FORM_MODULE']); return ''; } public function getIconFilePath() { return 'custom/modules/Connectors/connectors/formatters/ext/rest /googlenews/tpls/googlenews.gif'; } } </pre> 上面代码中定义的两个函数由DetailView元数据框架调用,以便将连接器实际呈现在表单中。getIconFilePath() 返回链接到(连接器正在连接的) DetailView 表单中字段旁边的图标的 URL。然后,getDetailViewFormat() 处理这个小部件表单的呈现,这个表单在您将鼠标光标悬停在图标上方时显示。以下代码展示了这个连接器小部件的[[Smarty]]模板。 <pre> <div style="visibility:hidden;" id="googlenews_popup_div"></div> <script type="text/javascript" src="{sugar_getjspath file='include/connectors/formatters/default/company_detail.js'}"></script> <script type="text/javascript"> function show_ext_rest_googlenews(event) {literal} { var xCoordinate = event.clientX; var yCoordinate = event.clientY; var isIE = document.all?true:false; if(isIE) { xCoordinate = xCoordinate + document.body.scrollLeft; yCoordinate = yCoordinate + document.body.scrollTop; } {/literal} cd = new CompanyDetailsDialog("googlenews_popup_div", '<iframe height="90px" width="728px" frameborder="0" marginheight=0 marginwidth=0 scrolling="no" src="http://www.google.com/uds/modules/elements /newsshow/iframe.html?rsz=small&q={$fields.{{$mapping_name}}.value} &format=728x90"></iframe>', xCoordinate, yCoordinate); cd.setHeader("{$fields.{{$mapping_name}}.value}"); cd.display(); {literal} } {/literal} </script> </pre> 需要定义JavaScript函数show_ext_rest_googlenews(),这个函数在鼠 标光标悬停在 DetailView 中的图标上方时触发。这个 JavaScript 函数处理包含该小部件内容的弹出对话框的呈现,还对Web服务进行外部调用,并在这个弹出对话框中显示其结果。然后,呈现的代码初始化弹出窗口,将标题设置为当前记录的名称,最后使用从当前记录传递的公司名称进行API调用,构建一个iframe。下图展示了上述过程。 * 正在运行的 Google News 连接器 [[Image:Fig03.jpg]] 现在,您已经构建了一个功能齐备的连接器。当您的鼠标光标悬停于Account名称旁边的新闻图标上时,这个连接器将从Google News提取关于该Account的数据。您也可以对应用程序中的其他模块添加这个功能,只需在mapping.php文件中添加另一个模块条目,将记录映射到连接器。SugarCRM 还在其 Admin 区域中的 Connector Settings 选项下面提供了一个图形方法来完成这个任务,只需单击那个屏幕中的Connector Settings选项,更改可以获取这个新闻图标的模块,如下图所示: [[Image:Fig04.jpg]] 下一步是为添加的模块映射字段,在Connector Settings下的Map Connector Fields页面中进行操作,如下图所示: [[Image:Fig05.jpg]] 对于连接器中的每个字段,使用下拉选择器来选择模块使用的字段,在两个实体间建立映射关系。可以对可用连接器的每个不同模块进行不同的映射。
摘要:
请注意,您对站长百科的所有贡献都可能被其他贡献者编辑,修改或删除。如果您不希望您的文字被任意修改和再散布,请不要提交。
您同时也要向我们保证您所提交的内容是您自己所作,或得自一个不受版权保护或相似自由的来源(参阅
Wordpress-mediawiki:版权
的细节)。
未经许可,请勿提交受版权保护的作品!
取消
编辑帮助
(在新窗口中打开)