Function Missing_Descriptions(MasterDb As Object,UserChoice() As String) Dim Arr_FieldsToSummarize() As String Dim Arr_FieldsToSummarizeTot() As String Dim FieldToSumm As Integer Dim FieldToTot As Integer Dim TargetDb As Object Dim ActiveDatabase As String Dim ExportPath As String 'Add field "Missing counter" to have 1 or 0 if the Description is blank and not blank resp Set task = MasterDb.TableManagement Set field = MasterDb.TableDef.NewField field.Name = "MISSING_COUNTER" field.Description = "" field.Type = WI_VIRT_NUM field.Equation = "@If(" & UserChoice(8) & "=="""",1,0)" field.Decimals = 0 task.AppendField field task.PerformTask Set task = Nothing Set field = Nothing Set db = Nothing 'Summarise by JE and Missing counter sum FieldToSumm = 1 'Reset the size of the Array ReDim Arr_FieldsToSummarize(FieldToSumm) Arr_FieldsToSummarize(0) = UserChoice(0) 'No field to total in this summarization FieldToTot = 1 ReDim Arr_FieldsToSummarizeTot(FieldToTot) Arr_FieldsToSummarizeTot(0) = "MISSING_COUNTER" Set TargetDb = Client.CurrentDatabase Call PerformSummarizeOnly(TargetDb,"Missing counter JE summary", Arr_FieldsToSummarize(),Arr_FieldsToSummarizeTot(), FieldToSumm ,FieldToTot) 'Add a field called Missing Description as Tag Set db = Client.CurrentDatabase Set task = db.TableManagement Set field = db.TableDef.NewField field.Name = "MISSING_TAG" field.Description = "" field.Type = WI_VIRT_CHAR field.Equation = "@if(MISSING_COUNTER_SUM>0,""Missing Description"","""")" field.Length = 20 task.AppendField field task.PerformTask Set task = Nothing Set db = Nothing Set field = Nothing 'Clean up - remove fields - missing counter and tag from Nominal Set task = MasterDb.TableManagement task.RemoveField "MISSING_COUNTER" task.PerformTask Set task = Nothing Set db = Nothing 'Join the two databases Set task = MasterDb.JoinDatabase task.FileToJoin "Missing counter JE summary.IMD" task.IncludeAllPFields task.AddSFieldToInc "MISSING_TAG" task.AddMatchKey "" & UserChoice(0) & "", "" & UserChoice(0) & "", "A" task.CreateVirtualDatabase = False dbName = "Missing Descriptions Join Databases.IMD" task.PerformTask dbName, "", WI_JOIN_ALL_IN_PRIM Set task = Nothing Set db = Nothing Client.OpenDatabase (dbName) 'Extract all missing " & fieldList(IndexN09) & " journals Set TargetDb = Client.CurrentDatabase Call DirectExtractionAllFields (TargetDb,"Missing Descriptions" ,"MISSING_TAG<>""""") 'Summary of Missing Descriptions JEs by JE no (to get the unique list of JE numbers) + EXPORT FieldToSumm = 1 'Reset the size of the Array ReDim Arr_FieldsToSummarize(FieldToSumm) Arr_FieldsToSummarize(0) = UserChoice(0) 'No field to total in this summarization FieldToTot = 0 Set TargetDb = Client.CurrentDatabase Call PerformSummarize_and_Export(TargetDb ,"Missing Descriptions summary by JE", Arr_FieldsToSummarize(),Arr_FieldsToSummarizeTot(),FieldToSumm,FieldToTot) 'Closing last opened Database which is Missing Description summary by JE ActiveDatabase = Client.CurrentDatabase.Name Client.CloseDatabase ActiveDatabase 'Export missing descriptions ONLY to Excel Set TargetDb = Client.CurrentDatabase Call ExportDBOnly(TargetDb,"Missing Descriptions",ExportPath,"XLSX") 'Summary by account + EXPORT FieldToSumm = 1 'Reset the size of the Array ReDim Arr_FieldsToSummarize(FieldToSumm) Arr_FieldsToSummarize(0) = UserChoice(10) 'No field to total in this summarization FieldToTot = 3 ReDim Arr_FieldsToSummarizeTot(FieldToTot) Arr_FieldsToSummarizeTot(0) = UserChoice(1) Arr_FieldsToSummarizeTot(1) = UserChoice(2) Arr_FieldsToSummarizeTot(2) = UserChoice(3) Set TargetDb = Client.CurrentDatabase Call PerformSummarize_and_Export(TargetDb ,"Missing_summary", Arr_FieldsToSummarize(),Arr_FieldsToSummarizeTot(),FieldToSumm,FieldToTot) 'Closing Missing Summary Database ActiveDatabase = Client.CurrentDatabase.Name Client.CloseDatabase ActiveDatabase 'Closing Missing Descriptions database ActiveDatabase = Client.CurrentDatabase.Name Client.CloseDatabase ActiveDatabase 'Closing Missing Descriptions Join Databases by JE database ActiveDatabase = Client.CurrentDatabase.Name Client.CloseDatabase ActiveDatabase 'Closing Missing Counter JE summary by JE database ActiveDatabase = Client.CurrentDatabase.Name Client.CloseDatabase ActiveDatabase FunctionExecutionMsg = FunctionExecutionMsg &"MissDescrip" & CrLf MsgBox FunctionExecutionMsg End Function