You need to sign in to do that
Don't have an account?
Manojjena
How to assign value to standrad field isSyncing in test class.
Hi All,
I have a query in that one condition is there, like ' where isSyncing=true' .In my test class I am not able to assign value to that isSyncing field .Can any one suggest me how to solve the issue .
Thanks In adavce.
Situ
You must have created a test record of the object u are querying. So u can set the value before inserting the test record. Actually if you could paste ur code here, it could be understood better.
Quote quot=new Quote();
quot.Name='TestQuote';
quot.AUC_Percentage__c=0.20;
quot.AMC_percentage__c=0.15;
quot.Annual_percentage_value__c=0;
quot.Total_AUC_Value__c=1000.00;
quot.Renewal_Quote__c=true;
quot.Approval_Status__c='Approved';
quot.Quoted_Date__c=System.today();
quot.Exchange_Rate__c=10;
quot.Currency__c='USD';
quot.Tax__c=12.36;
quot.OpportunityId=opp1.id;
quot.isSyncing=true;//Here it is showing error field is not writable.
If i can assign value to this field the the query in the trigger will get some record for which it will enter in side the condition condition
if(listSize >0){}
Hi,
Instead of marking the sync at the quote level you'll need to mark it at the opportunity level via the"Opportunity.SyncedQuoteId" field. After doing this the "Quote.IsSyncing" field will be true.
Example:
Opportunity oppty = new Opportunity (
Name = 'test',
StageName = 'Prospecting',
CloseDate = System.Today()
);
insert oppty;
Quote qu = new Quote (
Name = 'test',
OpportunityId = oppty.Id
);
insert qu;
oppty.SyncedQuoteId = qu.Id;
update oppty;
Now the quote record has "IsSyncing" value to true
You can also look at this link. It is explained here with the limitations : http://blog.softwareallies.com/2010/08/salesfoce-syncing-quote-in-apex.html
Do you know if you can mass update existing Quote records to sync with their corresponding opportunity? I understand you would need to mass update the Opportunity.SyncedQuoteId field somehow.