Toggle Side Panel

  • Blogs
  • Consultants
    • Salesforce Product Expertise
      • Top Salesforce ConsultantsTop Salesforce Consultants
      • Marketing Cloud ConsultantsMarketing Cloud Consultants
      • Service Cloud ConsultantsService Cloud Consultants
      • Experience Cloud ConsultantsExperience Cloud Consultants
      • Analytics Cloud ConsultantsAnalytics Cloud Consultants
    • Salesforce Industry Expertise
      • Non-Profit Cloud ConsultantsNon-Profit Cloud Consultants
      • Financial Service Cloud ConsultantsFinancial Service Cloud Consultants
      • Health Cloud ConsultantsHealth Cloud Consultants
      • Commerce Cloud ConsultantsCommerce Cloud Consultants
      • Manufacturing Cloud ConsultantsManufacturing Cloud Consultants
    • Salesforce Experts by Location
      • USATop Salesforce Consultants in USA
      • IndiaTop Salesforce Consultants in India
      • AustraliaTop Salesforce Consultants in Australia
      • United KingdomTop Salesforce Consultants in UK
      • CanadaTop Salesforce Consultants in Canada
  • Webinars
  • Contact Us
  • Discussions
More options
    Sign in Sign up
    • Blogs
    • Consultants
      • Salesforce Product Expertise
        • Top Salesforce ConsultantsTop Salesforce Consultants
        • Marketing Cloud ConsultantsMarketing Cloud Consultants
        • Service Cloud ConsultantsService Cloud Consultants
        • Experience Cloud ConsultantsExperience Cloud Consultants
        • Analytics Cloud ConsultantsAnalytics Cloud Consultants
      • Salesforce Industry Expertise
        • Non-Profit Cloud ConsultantsNon-Profit Cloud Consultants
        • Financial Service Cloud ConsultantsFinancial Service Cloud Consultants
        • Health Cloud ConsultantsHealth Cloud Consultants
        • Commerce Cloud ConsultantsCommerce Cloud Consultants
        • Manufacturing Cloud ConsultantsManufacturing Cloud Consultants
      • Salesforce Experts by Location
        • USATop Salesforce Consultants in USA
        • IndiaTop Salesforce Consultants in India
        • AustraliaTop Salesforce Consultants in Australia
        • United KingdomTop Salesforce Consultants in UK
        • CanadaTop Salesforce Consultants in Canada
    • Webinars
    • Contact Us
    • Discussions
    Close search

    Activity › Forums › Salesforce® Discussions › How to insert Account and its related contacts through Salesforce Visualforce page?

    Tagged: Contact List in Salesforce, Contact Object, Contact Record, Insert Account, Multiple Contacts, Multiple Records, Salesforce Visualforce Page, Visualforce Component, Visualforce Controller in Salesforce

    • Salesforce® Discussions

      How to insert Account and its related contacts through Salesforce Visualforce page?

      Posted by shariq on August 8, 2017 at 6:07 AM

      I want to insert Account and its multiple contacts by filling fields on visualforce page.

      shariq replied 7 years, 11 months ago 3 Members · 3 Replies
      • Contact List in Salesforce
      • Contact Object
      • Contact Record
      • Insert Account
      • Multiple Contacts
      • Multiple Records
      • Salesforce Visualforce Page
      • Visualforce Component
      • Visualforce Controller in Salesforce
    • 3 Replies
    • Ajay Prakash

      Member
      January 13, 2018 at 3:05 PM

      Hi Shariq,

      You can not insert Account and its related contacts in the single transaction. You need to insert account first and then its related contacts. To insert related contacts you need the id of the parent Account.

      Please let us know what you have tried so far, in your scenario then we may be more helpful.

      Thanks.

       

      • This reply was modified 8 years, 7 months ago by  Ajay Prakash.
    • [adinserter block='9']
    • Parul

      Member
      September 15, 2018 at 2:42 PM

      In single transaction it's not possible to insert account and its related contacts because you have to insert first parent then its child record.

       

       

      Thanks

    • shariq

      Member
      September 16, 2018 at 10:19 AM

      Hi Ajay,

      This is the code I have written and it is working fine for me -

      Apex class - 

      public with sharing class AddContactsAccounts1
      {

      // public List <AddCon> customContacts {get; set;}
      public List <Account> accounts ;
      public List <Contact> contacts1{get; set;}
      public Map <Integer,List<Contact>> mapIntVsConList{get; set;}
      public Map <Integer,Account> mapIntVsAcc{get; set;}
      public Integer i ;
      public Integer j ;
      public Account acc {get; set;}
      public Contact con {get; set;}

      public AddContactsAccounts1()
      {
      i=0;j=0;
      accounts = new List<Account>();
      mapIntVsConList = new Map <Integer,List<Contact>>();
      mapIntVsAcc = new Map <Integer,Account>();
      // customAccounts = new List <AddAcc> ();
      //customContacts = new List <AddCon> ();
      contacts1 = new List<Contact>();
      // AddAcc customAccount = new AddAcc();
      // customAccounts.add(customAccount);
      acc = new Account();
      mapIntVsAcc.put(i,acc);
      mapIntVsConList.put(i,contacts1);
      }

      public void addNewAccount()
      {
      i++;
      //customContacts = new List <AddCon> ();
      acc = new Account();
      mapIntVsAcc.put(i,acc);
      contacts1 = new List<contact>();
      mapIntVsConList.put(i,contacts1);

      }
      public void addNewContact()
      {
      con = new Contact();
      contacts1.add(con);
      mapIntVsConList.put(i,contacts1);
      }

      public PageReference insertAccountsContacts()
      {
      //i=0;
      //Map <Id,List<Contact>> mapAccIdVsCon = new Map <Id,List<Contact>>();
      PageReference pageRefer = new PageReference('/apex/AddContactsAccountsPage1');
      /*for (AddAcc customAccount : customAccounts)
      {
      accounts.add(customAccount.acc);
      }*/
      //system.debug('accounts::::'+accounts);
      List<Contact> conList = new List<Contact>();
      for(Integer i : mapIntVsAcc.keySet())
      {
      accounts.add(mapIntVsAcc.get(i));
      }
      insert accounts;
      j = 0;
      for(Account a : accounts)
      {
      //List <Contact> contacts = new List <Contact>();
      for(Contact c : mapIntVsConList.get(j))
      {
      c.accountId = a.Id;
      conList.add(c);
      }
      // mapAccIdVsCon.put(a.Id, contacts);
      j++;
      }
      //system.debug('contacts::::'+contacts);

      /* for(Id ide :mapAccIdVsCon.keySet())
      {
      for(Contact c : mapAccIdVsCon.get(ide))
      {
      conList.add(c);
      }
      }*/
      insert conList;

      pageRefer.setRedirect(True);
      return pageRefer;
      // return Page.AddContactsAccountsPage1;
      }
      }

      Visualforce page - 

      <apex:page controller="AddContactsAccounts1" sidebar="false" >
      <apex:form id="form">
      <apex:pageBlock >
      <apex:pageBlockButtons >
      <apex:commandButton action="{!addNewAccount}" value="Add New Account" rerender="pageId"/>
      <apex:commandButton action="{!addNewContact}" value="Add New Contact" rerender="pageId"/>
      <apex:commandButton action="{!insertAccountsContacts}" value="Insert All" />
      </apex:pageBlockButtons>

      <apex:pageBlockTable var="customAccount" value="{!mapIntVsAcc}" id="pageId">
      <apex:column ><h1>
      Account Name
      </h1> <apex:inputfield value="{!mapIntVsAcc[customAccount].Name}" /></apex:column>
      <apex:column > <apex:pageBlockTable value="{!mapIntVsConList[customAccount]}" var="cont" columns="6" >
      <apex:column ><h1>
      Contact Last Name
      </h1> <apex:inputfield value="{!cont.LastName}" /> </apex:column>
      <apex:column ><h1>
      Gender
      </h1> <apex:inputfield value="{!cont.Gender__c}" /> </apex:column>
      <apex:column > <h1>
      Start Date
      </h1> <apex:inputfield value="{!cont.Start_Date__c}" /> </apex:column>
      <apex:column ><h1>
      End Date
      </h1> <apex:inputfield value="{!cont.End_Date__c}" /> </apex:column>
      </apex:pageBlockTable></apex:column>
      </apex:pageBlockTable>

      </apex:pageBlock>
      </apex:form>
      </apex:page>

      Thanks.

    Log In to reply.

    • Public
    • All Members
    • My Connections
    • Only Me
    • Public
    • All Members
    • My Connections
    • Only Me
    • Public
    • All Members
    • My Connections
    • Only Me

    Popular Salesforce Blogs

    No Code ScheduleOnce and Salesforce Integration

    Blog in Salesforce integration

    ScheduleOnce is a cloud-based scheduling service that enables businesses of all sizes to schedule and manage user engagement with their users and prospects. Users can…

    API requests, API User, Booking Data, Cloud-based Scheduling Service, CRM
    Apphienz Apr 26, 2022
    2,249  Views

    Top 4 Considerations in Choosing your Salesforce CPQ Partner

    Blog in Salesforce Products

    Congratulations, you’ve made the decision to implement Salesforce CPQ! Now comes the challenging task of choosing the right Salesforce CPQ partner to help fulfill your…

    Sales Management, Salesforce Consulting Partner, Salesforce CPQ benefits, Salesforce CPQ Implementation, Salesforce CPQ Partner
    LevelShift (formerly DemandBlue) Aug 5, 2019
    2,515  Views
    Utility Bar Component in Salesforce

    Utility Bar Component in Salesforce Lightning

    Blog in Lightning

    In this blog, I will be discussing the utility bar component that can be used to save a lot of time to perform certain tasks…

    Lightning, Lightning Components, Salesforce Apex Controller, Salesforce Apps, Salesforce Lightning Component
    Parantap Aug 26, 2019
    35,462  Views

    Popular Salesforce Videos

    Product Rule Vs Price Rule Salesforce CPQ

    Product Rule Vs Price Rule Salesforce CPQ

    Video in Others, Salesforce Stories

    Product Rule CPQ product rules help ensure sales reps are putting together the right products and bundles every single time. You don’t have to worry…

    Salesforce Training, Salesforce CPQ, Salesforce Video, Product Rules, Product Rule
    Jogender Jun 10, 2020
    6,840  Views
    How To Become A Salesforce Administrator | Salesforce Administrator Training

    How To Become A Salesforce Administrator | Salesforce Administrator Training

    Video in Salesforce Training, Salesforce Development

    What does Salesforce developer do? Salesforce developers lead the testing and implementation of software development efforts, including coding, configuration, maintenance, installation, testing, and debugging, as…

    Salesforce Training, Salesforce Developer, Learn Salesforce, Salesforce Video, Testing
    Rupal Kakkar Jul 29, 2021
    2,047  Views
    Visualforce Training for Beginners : Visualforce Tags in Salesforce

    Visualforce Training for Beginners : Visualforce Tags in Salesforce

    Video in Visualforce

    This video helps you to learn following topics: Visualforce Tags Standard Controllers Associating a Standard Controller with a Visualforce Page What are action methods? Action…

    salesforce training videos for beginners, Salesforce Developer, Salesforce Tutorial for Beginners, salesforce platform, Cloud Computing
    Abhay Mar 7, 2018
    1,694  Views
    Footer Forcetalks logo

    support@forcetalks.com

    • twitterx

    Quick Links

    Advertise with Us

    Salesforce® Articles

    Dreamforce 2023

    Top Salesforce® Bloggers 2023

    Top Salesforce Consultants

    Get Listed

    Company

    Contact Us

    About Us

    Privacy Policy

    Terms & Conditions

    InsightHub

    Salesforce Blogs

    Salesforce Videos

    Salesforce Groups

    Salesforce Jobs

    © 2026 - Forcetalks ● All Rights Reserved

    Salesforce® is a trademark of Salesforce® Inc. No claim is made to the exclusive right to use “Salesforce”. Any services offered within the Forcetalks website/app are not sponsored or endorsed by Salesforce®.

    We use cookies to enhance your browsing experience. Please see our privacy policy if you'd like more information on our use of cookies.