Development #450
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@@ -125,7 +125,7 @@
 | 
				
			|||||||
        AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
 | 
					        AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
 | 
				
			||||||
        LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
 | 
					        LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
 | 
				
			||||||
        ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACE
 | 
					        ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACE
 | 
				
			||||||
        CAAAAk1TRnQBSQFMAgEBAgEAARwBAAEcAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
 | 
					        CAAAAk1TRnQBSQFMAgEBAgEAASwBAAEsAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
 | 
				
			||||||
        AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
 | 
					        AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
 | 
				
			||||||
        AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
 | 
					        AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
 | 
				
			||||||
        AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
 | 
					        AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
 | 
				
			||||||
@@ -175,7 +175,7 @@
 | 
				
			|||||||
        AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
 | 
					        AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
 | 
				
			||||||
        LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
 | 
					        LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
 | 
				
			||||||
        ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAAe
 | 
					        ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAAe
 | 
				
			||||||
        CwAAAk1TRnQBSQFMAgEBBgEAARwBAAEcAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
 | 
					        CwAAAk1TRnQBSQFMAgEBBgEAASwBAAEsAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
 | 
				
			||||||
        AwABQAMAASADAAEBAQABCAYAAQgYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
 | 
					        AwABQAMAASADAAEBAQABCAYAAQgYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
 | 
				
			||||||
        AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
 | 
					        AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
 | 
				
			||||||
        AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
 | 
					        AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -336,7 +336,7 @@ namespace RODBInterface
 | 
				
			|||||||
		public abstract bool RODB_GetChildData(VlnXmlElement node, bool CheckChildCount);
 | 
							public abstract bool RODB_GetChildData(VlnXmlElement node, bool CheckChildCount);
 | 
				
			||||||
		public abstract bool IsDuplicateAccPageID(VlnXmlElement ro, string newacc);
 | 
							public abstract bool IsDuplicateAccPageID(VlnXmlElement ro, string newacc);
 | 
				
			||||||
		public abstract VlnXmlElement RODB_ReadRO(string tbl, string recid);
 | 
							public abstract VlnXmlElement RODB_ReadRO(string tbl, string recid);
 | 
				
			||||||
		public abstract bool RODB_WriteRO(VlnXmlElement ro);
 | 
							public abstract bool RODB_WriteRO(VlnXmlElement ro, bool movedRO = false);
 | 
				
			||||||
		public abstract bool RODB_InsertRO(VlnXmlElement ro);
 | 
							public abstract bool RODB_InsertRO(VlnXmlElement ro);
 | 
				
			||||||
		public abstract ushort RODB_GetFieldType(VlnXmlElement elem, string TableName, string Fld);
 | 
							public abstract ushort RODB_GetFieldType(VlnXmlElement elem, string TableName, string Fld);
 | 
				
			||||||
		public abstract ArrayList RODB_GetFields(VlnXmlElement elem, uint rtype, bool refresh = false);
 | 
							public abstract ArrayList RODB_GetFields(VlnXmlElement elem, uint rtype, bool refresh = false);
 | 
				
			||||||
@@ -2120,7 +2120,7 @@ namespace RODBInterface
 | 
				
			|||||||
			return retele;
 | 
								return retele;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		public override bool RODB_WriteRO(VlnXmlElement ro)
 | 
							public override bool RODB_WriteRO(VlnXmlElement ro, bool movedRO = false)
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			bool success;
 | 
								bool success;
 | 
				
			||||||
			if (ro.Name == "vlnGroup")
 | 
								if (ro.Name == "vlnGroup")
 | 
				
			||||||
@@ -2140,6 +2140,13 @@ namespace RODBInterface
 | 
				
			|||||||
				string dt = string.Format("{0:yyyyMMddHHmmss}", System.DateTime.Now);
 | 
									string dt = string.Format("{0:yyyyMMddHHmmss}", System.DateTime.Now);
 | 
				
			||||||
				string xmlstr = GenerateXmlString(ro, false);
 | 
									string xmlstr = GenerateXmlString(ro, false);
 | 
				
			||||||
				string strUpdate = "UPDATE " + ro.GetAttribute("Table") + " SET Info = '" + xmlstr + "'";
 | 
									string strUpdate = "UPDATE " + ro.GetAttribute("Table") + " SET Info = '" + xmlstr + "'";
 | 
				
			||||||
 | 
									if (movedRO)
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
										VlnXmlElement parent = (VlnXmlElement)ro.ParentNode;
 | 
				
			||||||
 | 
										ro.SetAttribute("ParentID", parent.GetAttribute("RecID"));
 | 
				
			||||||
 | 
										strUpdate += ", ParentID = '" + ro.GetAttribute("ParentID") + "'";
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									
 | 
				
			||||||
				strUpdate = strUpdate + ", ModDateTime = '" + dt + "', AccPageID = '" + wraccid + "' WHERE RecID='" + ro.GetAttribute("RecID") + "'";
 | 
									strUpdate = strUpdate + ", ModDateTime = '" + dt + "', AccPageID = '" + wraccid + "' WHERE RecID='" + ro.GetAttribute("RecID") + "'";
 | 
				
			||||||
				try
 | 
									try
 | 
				
			||||||
				{
 | 
									{
 | 
				
			||||||
@@ -2192,6 +2199,8 @@ namespace RODBInterface
 | 
				
			|||||||
				ro.SetAttribute("HasChild", "False");
 | 
									ro.SetAttribute("HasChild", "False");
 | 
				
			||||||
				if (ro.HasAttribute("AccPageID"))
 | 
									if (ro.HasAttribute("AccPageID"))
 | 
				
			||||||
				{
 | 
									{
 | 
				
			||||||
 | 
										// Code is never reached, but this was noticed - this next line should likely be:
 | 
				
			||||||
 | 
										//    strInsert = "INSERT INTO " + parent.GetAttribute("Table") + "( RecID, RecType, ParentID, AccPageID, ModDateTime, Info ) ";
 | 
				
			||||||
					strInsert = "INSERT INTO " + parent.GetAttribute("Table") + "( RecID, RecType, ParentID, ModDateTime, AccPageID, Info ) ";
 | 
										strInsert = "INSERT INTO " + parent.GetAttribute("Table") + "( RecID, RecType, ParentID, ModDateTime, AccPageID, Info ) ";
 | 
				
			||||||
					strInsert = strInsert + " VALUES ('" + ro.GetAttribute("RecID") + "'," + (uint)RecordType.Group + ",'" + ro.GetAttribute("ParentID");
 | 
										strInsert = strInsert + " VALUES ('" + ro.GetAttribute("RecID") + "'," + (uint)RecordType.Group + ",'" + ro.GetAttribute("ParentID");
 | 
				
			||||||
					strInsert = strInsert + "','" + wraccid + "','" + dt + "','" + xmlstr + "');";
 | 
										strInsert = strInsert + "','" + wraccid + "','" + dt + "','" + xmlstr + "');";
 | 
				
			||||||
@@ -2396,7 +2405,7 @@ namespace RODBInterface
 | 
				
			|||||||
				Info = null;
 | 
									Info = null;
 | 
				
			||||||
			DBE.ReaderClose();
 | 
								DBE.ReaderClose();
 | 
				
			||||||
			DBE.CommandDispose();
 | 
								DBE.CommandDispose();
 | 
				
			||||||
			return Info.Replace("'", "\'");
 | 
								return Info?.Replace("'", "\'");
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		public override bool RODB_NewSchemaPiece(string recid, string parentid, string table, string schpiece, uint rtype)
 | 
							public override bool RODB_NewSchemaPiece(string recid, string parentid, string table, string schpiece, uint rtype)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1557,7 +1557,7 @@ namespace RODBInterface
 | 
				
			|||||||
			}
 | 
								}
 | 
				
			||||||
			return retele;
 | 
								return retele;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		public override bool RODB_WriteRO(VlnXmlElement ro)
 | 
							public override bool RODB_WriteRO(VlnXmlElement ro, bool movedRO = false)
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			bool success;
 | 
								bool success;
 | 
				
			||||||
			if (ro.Name == "vlnGroup")
 | 
								if (ro.Name == "vlnGroup")
 | 
				
			||||||
@@ -1589,6 +1589,13 @@ namespace RODBInterface
 | 
				
			|||||||
						command.Parameters.AddWithValue("@ModDateTime", dt);
 | 
											command.Parameters.AddWithValue("@ModDateTime", dt);
 | 
				
			||||||
						command.Parameters.AddWithValue("@AccPageID", wraccid);		// B2020-003: set accpageid to correct value
 | 
											command.Parameters.AddWithValue("@AccPageID", wraccid);		// B2020-003: set accpageid to correct value
 | 
				
			||||||
						command.Parameters.AddWithValue("@RecID", ro.GetAttribute("RecID"));
 | 
											command.Parameters.AddWithValue("@RecID", ro.GetAttribute("RecID"));
 | 
				
			||||||
 | 
											if (movedRO)
 | 
				
			||||||
 | 
											{
 | 
				
			||||||
 | 
												VlnXmlElement parent = (VlnXmlElement)ro.ParentNode;
 | 
				
			||||||
 | 
												ro.SetAttribute("ParentID", parent.GetAttribute("RecID"));
 | 
				
			||||||
 | 
												command.Parameters.AddWithValue("@ParentID", ro.GetAttribute("ParentID"));
 | 
				
			||||||
 | 
											}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
						using (SqlDataReader reader = command.ExecuteReader())
 | 
											using (SqlDataReader reader = command.ExecuteReader())
 | 
				
			||||||
						{
 | 
											{
 | 
				
			||||||
							success = true;
 | 
												success = true;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -674,7 +674,8 @@ CREATE PROCEDURE [dbo].[updateInfoAccidByRecid]
 | 
				
			|||||||
	@RecID char(8),
 | 
						@RecID char(8),
 | 
				
			||||||
	@AccPageID char(32),
 | 
						@AccPageID char(32),
 | 
				
			||||||
	@Info nvarchar(max),
 | 
						@Info nvarchar(max),
 | 
				
			||||||
	@ModDateTime char(14)
 | 
						@ModDateTime char(14),
 | 
				
			||||||
 | 
						@ParentID varchar(8) = NULL
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
WITH EXECUTE AS OWNER
 | 
					WITH EXECUTE AS OWNER
 | 
				
			||||||
AS
 | 
					AS
 | 
				
			||||||
@@ -684,7 +685,8 @@ BEGIN TRY -- Try Block
 | 
				
			|||||||
		SET
 | 
							SET
 | 
				
			||||||
			[Info]=@Info,
 | 
								[Info]=@Info,
 | 
				
			||||||
			[ModDateTime]=@ModDateTime,
 | 
								[ModDateTime]=@ModDateTime,
 | 
				
			||||||
			[AccPageID]=@AccPageID
 | 
								[AccPageID]=@AccPageID,
 | 
				
			||||||
 | 
								[ParentID]=ISNULL(@ParentID, ParentID)
 | 
				
			||||||
		WHERE [ROTable]=@ROTable AND [RecID]=@RecID
 | 
							WHERE [ROTable]=@ROTable AND [RecID]=@RecID
 | 
				
			||||||
	IF @@ROWCOUNT = 0
 | 
						IF @@ROWCOUNT = 0
 | 
				
			||||||
	BEGIN
 | 
						BEGIN
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user