Important Update: Archer Community Scheduled Maintenance on November 23–24 - New Community Launching Soon! Learn More..

cancel
Showing results for 
Search instead for 
Did you mean: 
No ratings
KB-Sync1
Archer Employee
Archer Employee

Article Number

000036085


Applies To


Product(s): Archer
Version(s): 6.x, 2024.03
Primary Deployment: On Premises/AWS Hosted/AWS SaaS

Description


If a DDE rule is filtered on a private field and the user does not have access to the field, when the user tries to export a record for that application the following error is displayed:

0EMVM000005uiRj.jpg0EMVM000005uiRj.jpg
An error has occurred during the export process. The export file cannot be completed.

The archer.w3wp log shows the following error:
<Message>Value cannot be null. 
Parameter name: source</Message>
<Source>System.Core</Source>
<StackTrace>   at System.Linq.Enumerable.Where[TSource](IEnumerable`1 source, Func`2 predicate)
   at ArcherTech.Kernel.Brokers.ContentBroker.GetContent(Int32 contentId, IList`1 fieldIds, Boolean checkModulePermission, Boolean checkContentPermission, Boolean checkFieldPermission)
   at ArcherTech.Kernel.Brokers.ContentBroker.Get(Int32 contentId, IList`1 fieldIds)
   at ArcherTech.Kernel.Managers.ContentManager.Get(SessionContext sessionContext, Int32 contentId, IList`1 fieldIds)
   at ArcherTech.PrintExport.DataDrivenEvents.DataDrivenEventQuery.EvaluateFilterConditions(Int32 contentId, IList`1 filterConditionFieldIds, IEnumerable`1 dataDrivenEvents)
   at ArcherTech.PrintExport.DataDrivenEvents.DataDrivenEventQuery.ProcessDataDrivenEvents(Int32 levelId, Int32 contentId)
   at ArcherTech.PrintExport.RecordPrintExportLookup.PerformLookup()
   at ArcherTech.PrintExport.PrintExportService.RenderRecordData(SessionContext sessionContext, PrintExportCriteria printExportCriteria, Boolean printLayout, Stream output)
   at ArcherTech.Web.Modules.Foundation.Views.PrintExportPresenter.ExportRecord(SessionContext sessionContext, PrintExportCriteria printExportCriteria)</StackTrace>

Cause


One or more fields used as filters in DDE rules are private, and the user does not have at least read access to the fields.

Resolution


Perform the steps below to resolve the issue.
  1. Run the attached SQL query to find private fields used in DDE rule filters. (Input the correct application name.)
  2. Ensure that users who need to print records have at least Read access to these fields.
/*	List private fields used as filters in DDE rules
	Vers 6.3.  by RS: Feb, 2018.  */
	

SELECT  mt.module_name
	, er.event_rule_id
	, event_rule_name
	, fcf.filter_criteria_condition_id
	, fcf.field_id
	, FT.field_name
	, FD.is_private
FROM tblEventRule er
JOIN tblIVLayoutModule lm ON lm.layout_module_id = er.layout_module_id
JOIN dbo.tblModuleTranslation mt ON mt.module_id = lm.module_id AND mt.is_default = 1
JOIN tblFilterCriteriaCondition fcc ON fcc.filter_criteria_id = er.filter_criteria_id
LEFT JOIN dbo.tblFilterCriteriaField fcf ON fcf.filter_criteria_condition_id = fcc.filter_criteria_condition_id
JOIN tblIVFieldDef FD on FD.field_id=FCF.field_id
JOIN tblFieldTranslation FT on FT.field_id=FD.field_id
WHERE  mt.module_name='policies'                             --> INSERT MODULE NAME
AND FD.is_private='1'
ORDER BY mt.module_name, er.event_rule_name

 

Version history
Last update:
‎2024-09-21 08:47 AM
Updated by: