public static bool ExportAllTables(out string ADataYmlGzBase64) { TDataBase DBConnectionObj = null; TDBTransaction ReadTransaction = new TDBTransaction(); XmlDocument OpenPetraData = TYml2Xml.CreateXmlDocument(); XmlNode rootNode = OpenPetraData.FirstChild.NextSibling; Assembly TypedTablesAssembly = Assembly.LoadFrom( TAppSettingsManager.ApplicationDirectory + Path.DirectorySeparatorChar + "Ict.Petra.Shared.lib.data.dll"); try { // Open a separate DB Connection for the exporting of the data... DBConnectionObj = DBAccess.Connect("ExportAllTables"); // ...and start a DB Transaction on that separate DB Connection ReadTransaction = DBConnectionObj.BeginTransaction(IsolationLevel.Serializable, 0, "ExportAllTables"); ExportTables(rootNode, "MSysMan", "", TypedTablesAssembly, ReadTransaction); ExportTables(rootNode, "MCommon", "", TypedTablesAssembly, ReadTransaction); ExportTables(rootNode, "MPartner", "Partner", TypedTablesAssembly, ReadTransaction); ExportTables(rootNode, "MPartner", "Mailroom", TypedTablesAssembly, ReadTransaction); ExportTables(rootNode, "MFinance", "Account", TypedTablesAssembly, ReadTransaction); ExportTables(rootNode, "MFinance", "Gift", TypedTablesAssembly, ReadTransaction); ExportTables(rootNode, "MFinance", "AP", TypedTablesAssembly, ReadTransaction); ExportTables(rootNode, "MFinance", "AR", TypedTablesAssembly, ReadTransaction); ExportTables(rootNode, "MPersonnel", "Personnel", TypedTablesAssembly, ReadTransaction); ExportTables(rootNode, "MPersonnel", "Units", TypedTablesAssembly, ReadTransaction); ExportTables(rootNode, "MConference", "", TypedTablesAssembly, ReadTransaction); ExportTables(rootNode, "MHospitality", "", TypedTablesAssembly, ReadTransaction); ExportSequences(rootNode, ReadTransaction); } finally { if (DBConnectionObj != null) { ReadTransaction.Rollback(); DBConnectionObj.CloseDBConnection(); } } ADataYmlGzBase64 = TYml2Xml.Xml2YmlGz(OpenPetraData); return(true); }
public static string ExportAllTables() { XmlDocument OpenPetraData = TYml2Xml.CreateXmlDocument(); XmlNode rootNode = OpenPetraData.FirstChild.NextSibling; Assembly TypedTablesAssembly = Assembly.LoadFrom( TAppSettingsManager.ApplicationDirectory + Path.DirectorySeparatorChar + "Ict.Petra.Shared.lib.data.dll"); ExportTables(rootNode, "MSysMan", "", TypedTablesAssembly); ExportTables(rootNode, "MCommon", "", TypedTablesAssembly); ExportTables(rootNode, "MPartner", "Partner", TypedTablesAssembly); ExportTables(rootNode, "MPartner", "Mailroom", TypedTablesAssembly); ExportTables(rootNode, "MFinance", "Account", TypedTablesAssembly); ExportTables(rootNode, "MFinance", "Gift", TypedTablesAssembly); ExportTables(rootNode, "MFinance", "AP", TypedTablesAssembly); ExportTables(rootNode, "MFinance", "AR", TypedTablesAssembly); ExportTables(rootNode, "MPersonnel", "Personnel", TypedTablesAssembly); ExportTables(rootNode, "MPersonnel", "Units", TypedTablesAssembly); ExportTables(rootNode, "MConference", "", TypedTablesAssembly); ExportTables(rootNode, "MHospitality", "", TypedTablesAssembly); ExportSequences(rootNode); return(TYml2Xml.Xml2YmlGz(OpenPetraData)); }