Support Tip: Importing MVLS information into an Asset Intelligence catalog fails with "failed to Import Licensing Data into the Site Database"

toolsignYou may find that you are unable to import Microsoft Volume Licensing Software (MVLS) information into a System Center Configuration Manager 2007 (ConfigMgr 2007) Asset Intelligence catalog. During the import of software license information you get the following error:

Failed to Import Licensing Data into the Site Database


This can occur due to formatting issues with the MVLS .XML file. To verify whether this is your issue, open the .XML file in Notepad and for each cell in Column C (excluding the header) check to see whether some data is treated as a Number instead of Text (String). If so then this is the cause of the issue. For example:

Incorrect Format (Column C)


    <Cell><Data ss:Type="String">Applications</Data></Cell>

    <Cell><Data ss:Type="String">Office Premium</Data></Cell>

    <Cell><Data ss:Type="Number">2000</Data></Cell>

    <Cell><Data ss:Type="Number">50</Data></Cell>

    <Cell><Data ss:Type="Number">0</Data></Cell>

    <Cell><Data ss:Type="Number">0</Data></Cell>


Correct Format (Column C)


    <Cell><Data ss:Type="String">Applications</Data></Cell>

    <Cell><Data ss:Type="String">Office Premium</Data></Cell>

    <Cell><Data ss:Type="String">2000</Data></Cell>

    <Cell><Data ss:Type="Number">50</Data></Cell>

    <Cell><Data ss:Type="Number">0</Data></Cell>

    <Cell><Data ss:Type="Number">0</Data></Cell>


This issue can occur if the product version code has only a numeric value (e.g. 2010, 2007, 2005, etc.). On the contrary, if we have a product named Windows 7 Enterprise, where the version code is 7 Enterprise and contains non-numeric characters, when we download the MVLS file it tags the version code of 7 Enterprise as a String which is correct.

To resolve this, when the version code contains numeric values only we need to change the Column C format from Number to String.

Method 1

For each cell in column C (excluding the header) add the character ' before the data so Excel treats it as a string and not a number. Here is a way to automate this:

1. Open .Xml file in Excel

2. Add Developer Tab on the Ribbon

a. Start the Office application (Word 2010, Excel 2010, Outlook 2010, or PowerPoint 2010).

b. Choose the File tab, and then choose Options.

c. In the categories pane, choose Customize Ribbon.

d. In the list of main tabs, choose Developer.

e. Choose the OK button to close the Options dialog box.


See How to: Show the Developer Tab on the Ribbon for more information:

3. Now we need to run a VBA procedure to modify the Excel file. To do this, on the Developer tab, in the Code group, click Macro Security.

4. In the Macro Settings category, under Macro Settings, click Enable all macros (not recommended, potentially dangerous code can run), and then click OK.

Note: To help prevent potentially dangerous code from running, we recommend that you return to any one of the settings that disable all macros after you finish working with macros.

5. Save and close all open workbooks.

6. Open the workbook where you want to add the macro, or create a new workbook, and on the Developer tab, in the Code group, click Visual Basic(Alternatively you can press Alt+F11).

7. In the Project Explorer window, right-click the ThisWorkbook object, and then click View Code

For more details on this, see Run a macro at Refer to section titled Create a VBA procedure for the Open event of a workbook

8. Copy in the code below (Note: You can change Collimit to number of rows you have in .XML file):

Sub test()
Dim s As String
Dim colname As String
colname = "C"
Dim collimit As Integer
collimit = 75
For i = 2 To collimit
s = colname & i
If Range(s).Value2 = "" Then
Range(s).Value2 = "'" & Range(s).Value2
End If
End Sub

It should look something like this:


9. Press F5 to Run Macro


10. Choose the File tab, Save .XML File(Ctrl+S)


11. Click Yes on the warning:


12. Verify each cell in column C (excluding the header) has the character ' before the data:


13. Import Software License Information in Configuration Manager. For more information on how to do this, see How to Import Software License Information at


Method 2

1. Manually edit the .XML file in Notepad and change the Type value for each affected line from Number to String for the third cell:


2. Import Software License Information in Configuration Manager.

Shobhit Garg | Senior Support Engineer
Vinayak Sharma | Support Engineer

Get the latest System Center news on Facebook and Twitter:

clip_image001 clip_image002

App-V Team blog:
ConfigMgr Support Team blog:
DPM Team blog:
MED-V Team blog:
Orchestrator Support Team blog:
Operations Manager Team blog:
SCVMM Team blog:
Server App-V Team blog:
Service Manager Team blog:
System Center Essentials Team blog:
WSUS Support Team blog:

The Forefront Server Protection blog:
The Forefront Endpoint Security blog :
The Forefront Identity Manager blog : support/
The Forefront TMG blog:
The Forefront UAG blog:

Comments (6)
  1. Anonymous says:

    Thank you – this worked for me.

  2. stef says:

    Has anyone else reported a problem with the all-licenses.csv import in SCCM2007 and 2012?  SCCM2007 will not allow the file to import if it contains two records that are identical in the Name and Publisher fields and the same up to the 3rd character in the Version field.  SCCM2007 database stores any number of products with similar versions found on the network, for example 14.0.4763 and 14.0.6029, but attempting to import the all-license file containing both records produces the same error as shown above for the MVLS file.  Change one record to be version 14x and the upload works.  In SCCM2012 the import works but strips out one record. I thought this may be related to the Version field format but this is a .csv file. Any ideas?      

  3. Mark says:

    SCCM console still reports that the file is invalid. This file came directly from Microsoft. Why would the license group make a file that doesn’t work with SCCM and/or why would the SCCM group create an import wizard that doesn’t work with the file that
    the licensing group allows you to download. This is pathetic.

  4. mike says:

    We also had a problem importing our file after we made the changes above. What helped us was adding NA to the blank entries for Column C. Also make sure the sheet name is 'License Data'. We were able to import into ConfigMgr 2012 R2 after those two changes.

  5. I am on SCCM 2012 R2 with the latest CU and updates. My Microsoft License file gets imported fine, however when i run the reconciliation report, the Effective Licenses and Unresolved licenses etc all show 0.

    Can someone advise on what i am doing wrong?

    1. Jonathan says:

      Hey Digvijay,

      If you’re still having that issue, check out your AI_MVLS table in your site DB: select * from AI_MVLS

      Check out the values and make sure that they all line up with the proper columns. If they don’t, something in the file isn’t right.

Comments are closed.

Skip to main content