Error: A .NET Framework error occurred during execution of user-defined routine or aggregate "USP_LOADSPEC" when using a constituent revenue amounts smart field in a Marketing Effort export definition

When saving a marketing effort export definition that includes a smart field based on a constituent revenue amounts smart field type, this error may occur when unmarking the Use short column headers checkbox on the Set Save Options tab. 

A .NET Framework error occurred during execution of user-defined routine or aggregate "USP_LOADSPEC": 
System.Exception: The field 'Efft_CONSTITUENTMARKETINGINFORMATION_CONSTITUENT_HOUSEHOLDSBELONGINGTO_HOUSEHOLDCONSTITUENT_SINGLELARGESTGIFTSMARTFIELD_CURRENCYID' referenced by 'Efft_CONSTITUENTMARKETINGINFORMATION_CONSTITUENT_HOUSEHOLDSBELONGINGTO_HOUSEHOLDCONSTITUENT_SINGLELARGESTGIFTSMARTFIELD_VALUE' does not exist as an output field.
System.Exception: 
   at Blackbaud.AppFx.XmlTypes.DataListSpec.ValidateColumnExists(String parentFieldID, String referencedFieldID, FormFieldDataType requiredType, DataListOutputFieldType[] outputFields)
   at Blackbaud.AppFx.XmlTypes.DataListSpec.Validate(DataListSpec spec)
   at Blackbaud.AppFx.XmlTypes.DataListSpec.CreateFromXML(String xml, Boolean bValidate)
   at Blackbaud.AppFx.Platform.SqlClr.DataListSpecClr.ProcessSpec(String specXml, Nullable`1 changeAgentID, SqlBoolean processPageAlterations, SqlBoolean skipValidation)
   at Blackbaud.AppFx.Platform.SqlClr.LoadSpec.LoadSpecInternal(String specTypeName, String specXmlText, SqlString itemName, Nullable`1 changeAgentId, SqlBoolean processPageAlterations, SqlBoolean skipValidation, SqlBoolean compareToExistingSpecXml)
   at Blackbaud.AppFx.Platform.SqlClr.LoadSpec.LoadSpecAsString(String specXmlText, Nullable`1 changeAgentID, SqlString sourceName, SqlString itemName, SqlBoolean loadAsDependency, SqlBoolean forceReload, SqlBoolean processPageAlterations, SqlBoolean skipValidation, SqlBoolean compareToExistingSpecXml)
   at Blackbaud.AppFx.Platform.SqlClr.LoadSpec.LoadSpec(SqlXml specXml, Nullable`1 changeAgentID, SqlString sourceName, SqlString itemName, SqlBoolean loadAsDependency, SqlBoolean forceReload, SqlBoolean processPageAlterations, SqlBoolean skipValidation, SqlBoolean compareToExistingSpecXml)
.
LOADSPEC ERROR:The field 'Efft_CONSTITUENTMARKETINGINFORMATION_CONSTITUENT_HOUSEHOLDSBELONGINGTO_HOUSEHOLDCONSTITUENT_SINGLELARGESTGIFTSMARTFIELD_CURRENCYID' referenced by 'Efft_CONSTITUENTMARKETINGINFORMATION_CONSTITUENT_HOUSEHOLDSBELONGINGTO_HOUSEHOLDCONSTITUENT_SINGLELARGESTGIFTSMARTFIELD_VALUE' does not exist as an output field.
We're currently evaluating this issue for a fix in a future release 

Workaround:

Mark the Use short column headers checkbox on the Set Save Options tab

Steps to Duplicate

  1. Create a smart field based on the Constituent revenue amounts type
  2. Create a new Direct Marketing Export Definition in Marketing and Communications
  3. Select the following field: constituent marketing information> constituent > households belonging to> household constituent > Smart Field> Value
  4. On the Set Save Options tab, unmark the box

Environment

 Blackbaud CRM
 4.0
 4.0.158.0

Was this article helpful?


Thanks for your feedback! Did this solve your issue?

Comments (optional):


Thanks for your feedback!
We're glad it was helpful but sorry it didn’t solve your issue. If you need assistance, click Chat with Support below.
We’re sorry to hear that. Please tell us why.

 I don't like how this works.

 The answer is confusing.

 The answer didn't match what I was searching for.

Additional Comments (optional):


Thanks for your feedback! If you need assistance, click Chat with Support below.
Thanks for your feedback. Help us make our products even better by sharing details in our Idea Banks or our online Community.
Thanks for letting us know. We'll work on clarifying the information in the article. If you need assistance, click Chat with Support below.
Thanks for letting us know. We'll work on updating the search engine to return more relevant results.