In this blog, I am going to create a lightning component which is a replica of the record type selector in lightning, its so simple, its a continuation of my last blog about lightning model link
So lets get started,
Here is the controller, which is fetching all the record type of the Account object
Now here is the lightning component code
Here is the component, if you have read the last blog about the lightning model, then it would be easy to understand this one
This is the Component code, here we have a modal and button, which will have functionality of opening the modal, and the other button will open the Account record creation modal which is standard.
Here is the controller code, which you can add to the controller which we have written earlier in the lightning modal blog, just add these two methods in the controller and we are done with the controller, init method is to initialise method of the helper and createRecord is a standard function which you can use in the lightning component to get the standard functionality of creation of the records.
Here is our helper, where we are calling the controllers method, which will return us a list of the all the record type of the Account object,
You are done, now lets see how it looks,
Here is the modal having list of record types of Account.
And here is the record detail to create a new Account record
To run the above component, create a lightning app
Here is the github Repo for updated code and deploying it salesforce Github
Post a comment if you have any query, I would be happy to help,
thank you !!
So lets get started,
Here is the controller, which is fetching all the record type of the Account object
public class RecordTypeSelectorController { @AuraEnabled public static List<RecordType> getListOfRecordType(){ String query = 'SELECT Id,Name FROM RecordType WHERE IsActive=TRUE AND SobjectType =\''+'Account'+'\' '; List<RecordType> rtNames = new List<RecordType>(); Schema.SObjectType objType = Account.SObjectType; for(RecordTypeInfo rt : objType.getDescribe().getRecordTypeInfos()){ rtNames.add(new RecordType(Id = rt.getRecordTypeId(),Name = rt.getName())); } return rtNames; } @AuraEnabled public static Id getAccountRecordType() { Id ClientRecordTypeId = Schema.SObjectType.Account.getRecordTypeInfosByName().get('Client').getRecordTypeId(); return ClientRecordTypeId; } }
Now here is the lightning component code
Here is the component, if you have read the last blog about the lightning model, then it would be easy to understand this one
This is the Component code, here we have a modal and button, which will have functionality of opening the modal, and the other button will open the Account record creation modal which is standard.
<aura:component implements="force:appHostable,flexipage:availableForAllPageTypes,flexipage:availableForRecordHome,force:hasRecordId,forceCommunity:availableForAllPageTypes" controller="RecordTypeSelectorController" access="global"> <ltng:require styles="/resource/SLDS103/assets/styles/salesforce-lightning-design-system-ltng.css" /> <aura:handler name="init" value="{!this}" action="{!c.doInit}" access="public"/> <aura:attribute name="recordTypes" type="String[]" access="public"/> <div class="slds"> <div > <!-- modal body starts here --> <div tabindex="-1" aria-labelledby="header43" aria-hidden="false" id="newClientSectionId" role="dialog" class="slds-modal slds-fade-in-open" style="display:none;"> <div class="slds-backdrop slds-backdrop--open"> <div class="slds-modal__container"> <div class="slds-modal__header"> <button class="slds-button slds-modal__close slds-button--icon-inverse" title="Close"> <button class="slds-button slds-button--neutral" onclick="{!c.hideModal}">X</button> <span class="slds-assistive-text">Close</span> </button> <h2 id="header43" class="slds-text-heading--medium">Modal Header</h2> </div> <div class="slds-modal__content slds-p-around--medium"> Select a record type : <br/> <div style="margin-left:30%"> <aura:iteration items="{!v.recordTypes}" var="rt"> <ol class="slds-list--vertical slds-list--vertical-space"> <input type="radio" value="{!rt.Name}" name="recordTypeRadio" id="{!rt.Id}" style="margin-right: 5px;" />{!rt.Name} </ol> </aura:iteration> </div> </div> <div class="slds-modal__footer"> <button class="slds-button slds-button--brand" onclick="{!c.hideModal}">Cancel</button> <button class="slds-button slds-button--brand" onclick="{!c.createRecord}">Next</button> </div> </div> </div> </div> <button class="slds-button slds-button--neutral" onclick="{!c.showModal}">Open Modal</button> </div> </div> </aura:component>
Here is the controller code, which you can add to the controller which we have written earlier in the lightning modal blog, just add these two methods in the controller and we are done with the controller, init method is to initialise method of the helper and createRecord is a standard function which you can use in the lightning component to get the standard functionality of creation of the records.
createRecord : function (component, event, helper) { var rtDet = document.querySelector('input[name="recordTypeRadio"]:checked'); if(rtDet != null) { document.getElementById("newClientSectionId").style.display = "none" ; var createRecordEvent = $A.get("e.force:createRecord"); createRecordEvent.setParams({ "entityApiName": "Account", "recordTypeId":rtDet.id }); createRecordEvent.fire(); } }, doInit : function(component, event, helper) { helper.RecordTypeSelectorController(component); }
Here is our helper, where we are calling the controllers method, which will return us a list of the all the record type of the Account object,
({ RecordTypeSelectorController: function(component) { var action = component.get("c.getListOfRecordType"); action.setCallback(this, function(actionResult) { var infos = actionResult.getReturnValue(); component.set("v.recordTypes", infos); }); $A.enqueueAction(action); } })
You are done, now lets see how it looks,
Here is the modal having list of record types of Account.
And here is the record detail to create a new Account record
To run the above component, create a lightning app
<aura:application >
<c:RecordTypeSelector />
</aura:application>
Here is the github Repo for updated code and deploying it salesforce Github
Post a comment if you have any query, I would be happy to help,
thank you !!
Hi Abhi, do you have any idea based on parent record type selection child record type should get selected and the record creation page should come. This should be achieved thru quick action lightning component.. any idea on this
ReplyDeleteThis comment has been removed by the author.
ReplyDeletebest explained. Salesforce Training in Chennai
ReplyDeleteThis comment has been removed by the author.
ReplyDeletebest Explained. coursquare
ReplyDeleteNice content.very useful thank you! for your creative ideas.
ReplyDeletecoursquare
education
Is there any way to prepopulate values on the record detail page? For instance: prepopulate Account Name.
ReplyDeleteDo you have sample one for these if they have descriptions below?
ReplyDeletehow to open visualforce page after record selection.I have scenario with once select the account record type then it should open my custom VF page .but it opens the std.page.I have already override New button in lighting as VF page.
ReplyDeleteThanks for this article, your post helps me to understand the future and career prospects. Keep updating your blog with the latest information.
ReplyDeleteSalesforce Training in Chennai
Salesforce Training
Salesforce course in Chennai
AngularJS Training in Chennai
ccna course in Chennai
PHP Training in Chennai
gst Training in Chennai
Tally course in Chennai
Salesforce Training in Anna Nagar
Salesforce course
Great Article. Thank you for sharing! Really an awesome post for every one.
ReplyDeleteIEEE Final Year projects Project Centers in Chennai are consistently sought after. Final Year Students Projects take a shot at them to improve their aptitudes, while specialists like the enjoyment in interfering with innovation. For experts, it's an alternate ball game through and through. Smaller than expected IEEE Final Year project centers ground for all fragments of CSE & IT engineers hoping to assemble. Final Year Project Domains for IT It gives you tips and rules that is progressively critical to consider while choosing any final year project point.
JavaScript Training in Chennai
JavaScript Training in Chennai
You write this post very carefully I think, which is easily understand to me. Not only this, other post is also good. As a newbie this info is really helpful for me. Thanks to you.
ReplyDeletetally training
Tally Training in Chennai
Tally ERP 9 Training
Tally Course
tally classes
Tally institute in Chennai
Tally Training institute in Chennai
Tally course in Chennai
This content of information has
ReplyDeletehelped me a lot. It is very well explained and easy to understand.
SEO Training
seo course
Such an nice blog. Thanks for sharing this awesome information.
ReplyDeleteAngularJS training in chennai | AngularJS training in anna nagar | AngularJS training in omr | AngularJS training in porur | AngularJS training in tambaram | AngularJS training in velachery
Excellent post. The author has shared the post in a unique way. Have been in a wait for more updates. Do share more. really like this page.
ReplyDeleteAi & Artificial Intelligence Course in Chennai
PHP Training in Chennai
Ethical Hacking Course in Chennai Blue Prism Training in Chennai
UiPath Training in Chennai
Pretty informed post! I'm seeking for some topics I need to see that our site affection and then drove it our site all report is really good. thanks
ReplyDeleteAi & Artificial Intelligence Course in Chennai
PHP Training in Chennai
Ethical Hacking Course in Chennai Blue Prism Training in Chennai
UiPath Training in Chennai
This is the first & best article to make me satisfied by presenting good content. I feel so happy and delighted. Thank you so much for this article.
ReplyDeleteCyber Security Training Course in Chennai | Certification | Cyber Security Online Training Course | Ethical Hacking Training Course in Chennai | Certification | Ethical Hacking Online Training Course | CCNA Training Course in Chennai | Certification | CCNA Online Training Course | RPA Robotic Process Automation Training Course in Chennai | Certification | RPA Training Course Chennai | SEO Training in Chennai | Certification | SEO Online Training Course
youtube abone satın al
ReplyDeletecami avizesi
cami avizeleri
avize cami
no deposit bonus forex 2021
takipçi satın al
takipçi satın al
takipçi satın al
takipcialdim.com/tiktok-takipci-satin-al/
instagram beğeni satın al
instagram beğeni satın al
btcturk
tiktok izlenme satın al
sms onay
youtube izlenme satın al
no deposit bonus forex 2021
tiktok jeton hilesi
tiktok beğeni satın al
binance
takipçi satın al
uc satın al
sms onay
sms onay
tiktok takipçi satın al
tiktok beğeni satın al
twitter takipçi satın al
trend topic satın al
youtube abone satın al
instagram beğeni satın al
tiktok beğeni satın al
twitter takipçi satın al
trend topic satın al
youtube abone satın al
takipcialdim.com/instagram-begeni-satin-al/
perde modelleri
instagram takipçi satın al
instagram takipçi satın al
takipçi satın al
instagram takipçi satın al
betboo
marsbahis
sultanbet
instagram takipçi satın al
ReplyDeletecasino siteleri
G4HVO
Such a priceless piece of information. It was quite interesting to read this article.I would want to thank you for your efforts in writing this amazing essay. customer relationship management module in erp
ReplyDeleteçekmeköy
ReplyDeletekepez
manavgat
milas
balıkesir
4AR
bayrampaşa
ReplyDeletegüngören
hakkari
izmit
kumluca
W3J
yurtdışı kargo
ReplyDeleteresimli magnet
instagram takipçi satın al
yurtdışı kargo
sms onay
dijital kartvizit
dijital kartvizit
https://nobetci-eczane.org/
FFR
Adana
ReplyDeleteErzurum
Sinop
istanbul
Düzce
4FTOMS
düzce
ReplyDeletesakarya
tunceli
van
bayburt
0İHTF
antep evden eve nakliyat
ReplyDeletebolu evden eve nakliyat
afyon evden eve nakliyat
tekirdağ evden eve nakliyat
artvin evden eve nakliyat
5ZZ
Here I saw several articles and posts published on this site, I am more interested in some of them, will provide more information on these topics in future articles.Manual Testing training onlineManual Testing Online TrainingQA training OnlineSoftware testing Online Courseselenium training online courseqa testing online coursepython training in hyderabad
ReplyDelete44592
ReplyDeleteİzmir Evden Eve Nakliyat
Nevşehir Evden Eve Nakliyat
deca durabolin
Coin Nedir
Kırklareli Evden Eve Nakliyat
buy steroids
Kırşehir Evden Eve Nakliyat
Kırıkkale Evden Eve Nakliyat
Btcturk Güvenilir mi
7460A
ReplyDeletecanlı sohbet ücretsiz
kripto para nasıl alınır
binance
filtre kağıdı
mexc
kraken
telegram kripto para
bitexen
paribu
89A3F
ReplyDeletefiltre kağıdı
4g mobil proxy
June 2024 Calendar
paribu
September 2024 Calendar
2024 Calendar
probit
güvenilir kripto para siteleri
bybit
7854F
ReplyDeletewhatsapp canlı şov
8F87943057
ReplyDeletecam show
skype show
canli cam show
green temptation
kamagra
cobra vega
kaldırıcı
themra macun
lady era
02D1BAB323
ReplyDeletegörüntülü show
850FBE3864
ReplyDeletetelegram show
whatsapp görüntülü show güvenilir
geciktirici jel
kaldırıcı hap
green temptation
stag
cam şov
lifta
bayan azdırıcı damla