Microsoft KB Archive/922651

= BUG: Error message when you try to save a maintenance plan in SQL Server Management Studio: &quot;Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)&quot; =

Article ID: 922651

Article Last Modified on 11/20/2007

-

APPLIES TO


 * Microsoft SQL Server 2005 Standard Edition
 * Microsoft SQL Server 2005 Developer Edition
 * Microsoft SQL Server 2005 Enterprise Edition
 * Microsoft SQL Server 2005 Workgroup Edition
 * Microsoft SQL Server 2005 Enterprise Edition for Itanium-based Systems
 * Microsoft SQL Server 2005 Enterprise X64 Edition
 * Microsoft SQL Server 2005 Standard Edition for Itanium-based Systems
 * Microsoft SQL Server 2005 Standard X64 Edition

-



Bug #: 443411 (SQLBUDT)



SYMPTOMS
Consider the following scenario:
 * In Microsoft SQL Server Management Studio, you connect to an instance of Microsoft SQL Server 2005 Integration Services (SSIS).
 * You import a maintenance plan from an Integration Services package that is stored in a different location. The Integration Services package was previously exported from a maintenance plan.
 * In SQL Server Management Studio, you modify the maintenance plan, and then you try to save the maintenance plan.

In this scenario, you receive the following error message:

Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).



CAUSE
This problem occurs because a record of the maintenance plan is not updated in the sysmaintplan_subplans system table when you import the maintenance plan from the Integration Services package.



WORKAROUND
To work around this problem, manually create the record of the maintenance plan that you import. To do this, follow these steps:  Start SQL Server Management Studio, and then connect to the instance of SQL Server 2005.  To obtain the GUID of the maintenance plan that you import, run the following statements. use msdb go select id from sysdtspackages90 where name='NewPlan' go Note These statements assume that you import a maintenance plan that is named NewPlan in the default instance of SQL Server 2005.

You obtain the following GUID in the id column of the result:

6A7FA469-F5DB-4FF4-B153-5F11926477B7

 Create a job that is named NewPlanJob, and then click Database Maintenance in the Category list. For the job that you created in step 3, create a new step that is named NewPlanStep, and then click SQL Server Integration Services Package in the Type list. Close the New Job dialog box.  To obtain the GUID of the step that you created in step 4, run the following statements. use msdb go select job_id from sysjobsteps where step_name='NewPlanStep' go You obtain the following GUID in the job_id column of the result:

E85564E2-92A1-4B70-89DF-329F152CCD97

</li> Obtain the GUID of the record that is not updated in the sysmaintplan_subplans system table when you import the maintenance plan. To do this, follow these steps: <ol style="list-style-type: lower-alpha;"> Start Business Intelligence Development Studio, and then create a new Integration Services project.</li> In Solution Explorer, right-click SSIS Packages, and then click Add Existing Package.</li> Add the NewPlan maintenance plan to the current project from the correct package location.</li> In Solution Explorer, double-click the imported package.</li> In Design view, click the task that has a name that resembles the following:

Reporting Task for subplan-{1EFB298F-1313-4A26-8986-A5C9C5A0C2AB}

In this example, 1EFB298F-1313-4A26-8986-A5C9C5A0C2AB is the GUID.</li></ol> </li>  To insert the required record in the sysmaintplan_subplans system table, run the following statement in SQL Server Management Studio. insert into sysmaintplan_subplans (   subplan_id,    subplan_name,    subplan_description,    plan_id,    job_id )values (    '1EFB298F-1313-4A26-8986-A5C9C5A0C2AB',    'NewPlan','',    '6A7FA469-F5DB-4FF4-B153-5F11926477B7',    'E85564E2-92A1-4B70-89DF-329F152CCD97' ) GO </li>  To fix the command of the job that you created in step 3, run the following statement. update sysjobsteps set command='/Server YourServer /SQL &quot;Maintenance Plans\NewPlan&quot; /set &quot;\Package\NewPlan.Disable;false&quot;' where step_name='NewPlanStep' Note In this statement,  is a placeholder for the server name. </li></ol>

<div class="status_section">

STATUS
Microsoft has confirmed that this is a bug in the Microsoft products that are listed in the &quot;Applies to&quot; section.

Keywords: kbtshoot kbbug kbexpertiseadvanced kbsql2005ssis KB922651

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.