Is it possible to dynamically set properties of an `Object` using Apex?Pass inner class object as an argument to apex classError: Compile Error: Method does not exist or incorrect signature: [httprequest] methodsExecute Anonymous Error: Getting Started with ApexAdd list of field names from SObjectField into SetMethod does not exist or incorrect signature: void containsKey(Id) from the type Set<Id>create 100K records of custom object using Batch Apex Salesforceunable to pass an object to another method in apexHow to access Class members decorated using get; set; Get Field value from object using string keyHow to addError on the dynamic string field api name

Pressure to defend the relevance of one's area of mathematics

Why is current rating for multicore cable lower than single core with the same cross section?

A possible fake AI on Patreon!

Killing undead fish underwater

Do vanished people know what happened after the snap?

How do Bards prepare spells?

Minimum value of 4 digit number divided by sum of its digits

Sci-fi book: portals appear in London and send a failed artist towards a designated path where he operate a giant superweapon

Sci-fi novel series with instant travel between planets through gates. A river runs through the gates

How does a DHCP relay router forward the packet to the server?

What is the most expensive material in the world that could be used to create Pun-Pun's lute?

How can I place the product on a social media post better?

Are Boeing 737-800’s grounded?

ConTeXt: MetaPost graphic in overlay setups shifts between pages

Hilbert Space and Banach Space

Was it really necessary for the Lunar module LM to have 2 stages?

Examples of non trivial equivalence relations , I mean equivalence relations without the expression " same ... as" in their definition?

How do I deal with a coworker that keeps asking to make small superficial changes to a report, and it is seriously triggering my anxiety?

Realistic Necromancy?

Don’t seats that recline flat defeat the purpose of having seatbelts?

Pulling the rope with one hand is as heavy as with two hands?

"The cow" OR "a cow" OR "cows" in this context

Do I have an "anti-research" personality?

Can solid acids and bases have pH values? If not, how are they classified as acids or bases?



Is it possible to dynamically set properties of an `Object` using Apex?


Pass inner class object as an argument to apex classError: Compile Error: Method does not exist or incorrect signature: [httprequest] methodsExecute Anonymous Error: Getting Started with ApexAdd list of field names from SObjectField into SetMethod does not exist or incorrect signature: void containsKey(Id) from the type Set<Id>create 100K records of custom object using Batch Apex Salesforceunable to pass an object to another method in apexHow to access Class members decorated using get; set; Get Field value from object using string keyHow to addError on the dynamic string field api name






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








1















Background



I would like to be able to dynamically set properties of an Object (not SObject).



Given this class:



public class Invoice 
public String Ref get; set;



I would like to be able to do this:



Invoice inv = new Invoice();
inv.put('Ref', 'REF123');


But when I do Execute Anonymous Apex with above code, I this error:




ERROR: Compilation failed.

! ERROR: Line: 3, Column: 12

! Method does not exist or incorrect signature: void put(String, String)

! from the type Invoice

ERROR: Execution failed.




Question



  1. Is it possible to dynamically set properties of an Object (not SObject) using Apex?

  2. How would I dynamically set a property of an Object using Apex?









share|improve this question






























    1















    Background



    I would like to be able to dynamically set properties of an Object (not SObject).



    Given this class:



    public class Invoice 
    public String Ref get; set;



    I would like to be able to do this:



    Invoice inv = new Invoice();
    inv.put('Ref', 'REF123');


    But when I do Execute Anonymous Apex with above code, I this error:




    ERROR: Compilation failed.

    ! ERROR: Line: 3, Column: 12

    ! Method does not exist or incorrect signature: void put(String, String)

    ! from the type Invoice

    ERROR: Execution failed.




    Question



    1. Is it possible to dynamically set properties of an Object (not SObject) using Apex?

    2. How would I dynamically set a property of an Object using Apex?









    share|improve this question


























      1












      1








      1








      Background



      I would like to be able to dynamically set properties of an Object (not SObject).



      Given this class:



      public class Invoice 
      public String Ref get; set;



      I would like to be able to do this:



      Invoice inv = new Invoice();
      inv.put('Ref', 'REF123');


      But when I do Execute Anonymous Apex with above code, I this error:




      ERROR: Compilation failed.

      ! ERROR: Line: 3, Column: 12

      ! Method does not exist or incorrect signature: void put(String, String)

      ! from the type Invoice

      ERROR: Execution failed.




      Question



      1. Is it possible to dynamically set properties of an Object (not SObject) using Apex?

      2. How would I dynamically set a property of an Object using Apex?









      share|improve this question
















      Background



      I would like to be able to dynamically set properties of an Object (not SObject).



      Given this class:



      public class Invoice 
      public String Ref get; set;



      I would like to be able to do this:



      Invoice inv = new Invoice();
      inv.put('Ref', 'REF123');


      But when I do Execute Anonymous Apex with above code, I this error:




      ERROR: Compilation failed.

      ! ERROR: Line: 3, Column: 12

      ! Method does not exist or incorrect signature: void put(String, String)

      ! from the type Invoice

      ERROR: Execution failed.




      Question



      1. Is it possible to dynamically set properties of an Object (not SObject) using Apex?

      2. How would I dynamically set a property of an Object using Apex?






      apex object dynamic-apex






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited 40 mins ago







      Robs

















      asked 1 hour ago









      RobsRobs

      2,554743




      2,554743




















          1 Answer
          1






          active

          oldest

          votes


















          2














          For some isolated cases - yours is one of them - there is this (ab)use of the serialize methods:



          Invoice inv = (Invoice) JSON.deserialize(JSON.serialize(new Map<<String, Object>
          'Ref' => 'REF123'
          )), Invoice.class);


          Here, the capability of JSON.deserialize to create an instance of the specified type and set the properties of the instance is being used.



          But in general, Apex is missing the map-like behavior for objects or a reflection API.






          share|improve this answer























            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%2f260323%2fis-it-possible-to-dynamically-set-properties-of-an-object-using-apex%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









            2














            For some isolated cases - yours is one of them - there is this (ab)use of the serialize methods:



            Invoice inv = (Invoice) JSON.deserialize(JSON.serialize(new Map<<String, Object>
            'Ref' => 'REF123'
            )), Invoice.class);


            Here, the capability of JSON.deserialize to create an instance of the specified type and set the properties of the instance is being used.



            But in general, Apex is missing the map-like behavior for objects or a reflection API.






            share|improve this answer



























              2














              For some isolated cases - yours is one of them - there is this (ab)use of the serialize methods:



              Invoice inv = (Invoice) JSON.deserialize(JSON.serialize(new Map<<String, Object>
              'Ref' => 'REF123'
              )), Invoice.class);


              Here, the capability of JSON.deserialize to create an instance of the specified type and set the properties of the instance is being used.



              But in general, Apex is missing the map-like behavior for objects or a reflection API.






              share|improve this answer

























                2












                2








                2







                For some isolated cases - yours is one of them - there is this (ab)use of the serialize methods:



                Invoice inv = (Invoice) JSON.deserialize(JSON.serialize(new Map<<String, Object>
                'Ref' => 'REF123'
                )), Invoice.class);


                Here, the capability of JSON.deserialize to create an instance of the specified type and set the properties of the instance is being used.



                But in general, Apex is missing the map-like behavior for objects or a reflection API.






                share|improve this answer













                For some isolated cases - yours is one of them - there is this (ab)use of the serialize methods:



                Invoice inv = (Invoice) JSON.deserialize(JSON.serialize(new Map<<String, Object>
                'Ref' => 'REF123'
                )), Invoice.class);


                Here, the capability of JSON.deserialize to create an instance of the specified type and set the properties of the instance is being used.



                But in general, Apex is missing the map-like behavior for objects or a reflection API.







                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered 47 mins ago









                Keith CKeith C

                97.4k1197220




                97.4k1197220



























                    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%2f260323%2fis-it-possible-to-dynamically-set-properties-of-an-object-using-apex%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

                    Are there any AGPL-style licences that require source code modifications to be public? Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern) Announcing the arrival of Valued Associate #679: Cesar Manara Unicorn Meta Zoo #1: Why another podcast?Force derivative works to be publicAre there any GPL like licenses for Apple App Store?Do you violate the GPL if you provide source code that cannot be compiled?GPL - is it distribution to use libraries in an appliance loaned to customers?Distributing App for free which uses GPL'ed codeModifications of server software under GPL, with web/CLI interfaceDoes using an AGPLv3-licensed library prevent me from dual-licensing my own source code?Can I publish only select code under GPLv3 from a private project?Is there published precedent regarding the scope of covered work that uses AGPL software?If MIT licensed code links to GPL licensed code what should be the license of the resulting binary program?If I use a public API endpoint that has its source code licensed under AGPL in my app, do I need to disclose my source?

                    2013 GY136 Descoberta | Órbita | Referências Menu de navegação«List Of Centaurs and Scattered-Disk Objects»«List of Known Trans-Neptunian Objects»

                    Mortes em março de 2019 Referências Menu de navegação«Zhores Alferov, Nobel de Física bielorrusso, morre aos 88 anos - Ciência»«Fallece Rafael Torija, o bispo emérito de Ciudad Real»«Peter Hurford dies at 88»«Keith Flint, vocalista do The Prodigy, morre aos 49 anos»«Luke Perry, ator de 'Barrados no baile' e 'Riverdale', morre aos 52 anos»«Former Rangers and Scotland captain Eric Caldow dies, aged 84»«Morreu, aos 61 anos, a antiga lenda do wrestling King Kong Bundy»«Fallece el actor y director teatral Abraham Stavans»«In Memoriam Guillaume Faye»«Sidney Sheinberg, a Force Behind Universal and Spielberg, Is Dead at 84»«Carmine Persico, Colombo Crime Family Boss, Is Dead at 85»«Dirigent Michael Gielen gestorben»«Ciclista tricampeã mundial e prata na Rio 2016 é encontrada morta em casa aos 23 anos»«Pagan Community Notes: Raven Grimassi dies, Indianapolis pop-up event cancelled, Circle Sanctuary announces new podcast, and more!»«Hal Blaine, Wrecking Crew Drummer, Dies at 90»«Morre Coutinho, que editou dupla lendária com Pelé no Santos»«Cantor Demétrius, ídolo da Jovem Guarda, morre em SP»«Ex-presidente do Vasco, Eurico Miranda morre no Rio de Janeiro»«Bronze no Mundial de basquete de 1971, Laís Elena morre aos 76 anos»«Diretor de Corridas da F1, Charlie Whiting morre aos 66 anos às vésperas do GP da Austrália»«Morreu o cardeal Danneels, da Bélgica»«Morreu o cartoonista Augusto Cid»«Morreu a atriz Maria Isabel de Lizandra, de "Vale Tudo" e novelas da Tupi»«WS Merwin, prize-winning poet of nature, dies at 91»«Atriz Márcia Real morre em São Paulo aos 88 anos»«Mauritanie: décès de l'ancien président Mohamed Mahmoud ould Louly»«Morreu Dick Dale, o rei da surf guitar e de "Pulp Fiction"»«Falleció Víctor Genes»«João Carlos Marinho, autor de 'O Gênio do Crime', morre em SP»«Legendary Horror Director and SFX Artist John Carl Buechler Dies at 66»«Morre em Salvador a religiosa Makota Valdina»«مرگ بازیکن‌ سابق نساجی بر اثر سقوط سنگ در مازندران»«Domingos Oliveira morre no Rio»«Morre Airton Ravagniani, ex-São Paulo, Fla, Vasco, Grêmio e Sport - Notícias»«Morre o escritor Flavio Moreira da Costa»«Larry Cohen, Writer-Director of 'It's Alive' and 'Hell Up in Harlem,' Dies at 77»«Scott Walker, experimental singer-songwriter, dead at 76»«Joseph Pilato, Day of the Dead Star and Horror Favorite, Dies at 70»«Sheffield United set to pay tribute to legendary goalkeeper Ted Burgin who has died at 91»«Morre Rafael Henzel, sobrevivente de acidente aéreo da Chapecoense»«Morre Valery Bykovsky, um dos primeiros cosmonautas da União Soviética»«Agnès Varda, cineasta da Nouvelle Vague, morre aos 90 anos»«Agnès Varda, cineasta francesa, morre aos 90 anos»«Tania Mallet, James Bond Actress and Helen Mirren's Cousin, Dies at 77»e