2017-08-15 3 views
0

J'ai un fichier BIML et que vous souhaitez utiliser la include pour apporter BIML d'un autre fichier qui peut se réutiliser dans d'autres endroits, mais il continue à donner cette erreur lorsque je vérifier les erreurs avec BIDSHelper:Comment inclure le fichier biml lorsqu'il a plus d'un nœud racine?

There are multiple root elements 

Je vois des exemples en ligne de personnes utilisant la directive include mais aucune mention sur ce problème. Je ne trouve aucun élément valide pour envelopper mon biml, il doit être ce morceau.

ErrorHandling.biml:

<UnionAll Name="Union Errors"> 
<InputPaths> 
    <InputPath OutputPathName="Lookup Site.Error" /> 
    <InputPath OutputPathName="Detail Level Source.Error" /> 
    <InputPath OutputPathName="Site to Integer.Error" /> 
</InputPaths> 
</UnionAll> 
<DerivedColumns Name="Error Metadata"> 
    <InputPath OutputPathName="Union Errors.Output" /> 
    <Columns> 
     <Column Name="execution_guid" DataType="AnsiString" Length="50" CodePage="1252">(DT_STR,50,1252)@[User::ExecutionGUID]</Column> 
     <Column Name="error_time" DataType="DateTime" >GETDATE()</Column> 
     <Column Name="PackageID" DataType="AnsiString" Length="38" CodePage="1252">(DT_STR,38,1252)@[System::PackageID]</Column> 
     <Column Name="DataflowID" DataType="AnsiString" Length="38" CodePage="1252">(DT_STR,38,1252)@[System::TaskID]</Column> 
     <Column Name="Step_Name" DataType="AnsiString" Length="50" CodePage="1252">(DT_STR,50,1252)"QI Load"</Column> 
     <Column Name="Task_Name" DataType="AnsiString" Length="50" CodePage="1252">(DT_STR,50,1252)"Detail Level Check"</Column> 
    </Columns> 
</DerivedColumns> 

Master.biml Snippet:

<RowCount Name="Row Count" VariableName="User.CheckRowCount"> 
     <InputPath OutputPathName="Lookup Site.Match" /> 
    </RowCount> 
    <#@ include file="ErrorHandling.biml" #> 
</Transformations> 

Répondre

0

J'ai trouvé deux façons d'obtenir ce à TRAVAiL soit changer l'extension du fichier à quelque chose comme txt ou il ne suffit pas de le sélectionner quand vous "compilez" vos fichiers avec BIDSHelper et faites "Check BIML for Errors" ou "Generate SSIS packages". Sélectionnez simplement les fichiers principaux qui utilisent les fichiers inclus et contiennent le bon XML.

+0

Renommer en '.txt' est une mauvaise idée. Ne pas le sélectionner est la bonne approche car les fichiers inclus seront référencés par ceux sélectionnés pour la compilation. – iamdave