public override void MapDataFields(System.Data.DataRow currentRow) { base.MapDataFields(currentRow); version = Convert.ToDouble(currentRow["Version"]); formId = (Int64)currentRow["FormId"]; storeImage = Convert.ToBoolean(currentRow["StoreImage"]); #region Load Correspondence Content (without Attachment Images) String selectStatement = "SELECT "; selectStatement += " CorrespondenceContentId, CorrespondenceId, ContentSequence, ContentType, ReportingServerId, CorrespondenceContentName, CorrespondenceContentPath, IsAttachmentCompressed,"; selectStatement += " CreateAuthorityName, CreateAccountId, CreateAccountName, CreateDate, "; selectStatement += " ModifiedAuthorityName, ModifiedAccountId, ModifiedAccountName, ModifiedDate"; selectStatement += " FROM dbo.CorrespondenceContent"; selectStatement += " WHERE CorrespondenceId = " + id.ToString(); selectStatement += " ORDER BY ContentSequence, ContentType"; content = new Dictionary <Int32, CorrespondenceContent> (); Int32 contentIndex = 0; System.Data.DataTable contentTable = application.EnvironmentDatabase.SelectDataTable(selectStatement, 0); foreach (System.Data.DataRow currentContentRow in contentTable.Rows) { contentIndex++; CorrespondenceContent correspondenceContent = new CorrespondenceContent(application); correspondenceContent.MapDataFields(currentContentRow); correspondenceContent.CorrespondenceId = id; correspondenceContent.ContentSequence = contentIndex; content.Add(contentIndex, correspondenceContent); } #endregion return; }
public void LoadContentAttachments() { foreach (CorrespondenceContent currentContent in content.Values) { CorrespondenceContent loadedContent = application.CorrespondenceContentGet(currentContent.Id); if (loadedContent != null) { currentContent.AttachmentBase64 = loadedContent.AttachmentBase64; } } return; }
public override List <ImportExport.Result> XmlImport(System.Xml.XmlNode objectNode) { List <ImportExport.Result> response = base.XmlImport(objectNode); try { foreach (System.Xml.XmlNode currentNode in objectNode.ChildNodes) { switch (currentNode.Name) { case "Properties": foreach (System.Xml.XmlNode currentPropertyNode in currentNode.ChildNodes) { switch (currentPropertyNode.Attributes["Name"].InnerText) { case "Version": Version = Convert.ToDouble(currentPropertyNode.InnerText); break; // USE NAME TO PERFORM MATCHING AND NOT ID case "FormName": FormId = application.CoreObjectGetIdByName("Form", currentPropertyNode.InnerText); break; case "StoreImage": StoreImage = Convert.ToBoolean(currentPropertyNode.InnerText); break; } } break; case "Contents": Int32 contentIndex = 0; if (content == null) { content = new Dictionary <int, CorrespondenceContent> (); } foreach (System.Xml.XmlNode currentContentNode in currentNode.ChildNodes) { CorrespondenceContent loadedContent = new CorrespondenceContent(application); response.AddRange(loadedContent.XmlImport(currentContentNode)); content.Add(contentIndex, loadedContent); contentIndex = contentIndex + 1; } break; } // switch (currentNode.Attributes["Name"].InnerText) { } // foreach (System.Xml.XmlNode currentNode in objectNode.ChildNodes) { // SAVE IMPORTED CLASS if (!Save()) { throw new ApplicationException("Unable to save Correspondence: " + Name + "."); } } catch (Exception importException) { response.Add(new ImportExport.Result(ObjectType, Name, importException)); } return(response); }