Switch “when” cannot see constants?Apex code: Incorrect SignatureWhat is the proper way to build an XML text node from a string that contains unsafe entities?Can't Insert User in Test ClassNot able to see apex class in the org in salesforceProblem with mapping and field mergingString List Used to reference String in ClassNull pointer exception when using get; set;Issue executing references in separate JSON2Apex classExecuting Function with Batch Execute ClassHow to use an apex class variable in LWC javascript?

Determining fair price for profitable mobile app business

How come the nude protesters were not arrested?

Winning Strategy for the Magician and his Apprentice

Arriving at the same result with the opposite hypotheses

How can I get an unreasonable manager to approve time off?

Why can my keyboard only digest 6 keypresses at a time?

Has there been a multiethnic Star Trek character?

Playing a Character as Unobtrusive and Subservient, Yet Not Passive

Implement Own Vector Class in C++

Check if three arrays contains the same element

How to handle self harm scars on the arm in work environment?

How does an ordinary object become radioactive?

Rebus with 20 song titles

Pre-1972 sci-fi short story or novel: alien(?) tunnel where people try new moves and get destroyed if they're not the correct ones

I have a problem assistant manager, but I can't fire him

How is John Wick 3 a 15 certificate?

English word for "product of tinkering"

Is it a problem if <h4>, <h5> and <h6> are smaller than regular text?

What setting controls moving the cursor on the command line?

With Ubuntu 18.04, how can I have a hot corner that locks the computer?

Non-aquatic eyes?

Active low-pass filters --- good to what frequencies?

How to communicate to my GM that not being allowed to use stealth isn't fun for me?

Someone whose aspirations exceed abilities or means



Switch “when” cannot see constants?


Apex code: Incorrect SignatureWhat is the proper way to build an XML text node from a string that contains unsafe entities?Can't Insert User in Test ClassNot able to see apex class in the org in salesforceProblem with mapping and field mergingString List Used to reference String in ClassNull pointer exception when using get; set;Issue executing references in separate JSON2Apex classExecuting Function with Batch Execute ClassHow to use an apex class variable in LWC javascript?






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








4















I am trying to use a switch statement with constants but it doesn't appear that the switch statement can see the constants.



At the top of the class I have:
private final String A_B_C = 'a b c';



Then later in the class I am attempting:



switch on OpportunityTriggerHelper.recordTypes.get(opp.RecordTypeId).getDeveloperName() 
when A_B_C
// do something




What I get is variable doesn't exist A_B_C.



I know for a fact that that variable is visible because there's no problem using it in an if statement.



Is this a bug or am I doing something incorrectly?










share|improve this question




























    4















    I am trying to use a switch statement with constants but it doesn't appear that the switch statement can see the constants.



    At the top of the class I have:
    private final String A_B_C = 'a b c';



    Then later in the class I am attempting:



    switch on OpportunityTriggerHelper.recordTypes.get(opp.RecordTypeId).getDeveloperName() 
    when A_B_C
    // do something




    What I get is variable doesn't exist A_B_C.



    I know for a fact that that variable is visible because there's no problem using it in an if statement.



    Is this a bug or am I doing something incorrectly?










    share|improve this question
























      4












      4








      4








      I am trying to use a switch statement with constants but it doesn't appear that the switch statement can see the constants.



      At the top of the class I have:
      private final String A_B_C = 'a b c';



      Then later in the class I am attempting:



      switch on OpportunityTriggerHelper.recordTypes.get(opp.RecordTypeId).getDeveloperName() 
      when A_B_C
      // do something




      What I get is variable doesn't exist A_B_C.



      I know for a fact that that variable is visible because there's no problem using it in an if statement.



      Is this a bug or am I doing something incorrectly?










      share|improve this question














      I am trying to use a switch statement with constants but it doesn't appear that the switch statement can see the constants.



      At the top of the class I have:
      private final String A_B_C = 'a b c';



      Then later in the class I am attempting:



      switch on OpportunityTriggerHelper.recordTypes.get(opp.RecordTypeId).getDeveloperName() 
      when A_B_C
      // do something




      What I get is variable doesn't exist A_B_C.



      I know for a fact that that variable is visible because there's no problem using it in an if statement.



      Is this a bug or am I doing something incorrectly?







      apex switch






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked 8 hours ago









      ArthleteArthlete

      1,1491120




      1,1491120




















          1 Answer
          1






          active

          oldest

          votes


















          7














          The when clause can accept the following three types of values



          A) when literal (a when block can have multiple, comma-separated literal clauses)



          B) when SObjectType identifier



          C) When enum_value



          Anything apat from this will give a compiletime error.



          In your case,



          private final String A_B_C = 'a b c'; is a variable and not a literal and hence it gives you an error.



          Src: https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/langCon_apex_switch.htm






          share|improve this answer























          • Perfect! I guess I overlooked the documentation.

            – Arthlete
            8 hours ago












          Your Answer








          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "459"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: false,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsalesforce.stackexchange.com%2fquestions%2f264954%2fswitch-when-cannot-see-constants%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          7














          The when clause can accept the following three types of values



          A) when literal (a when block can have multiple, comma-separated literal clauses)



          B) when SObjectType identifier



          C) When enum_value



          Anything apat from this will give a compiletime error.



          In your case,



          private final String A_B_C = 'a b c'; is a variable and not a literal and hence it gives you an error.



          Src: https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/langCon_apex_switch.htm






          share|improve this answer























          • Perfect! I guess I overlooked the documentation.

            – Arthlete
            8 hours ago
















          7














          The when clause can accept the following three types of values



          A) when literal (a when block can have multiple, comma-separated literal clauses)



          B) when SObjectType identifier



          C) When enum_value



          Anything apat from this will give a compiletime error.



          In your case,



          private final String A_B_C = 'a b c'; is a variable and not a literal and hence it gives you an error.



          Src: https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/langCon_apex_switch.htm






          share|improve this answer























          • Perfect! I guess I overlooked the documentation.

            – Arthlete
            8 hours ago














          7












          7








          7







          The when clause can accept the following three types of values



          A) when literal (a when block can have multiple, comma-separated literal clauses)



          B) when SObjectType identifier



          C) When enum_value



          Anything apat from this will give a compiletime error.



          In your case,



          private final String A_B_C = 'a b c'; is a variable and not a literal and hence it gives you an error.



          Src: https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/langCon_apex_switch.htm






          share|improve this answer













          The when clause can accept the following three types of values



          A) when literal (a when block can have multiple, comma-separated literal clauses)



          B) when SObjectType identifier



          C) When enum_value



          Anything apat from this will give a compiletime error.



          In your case,



          private final String A_B_C = 'a b c'; is a variable and not a literal and hence it gives you an error.



          Src: https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/langCon_apex_switch.htm







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered 8 hours ago









          Pranay JaiswalPranay Jaiswal

          20.4k53366




          20.4k53366












          • Perfect! I guess I overlooked the documentation.

            – Arthlete
            8 hours ago


















          • Perfect! I guess I overlooked the documentation.

            – Arthlete
            8 hours ago

















          Perfect! I guess I overlooked the documentation.

          – Arthlete
          8 hours ago






          Perfect! I guess I overlooked the documentation.

          – Arthlete
          8 hours ago


















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Salesforce Stack Exchange!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsalesforce.stackexchange.com%2fquestions%2f264954%2fswitch-when-cannot-see-constants%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          ParseJSON using SSJSUsing AMPscript with SSJS ActivitiesHow to resubscribe a user in Marketing cloud using SSJS?Pulling Subscriber Status from Lists using SSJSRetrieving Emails using SSJSProblem in updating DE using SSJSUsing SSJS to send single email in Marketing CloudError adding EmailSendDefinition using SSJS

          Кампала Садржај Географија Географија Историја Становништво Привреда Партнерски градови Референце Спољашње везе Мени за навигацију0°11′ СГШ; 32°20′ ИГД / 0.18° СГШ; 32.34° ИГД / 0.18; 32.340°11′ СГШ; 32°20′ ИГД / 0.18° СГШ; 32.34° ИГД / 0.18; 32.34МедијиПодациЗванични веб-сајту

          19. јануар Садржај Догађаји Рођења Смрти Празници и дани сећања Види још Референце Мени за навигацијуу