// function will be called from the callback function, when there is requested new data from the report generator // report generator needds more data --> call registered callback function in the vba script --> vba callback function calls the function "AddAdditionalData" public void AddAdditionalData(Scripting.Dictionary additionalData, int index) { if (m_additionalData.ContainsKey(index)) { m_additionalData[index].Add(new Dictionary <string, string>(ConversionFunctions.TranslateDictionary(additionalData))); } else { m_additionalData.Add(index, new List <Dictionary <string, string> >() { new Dictionary <string, string>(ConversionFunctions.TranslateDictionary(additionalData)) }); } }
// function will be called by the vba script to add a new row of the TableDescriptionTable public void AddDescriptionTableEntry(string worksheetName, Scripting.Dictionary descriptionTableEntry) { Dictionary <string, string> descriptionEntry = ConversionFunctions.TranslateDictionary(descriptionTableEntry); TableDescriptionTableEntry reportDescriptionData = new TableDescriptionTableEntry(); reportDescriptionData.FromDictionary(descriptionEntry); if (m_tableDescriptionTable.ContainsKey(worksheetName)) { m_tableDescriptionTable[worksheetName].Add(reportDescriptionData); } else { m_tableDescriptionTable.Add(worksheetName, new TableDescriptionTable()); m_tableDescriptionTable[worksheetName].Add(reportDescriptionData); } }
// function will be called by the vba script to set the actual data from the current data record public void SetReportData(Scripting.Dictionary reportData) { m_reportData = ConversionFunctions.TranslateDictionary(reportData); }
public string Format(string inputString, ArrayList parameter) { string str = string.Format(inputString, ConversionFunctions.TranslateArrayList(parameter).ToArray()); return(str); }