TransactionCurrencyId error on Callout-Collection of common programming errors
Hello,
I just upgraded to CRM 4.0 from version 3.0. After upgrading my Callout to use our new 4.0 web reference, everything works out fine. Then I noticed that there was an error on an entity with N-1 relationship, because there is a mapping in which the target field in entity A is a float, while source field in entity B is money type. This was never a problem in CRM 3.0.
So I created a new money-type field in entity A and create a new mapping with this new field.
However now my callout breaks with the following error message about TransactionCurrencyId:
Event Type: Error Event Source: MSCRMCallout Event Category: None Event ID: 16912 Date: 4/21/2010 Time: 3:25:54 PM User: N/A Computer: DEMETOR64 Description: Error: ISV code in organization: 0f3ee4f7-98b0-4f87-be32-b09327775e5a; threw exception: assembly: TimeEntry.dll; class: TimeEntry.TimeEntry; entity: new_timeentry, event: precreate, exception: Unhandled Exception: System.Web.Services.Protocols.SoapException: Server was unable to process request. Detail: 0x80040216
transactionCurrencyId needs to be supplied to format a transaction money field.
Platform at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall) at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters) at TimeEntry.CrmSdk.CrmService.RetrieveMultiple(QueryBase query) at TimeEntry.TimeEntry.CheckInternalTeamMember() at TimeEntry.TimeEntry.PreCreate(CalloutUserContext userContext, CalloutEntityContext entityContext, String& entityXml, String& errorMessage) at Microsoft.Crm.Extensibility.V3CalloutProxyPlugin.PreCreateAdapter.InternalExecute(IPluginExecutionContext context, String& errorMessage) at Microsoft.Crm.Extensibility.V3CalloutProxyPlugin.PreCalloutAdapterBase.Execute(IPluginExecutionContext context)
at Microsoft.Crm.Extensibility.V3CalloutProxyPlugin.CalloutAdapterBase.ExecuteAdapter(IPluginExecutionContext context)
I read some blogs and forum, and I have added the field ‘Currency’ (transactioncurrencyid) to all the entity forms in question. However this is still not fixing this…
Is there a code line that I need to add to my callout for this?
Can someone please guide me in the right direction? Thanks in advanced,
Elizabeth K.