Oracle Sales Cloud(Oracle 销售云)是一套基于Oracle云端的CRM管理系统。由于 Oracle 销售云是基于 Oracle 云环境的,它与传统的管理系统相比,显著特点之一便是集成性:将服务器、数据库、系统应用和开发工具都放在云端,为用户提供了一体化的开发和部署平台。

众所周知,ERP、CRM或HR等管理类系统,最终要应用到企业实际业务中,那么必然会涉及到一个问题——根据实际业务情况进行定制化开发。以前我们在做定制开发时,应用系统和开发工具一般是分开的,比如Oracle Siebel系统定制用的工具是Siebel Tools,Oracle EBS系统用的是Form Builder、PL/SQL Developer,这些开发工具都需要另行安装和配置。而 Oracle Sales Cloud 的定制化开发工具是集成好的,对应模块是:管理沙盒(其实从前面报表开发小细节的随笔我们已经知道,Oracle Sales Cloud 的报告和分析模块使用的是封装好的BI开发工具,这些都体现了云环境集成性的特点)。在本篇随机中,我们从具体实例出发,开始了解如何在Oralce Sales Cloud中进行相关定制开发。

图1:Oracle Sales Cloud登陆    图2:管理沙盒

在操作之前,我们来看具体的定制化业务需求:

实际业务需求:如图3,在编辑业务机会:汇总页面中 “销售渠道” 字段下添加 “利润合计” 字段,其值为下面产品行中的利润总和,不可人为更新。

图3:编辑业务机会:汇总

现在,我们开始在 “管理沙盒” 中进行定制化:

     (1)第1步:在 “设置和操作” 菜单的 “管理沙盒” 下创建沙盒,然后选中沙盒点击 “设置为活动状态”,如图4。

              注意:进入沙盒模式后,系统主页正上方出现黄色条框,里面会显示沙盒名称,点击沙盒名称链接有 “更多” 和 “退出沙盒” 两个选项。

      图4:创建沙盒

    (2)第2步:在 “导航栏->更多” 路径下,进入到 “应用程序编辑器”。

      图5:应用程序编辑器

    (3)第3步:进入  “应用程序编辑器” 后,在 “销售” 应用下找到 “业务机会” 对象,点击 “字段”,如图6。

             注意:此处我们观察可知—— “利润” 字段不在 “业务机会” 对象下,而是在其子对象 “业务机会收入”下(对应图3页面下方的 “产品” 信息栏)。

       图6:业务机会对象

  (4)第4步:在 “业务机会”对象的 “字段” 下,新建 “利润合计” 字段,详细步骤:

               [4.1] 点击 “新建”,选择 “公式”,填写字段基本信息,点击 “下一步”,如图7(注意名称和显示标签)。

               注意:一般而言,公式字段应该选取约束条件,即依赖于哪个字段,但是由于和要依赖的 “利润” 字段不在同一对象下,所以此处留空。

               [4.2] 编写约束条件,此处应该是求和函数,点击 “提交” 即可,如图8。

               注意:Oracle Sales Cloud 定制使用的是Groovy脚本语言,比较简洁方便,省时省力(后续会单独介绍)

                         此处,如果知道 “利润” 字段的API,直接写出求和公式即可;假如不太熟悉,可以使用右侧函数,插入sum公式,选取 “利润” 字段,确定即可。

       图7:利润合计字段

       图8:编辑约束条件

       (5)第5步:通过前面几步,“利润合计” 字段已经创建成功,现在要在 “业务机会->页面” 下部署到详细页面中,详细步骤:

               [5.1] 在 “业务机会->页面” 路径下,进入 “页面”,找到详细信息页面布局,如图9。

               注意:默认布局是允许修改的,但是一般而言,不建议修改默认布局,可以复制出来新的布局 “利润显示布局” 进行修改,勾选有效即可

               [5.2] 将 “利润合计” 字段添加显示,如图10和11。

       图9:复制布局

       图10:编辑布局

图11:添加显示字段

     (6)第6步:在 沙盒中查看显示效果,如图12,确定后发布沙盒即可。

              注意:最后完成定制功能后别忘了发布沙盒,点击沙盒管理中点击 “发布” 按钮即可。

      图12:效果展示

总结:管理沙盒(定制化)小细节1——利用公式创建字段并显示在前段页面,结合实际案例介绍了沙盒定制的一些基本步骤,利用公式创建字段完成了对应的业务需求。需要注意:该方法创建的 “利润合计” 字段,由于依赖子对象中的 “利润” 字段而动态变化,所以BIEE中的报表主题区域是抓不到的。下次我们将看一下创建普通数值字段然后通过对象触发器来达到同样的需求,并且让BIEE报表能抓取到的管理沙盒小细节。

谢谢,欢迎大家随时指正和交流!

Oracle Sales Cloud:管理沙盒(定制化)小细节1——利用公式创建字段并显示在前端页面的更多相关文章

  1. Oracle Sales Cloud:管理沙盒(定制化)小细节2——使用对象触发器更新数字字段

    在上一篇 "管理沙盒(定制化)小细节1" 的随笔中,我们使用公式法在 "业务机会" 对象(单头)上建立了 "利润合计" 字段,并将它等于 & ...

  2. Oracle Sales Cloud:报告和分析(BIEE)小细节2——利用变量和过滤器传参(例如,根据提示展示不同部门的数据)

    在上一篇随笔中,我们建立了部门和子部门的双提示,并将部门和子部门做了关联.那么,本篇随笔我们重点介绍利用建好的双提示进行传参. 在操作之前,我们来看一个报告和分析的具体需求: [1] 两个有关联的提示 ...

  3. Oracle Sales Cloud:报告和分析(BIEE)小细节1——创建双提示并建立关联(例如,部门和子部门提示)

    Oracle Sales Cloud(Oracle 销售云)是一套基于Oracle云端的客户商机管理系统,通过提供丰富的功能来帮助提高销售效率,更好地去了解客户,发现和追踪商机,为最终的销售成交 (d ...

  4. 【xmind converse excel】测试用例定制化小工具

    背景 公司使用jira, jira写测试用例,jira可以通过execl导入进jira, 生成测试用例,但是模板很不统一,如果只是再execl中修改,又觉得及其的麻烦,所以写了一个xmind 转化为定 ...

  5. AI应用开发实战 - 定制化视觉服务的使用

    AI应用开发实战 - 定制化视觉服务的使用 本篇教程的目标是学会使用定制化视觉服务,并能在UWP应用中集成定制化视觉服务模型. 前一篇:AI应用开发实战 - 手写识别应用入门 建议和反馈,请发送到 h ...

  6. 定制化Azure站点Java运行环境(5)

    Java 8下PermGen及参数设置 在上一章节中,我们定制化使用了Java 8环境,使用我们的测试页面打印出了JVM基本参数,但如果我们自己观察,会发现在MXBeans中,没有出现PermGen的 ...

  7. .netcore 定制化项目开发的思考和实现

    今年年初进了一家新公司,进入之后一边维护老项目一边了解项目流程,为了接下来的项目重做积累点经验. 先说下老项目吧,.net fx 3.5+oracle...... 在实际维护中逐渐发现,老项目有标准版 ...

  8. ASP.NET Core应用的错误处理[3]:ExceptionHandlerMiddleware中间件如何呈现“定制化错误页面”

    DeveloperExceptionPageMiddleware中间件利用呈现出来的错误页面实现抛出异常和当前请求的详细信息以辅助开发人员更好地进行纠错诊断工作,而ExceptionHandlerMi ...

  9. Gradle 实现 Android 多渠道定制化打包

    Gradle 实现 Android 多渠道定制化打包 版权声明:本文为博主原创文章,未经博主允许不得转载. 最近在项目中遇到需要实现 Apk 多渠道.定制化打包, Google .百度查找了一些资料, ...

随机推荐

  1. pycharm2016.3.1激活及汉化

    pycharm快捷键 PyCharm设置python新建文件指定编码为utf-8 Python | 设置PyCharm支持中文 0, 注册码 43B4A73YYJ-eyJsaWNlbnNlSWQiOi ...

  2. CentOS上 Mono 3.2.8运行ASP.NET MVC4经验

    周一到周三,折腾了两天半的时间,经历几次周折,在小蝶惊鸿的鼎力帮助下,终于在Mono 3.2.8上运行成功MVC4.在此总结经验如下: 系统平台的版本: CentOS 6.5 Mono 3.2.8 J ...

  3. ucos实时操作系统学习笔记——任务间通信(队列)

    ucos操作系统中的queue机制同样使用了event机制来实现,其实和前面的sem,mutex实现类似,所不同的是对sem而言,任务想获得信号量,对mutex而言,任务想获得的是互斥锁.任务间通信的 ...

  4. 使用mapreduce计算环比的实例

    最近做了一个小的mapreduce程序,主要目的是计算环比值最高的前5名,本来打算使用spark计算,可是本人目前spark还只是简单看了下,因此就先改用mapreduce计算了,今天和大家分享下这个 ...

  5. DevExpress学习系列(控件篇):GridControl的基本应用

    一般属性设置 不显示分组框:Gridview->Option View->Show Group Panel=false 单元格不可编辑:gridcontrol -->gridview ...

  6. [开源]QuickSwitchSVNClient,快速完成SVN Switch的工具

    在实际的开发中,我们一般使用SVN工具进行源代码的管理.在实际的产品开发中,根据项目的一些定制要求,往往需要对某一些代码的修改,但是又不想影响主要的开发,这个时候需要对当前的主分支做一些分支处理(br ...

  7. 利用Netty构建自定义协议的通信

    在复杂的网络世界中,各种应用之间通信需要依赖各种各样的协议,比如:HTTP,Telnet,FTP,SMTP等等. 在开发过程中,有时候我们需要构建一些适应自己业务的应用层协议,Netty作为一个非常优 ...

  8. WEB 基础知识(一)

    1. 系统架构 1.1 B/S系统架构 1.2 C/S系统架构 1.3 对比与区别 1.3.1 概述 C/S结构,即Client/Server(客户机/服务器)结构,是大家熟知的软件系统体系结构,通过 ...

  9. JSON.stringify()与JSON.parse()

    JSON.stringify()用于把一个对象解析成字符串,如 var student = { age: 23, name: 'wang' } JSON.stringify(student); 结果: ...

  10. Jquery Uploadify3.21.与2.1版本 使用中存在的问题--记录三

    Jquery Uploadify是个上传插件. 2.1版本与3.2.1版本有很大区别,方法名跟参数变动较大 1.uploader:该属性是用来存放swf的路径,这个swf就是一个Flash的一个图标, ...