protected void Fetch(SafeDataReader sdr)
        {
            this.RaiseListChangedEvents = false;
            while (sdr.Read())
            {
                this.Add(ExcelImportDocument.GetExcelImportDocument(sdr));
            }
            this.RaiseListChangedEvents = true;

            ExcelImportDocument parent = null;

            if (sdr.NextResult())
            {
                while (sdr.Read())
                {
                    if (parent == null || parent.ExcelImportDocumentID != sdr.GetInt32(1))
                    {
                        parent = this.GetItem(sdr.GetInt32(1));
                    }
                    parent.ExcelImportDocumentHeaderList.RaiseListChangedEvents = false;
                    parent.ExcelImportDocumentHeaderList.Add(ExcelImportDocumentHeader.GetExcelImportDocumentHeader(sdr));
                    parent.ExcelImportDocumentHeaderList.RaiseListChangedEvents = true;
                }
            }


            foreach (ExcelImportDocument child in this)
            {
                child.CheckRules();
                foreach (ExcelImportDocumentHeader ExcelImportDocumentHeader in child.ExcelImportDocumentHeaderList)
                {
                    ExcelImportDocumentHeader.CheckRules();
                }
            }
        }
        public ExcelImportDocumentHeader GetExcelImportDocumentHeader(int ExcelImportDocumentHeaderID)
        {
            ExcelImportDocumentHeader obj = null;

            foreach (ExcelImportDocument parent in this)
            {
                obj = parent.ExcelImportDocumentHeaderList.GetItem(ExcelImportDocumentHeaderID);
                if (obj != null)
                {
                    return(obj);
                }
            }
            return(null);
        }