salesforce 零基础学习(二十)简单APP制作

本篇参考链接:https://developer.salesforce.com/trailhead/project/salesforce_developer_workshop

本篇讲述的是最简单的APP的制作,涵盖的知识点包括以下内容:

  1.Object的创建;

  2.Tab以及App创建;

  3.Trigger创建;

  4.Permission Sets创建;

  5.Validation Rules 使用;

  6.Schedule Job使用;

  7.Layouts创建/修改;

  8.Test创建.

一.创建Object

这里我们使用Goods表,它包含一些自定义字段,为了方便学习,所以使用了很多不同的类型操作,忽略具体的业务。商品表信息如下图所示:

商品表字段信息如下图所示:其中许多字段为了学习Formula而创建,这里只例举其中一处的Formula。

    

二. Tab以及App创建

首先需要创建Tab

1.点击 setup->build->create-Tabs或者在搜索框中输入Tabs点击Tabs链接,进入页面;

2.点击Custom Object Tabs 的new按钮新建一个自定义的Tab;

3.在Object下拉框中找到需要创建Tab的Object,选择Tab Style(不知道什么用),输入Describe点击next;

4.设置哪些种Profile可以看见此Tab;

5.设置哪个app可以显示此tab,点击save,tab创建结束。

之后是创建App

1.点击setup->build->create-Apps,点击Apps链接,进入页面;

2.在Apps处点击new按钮,选择custom app后next;

3.输入App的Label以及Name,输入描述后next;

4.选择app的logo,如果不选择则使用默认的logo,next;

5.选择此APP可以使用的Tab,将刚才创建的Tab选择到selected区;

6.选择哪种Profile才可以看到此app后点击save,app创建成功.

三.Trigger创建

Trigger是自动执行的,可以用来在操作前后进行数据的相关操作,业务逻辑复杂情况下建议使用Handler方式,业务简单可以采用直接在Trigger内部写代码.

Trigger的详细用法可以参见第17篇:http://www.cnblogs.com/zero-zyq/p/5413731.html

四.Permission Sets创建

Permission Sets可以设置某些人访问以及操作某些页面,Apex类等权限。

Permission Sets的详细用法可以参见第19篇:http://www.cnblogs.com/zero-zyq/p/5406352.html

五.Validation Rules创建

Validation Rules用于保存操作以前的字段校验,如果校验不成功则不执行save操作,Validation Rules是自动执行的,不需要调用。

Validation Rules的详细用法可以参见第16篇:http://www.cnblogs.com/zero-zyq/p/5409209.html

这里做个简单的例子,比如商品价格不能为空且必须大于0.操作步骤:

1.点击setup->build->create->Object,找到需要设置的Object后点击进入;

2.下拉找到Validation Rules后点击new按钮;

3.输入Rule Name,Description,然后再Error Condition Formula处输入验证代码。

注:写的内容为true情况下会显示下方的Error Message,此处应写错误情况。

六.Schedule Job

Schedule Job可以定时处理一些批量任务以及发邮件等功能。

关于Schedule Job可以参考第五篇:http://www.cnblogs.com/zero-zyq/p/5287343.html

七.Layouts创建/修改

当创建一个sObject后系统会自动创建一个Layout,创建的Layout在布局等方面可能不符合要求,需要修改布局,则可以通过修改Page Layouts 来修改Layout布局,步骤如下:

1.点击setup->build->create->objects,找到需要操作的Object进入;

2.找到Page Layouts后选择默认的Page Layouts,点击Edit;

3.以下讲两个简单的例子,第一个为添加Section,使detail以及Edit页面的字段更具层次感,左侧菜单选中Fields,右侧会显示Section和Blank Space,拖动Section到Detail部分,添加Section,并可以将相关字段拖动到Section中,Blank Space用于添加一个空格区操作。拖动Section后会弹出一个对话框设置Section信息,比如一列还是两列等。

此部分可以设置很多操作,更多可以查阅此页面的Help。

八.Test创建

Test代码在salesforce中要求很高,作为应用是否能够成功的钥匙。Test代码有很多要求和限制,比如代码覆盖率需要75%及以上,并且所有的测试必须成功,使用System.debug方法不计入测试的一部分等等。

详细Test规则可参见https://help.salesforce.com/apex/HTViewHelpDoc?id=code_run_tests.htm&language=en_US

Test代码例子

 1 @isTest
 2 private class TestGoods {
 3
 4     static testmethod void TestInsertGoods() {
 5         Goods__c goods = new Goods__c();
 6         goods.GoodsName__c = ‘test Goods Name‘;
 7         goods.GoodsPrice__c = 200;
 8         goods.GoodsCostPrice__c = 100;
 9         goods.GoodsBrand__c = ‘华为‘;
10         Database.SaveResult result = Database.insert(goods);
11         System.assert(result.isSuccess());
12     }
13 }

点击自己的name,选择Developer Console后进入Console模式,选择Test->New Run->需要运行的Test类,运行后选择下方Tests的Tab查看覆盖率等信息。

总结:此篇描述最简单的app模块开发,有写错的地方欢迎指正,没有做过项目自己联系的童鞋可以在此思路下自己扩展,不局限于以上的步骤,有问题欢迎留言。

时间: 2024-10-15 13:02:26

salesforce 零基础学习(二十)简单APP制作的相关文章

salesforce 零基础学习(十九)Permission sets 讲解及设置

Permission sets以及Profile是常见的设置访问权限的方式. Profile规则为'who see what'.通过Profile可以将一类的用户设置相同的访问权限.对于有着相同Profile但是对于某个表,某个字段,或者某个Apex类等却可以有不同访问权限,这个时候就要用到Permission sets.  Permission sets 配置 1.点击setup->Administer->Manage Users->Permission Sets进入Permissio

salesforce 零基础学习(五十二)Trigger使用篇(二)

第十七篇的Trigger用法为通过Handler方式实现Trigger的封装,此种好处是一个Handler对应一个sObject,使本该在Trigger中写的代码分到Handler中,代码更加清晰. 十七篇链接:salesforce 零基础学习(十七)Trigger用法 有的时候对于sObject的trigger处理复杂的情况下,比如一个sObject的before update要实现功能1,2.....n功能情况下,Handler中需要在before update写实现功能1--n的代码.然而

salesforce零基础学习(八十二)审批邮件获取最终审批人和审批意见

项目中,审批操作无处不在.配置审批流时,我们有时候会用到queue,related user设置当前步骤的审批人,审批人可以一个或者多个.当审批人有多个时,邮件中获取当前记录的审批人和审批意见就不能随便的取一个审批人了,有以下方式针对不同的场景可以获取到当前记录的最终审批人以及审批意见. 邮件内容使用以下几种方式实现: 1.代码里面实现邮件发送 2.email template(text/html/custom) 3.visualforce emailTemplate 对发送邮件方式不清楚的,可

salesforce零基础学习(八十九)使用 input type=file 以及RemoteAction方式上传附件

在classic环境中,salesforce提供了<apex:inputFile>标签用来实现附件的上传以及内容获取.salesforce 零基础学习(二十四)解析csv格式内容中有类似的使用此标签进行解析附件内容,后台只要声明String类型变量用来存储附件名称,Blob类型变量用来存储附件的内容即可. 但是当我们的项目整体使用第三方的前端框架,例如VUE或者angular等前端框架时,有时使用apex:inputFile反而不是很方便,需要用到html的原生的附件上传的标签<inpu

salesforce零基础学习(八十七)Apex 中Picklist类型通过Control 字段值获取Dependent List 值

注:本篇解决方案内容实现转自:http://mysalesforceescapade.blogspot.com/2015/03/getting-dependent-picklist-values-from.html 群里面有个小伙伴问了一个关于两个有Dependence关系的Picklist字段如何在Apex中通过control字段的值获取到Dependence字段的值,针对Salesforce配置来说,我们很好配置出两个Dependence字段的关系,通过点击设置一下include关系即可.如

salesforce 零基础学习(四十二)简单文件上传下载

项目中,常常需要用到文件的上传和下载,上传和下载功能实际上是对Document对象进行insert和查询操作.本篇演示简单的文件上传和下载,理论上文件上传后应该将ID作为操作表的字段存储,这里只演示文件上传到Document对象中. 一.文件上传功能 apex代码 1 public with sharing class FileUploadUsedTransientController { 2 3 public transient Blob fileUploadBody{get;set;} 4

salesforce 零基础学习(二十五)PickList简单联动操作

有的时候,项目需要一些联动的操作,比如省和市之间的联动,不同的省应该显示不同的城市. 操作步骤如下: 1.新建provice字段,并且初始化相关的值 2.新建city字段,并且初始化相关的值 3.在Province的Field Dependencies 处点击New按钮,将其与city字段关联 4.选择字段间的依赖关系,其中Controlling Field为主字段,Dependent Field依赖于主,这里选择城市依赖于省,点击Continue继续 5.按照上述规则将相关省市配置,选择需要的

salesforce零基础学习(七十八)线性表链形结构简单实现

前两篇内容为栈和队列的顺序结构的实现,栈和队列都是特殊的线性表,线性表除了有顺序结构以外,还有线性结构. 一.线性表的链形结构--链表 使用顺序存储结构好处为实现方式使用数组方式,顺序是固定的.所以查询某个位置的元素特别容易,时间复杂度为O(1),但是当增加或者删除时,会需要将操作元素后面的元素整体向左或者向右平移.时间复杂度为O(n).所以当线性表查询操作多于增删操作,优先使用顺序存储结构的线性表:当线性表增删操作多于查询操作,则优先使用链式存储结构的线性表. 线性表的链式存储结构的特点是用一

salesforce零基础学习(八十五)streaming api 简单使用(接近实时获取你需要跟踪的数据的更新消息状态)

Streaming API参考链接: https://trailhead.salesforce.com/en/modules/api_basics/units/api_basics_streaming https://resources.docs.salesforce.com/210/latest/en-us/sfdc/pdf/api_streaming.pdf 背景:工作中我们有可能会有这样相关的需求:某些数据很重要,需要实时监控是否有变化,或者某些数据在其他的平台有集成.如果有变化,不刷新页