Dette er nødvendigvis ikke et svar på, hvordan man løser problemet, men det er et svar på, hvordan du kan ændre din scriptopgave for at få en bedre fejlmeddelelse end "Scriptopgavefejl:Undtagelse er blevet kastet..."
Vi pakker altid vores scriptopgaver ind i en try-catch og rejser derefter undtagelsesmeddelelsen tilbage fra scriptopgaven:
public void Main()
{
try
{
//Your code here
Dts.TaskResult = (int)ScriptResults.Success;
}
catch (Exception ex)
{
Dts.Events.FireError(-1, "", ex.Message, String.Empty, 0);
Dts.TaskResult = (int)ScriptResults.Failure;
}
}
Det er altid en udfordring, især med en implementeret SSIS-pakke, når den fejler på en scrip-opgave, får du ikke nødvendigvis en klar indikation om, hvorfor den fejler, og du får en kryptisk fejlmeddelelse. Ovenstående kode vil fange, hvad der kastede undtagelsen og boble tilbage til integrationstjenester, hvad det var.