Populate enum (select) field with metadata from an unrelated entity

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • telecastg
    Active Community Member
    • Jun 2018
    • 907

    Populate enum (select) field with metadata from an unrelated entity

    Free plug-in that allows to extract metadata from any related or unrelated entity to populate en enum (select) field .

    Feel free to check it and and test it.

    GitHub is where people build software. More than 100 million people use GitHub to discover, fork, and contribute to over 420 million projects.
  • item
    Active Community Member
    • Mar 2017
    • 1476

    #2
    Hello Telecatg,
    i have a requirement
    meeting => acceptanceStatus have 3 values enum outOfBox : Accepted, Declined, None
    i have add 2 more value "Ok, noOk" (for sample)

    do you think your is there a solution for me to have :
    for xTeams or currentUser in role = "Accept, Decline, None"
    and for yTeams or currentUser in role = "Ok, noOk" ?

    My goal, is xTeams/currentUser in role don't see "Ok, noOk" in the enum value

    Regards
    If you could give the project a star on GitHub. EspoCrm believe our work truly deserves more recognition. Thanks.​

    Comment

    • telecastg
      Active Community Member
      • Jun 2018
      • 907

      #3
      Maybe with enhanced dynamic logic..... I will take a look.

      The goal is to have the ability of limiting the enum options in a field based on team membership or role, correct ?

      Comment


      • item
        item commented
        Editing a comment
        Yes correct...
    • telecastg
      Active Community Member
      • Jun 2018
      • 907

      #4
      Hello item, have good news: It is possible to limit the enum options of a "select" field based on User attributes with the enhanced dynamic logic plug-in.

      Here's how to code the Meeting clientDefs metadata file:

      Code:
          "dynamicLogic": {
              "options": {
                  "acceptanceStatus": [
                      {
                          "optionList": [
                              "OK",
                              "Not OK"
                          ],
                          "conditionGroup": [
                              {
                                  "type": "or",
                                  "value": [
                                      {
                                          "type": "isTrue",
                                          "userAttribute": "isMember",
                                          "userValue": "xTeam"                                    
                                      },
                                      {
                                          "type": "isTrue",
                                          "userAttribute": "isRole",
                                          "userValue": "aRole"                                    
                                      }
                                  ]
                              }
                          ]
                      },
                      {
                          "optionList": [
                              "Accept",
                              "Decline",
                              "None"
                          ],
                          "conditionGroup": [
                              {
                                  "type": "or",
                                  "value": [
                                      {
                                          "type": "isTrue",
                                          "userAttribute": "isMember",
                                          "userValue": "yTeam"                                    
                                      },
                                      {
                                          "type": "isTrue",
                                          "userAttribute": "isRole",
                                          "userValue": "bRole"                                    
                                      }
                                  ]
                              }
                          ]
                      }
                  ]
              }
      
          }

      Comment

      • item
        Active Community Member
        • Mar 2017
        • 1476

        #5
        Thanks Telecastg.. wonderfull ...

        i have not still (sorry) try your extension... i will do in a few day.. (always big work on begin of year.. )

        Best regards

        And for your info :
        we are buying a micro-server .. because we can not online ours data (confidential/healthcare)... and we are at 20Keuro
        but : 24xSSD ... jovianDSS.. vmWare.. it's a pleasure to work with that ...
        If you could give the project a star on GitHub. EspoCrm believe our work truly deserves more recognition. Thanks.​

        Comment

        Working...