protected static FR_Guid Execute(DbConnection Connection,DbTransaction Transaction,P_L5SO_UCTVoSHfP_1549 Parameter,CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null){
			#region UserCode 
			var returnValue = new FR_Guid();

            var shipmentHeader = CL1_LOG_SHP.ORM_LOG_SHP_Shipment_Header.Query.Search(Connection, Transaction,
                new CL1_LOG_SHP.ORM_LOG_SHP_Shipment_Header.Query
                {
                    LOG_SHP_Shipment_HeaderID = Parameter.ShipmentHeaderID,
                    IsDeleted = false,
                    Tenant_RefID = securityTicket.TenantID
                }).Single();

            decimal totalValueForHeader = shipmentHeader.ShipmentHeader_ValueWithoutTax = CL1_LOG_SHP.ORM_LOG_SHP_Shipment_Position.Query.Search(Connection, Transaction,
                new CL1_LOG_SHP.ORM_LOG_SHP_Shipment_Position.Query
                {
                    LOG_SHP_Shipment_Header_RefID = shipmentHeader.LOG_SHP_Shipment_HeaderID,
                    IsDeleted = false,
                    Tenant_RefID = securityTicket.TenantID
                }).Sum(x => x.ShipmentPosition_ValueWithoutTax);

            shipmentHeader.IsReadyForPicking = false;
            shipmentHeader.IsPartiallyReadyForPicking = false;
            shipmentHeader.IsManuallyCleared_ForPicking = false;
            shipmentHeader.IsBilled = false;
            shipmentHeader.HasPickingStarted = false;
            shipmentHeader.HasPickingFinished = false;
            shipmentHeader.ShipmentHeader_ValueWithoutTax = totalValueForHeader;
            shipmentHeader.Save(Connection, Transaction);

            returnValue.Result = shipmentHeader.LOG_SHP_Shipment_HeaderID;
			return returnValue;
			#endregion UserCode
		}
		///<summary>
		/// Method Invocation of wrapper classes
		///<summary>
		protected static FR_Guid Invoke(DbConnection Connection, DbTransaction Transaction, string ConnectionString,P_L5SO_UCTVoSHfP_1549 Parameter,CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null)
		{
			bool cleanupConnection = Connection == null;
			bool cleanupTransaction = Transaction == null;

			FR_Guid functionReturn = new FR_Guid();
			try
			{

				if (cleanupConnection == true) 
				{
					Connection = CSV2Core_MySQL.Support.DBSQLSupport.CreateConnection(ConnectionString);
					Connection.Open();
				}
				if (cleanupTransaction == true)
				{
					Transaction = Connection.BeginTransaction();
				}

				functionReturn = Execute(Connection, Transaction,Parameter,securityTicket);

				#region Cleanup Connection/Transaction
				//Commit the transaction 
				if (cleanupTransaction == true)
				{
					Transaction.Commit();
				}
				//Close the connection
				if (cleanupConnection == true)
				{
					Connection.Close();
				}
				#endregion
			}
			catch (Exception ex)
			{
				try
				{
					if (cleanupTransaction == true && Transaction!=null)
					{
						Transaction.Rollback();
					}
				}
				catch { }

				try
				{
					if (cleanupConnection == true && Connection != null)
					{
						Connection.Close();
					}
				}
				catch { }

				throw new Exception("Exception occured in method cls_Update_Current_TotalValue_on_ShipmentHeader_from_Positions",ex);
			}
			return functionReturn;
		}
		///<summary>
		/// Invokes the method for the given Connection, and Transaction, leaving them open/not commited if no exceptions occured
		///<summary>
		public static FR_Guid Invoke(DbConnection Connection, DbTransaction Transaction,P_L5SO_UCTVoSHfP_1549 Parameter,CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null)
		{
			return Invoke(Connection, Transaction, null,Parameter,securityTicket);
		}
		///<summary>
		/// Opens the connection/transaction for the given connectionString, and closes them when complete
		///<summary>
		public static FR_Guid Invoke(string ConnectionString,P_L5SO_UCTVoSHfP_1549 Parameter,CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null)
		{
			return Invoke(null, null, ConnectionString,Parameter,securityTicket);
		}