Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
MSDN Library

ScheduleFrequencyType Enumeration

 

Applies To: SQL Server 2016 Preview

Enumerates the types of frequencies used when scheduling a replication agent job.

Namespace:   Microsoft.SqlServer.Replication
Assembly:  Microsoft.SqlServer.Rmo (in Microsoft.SqlServer.Rmo.dll)

public enum ScheduleFrequencyType

Member nameDescription
Continuously

The replication agent job is started when the Microsoft SQL Server Agent Service starts.

Daily

The replication agent job is run daily.

Monthly

The replication agent job is run monthly.

MonthlyRelative

The replication agent job is run relative to a part of a month, such as the second week.

OnDemand

The Microsoft SQL Server Agent Service schedules the replication agent job when it is specifically requested.

Onetime

OnIdle

The Microsoft SQL Server Agent Service runs the replication agent job any time when the processor is idle.

Unknown

No schedule frequency, or frequency not applicable.

Weekly

The replication agent job is run weekly.

This namespace, class, or member is supported only in version 2.0 of the .NET Framework.

Legacy Code Example

			// Define the Publisher, publication, and databases.
			string publicationName = "AdvWorksSalesOrdersMerge";
			string publisherName = publisherInstance;
			string subscriberName = subscriberInstance;
			string subscriptionDbName = "AdventureWorks2012Replica";
			string publicationDbName = "AdventureWorks2012";
			string hostname = @"adventure-works\garrett1";

			//Create a connection to the Publisher.
			ServerConnection conn = new ServerConnection(subscriberName);

			// Create the objects that we need.
			MergePublication publication;
			MergeSubscription subscription;

			try
			{
				// Connect to the Publisher.
				conn.Connect();

				// Ensure that the publication exists and that 
				// it supports push subscriptions.
				publication = new MergePublication();
				publication.Name = publicationName;
				publication.DatabaseName = publicationDbName;
				publication.ConnectionContext = conn;

				if (publication.IsExistingObject)
				{
					if ((publication.Attributes & PublicationAttributes.AllowPush) == 0)
					{
						publication.Attributes |= PublicationAttributes.AllowPush;
					}

					// Define the push subscription.
					subscription = new MergeSubscription();
					subscription.ConnectionContext = conn;
					subscription.SubscriberName = subscriberName;
					subscription.PublicationName = publicationName;
					subscription.DatabaseName = publicationDbName;
					subscription.SubscriptionDBName = subscriptionDbName;
					subscription.HostName = hostname;

					// Set a schedule to synchronize the subscription every 2 hours
					// during weekdays from 6am to 10pm.
					subscription.AgentSchedule.FrequencyType = ScheduleFrequencyType.Weekly;
					subscription.AgentSchedule.FrequencyInterval = Convert.ToInt32(0x003E);
					subscription.AgentSchedule.FrequencyRecurrenceFactor = 1;
					subscription.AgentSchedule.FrequencySubDay = ScheduleFrequencySubDay.Hour;
					subscription.AgentSchedule.FrequencySubDayInterval = 2;
					subscription.AgentSchedule.ActiveStartDate = 20051108;
					subscription.AgentSchedule.ActiveEndDate = 20071231;
					subscription.AgentSchedule.ActiveStartTime = 060000;
					subscription.AgentSchedule.ActiveEndTime = 100000;

					// Specify the Windows login credentials for the Merge Agent job.
					subscription.SynchronizationAgentProcessSecurity.Login = winLogin;
					subscription.SynchronizationAgentProcessSecurity.Password = winPassword;

					// Create the push subscription.
					subscription.Create();
				}
				else
				{
					// Do something here if the publication does not exist.
					throw new ApplicationException(String.Format(
						"The publication '{0}' does not exist on {1}.",
						publicationName, publisherName));
				}
			}
			catch (Exception ex)
			{
				// Implement the appropriate error handling here.
				throw new ApplicationException(String.Format(
					"The subscription to {0} could not be created.", publicationName), ex);
			}
			finally
			{
				conn.Disconnect();
			}
Return to top

Community Additions

Show:
© 2015 Microsoft