public void CreateReport()
        {
            m_Report = ReportFactory.Create(m_Config.Format, m_Config.Output, m_Config.Layout, m_Config.Template, m_Config.ConfigParams);
            foreach (PwGroup group in m_Config.Groups) {
                m_Report.AddGroup(GetGroupPath(group));
                foreach (PwEntry entry in group.Entries) {
                    string[] data = new string[m_Config.Layout.Count];
                    bool rowEnabled = true;
                    for (int i = 0; i < m_Config.Layout.Count; i++) {
                        data[i] = m_Config.Layout[i].EvaluateString(entry);
                        if (m_Config.Layout[i].Filter.Enabled)
                            if (!m_Config.Layout[i].Filter.Evaluate(data[i])) {
                                rowEnabled = false;
                                break;
                            }
                    }
                    if (rowEnabled) m_Report.AddRow(data);
                }
            }

            if (ReportDoneEvent != null)
                ReportDoneEvent(this, null);

            m_Report.Close();
        }
        public void CreateReport()
        {
            m_Report = ReportFactory.Create(m_Config.Format, m_Config.Output, m_Config.Layout, m_Config.Template, m_Config.ConfigParams);
            foreach (PwGroup group in m_Config.Groups)
            {
                m_Report.AddGroup(GetGroupPath(group));
                foreach (PwEntry entry in group.Entries)
                {
                    string[] data       = new string[m_Config.Layout.Count];
                    bool     rowEnabled = true;
                    for (int i = 0; i < m_Config.Layout.Count; i++)
                    {
                        data[i] = m_Config.Layout[i].EvaluateString(entry);
                        if (m_Config.Layout[i].Filter.Enabled)
                        {
                            if (!m_Config.Layout[i].Filter.Evaluate(data[i]))
                            {
                                rowEnabled = false;
                                break;
                            }
                        }
                    }
                    if (rowEnabled)
                    {
                        m_Report.AddRow(data);
                    }
                }
            }

            if (ReportDoneEvent != null)
            {
                ReportDoneEvent(this, null);
            }

            m_Report.Close();
        }