• SFDC 复合主键的一般实现方法


    我们都知道,Salesforce的每个Record都是只能一个主键ID,并且ID是添加时自动生成的。 并且这个ID很特殊,Salesforce通过算法,可以通过这个ID能知道这条记录是哪个Object的记录。 这个以后我们再讨论。 今天我主要想跟大家讲一下,如何在Salesforce里实现多个字段共同达成唯一索引。 Salesforce本身 Text字段是支持 Unique设置的

     但是不支持多个字段共同Unique。

    解决方案

    1. 在Object中添加一个Text字段,勾选Unique设置的字段,Label,API参照名任意
    2. (可选)在Object中添加一个Formula(Text)字段,公式为想要实现复合Unique的字段用文本拼接,Label,API参照名任意
    3. 在创建时用Workflow Rule ,Process Builder,Flow Builder(Record Trigger),Apex Trigger(before insert)其中一种工具
    4. 将Formula(Text)字段的值(没添加的话就在这里拼接) 赋值 到 第一步创建的 Unique字段上即可

    这样就可以在添加记录时 实现类似复合字段Unique索引的效果

    例子,这里的支部Code(BranchCode__c)和年月(YearMonth__c) 两个共同构成主键,也就是要求支部Code(BranchCode__c)和年月(YearMonth__c)在Object里不能重复

    我用 PK_Formula 字段来存放 支部Code(BranchCode__c)和年月(YearMonth__c) 拼接在一起后的值

    BranchCode__c & YearMonth__c
    

     

    支部コード-年月 是我设定的Unique Text字段

    在添加时,我利用Process Builder,将 PK_Formula 字段的值赋值到 支部コード-年月 字段上

    当我尝试登录一条同样支部Code和年月的记录时

     Error发生了,也没有保存成功。

  • 相关阅读:
    Request Payload 和 Form Data 的区别
    es6 字符串模板拼接和传统字符串拼接
    TypeScript
    Jquery的$(document).click() 在iphone手机上失效的问题
    Vuex 是什么?
    什么是JSONP?
    git 放弃本地修改操作
    CSS3+HTML5+JS 实现一个块的收缩&展开动画
    Promise学习笔记(一)
    React@16.13.1配合antd UI使用,自定义主题
  • 原文地址:https://www.cnblogs.com/paynev/p/14308532.html
Copyright © 2020-2023  润新知