function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
reddygari403reddygari403 

regarding wrapper class

Hi,

 

 

i writtn the code for a wrapper class.

 

 

my task is if there is 10 records i want to save only 4 records.first i have to select the records  by clicking check box  .after that i have to click "process selected" for saving the 4 records.so plz help.

 

 

my code

 

 

page:

 

<apex:page controller="wrapperClassController2">

<apex:form >

<apex:pageBlock >

<apex:pageBlockButtons >

<apex:commandButton value="Process Selected" action="{!processSelected}" rerender="table"/>

</apex:pageBlockButtons>

<!-- In our table we are displaying the cContact records -->

<apex:pageBlockTable value="{!contacts}" var="c" id="table">

<apex:column >

<!-- This is our selected Boolean property in our wrapper class -->

<apex:inputCheckbox value="{!c.selected}"/>

</apex:column>

<!-- This is how we access the contact values within our cContact container/wrapper -->

<apex:column value="{!c.con.Name}" />

<apex:column value="{!c.con.Email}" />

<apex:column value="{!c.con.Phone}" />

</apex:pageBlockTable>

</apex:pageBlock>

</apex:form>

</apex:page>

 

controller:

=========

 

public class wrapperClassController2 {

 

//Our collection of the class/wrapper objects cContact

public List<cContact> contactList {get; set;}

 

//This method uses a simple SOQL query to return a List of Contacts

public List<cContact> getContacts() {

if(contactList == null) {

contactList = new List<cContact>();

for(Contact c : [select Id, Name, Email, Phone from Contact limit 20]) {

// As each contact is processed we create a new cContact object and add it to the contactList

contactList.add(new cContact(c));

}

}

return contactList;

}

 

 

public PageReference processSelected() {

 

//We create a new list of Contacts that we be populated only with Contacts if they are selected

List<Contact> selectedContacts = new List<Contact>();

 

//We will cycle through our list of cContacts and will check to see if the selected property is set to true, if it is we add the Contact to the selectedContacts list

for(cContact cCon : getContacts()) {

if(cCon.selected == true) {

selectedContacts.add(cCon.con);

}

}

 

// Now we have our list of selected contacts and can perform any type of logic we want, sending emails, updating a field on the Contact, etc

System.debug('These are the selected Contacts...');

for(Contact con : selectedContacts) {

system.debug(con);

}

return null;

}

 

 

// This is our wrapper/container class. A container class is a class, a data structure, or an abstract data type whose instances are collections of other objects. In this example a wrapper class contains both the standard salesforce object Contact and a Boolean value

public class cContact {

public Contact con {get; set;}

public Boolean selected {get; set;}

 

//This is the contructor method. When we create a new cContact object we pass a Contact that is set to the con property. We also set the selected value to false

public cContact(Contact c) {

con = c;

selected = false;

}

}

}

Mani PenumarthiMani Penumarthi

hey n hi,

i was confused

upto now it is ok and after selecting the 4 records , where to save these records to?

these records already saved in contact and getting those in the form of list. right?

 

reddygari403reddygari403

after selecting the records by clicking checkbox.then we have to click save for saving those 4 records in the object


thanking you

reddygari403reddygari403

while we execute the code 10 records will be displayed.after displaying they are not saving to object.so we have to select the records   by clicking checkbox.then we have to click save for saving those 4 records in the object


thanking you