You need to sign in to do that
Don't have an account?
Akshit Huria
copy input text values to list from column in page block table in salesforce
---------------VF page------------------------------
<apex:page controller="abc1" >
<apex:form >
<apex:pageBlock >
<apex:pageBlockTable value="{!pqr}" var="a">
<apex:column headerValue="Gold">
<apex:outputtext value="{!a}" />
</apex:column>
<apex:column headerValue="10%">
<apex:inputtext value="{!t1}"/>
</apex:column>
<apex:column headerValue="30%">
<apex:inputtext value="{!t2}"/>
</apex:column>
<apex:column headerValue="50%">
<apex:inputtext value="{!t3}"/>
</apex:column>
</apex:pageBlockTable>
<apex:pageBlockButtons >
<apex:commandButton value="Save" action="{!qsave}" />
</apex:pageBlockButtons>
</apex:pageBlock>
</apex:form>
</apex:page>
-----------/VF Page-----------------
-------------controller Class-------------
public class abc1
{
public List<Decimal> t1 { get; set; }
public List<Decimal> t2 { get; set; }
public List<Decimal> t3 { get; set; }
public List<String> pqr {get; set;}
public abc1()
{
pqr=new List<String>();
Schema.DescribeFieldResult fieldResult =Account.a__c.getDescribe();
List<Schema.PicklistEntry> ple = fieldResult.getPicklistValues();
for( Schema.PicklistEntry f:ple)
{
pqr.add(f.getLabel());
}
System.debug(pqr);
}
public void qsave()
{
System.debug('1');
Integer i=0;
List<Quality__c> qqq =new List<Quality__c>();
Quality__c ccc;
for(String x:pqr)
{ System.debug(x);
ccc= new Quality__c(Name=x, ab__c=t1[i]);
qqq.add(ccc);
System.debug(qqq);
i++;
}
try
{
upsert qqq;
}
catch(System.Exception e)
{
System.Debug(e);
}
}
}
<apex:page controller="abc1" >
<apex:form >
<apex:pageBlock >
<apex:pageBlockTable value="{!pqr}" var="a">
<apex:column headerValue="Gold">
<apex:outputtext value="{!a}" />
</apex:column>
<apex:column headerValue="10%">
<apex:inputtext value="{!t1}"/>
</apex:column>
<apex:column headerValue="30%">
<apex:inputtext value="{!t2}"/>
</apex:column>
<apex:column headerValue="50%">
<apex:inputtext value="{!t3}"/>
</apex:column>
</apex:pageBlockTable>
<apex:pageBlockButtons >
<apex:commandButton value="Save" action="{!qsave}" />
</apex:pageBlockButtons>
</apex:pageBlock>
</apex:form>
</apex:page>
-----------/VF Page-----------------
-------------controller Class-------------
public class abc1
{
public List<Decimal> t1 { get; set; }
public List<Decimal> t2 { get; set; }
public List<Decimal> t3 { get; set; }
public List<String> pqr {get; set;}
public abc1()
{
pqr=new List<String>();
Schema.DescribeFieldResult fieldResult =Account.a__c.getDescribe();
List<Schema.PicklistEntry> ple = fieldResult.getPicklistValues();
for( Schema.PicklistEntry f:ple)
{
pqr.add(f.getLabel());
}
System.debug(pqr);
}
public void qsave()
{
System.debug('1');
Integer i=0;
List<Quality__c> qqq =new List<Quality__c>();
Quality__c ccc;
for(String x:pqr)
{ System.debug(x);
ccc= new Quality__c(Name=x, ab__c=t1[i]);
qqq.add(ccc);
System.debug(qqq);
i++;
}
try
{
upsert qqq;
}
catch(System.Exception e)
{
System.Debug(e);
}
}
}
Thank You for your support
I tried another way to do this task
--------------VF Page-----------
<apex:page controller="abc1" >
<apex:form >
<apex:pageBlock >
<apex:pageBlockTable value="{!datalist2}" var="a">
<apex:column headerValue="Gold">
<apex:outputtext value="{!a.Name}" />
</apex:column>
<apex:column headerValue="10%">
<apex:inputtext value="{!a.ab__c}"/>
</apex:column>
<apex:column headerValue="30%">
<apex:inputtext value="{!a.bc__c}"/>
</apex:column>
<apex:column headerValue="50%">
<apex:inputtext value="{!a.cd__c}"/>
</apex:column>
</apex:pageBlockTable>
<apex:pageBlockButtons >
<apex:commandButton value="Save" action="{!qsave}" />
</apex:pageBlockButtons>
</apex:pageBlock>
</apex:form>
</apex:page>
---------------VF page---------------
----------------Controller Class--------------
public class abc1
{
public List<Quality__c> datalist2{get;set;}
public List<Quality__c> getdatalist2()
{
return datalist2;
}
public List<Quality__c> datalist3{get;set;}
public List<Quality__c> getdatalist3()
{
return datalist3;
}
public List<String> pqr {get; set;}
public List<String> pqrs {get; set;}
public abc1()
{
datalist2=new List<Quality__c>();
pqr=new List<String>();
Schema.DescribeFieldResult fieldResult =Account.a__c.getDescribe();
List<Schema.PicklistEntry> ple = fieldResult.getPicklistValues();
for( Schema.PicklistEntry f:ple)
{
pqr.add(f.getLabel());
}
for(String stringData:pqr)
{
datalist2.add(new Quality__c( Name=stringData, ab__c=0.0,bc__c=0.0,cd__c=0.0));
}
System.debug(pqr);
}
public void qsave()
{
if(datalist2.size()>0)
{
insert datalist2;
}
}
}
----------Controller Class----------------------
All Answers
public class abc1
{
public List<wrapper> wrapList{get;set;}
public abc1(){
wrapList = new List<wrapper>();
Schema.DescribeFieldResult fieldResult =Account.a__c.getDescribe();
List<Schema.PicklistEntry> ple = fieldResult.getPicklistValues();
for(Schema.PicklistEntry f : ple){
wrapper w = new wrapper();
w.qqr = f.getLabel();
wrapList.add(w);
}
}
public void qsave(){
List<Quality__c> qqq =new List<Quality__c>();
for(wrapper w : wrapList){
Quality__c ccc = new Quality__c(Name=w.qqr, ab__c=t1);
qqq.add(ccc);
}
try{
upsert qqq;
}catch(System.Exception e){
System.Debug(e);
}
}
public class wrapper{
public String qqr{get;set;}
public Decimal t1{get;set;}
public Decimal t2{get;set;}
public Decimal t3{get;set;}
}
}
---------------VF page------------------------------
<apex:page controller="abc1" >
<apex:form >
<apex:pageBlock >
<apex:pageBlockTable value="{!wrapList}" var="a">
<apex:column headerValue="Gold">
<apex:outputtext value="{!a.qqr}" />
</apex:column>
<apex:column headerValue="10%">
<apex:inputtext value="{!a.t1}"/>
</apex:column>
<apex:column headerValue="30%">
<apex:inputtext value="{!a.t2}"/>
</apex:column>
<apex:column headerValue="50%">
<apex:inputtext value="{!a.t3}"/>
</apex:column>
</apex:pageBlockTable>
<apex:pageBlockButtons >
<apex:commandButton value="Save" action="{!qsave}" />
</apex:pageBlockButtons>
</apex:pageBlock>
</apex:form>
</apex:page>
-----------/VF Page-----------------
@Technomile Admin 6 On using ab__c=w.t1 it will return null value.
public class wrapper{
public String qqr{get;set;}
public Decimal t1{get;set;}
public Decimal t2{get;set;}
public Decimal t3{get;set;}
public wrapper(){
this.qqr = '';
this.t1=0;
this.t2=0;
this.t3=0;
}
}
Thank You for your support
I tried another way to do this task
--------------VF Page-----------
<apex:page controller="abc1" >
<apex:form >
<apex:pageBlock >
<apex:pageBlockTable value="{!datalist2}" var="a">
<apex:column headerValue="Gold">
<apex:outputtext value="{!a.Name}" />
</apex:column>
<apex:column headerValue="10%">
<apex:inputtext value="{!a.ab__c}"/>
</apex:column>
<apex:column headerValue="30%">
<apex:inputtext value="{!a.bc__c}"/>
</apex:column>
<apex:column headerValue="50%">
<apex:inputtext value="{!a.cd__c}"/>
</apex:column>
</apex:pageBlockTable>
<apex:pageBlockButtons >
<apex:commandButton value="Save" action="{!qsave}" />
</apex:pageBlockButtons>
</apex:pageBlock>
</apex:form>
</apex:page>
---------------VF page---------------
----------------Controller Class--------------
public class abc1
{
public List<Quality__c> datalist2{get;set;}
public List<Quality__c> getdatalist2()
{
return datalist2;
}
public List<Quality__c> datalist3{get;set;}
public List<Quality__c> getdatalist3()
{
return datalist3;
}
public List<String> pqr {get; set;}
public List<String> pqrs {get; set;}
public abc1()
{
datalist2=new List<Quality__c>();
pqr=new List<String>();
Schema.DescribeFieldResult fieldResult =Account.a__c.getDescribe();
List<Schema.PicklistEntry> ple = fieldResult.getPicklistValues();
for( Schema.PicklistEntry f:ple)
{
pqr.add(f.getLabel());
}
for(String stringData:pqr)
{
datalist2.add(new Quality__c( Name=stringData, ab__c=0.0,bc__c=0.0,cd__c=0.0));
}
System.debug(pqr);
}
public void qsave()
{
if(datalist2.size()>0)
{
insert datalist2;
}
}
}
----------Controller Class----------------------