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篇:https://cloud.tencent.com/developer/article/1014046

四.Permission Sets创建

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

Permission Sets的详细用法可以参见第19篇:https://cloud.tencent.com/developer/article/1014056

五.Validation Rules创建

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

Validation Rules的详细用法可以参见第16篇:https://cloud.tencent.com/developer/article/1014062

这里做个简单的例子,比如商品价格不能为空且必须大于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可以参考第五篇:https://cloud.tencent.com/developer/article/1014023

七.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模块开发,有写错的地方欢迎指正,没有做过项目自己联系的童鞋可以在此思路下自己扩展,不局限于以上的步骤,有问题欢迎留言。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏nummy

Django User模型扩展

通常情况下,Django提供的User模型能够满足我们大部分的需求,但是有时候我们需要给User添加一些格外的功能和信息。

381
来自专栏漫漫深度学习路

pytorch学习笔记(十):learning rate decay(学习率衰减)

pytorch learning rate decay 本文主要是介绍在pytorch中如何使用learning rate decay. 先上代码: def...

44610
来自专栏linux驱动个人学习

Dos烧录脚本

Dos命令之前更改的太简单,现在加入判断是否进入fasboot模式和判断Android镜像是否存在;代码已经尽量简化成这样,dos命令功能还是比较不好用的,用了...

3315
来自专栏xingoo, 一个梦想做发明家的程序员

【插件开发】—— 12 GEF入门

什么是GEF?   GEF的英文全称是Graphical Editing Framework,也就是图形化编辑框架。它帮助我们轻松的创建一些模型,并提供...

1859
来自专栏一棹烟波

OpenCV3.0 HDR(高动态范围)示例代码以及用法

OpenCV 3.0以及以后版本集成了HDR算法,样例代码的路径为: .\sources\samples\cpp\tutorial_code\photo\hdr...

2336
来自专栏Youngxj

给源代码和控制台加上线条字

1373
来自专栏用户2442861的专栏

Caffe学习系列(23):如何将别人训练好的model用到自己的数据上

http://www.cnblogs.com/denny402/p/5137534.html

421
来自专栏贾志刚-OpenCV学堂

tensorflow object detection API训练公开数据集Oxford-IIIT Pets Dataset

object detection API 安装参见官方的github: https://github.com/tensorflow/models/tree/ma...

1122
来自专栏MixLab科技+设计实验室

自己动手做一个识别手写数字的web应用02

继续上文。 自己动手做一个识别手写数字的web应用01 01 再次进入docker容器 接着上一篇文章,我们继续使用上次新建好的容器,可以终端输入 : d...

3317
来自专栏机器学习实践二三事

sklearn系列之----开山篇

最近在学习深度学习,之前搞了段时间的caffe,但是caffe的优点在classification,对于想学习DL的我们还是需要从基础的学起,比如regress...

1679

扫码关注云+社区