dbTalk Databases Forums  

Problems scripting a DTS package that processes a cube

microsoft.public.sqlserver.olap microsoft.public.sqlserver.olap


Discuss Problems scripting a DTS package that processes a cube in the microsoft.public.sqlserver.olap forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
Tommy Vercetti
 
Posts: n/a

Default Problems scripting a DTS package that processes a cube - 08-02-2004 , 06:07 PM






I have a DTS package that processes a cube (it does absolutely nothing
else). This works perfectly when run through the Enterprise Manager GUI.

However, I need this logic to be executed from a C# app. I script the
DTS load/execute from C# and get strange errors (see below). I have
written plenty of C# code to script DTS packages and have never seen a
problem like this before. Any ideas?

Ideally, there would be a more direct interface to script a cube process
action. As far as I can tell, this isn't supported. I've researched
AODMD, XMLA, and ADOMD.NET and these don't seem to support processing
cubes; they seem designed for queries only. Am I missing something? It
seems very roundabout to have to go through DTS.


My C# code:

package.LoadFromSQLServer(
"(local)",
null,
null,
DTSSQLServerStorageFlags.DTSSQLStgFlag_UseTrustedC onnection,
null,
null,
null,
"Update Bounce Cube",
ref pVarPersistStgOfHost);

package.FailOnError = true;

package.Execute();


The DTS package creates the following error log file:

The execution of the following DTS Package failed:

Error Source: Analysis Services Processing Task
Error Description:Invalid processing option
Error code: 8004021D
\Error Help File:
Error Help Context ID:1000440


Package Name: Update Bounce Cube
Package Description: (null)
Package ID: {17AC55F3-D686-405B-9B2D-3CF5F62E83E0}
Package Version: {F94E846E-FB30-4190-A19C-802E0EA93EBE}
Package Execution Lineage: {8B567385-DB4A-4D72-9DEB-E97660452970}
Executed On: COMPU-B4619F953
Executed By: Administrator
Execution Started: 8/2/2004 2:03:49 PM
Execution Completed: 8/2/2004 2:03:49 PM
Total Execution Time: 0.157 seconds

Package Steps execution information:


Step 'DTSStep_DTSOlapProcess.Task_1' failed

Step Error Source: Analysis Services Processing Task
Step Error Description:Invalid processing option
Step Error code: 8004021D
Step Error Help File:
Step Error Help Context ID:1000440

Step Execution Started: 8/2/2004 2:03:49 PM
Step Execution Completed: 8/2/2004 2:03:49 PM
Total Step Execution Time: 0.031 seconds
Progress count in Step: 0
************************************************** **************************************************

Reply With Quote
  #2  
Old   
Brian Altmann
 
Posts: n/a

Default RE: Problems scripting a DTS package that processes a cube - 08-03-2004 , 08:39 AM






Have you made sure that the "Execute on main package thread" checkbox is checked in the Options tab of the Workflow Propeties dialog for the DTS step that processes the cube?
HTH,
--
Brian
www.geocities.com/brianaltmann/olap.html


"Tommy Vercetti" wrote:

Quote:
I have a DTS package that processes a cube (it does absolutely nothing
else). This works perfectly when run through the Enterprise Manager GUI.

However, I need this logic to be executed from a C# app. I script the
DTS load/execute from C# and get strange errors (see below). I have
written plenty of C# code to script DTS packages and have never seen a
problem like this before. Any ideas?

Ideally, there would be a more direct interface to script a cube process
action. As far as I can tell, this isn't supported. I've researched
AODMD, XMLA, and ADOMD.NET and these don't seem to support processing
cubes; they seem designed for queries only. Am I missing something? It
seems very roundabout to have to go through DTS.


My C# code:

package.LoadFromSQLServer(
"(local)",
null,
null,
DTSSQLServerStorageFlags.DTSSQLStgFlag_UseTrustedC onnection,
null,
null,
null,
"Update Bounce Cube",
ref pVarPersistStgOfHost);

package.FailOnError = true;

package.Execute();


The DTS package creates the following error log file:

The execution of the following DTS Package failed:

Error Source: Analysis Services Processing Task
Error Description:Invalid processing option
Error code: 8004021D
\Error Help File:
Error Help Context ID:1000440


Package Name: Update Bounce Cube
Package Description: (null)
Package ID: {17AC55F3-D686-405B-9B2D-3CF5F62E83E0}
Package Version: {F94E846E-FB30-4190-A19C-802E0EA93EBE}
Package Execution Lineage: {8B567385-DB4A-4D72-9DEB-E97660452970}
Executed On: COMPU-B4619F953
Executed By: Administrator
Execution Started: 8/2/2004 2:03:49 PM
Execution Completed: 8/2/2004 2:03:49 PM
Total Execution Time: 0.157 seconds

Package Steps execution information:


Step 'DTSStep_DTSOlapProcess.Task_1' failed

Step Error Source: Analysis Services Processing Task
Step Error Description:Invalid processing option
Step Error code: 8004021D
Step Error Help File:
Step Error Help Context ID:1000440

Step Execution Started: 8/2/2004 2:03:49 PM
Step Execution Completed: 8/2/2004 2:03:49 PM
Total Step Execution Time: 0.031 seconds
Progress count in Step: 0
************************************************** **************************************************


Reply With Quote
  #3  
Old   
Harsh
 
Posts: n/a

Default Re: Problems scripting a DTS package that processes a cube - 08-03-2004 , 09:33 AM



I am not sure for the reason of your error in C#. I am not a C#
person...

However - I process cube through "DSO"
Here is a starting point:

http://www.winnetmag.com/SQLServer/A...30/pg/1/1.html
I think you can incorporate this into your DTS package.

However - I would highly recommend using the Parallel Processing
Utility by Dave Wickert. You can process multiple partitions at a
time. And it has elaborate error handling.

http://www.microsoft.com/downloads/d...displaylang=en

Quote:
Ideally, there would be a more direct interface to script a cube process
action. As far as I can tell, this isn't supported. I've researched
AODMD, XMLA, and ADOMD.NET and these don't seem to support processing
cubes; they seem designed for queries only. Am I missing something? It
seems very roundabout to have to go through DTS.


Reply With Quote
  #4  
Old   
Tommy Vercetti
 
Posts: n/a

Default Re: Problems scripting a DTS package that processes a cube - 08-04-2004 , 01:04 AM



Brian Altmann wrote:
Quote:
Have you made sure that the "Execute on main package thread" checkbox is checked in the Options tab of the Workflow Propeties dialog for the DTS step that processes the cube?
HTH,
Yes, this was enabled by default.

I think my C# app worked correctly when I loaded/executed the DTS
package in the main thread and started getting the bizarre error once I
put it in a worker thread. That doesn't make any sense at all from a
logical perspective; I'm not violating apartment threading rules (the
object was loaded/executed in the same worker thread). But does this
have anything to do with what you are talking about?


Reply With Quote
  #5  
Old   
Tommy Vercetti
 
Posts: n/a

Default Re: Problems scripting a DTS package that processes a cube - 08-04-2004 , 01:07 AM



Excellent tip and excellent link!

I will try using DSO, thank you

Harsh wrote:

Quote:
I am not sure for the reason of your error in C#. I am not a C#
person...

However - I process cube through "DSO"
Here is a starting point:

http://www.winnetmag.com/SQLServer/A...30/pg/1/1.html
I think you can incorporate this into your DTS package.

However - I would highly recommend using the Parallel Processing
Utility by Dave Wickert. You can process multiple partitions at a
time. And it has elaborate error handling.

http://www.microsoft.com/downloads/d...displaylang=en


Ideally, there would be a more direct interface to script a cube process
action. As far as I can tell, this isn't supported. I've researched
AODMD, XMLA, and ADOMD.NET and these don't seem to support processing
cubes; they seem designed for queries only. Am I missing something? It
seems very roundabout to have to go through DTS.


Reply With Quote
  #6  
Old   
Brian Altmann
 
Posts: n/a

Default Re: Problems scripting a DTS package that processes a cube - 08-04-2004 , 07:21 AM



I can't be sure why your process is failing.
However I've found the Analysis Services Processing Task and scripting DSO from DTS to be very picky about threading.
There's some info in KB article 296533.
There's also paragraph on the subject in this article:
DTS Programming Techniques Used in Microsoft SQL Server Accelerator for Business Intelligence, under the heading :
Run Analysis Services Processing Tasks in Separate Processes
HTH,
--
Brian
www.geocities.com/brianaltmann/olap.html


"Tommy Vercetti" wrote:

Quote:
Brian Altmann wrote:
Have you made sure that the "Execute on main package thread" checkbox is checked in the Options tab of the Workflow Propeties dialog for the DTS step that processes the cube?
HTH,

Yes, this was enabled by default.

I think my C# app worked correctly when I loaded/executed the DTS
package in the main thread and started getting the bizarre error once I
put it in a worker thread. That doesn't make any sense at all from a
logical perspective; I'm not violating apartment threading rules (the
object was loaded/executed in the same worker thread). But does this
have anything to do with what you are talking about?


Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.