You need to sign in to do that
Don't have an account?
Kaity
How to fetch the18 digits ID of Master record while creating Child record.
Hi experts,
Requirement: I have 2 objects: Account(Standard) and Cobject(Custom object). Account and Cobject has a master-detail relationship. So, on Account Detail Page, we have Cobject as related list. In the relatedlist, 'NEW' button of cObject is overridden by a VisualForce Page. My query is- How can I get the AccountId for the Cobject that I am creating on clicking 'NEW' button? Please help with the syntax.
I have tried to get the AccountId from the URL. But, URL shows only 15 digits in the UI. If we take this 15 digits ID, then on assiging the 15 digits ID in the Custom field(for M-D relation) , throws an error, saying- INVALID ID.
Here, we need to get the 18 digit AccountID for which new Cobject record is creating. Please help
Thanks,
Kaity
Requirement: I have 2 objects: Account(Standard) and Cobject(Custom object). Account and Cobject has a master-detail relationship. So, on Account Detail Page, we have Cobject as related list. In the relatedlist, 'NEW' button of cObject is overridden by a VisualForce Page. My query is- How can I get the AccountId for the Cobject that I am creating on clicking 'NEW' button? Please help with the syntax.
I have tried to get the AccountId from the URL. But, URL shows only 15 digits in the UI. If we take this 15 digits ID, then on assiging the 15 digits ID in the Custom field(for M-D relation) , throws an error, saying- INVALID ID.
Here, we need to get the 18 digit AccountID for which new Cobject record is creating. Please help
Thanks,
Kaity
How were you able to select this VF page while overriding New button on custom object-Business?As this VF page is based on Account StandardController ,you will not be able to see this VF page in the dropdown 'Visualforce Page with'. Am I missing anything here?
Yes we can save the record by hardcoding15 digit id.I have just tried and it worked
First we need to test if this page works standalone by accessing your page like below and adding Business records.If it works,later you can progress to including this page in your app.Change your server node ap1 in below URL.Type the below URL in your address bar,add business records and check if they are getting saved.Ensure that you are using below lines in controller to get the account id instead of hardcoding the id
https://ap1.salesforce.com/apex/YOUR_VF_PAGE_NAME?id=YOUR_15_DIGIT_ACCOUNT_ID
All Answers
Please find the below, code snippet, where I want to find the ID of Account(Master) record. Please let me know, if you need other information.
-Kaity
public customController(ApexPages.StandardController controller){
this.acc = (Account)controller.getRecord();
String hostVal = ApexPages.currentPage().getHeaders().get('Host');
system.debug('=======MY HOST NAME========='+hostVal);
String urlVal = Apexpages.currentPage().getUrl();
system.debug('=======MY HOST NAME========='+urlVal );
String URLL = 'https://' + hostVal+ urlVal;
system.debug('=======MY HOST NAME========='+URLL);
id1=urlVal.substring(75,91);
System.debug('+++++15 digit id+++++'+id1);
//AccountId=id1;
system.debug('=======newAccountId is========='+AccountId);
//List<Account> i=[Select id from Account where id=:id1 limit 1];
//system.debug('=======18 digit AccountId is========='+i);
//system.debug('=======AccountId is========='+AccountId);
Id idey=ApexPages.CurrentPage().geParameters().get('id');
public class myBusinessController {
Account acc = new Account();
public Business__c business{get;set;}
public ID AccountId= null;
public List<business__c> bus {get; set;}
public String id1;
public String id2;
public String standardizedBusinessProcess;
public String desiredBusinessOutcomes;
public String applicationSupport;
public String stakeholdersBuyins;
public String currentlyOutsouce;
public String systems;
public String cloudBasedPlatforms;
public String ITStrategy;
public String investedinCloud;
public String satisfiedWithCloud;
public String ITApplicationsSharedBetweenLOB;
public String users;
public String risk;
public String geographicalFootprint;
public String disparityinITBudget;
public String multiGeographyEngagement;
public String nonFunctionalRequirement;
public String specificNFR;
public String seasonalUserLoad;
public String changeManagementProgram;
public String MyAccount;
public myBusinessController(ApexPages.StandardController controller){
this.acc = (Account)controller.getRecord();
id billAccountId = controller.getId();
System.debug('ACCOUNT ID'+ billAccountId);
System.debug('WORLD OF CONTROLLER'+ this.acc);
// bus.add(new business__c(Account__c = Account.id);
System.debug('@@@@@@@@'+ this.MyAccount);
/*Id id = ApexPages.currentPage().getParameters().get('id');
business=(id == null) ? new Business__c() :
[SELECT Name FROM Business__c WHERE Id = :id];
Id id=controller.getId();
system.debug('=======id is========='+id);*/
String hostVal = ApexPages.currentPage().getHeaders().get('Host');
system.debug('=======Host is========='+hostVal);
String urlVal = Apexpages.currentPage().getUrl();
system.debug('=======URL is========='+urlVal );
String URLL = 'https://' + hostVal+ urlVal;
system.debug('=======entire URL is========='+URLL);
id1=urlVal.substring(75,91);
System.debug('+++++15 digit id+++++'+id1);
//AccountId=id1;
system.debug('=======newAccountId is========='+AccountId);
//List<Account> i=[Select id from Account where id=:id1 limit 1];
//id1 = '0019000000ld9fBAAQ';
//system.debug('=======18 digit AccountId is========='+i);
//this.AccountId=Id.valueOf(id1);
//system.debug('=======AccountId is========='+AccountId);
// public Integer myint{
// get{
// if(acc == null)
// acc = [SELECT ID FROM Account where ID = :id1];
// }
}
public List<SelectOption> getvalue(){
List<SelectOption> options= new List<SelectOption>();
options.add(new SelectOption('Yes','Yes'));
options.add(new SelectOption('Partial','Partial'));
options.add(new SelectOption('No','No'));
return options;
}
public List<SelectOption> getvalue1(){
List<SelectOption> options= new List<SelectOption>();
options.add(new SelectOption('Increase revenue','Increase revenue'));
options.add(new SelectOption('Decrease costs (increase productivity)','Decrease costs (increase productivity)'));
options.add(new SelectOption('Increase margins','Increase margins'));
options.add(new SelectOption('Other','Other'));
return options;
}
public List<SelectOption> getvalue2(){
List<SelectOption> options= new List<SelectOption>();
options.add(new SelectOption('Yes','Yes'));
options.add(new SelectOption('No','No'));
return options;
}
public List<SelectOption> getvalue3(){
List<SelectOption> options= new List<SelectOption>();
options.add(new SelectOption('Yes, cloud based','Yes, cloud based'));
options.add(new SelectOption('Yes, traditional','Yes, traditional'));
options.add(new SelectOption('No','No'));
return options;
}
public List<SelectOption> getvalue4(){
List<SelectOption> options= new List<SelectOption>();
options.add(new SelectOption('Low','Low'));
options.add(new SelectOption('Med','Med'));
options.add(new SelectOption('High','High'));
options.add(new SelectOption('None','None'));
return options;
}
public List<SelectOption> getvalue5(){
List<SelectOption> options= new List<SelectOption>();
options.add(new SelectOption('Low','Low'));
options.add(new SelectOption('None','None'));
options.add(new SelectOption('High','High'));
return options;
}
public List<SelectOption> getvalue6(){
List<SelectOption> options= new List<SelectOption>();
options.add(new SelectOption('Low','<500K'));
options.add(new SelectOption('Medi','500 to 2000K'));
options.add(new SelectOption('High','>2000K'));
return options;
}
public List<SelectOption> getvalue7(){
List<SelectOption> options= new List<SelectOption>();
options.add(new SelectOption('Not at all','Not at all'));
options.add(new SelectOption('Somewhat','Somewhat'));
options.add(new SelectOption('Very Satisfied','Very Satisfied'));
return options;
}
public List<SelectOption> getvalue8(){
List<SelectOption> options= new List<SelectOption>();
options.add(new SelectOption('Risk Adverse','Risk Adverse'));
options.add(new SelectOption('Neutral','Neutral'));
options.add(new SelectOption('Risk Tolerant','Risk Tolerant'));
return options;
}
public List<SelectOption> getvalue9(){
List<SelectOption> options= new List<SelectOption>();
options.add(new SelectOption('Yes','Yes'));
options.add(new SelectOption('No','No'));
return options;
}
public List<SelectOption> getvalue10(){
List<SelectOption> options= new List<SelectOption>();
options.add(new SelectOption('Important','Important'));
options.add(new SelectOption('Not Important','Not Important'));
return options;
}
public String getstandardizedBusinessProcess(){
return standardizedBusinessProcess;
}
public void setstandardizedBusinessProcess(String standardizedBusinessProcess){
this.standardizedBusinessProcess=standardizedBusinessProcess;
}
public String getdesiredBusinessOutcomes(){
return desiredBusinessOutcomes;
}
public void setdesiredBusinessOutcomes(String desiredBusinessOutcomes){
this.desiredBusinessOutcomes=desiredBusinessOutcomes;
}
public String getapplicationSupport(){
return applicationSupport;
}
public void setapplicationSupport(String applicationSupport){
this.applicationSupport=applicationSupport;
}
public String getstakeholdersBuyins(){
return stakeholdersBuyins;
}
public void setstakeholdersBuyins(String stakeholdersBuyins){
this.stakeholdersBuyins=stakeholdersBuyins;
}
public String getcurrentlyOutsouce(){
return currentlyOutsouce;
}
public void setcurrentlyOutsouce(String currentlyOutsouce){
this.currentlyOutsouce=currentlyOutsouce;
}
public String getsystems(){
return systems;
}
public void setsystems(String systems){
this.systems=systems;
}
public String getcloudBasedPlatforms(){
return cloudBasedPlatforms;
}
public void setcloudBasedPlatforms(String cloudBasedPlatforms){
this.cloudBasedPlatforms=cloudBasedPlatforms;
}
public String getITStrategy(){
return ITStrategy;
}
public void setITStrategy(String ITStrategy){
this.ITStrategy=ITStrategy;
}
public String getinvestedinCloud(){
return investedinCloud;
}
public void setinvestedinCloud(String investedinCloud){
this.investedinCloud=investedinCloud;
}
public String getsatisfiedWithCloud(){
return satisfiedWithCloud;
}
public void setsatisfiedWithCloud(String satisfiedWithCloud){
this.satisfiedWithCloud=satisfiedWithCloud;
}
public String getITApplicationsSharedBetweenLOB(){
return ITApplicationsSharedBetweenLOB;
}
public void setITApplicationsSharedBetweenLOB(String ITApplicationsSharedBetweenLOB){
this.ITApplicationsSharedBetweenLOB=ITApplicationsSharedBetweenLOB;
}
public String getusers(){
return users;
}
public void setusers(String users){
this.users=users;
}
public String getrisk(){
return risk;
}
public void setrisk(String risk){
this.risk=risk;
}
public String getgeographicalFootprint(){
return geographicalFootprint;
}
public void setgeographicalFootprint(String geographicalFootprint){
this.geographicalFootprint=geographicalFootprint;
}
public String getdisparityinITBudget(){
return disparityinITBudget;
}
public void setdisparityinITBudget(String disparityinITBudget){
this.disparityinITBudget=disparityinITBudget;
}
public String getmultiGeographyEngagement(){
return multiGeographyEngagement;
}
public void setmultiGeographyEngagement(String multiGeographyEngagement){
this.multiGeographyEngagement=multiGeographyEngagement;
}
public String getnonFunctionalRequirement(){
return nonFunctionalRequirement;
}
public void setnonFunctionalRequirement(String nonFunctionalRequirement){
this.nonFunctionalRequirement=nonFunctionalRequirement;
}
public String getspecificNFR(){
return specificNFR;
}
public void setspecificNFR(String specificNFR){
this.specificNFR=specificNFR;
}
public String getseasonalUserLoad(){
return seasonalUserLoad;
}
public void setseasonalUserLoad(String seasonalUserLoad){
this.seasonalUserLoad=seasonalUserLoad;
}
public String getchangeManagementProgram(){
return changeManagementProgram;
}
public void setchangeManagementProgram(String changeManagementProgram){
this.changeManagementProgram=changeManagementProgram;
}
public Void saveRecord(){
Business__c nwbusiness =new Business__c ();
nwbusiness.Account__c = '0019000000ld9fB';
nwbusiness.Business_standardized_business_process__c=standardizedBusinessProcess;
nwbusiness.Business_desired_business_outcomes__c=desiredBusinessOutcomes;
nwbusiness.Business_application_s_support__c=applicationSupport;
nwbusiness.Business_stakeholders_buy_ins__c=stakeholdersBuyins;
nwbusiness.Business_currently_outsouce__c=currentlyOutsouce;
nwbusiness.Business_systems__c=systems;
nwbusiness.Business_understanding_of_cloud_based_pl__c=cloudBasedPlatforms;
nwbusiness.Business_IT_strategy__c=ITStrategy;
nwbusiness.Business_invested_in_cloud__c=investedinCloud;
nwbusiness.Business_satisfied_with_Cloud__c=satisfiedWithCloud;
nwbusiness.Business_IT_applications_shared_between__c=ITApplicationsSharedBetweenLOB;
nwbusiness.Business_users__c=users;
nwbusiness.Business_risk__c=risk;
nwbusiness.Business_geographical_footprint__c=geographicalFootprint;
nwbusiness.Business_disparity_in_IT_budget__c=disparityinITBudget;
nwbusiness.Business_multi_geography_engagement__c=multiGeographyEngagement;
nwbusiness.Business_non_functional_requirement__c=nonFunctionalRequirement;
nwbusiness.Business_specific_NFR__c=specificNFR;
nwbusiness.Business_seasonal_user_load__c=seasonalUserLoad;
nwbusiness.Business_change_management_program__c=changeManagementProgram;
try{
insert nwbusiness;
}catch(exception e){
system.debug('+++++++error is++++++'+e);
}
//pagereference pageref= new pagereference(
}
}
I have tried your suggestion in the code. But, I am finding Id as null.
14:46:15.048 (48755381)|USER_DEBUG|[36]|DEBUG|ACCOUNT ID Id IDnull
Any suggestion.
Can you please verify the design. I am using the standard controller as Account here in the visualforce page. ios it correct? Or I should use the standard controller as 'Business__c' in my code.
Currently, I am using as:
<apex:page standardController="Account" extensions="myBusinessController">
-Kaity
Yes,you should be passing Account in StandardController attribute of apex:page tag
Are you passing Account id in the URL of VP page you are trying to access like below.
https://c.ap1.visual.force.com/apex/TestMasterDetailRelationship?id=0019000001C7qwi
Also you can use shorter form of declaring variables in Controller for better readability
public String str{get;set;}
And you can restructure your code like below and test.If you receive an error,please post complete message
Account ID is not coming here. I have used, system.debug to see what is returning.
public myBusinessController(ApexPages.StandardController controller){
accountId=controller.getId();
System.debug('ACCOUNT ID Id ID'+ accountIdNew);
DEBUG LOG:
16:04:45.026 (26717156)|USER_DEBUG|[39]|DEBUG|ACCOUNT ID Id IDnull
Something we are missing here.
Thanks,
Kaity
I am creating the 'Business' object from the relatedlist of account by clicking the 'NEW' button. The whole controller code is as below:
public class myBusinessController {
Account acc = new Account();
public Id accountIdNew{get;set;}
public Business__c business{get;set;}
public ID AccountId= null;
public List<business__c> bus {get; set;}
public String id1;
public String id2;
public String standardizedBusinessProcess;
public String desiredBusinessOutcomes;
public String applicationSupport;
public String stakeholdersBuyins;
public String currentlyOutsouce;
public String systems;
public String cloudBasedPlatforms;
public String ITStrategy;
public String investedinCloud;
public String satisfiedWithCloud;
public String ITApplicationsSharedBetweenLOB;
public String users;
public String risk;
public String geographicalFootprint;
public String disparityinITBudget;
public String multiGeographyEngagement;
public String nonFunctionalRequirement;
public String specificNFR;
public String seasonalUserLoad;
public String changeManagementProgram;
public String MyAccount;
public myBusinessController(ApexPages.StandardController controller){
this.acc = (Account)controller.getRecord();
// id billAccountId = controller.getId();
accountIdNew = controller.getId();
System.debug('ACCOUNT ID Id ID'+ accountIdNew);
// System.debug('ACCOUNT ID'+ billAccountId);
System.debug('WORLD OF CONTROLLER'+ this.acc);
// bus.add(new business__c(Account__c = Account.id);
System.debug('@@@@@@@@'+ this.MyAccount);
/*Id id = ApexPages.currentPage().getParameters().get('id');
business=(id == null) ? new Business__c() :
[SELECT Name FROM Business__c WHERE Id = :id];
Id id=controller.getId();
system.debug('=======id is========='+id);*/
String hostVal = ApexPages.currentPage().getHeaders().get('Host');
system.debug('=======Host is========='+hostVal);
String urlVal = Apexpages.currentPage().getUrl();
system.debug('=======URL is========='+urlVal );
String URLL = 'https://' + hostVal+ urlVal;
system.debug('=======entire URL is========='+URLL);
id1=urlVal.substring(75,91);
System.debug('+++++15 digit id+++++'+id1);
//AccountId=id1;
system.debug('=======newAccountId is========='+AccountId);
//List<Account> i=[Select id from Account where id=:id1 limit 1];
//id1 = '0019000000ld9fBAAQ';
//system.debug('=======18 digit AccountId is========='+i);
//this.AccountId=Id.valueOf(id1);
//system.debug('=======AccountId is========='+AccountId);
// public Integer myint{
// get{
// if(acc == null)
// acc = [SELECT ID FROM Account where ID = :id1];
// }
}
public List<SelectOption> getvalue(){
List<SelectOption> options= new List<SelectOption>();
options.add(new SelectOption('Yes','Yes'));
options.add(new SelectOption('Partial','Partial'));
options.add(new SelectOption('No','No'));
return options;
}
public List<SelectOption> getvalue1(){
List<SelectOption> options= new List<SelectOption>();
options.add(new SelectOption('Increase revenue','Increase revenue'));
options.add(new SelectOption('Decrease costs (increase productivity)','Decrease costs (increase productivity)'));
options.add(new SelectOption('Increase margins','Increase margins'));
options.add(new SelectOption('Other','Other'));
return options;
}
public List<SelectOption> getvalue2(){
List<SelectOption> options= new List<SelectOption>();
options.add(new SelectOption('Yes','Yes'));
options.add(new SelectOption('No','No'));
return options;
}
public List<SelectOption> getvalue3(){
List<SelectOption> options= new List<SelectOption>();
options.add(new SelectOption('Yes, cloud based','Yes, cloud based'));
options.add(new SelectOption('Yes, traditional','Yes, traditional'));
options.add(new SelectOption('No','No'));
return options;
}
public List<SelectOption> getvalue4(){
List<SelectOption> options= new List<SelectOption>();
options.add(new SelectOption('Low','Low'));
options.add(new SelectOption('Med','Med'));
options.add(new SelectOption('High','High'));
options.add(new SelectOption('None','None'));
return options;
}
public List<SelectOption> getvalue5(){
List<SelectOption> options= new List<SelectOption>();
options.add(new SelectOption('Low','Low'));
options.add(new SelectOption('None','None'));
options.add(new SelectOption('High','High'));
return options;
}
public List<SelectOption> getvalue6(){
List<SelectOption> options= new List<SelectOption>();
options.add(new SelectOption('Low','<500K'));
options.add(new SelectOption('Medi','500 to 2000K'));
options.add(new SelectOption('High','>2000K'));
return options;
}
public List<SelectOption> getvalue7(){
List<SelectOption> options= new List<SelectOption>();
options.add(new SelectOption('Not at all','Not at all'));
options.add(new SelectOption('Somewhat','Somewhat'));
options.add(new SelectOption('Very Satisfied','Very Satisfied'));
return options;
}
public List<SelectOption> getvalue8(){
List<SelectOption> options= new List<SelectOption>();
options.add(new SelectOption('Risk Adverse','Risk Adverse'));
options.add(new SelectOption('Neutral','Neutral'));
options.add(new SelectOption('Risk Tolerant','Risk Tolerant'));
return options;
}
public List<SelectOption> getvalue9(){
List<SelectOption> options= new List<SelectOption>();
options.add(new SelectOption('Yes','Yes'));
options.add(new SelectOption('No','No'));
return options;
}
public List<SelectOption> getvalue10(){
List<SelectOption> options= new List<SelectOption>();
options.add(new SelectOption('Important','Important'));
options.add(new SelectOption('Not Important','Not Important'));
return options;
}
public String getstandardizedBusinessProcess(){
return standardizedBusinessProcess;
}
public void setstandardizedBusinessProcess(String standardizedBusinessProcess){
this.standardizedBusinessProcess=standardizedBusinessProcess;
}
public String getdesiredBusinessOutcomes(){
return desiredBusinessOutcomes;
}
public void setdesiredBusinessOutcomes(String desiredBusinessOutcomes){
this.desiredBusinessOutcomes=desiredBusinessOutcomes;
}
public String getapplicationSupport(){
return applicationSupport;
}
public void setapplicationSupport(String applicationSupport){
this.applicationSupport=applicationSupport;
}
public String getstakeholdersBuyins(){
return stakeholdersBuyins;
}
public void setstakeholdersBuyins(String stakeholdersBuyins){
this.stakeholdersBuyins=stakeholdersBuyins;
}
public String getcurrentlyOutsouce(){
return currentlyOutsouce;
}
public void setcurrentlyOutsouce(String currentlyOutsouce){
this.currentlyOutsouce=currentlyOutsouce;
}
public String getsystems(){
return systems;
}
public void setsystems(String systems){
this.systems=systems;
}
public String getcloudBasedPlatforms(){
return cloudBasedPlatforms;
}
public void setcloudBasedPlatforms(String cloudBasedPlatforms){
this.cloudBasedPlatforms=cloudBasedPlatforms;
}
public String getITStrategy(){
return ITStrategy;
}
public void setITStrategy(String ITStrategy){
this.ITStrategy=ITStrategy;
}
public String getinvestedinCloud(){
return investedinCloud;
}
public void setinvestedinCloud(String investedinCloud){
this.investedinCloud=investedinCloud;
}
public String getsatisfiedWithCloud(){
return satisfiedWithCloud;
}
public void setsatisfiedWithCloud(String satisfiedWithCloud){
this.satisfiedWithCloud=satisfiedWithCloud;
}
public String getITApplicationsSharedBetweenLOB(){
return ITApplicationsSharedBetweenLOB;
}
public void setITApplicationsSharedBetweenLOB(String ITApplicationsSharedBetweenLOB){
this.ITApplicationsSharedBetweenLOB=ITApplicationsSharedBetweenLOB;
}
public String getusers(){
return users;
}
public void setusers(String users){
this.users=users;
}
public String getrisk(){
return risk;
}
public void setrisk(String risk){
this.risk=risk;
}
public String getgeographicalFootprint(){
return geographicalFootprint;
}
public void setgeographicalFootprint(String geographicalFootprint){
this.geographicalFootprint=geographicalFootprint;
}
public String getdisparityinITBudget(){
return disparityinITBudget;
}
public void setdisparityinITBudget(String disparityinITBudget){
this.disparityinITBudget=disparityinITBudget;
}
public String getmultiGeographyEngagement(){
return multiGeographyEngagement;
}
public void setmultiGeographyEngagement(String multiGeographyEngagement){
this.multiGeographyEngagement=multiGeographyEngagement;
}
public String getnonFunctionalRequirement(){
return nonFunctionalRequirement;
}
public void setnonFunctionalRequirement(String nonFunctionalRequirement){
this.nonFunctionalRequirement=nonFunctionalRequirement;
}
public String getspecificNFR(){
return specificNFR;
}
public void setspecificNFR(String specificNFR){
this.specificNFR=specificNFR;
}
public String getseasonalUserLoad(){
return seasonalUserLoad;
}
public void setseasonalUserLoad(String seasonalUserLoad){
this.seasonalUserLoad=seasonalUserLoad;
}
public String getchangeManagementProgram(){
return changeManagementProgram;
}
public void setchangeManagementProgram(String changeManagementProgram){
this.changeManagementProgram=changeManagementProgram;
}
public Void saveRecord(){
Business__c nwbusiness =new Business__c ();
//
nwbusiness.Account__c = accountIdNew;
// nwbusiness.Account__c = '0019000000ld9fB';
nwbusiness.Business_standardized_business_process__c=standardizedBusinessProcess;
/* nwbusiness.Business_desired_business_outcomes__c=desiredBusinessOutcomes;
nwbusiness.Business_application_s_support__c=applicationSupport;
nwbusiness.Business_stakeholders_buy_ins__c=stakeholdersBuyins;
nwbusiness.Business_currently_outsouce__c=currentlyOutsouce;
nwbusiness.Business_systems__c=systems;
nwbusiness.Business_understanding_of_cloud_based_pl__c=cloudBasedPlatforms;
nwbusiness.Business_IT_strategy__c=ITStrategy;
nwbusiness.Business_invested_in_cloud__c=investedinCloud;
nwbusiness.Business_satisfied_with_Cloud__c=satisfiedWithCloud;
nwbusiness.Business_IT_applications_shared_between__c=ITApplicationsSharedBetweenLOB;
nwbusiness.Business_users__c=users;
nwbusiness.Business_risk__c=risk;
nwbusiness.Business_geographical_footprint__c=geographicalFootprint;
nwbusiness.Business_disparity_in_IT_budget__c=disparityinITBudget;
nwbusiness.Business_multi_geography_engagement__c=multiGeographyEngagement;
nwbusiness.Business_non_functional_requirement__c=nonFunctionalRequirement;
nwbusiness.Business_specific_NFR__c=specificNFR;
nwbusiness.Business_seasonal_user_load__c=seasonalUserLoad;
nwbusiness.Business_change_management_program__c=changeManagementProgram;
*/
try{
insert nwbusiness;
}catch(exception e){
system.debug('+++++++error is++++++'+e);
}
//pagereference pageref= new pagereference(
}
}
Also let me know how you configured to invoke this page from New button on the related list in Account page.
I have not constructed any URL here.
I have overriden the 'NEW' button in the 'Business' object. By navigating Setup--> Customize---> object---> Business
I checked, by hard coding 18 digits Id. the record got saved. Again I hard coded 15 digits Id, the record didnot save. Can you please check, can we save a record through hardcoding 15 digit id. Many thanks for your time and effort.
-Kaity
(53685233)|SYSTEM_METHOD_EXIT|[294]|myBusinessController.__sfdc_accountIdNew() 16:47:05.054 (54770884)|DML_BEGIN|[320]|Op:Insert|Type:Business__c|Rows:1 16:47:05.060 (60672910)|DML_END|[320] 16:47:05.060 (60757861)|VF_PAGE_MESSAGE|Required fields are missing: [Account] 16:47:05.060 (60837509)|EXCEPTION_THROWN|[320]|System.DmlException: Insert failed. First exception on row 0; first error: REQUIRED_FIELD_MISSING, Required fields are missing: [Account]: [Account] 16:47:05.061 (61954470)|SYSTEM_METHOD_ENTRY|[322]|String.valueOf(Object) 16:47:05.061 (61990944)|SYSTEM_METHOD_EXIT|[322]|String.valueOf(Object) 16:47:05.062 (62011814)|SYSTEM_METHOD_ENTRY|[322]|System.debug(ANY) 16:47:05.062 (62019673)|USER_DEBUG|[322]|DEBUG|+++++++error is++++++System.DmlException: Insert failed. First exception on row 0; first error: REQUIRED_FIELD_MISSING, Required fields are missing: [Account]: [Account] 16:47:05.062 (62025257)|SYSTEM_METHOD_EXIT|[d(Object) 1
How were you able to select this VF page while overriding New button on custom object-Business?As this VF page is based on Account StandardController ,you will not be able to see this VF page in the dropdown 'Visualforce Page with'. Am I missing anything here?
Yes we can save the record by hardcoding15 digit id.I have just tried and it worked
First we need to test if this page works standalone by accessing your page like below and adding Business records.If it works,later you can progress to including this page in your app.Change your server node ap1 in below URL.Type the below URL in your address bar,add business records and check if they are getting saved.Ensure that you are using below lines in controller to get the account id instead of hardcoding the id
https://ap1.salesforce.com/apex/YOUR_VF_PAGE_NAME?id=YOUR_15_DIGIT_ACCOUNT_ID
Many Thanks
- Kaity
accountId=controller.getId();
|[8]|System.debug(ANY) 18:17:51.030 (30122728)|USER_DEBUG|[8]|DEBUG|MY BusinessId:a0U9000000BP8gMEAT
Thanks.
Can you please share your gmail or any contact Id, if possible. It was a good experience to work with you today.
-Kaity
-Kaity