Showing posts with label reporting. Show all posts
Showing posts with label reporting. Show all posts

Friday, March 30, 2012

Invoking a SQL Server user-defined function via SQL passed to Informix

==========
Background
==========
My colleague and I are using MS Reporting Services to create reports based upon data extracted from an Informix database. Inseveral reports, we have the need to parse the contents of a variable length field in order to extract a variable lengthforeign key value.

Note that the key value is of variable length and embedded within a string that's also of variable length.

==========
Question
==========
Given the fact that we aren't allowed to add anything within the back-end Informix environment, we wrote a SQL Server userdefined function that can extract a variable length "key" value from a variable length string. My question is as follows:

Is it even possible to invoke a SQL Server user defined function in our SQL statement (passed to Informix) within the context of Reporting Services?

==========
Environment Notes
==========
- We are NOT allowed to add anything within the back-end Informix db environment.

- We are connecting via an Informix ODBC driver with a linked Informix server defined in our SQL Server environment.

- We've tried defining the user-defined function within the "master", "ReportServer" and "ReportServerTempDB" databases with the appropriate permissions set.

==========
Error Messages
==========
We've received the following error message after trying to invoke the SQL Server user defined function:

SELECT field1, field2, field3, dbo.udf_GetStringElement(field3,'/',1,2) AS extrctd

[Informix][Informix ODBC Driver][Informix]Identifier length exceeds the maximum allowed by this version of the server.

We receive the following error message after creating a new SQL Server user defined function using a shorter name:

SELECT field1, field2, field3, dbo.gse(field3,'/',1,2) AS extrctd

[Informix][Informix ODBC Driver][Informix]Routine (dbo.gse) can not be resolved.

Any feedback would be appreciated,

ndm

have you tried using a custom code function for it ?|||

Hey, thanks for the reply.

I'm not sure I understand what you mean by "custom code function". The user defined functions I mentioned, "udf_GetStringElement", "gse", are user defined functions that I wrote. It's not one of the "system" functions (e.g. "fn_isreplmergeagent") found in master.

I merely created the function WITHIN the context of the "master" db and eventually within "Report Server" and "ReportServerTempDB" in an attempt to invoke the function within a Report Services SQL statement.

|||By Custom Code function I mean the custom code vb.net functions you canwrite under Report -> Properties -> Code tab. You canreplicate the logic of your user defined function you have in sql intovb.net.
what xactly foes your user defined function do ?
|||

Ah, I understand what you're saying about simply replicating/writing the string parsing/extraction logic within the Report Services environment, but our issue isn't really a (post-data aggregation) formatting problem.

Our SQL Server user defined function parses a variable length string in order to extract a variable length "foreign key" value that we'll need to use for joining data from several Informix tables.

Unless there's another approach of which I'm unaware, I'm assuming that we need to parse this string DURING the SQL execution in order to perform the requisite join(s).

Appreciate the feedback,

ndm

|||I didnt understand the situation completely..you have the SELECT stmt from Informix db but the UDF is in SQL Server right ? does the udf do anything other than string parsing ? looks like its a little complicated and we could be hitting the limitations ( one of the many) of RS.|||

Correct; the SELECT statement (defined within shared Report Services dataset) is passed to Informix and our custom UDF is in SQL Server.

More specifically, I've tried placing our custom SQL Server UDF within several of the SQL Server databases ("master", "ReportServer" and "ReportServerTempDB"). When I attempt to invoke the UDF within the SQL statement passed to Informix, I receive the aforementioned error messages.

The key point is that we need to be able to parse DURING the SQL execution in order to perform some requisite join(s).

Within a pure SQL Server environment, I can access the UDF from master (or, for that matter, any other SQL Server db so long as the appropriate permissions are set). I'm not even sure if what we're trying to accomplish is possible since the SQL statement is being passed to Informix. I was wondering if there was some "Reporting Services" method for invoking our custom UDF defined WITHIN the SQL Server realm.

Again, I appreciate the reply.

ndm

|||

The SQL statement you have is executed on Informix DB engine and it wouldnt understand the SQL UDF..unless you make a specific connection to SQL for which it may not be possible in 1 SELECT stmt..you prbly might need to use a set of stmts..If the UDF is only doing some string parsing I would recommend moving it into RS custom code and rewriting it in vb.net. Cant think of anything else..

|||

I would create a DTS package that is scheduled to get the data from Informix and populate the Reporting Service database. Try the urls below for more info. Hope this helps.

http://www.sqldts.com

http://www.microsoft.com/technet/prodtechnol/sql/2000/deploy/infmxsql.mspx#EDAA

Kind regards,

Gift Peddie

|||

Yes, I'm thinking that we may have to take a less directextract+dump+cleanse route (Informix -> MS SQL Server -> MS Reporting Services) for this scenario. We were trying to avoid taking snapshots of the data and having to maintain a secondary (albeit temporary) data store.

Your recommendation merits further consideration.

Thanks for the feedback,

ndm

Invoke 'Refresh fields' programmatically

Hi all
I've implemented our custom data processing extension for Reporting Services
and the 'Refresh Fields' button available in the Generic Query Designer is
very useful to us to make sure the fields in the RDL files are updated.
Unfortunately, I can't seem to find a way to programmatically invoke this
'Refresh Fields' command. I want to write my own utility, but I'm not an
expert in .NET nor XML. Any pointers or guidance on how to achieve my goal
is greatly appreciated!
Thanks!!Hi,
I'll see if I can find the answer. I'll update you once I have more
information.
Sincerely,
William Wang
Microsoft Online Partner Support
When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.
This posting is provided "AS IS" with no warranties, and confers no rights.|||Thank you and your
"William Wang[MSFT]" wrote:
> Hi,
> I'll see if I can find the answer. I'll update you once I have more
> information.
> Sincerely,
> William Wang
> Microsoft Online Partner Support
> When responding to posts, please "Reply to Group" via your newsreader so
> that others may learn and benefit from your issue.
> This posting is provided "AS IS" with no warranties, and confers no rights.
>|||Hi,
You may want to implement the refresh logic externally by calling
IDbCommand.ExecuteReader(SchemaOnly). I suggest that you review this thread
for more information:
http://groups.google.com/group/microsoft.public.sqlserver.reportingsvcs/brow
se_thread/thread/d4a878f340785d77/ae765089b645dc3a?lnk=st&q=%22refresh+field
s%22+SchemaOnly+group:microsoft.public.sqlserver.reportingsvcs&rnum=5&hl=en#
ae765089b645dc3a
Sincerely,
William Wang
Microsoft Online Partner Support
When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.
This posting is provided "AS IS" with no warranties, and confers no rights.|||Thanks for the info. It's helpful to know what exactly happens for 'Refresh
Fields' behind the scene.
Unfortunately my main goal is to update the given RDL file(s). Everytime I
clicked the 'Refresh Fields' button the corresponding RDL file gets updated,
which is what I'm looking for.
In a Reporting Project, I want to be able to programmatically refresh all
its RDL files. Maybe I should ask how to get access to an IDbCommand object
for each report?
Your help is appreciated!! Thanks!
Jenny
"William Wang[MSFT]" wrote:
> Hi,
> You may want to implement the refresh logic externally by calling
> IDbCommand.ExecuteReader(SchemaOnly). I suggest that you review this thread
> for more information:
> http://groups.google.com/group/microsoft.public.sqlserver.reportingsvcs/brow
> se_thread/thread/d4a878f340785d77/ae765089b645dc3a?lnk=st&q=%22refresh+field
> s%22+SchemaOnly+group:microsoft.public.sqlserver.reportingsvcs&rnum=5&hl=en#
> ae765089b645dc3a
> Sincerely,
> William Wang
> Microsoft Online Partner Support
> When responding to posts, please "Reply to Group" via your newsreader so
> that others may learn and benefit from your issue.
> This posting is provided "AS IS" with no warranties, and confers no rights.
>|||There's not a direct way so far.
<yinjennytam@.newsgroup.nospam> wrote in message
news:28AD35DA-113D-43C3-B95A-50C910D01CD8@.microsoft.com...
> Thanks for the info. It's helpful to know what exactly happens for
> 'Refresh
> Fields' behind the scene.
> Unfortunately my main goal is to update the given RDL file(s). Everytime
> I
> clicked the 'Refresh Fields' button the corresponding RDL file gets
> updated,
> which is what I'm looking for.
> In a Reporting Project, I want to be able to programmatically refresh all
> its RDL files. Maybe I should ask how to get access to an IDbCommand
> object
> for each report?
> Your help is appreciated!! Thanks!
> Jenny
>
> "William Wang[MSFT]" wrote:
>> Hi,
>> You may want to implement the refresh logic externally by calling
>> IDbCommand.ExecuteReader(SchemaOnly). I suggest that you review this
>> thread
>> for more information:
>> http://groups.google.com/group/microsoft.public.sqlserver.reportingsvcs/brow
>> se_thread/thread/d4a878f340785d77/ae765089b645dc3a?lnk=st&q=%22refresh+field
>> s%22+SchemaOnly+group:microsoft.public.sqlserver.reportingsvcs&rnum=5&hl=en#
>> ae765089b645dc3a
>> Sincerely,
>> William Wang
>> Microsoft Online Partner Support
>> When responding to posts, please "Reply to Group" via your newsreader so
>> that others may learn and benefit from your issue.
>> This posting is provided "AS IS" with no warranties, and confers no
>> rights.
>>

Invoke or detect Print Report event

Hi
I'm not sure if this is possible, but hoping that someone out there can
give some guidance.
I'm using a reporting services ReportViewer object to view reports via
an ASP.NET application. I've just upgraded to SP2 to make use of the
print functionality.
However a requirement i have is that a particular report can be printed
only once. Is there a way that i can tap into the Print Report button
event so that i can detect if the print button has been clicked?
Or alternatively is there a way i can invoke the print method from
within ASP.NET aplication?
Or maybe there is some other way to do this....all suggestions
welcome!!!!!!!
Many many thanks in advance
Cheers!!!!There is no way to do this that I know of. And what counts as once? What if
they open up IE again and view the report again? How would you know that it
is the first or second time?
Bruce Loehle-Conger
MVP SQL Server Reporting Services
"muirboy" <gmuir@.statestreet.com> wrote in message
news:1157040604.891636.111600@.m73g2000cwd.googlegroups.com...
> Hi
> I'm not sure if this is possible, but hoping that someone out there can
> give some guidance.
> I'm using a reporting services ReportViewer object to view reports via
> an ASP.NET application. I've just upgraded to SP2 to make use of the
> print functionality.
> However a requirement i have is that a particular report can be printed
> only once. Is there a way that i can tap into the Print Report button
> event so that i can detect if the print button has been clicked?
> Or alternatively is there a way i can invoke the print method from
> within ASP.NET aplication?
> Or maybe there is some other way to do this....all suggestions
> welcome!!!!!!!
> Many many thanks in advance
> Cheers!!!!
>|||Bruce
They should be able to view it as many times as they want, therefore
coming out of IE and back in again would be fine. Essentially once
someone had clicked on the print button it would go back to the DB to
say that the report has been printed, thus locking it for anyone else.
If this sounds bizarre, its due a requirement from an external company
that only one print out should exist. There is a 'duplicate' function
which gives the user access to print the same report again, however the
word 'duplicate' would be splashed over to signify it is not the
original
So are you saying there's no way for me to detect the print function
has been invoked?
Thanks
Bruce L-C [MVP] wrote:
> There is no way to do this that I know of. And what counts as once? What if
> they open up IE again and view the report again? How would you know that it
> is the first or second time?
>|||It is a client side active X control. If you were to detect it, it would
have to be via script and I just don't know. From RS perspective it is just
another rendering request for the report. What about exporting to PDF?
Unless you turn off exporting to PDF (which cannot be done by report, only
for the complete server) then all the user has to do is export to PDF and
print (which is what my users used to do before they adding printing).
Bruce Loehle-Conger
MVP SQL Server Reporting Services
"muirboy" <gmuir@.statestreet.com> wrote in message
news:1157044757.246385.151290@.74g2000cwt.googlegroups.com...
> Bruce
> They should be able to view it as many times as they want, therefore
> coming out of IE and back in again would be fine. Essentially once
> someone had clicked on the print button it would go back to the DB to
> say that the report has been printed, thus locking it for anyone else.
> If this sounds bizarre, its due a requirement from an external company
> that only one print out should exist. There is a 'duplicate' function
> which gives the user access to print the same report again, however the
> word 'duplicate' would be splashed over to signify it is not the
> original
> So are you saying there's no way for me to detect the print function
> has been invoked?
> Thanks
> Bruce L-C [MVP] wrote:
>> There is no way to do this that I know of. And what counts as once? What
>> if
>> they open up IE again and view the report again? How would you know that
>> it
>> is the first or second time?
>>
>

Investigating Custom Security

Hi everyone,
At the moment, my company is looking at ways to offer data hosting to our
customers. As far as Reporting Services goes, the current idea is that they
would contact a Report Server hosted by us externally. As a result, we are
looking at which security options are best and would appreciate some insight
if anyone has any suggestions.
At the moment, the idea is to have a single report server with different
folders for each customer. We would like to implement security so that each
customer can see their own folder, but no-one else can, and no-one can see
the directory of folders. It does not appear to be feasible to do this with
windows role-based security, so we are looking at writing our own custom
security extension. The problem here is that there does not seem to be a
way, when dealing with AceStructs, for example, to monitor which folder the
user is in.
Anyway, my questions are:
1. Is this whole approach wrong-headed, i.e. do we really need to have a
different ReportServer for each customer? We would like to avoid this if
possible.
2. If we do use the same server with different folders, what is the best
way to check what folder the user is in and whether that is their correct
folder (in, for example, the IAuthorizationExtension.CheckAccess implemented
method)?
As ever, any help very much appreciated.
Ed AllisonWe implemented something incredibly similar. You don't need to know what
folder the user is in CheckAccess because thats part of the ACL associated
with it. You assign users (or groups) particular access to different
folders. Check Access will do the rest of the work
so if you had 2 folders in the root for
/ClientA
/ClientB
and neither wants to see the other... (well you don't want them too)
you would assign permissions for the group to clienta for clienta folder,
and clientb for clientb folder.
Now they may be able to see the folder, but if they try to access it, it
gets access denied.
Otherwise, it sounds like your trying to re-write CheckAccess in almost the
same way it is now... just think about it a bit differently.
"Ed Allison" <ed@.optix.co.uk> wrote in message
news:OP6TJBCSGHA.5908@.TK2MSFTNGP14.phx.gbl...
> Hi everyone,
> At the moment, my company is looking at ways to offer data hosting to our
> customers. As far as Reporting Services goes, the current idea is that
> they
> would contact a Report Server hosted by us externally. As a result, we
> are
> looking at which security options are best and would appreciate some
> insight
> if anyone has any suggestions.
> At the moment, the idea is to have a single report server with different
> folders for each customer. We would like to implement security so that
> each
> customer can see their own folder, but no-one else can, and no-one can see
> the directory of folders. It does not appear to be feasible to do this
> with
> windows role-based security, so we are looking at writing our own custom
> security extension. The problem here is that there does not seem to be a
> way, when dealing with AceStructs, for example, to monitor which folder
> the
> user is in.
> Anyway, my questions are:
> 1. Is this whole approach wrong-headed, i.e. do we really need to have a
> different ReportServer for each customer? We would like to avoid this if
> possible.
> 2. If we do use the same server with different folders, what is the best
> way to check what folder the user is in and whether that is their correct
> folder (in, for example, the IAuthorizationExtension.CheckAccess
> implemented
> method)?
> As ever, any help very much appreciated.
> Ed Allison
>
>|||You have to enable "My Reports" feature in the Reporting services and refer
your customers to "My Reports" folder upon login.
Everyone will have its own and you don't have to know, what is the real name
of the folder is - just use "My Reports" path.
But you are going to face a challenge of accessing shared reports in a fixed
folder - use parameter encryption in that case.
--
Oleg Yevteyev,
San Diego, CA
It is OK to contact me with a contracting opportunity.
"myfirstname"001atgmaildotcom.
Replace "myfirstname" with Oleg.
--
"Ed Allison" <ed@.optix.co.uk> wrote in message
news:OP6TJBCSGHA.5908@.TK2MSFTNGP14.phx.gbl...
> Hi everyone,
> At the moment, my company is looking at ways to offer data hosting to our
> customers. As far as Reporting Services goes, the current idea is that
> they
> would contact a Report Server hosted by us externally. As a result, we
> are
> looking at which security options are best and would appreciate some
> insight
> if anyone has any suggestions.
> At the moment, the idea is to have a single report server with different
> folders for each customer. We would like to implement security so that
> each
> customer can see their own folder, but no-one else can, and no-one can see
> the directory of folders. It does not appear to be feasible to do this
> with
> windows role-based security, so we are looking at writing our own custom
> security extension. The problem here is that there does not seem to be a
> way, when dealing with AceStructs, for example, to monitor which folder
> the
> user is in.
> Anyway, my questions are:
> 1. Is this whole approach wrong-headed, i.e. do we really need to have a
> different ReportServer for each customer? We would like to avoid this if
> possible.
> 2. If we do use the same server with different folders, what is the best
> way to check what folder the user is in and whether that is their correct
> folder (in, for example, the IAuthorizationExtension.CheckAccess
> implemented
> method)?
> As ever, any help very much appreciated.
> Ed Allison
>
>|||I'll look into that. Thanks for your help.
"Oleg Yevteyev" <myfirstname001atgmaildotcom> wrote in message
news:%23xh9mOJSGHA.5728@.tk2msftngp13.phx.gbl...
> You have to enable "My Reports" feature in the Reporting services and
> refer your customers to "My Reports" folder upon login.
> Everyone will have its own and you don't have to know, what is the real
> name of the folder is - just use "My Reports" path.
> But you are going to face a challenge of accessing shared reports in a
> fixed folder - use parameter encryption in that case.
> --
> Oleg Yevteyev,
> San Diego, CA
> It is OK to contact me with a contracting opportunity.
> "myfirstname"001atgmaildotcom.
> Replace "myfirstname" with Oleg.
> --
> "Ed Allison" <ed@.optix.co.uk> wrote in message
> news:OP6TJBCSGHA.5908@.TK2MSFTNGP14.phx.gbl...
>> Hi everyone,
>> At the moment, my company is looking at ways to offer data hosting to our
>> customers. As far as Reporting Services goes, the current idea is that
>> they
>> would contact a Report Server hosted by us externally. As a result, we
>> are
>> looking at which security options are best and would appreciate some
>> insight
>> if anyone has any suggestions.
>> At the moment, the idea is to have a single report server with different
>> folders for each customer. We would like to implement security so that
>> each
>> customer can see their own folder, but no-one else can, and no-one can
>> see
>> the directory of folders. It does not appear to be feasible to do this
>> with
>> windows role-based security, so we are looking at writing our own custom
>> security extension. The problem here is that there does not seem to be a
>> way, when dealing with AceStructs, for example, to monitor which folder
>> the
>> user is in.
>> Anyway, my questions are:
>> 1. Is this whole approach wrong-headed, i.e. do we really need to have a
>> different ReportServer for each customer? We would like to avoid this if
>> possible.
>> 2. If we do use the same server with different folders, what is the best
>> way to check what folder the user is in and whether that is their correct
>> folder (in, for example, the IAuthorizationExtension.CheckAccess
>> implemented
>> method)?
>> As ever, any help very much appreciated.
>> Ed Allison
>>
>|||Thanks for your answer Chris. You are correct. I was working on the false
assumption that it would be necessary to completely re-write CheckAccess. I
see that this is not necessary, and that will save me a lot of time.
"Chris Taylor" <ctaylor7480@.newsgroups.nospam> wrote in message
news:ejiAGRFSGHA.4384@.tk2msftngp13.phx.gbl...
> We implemented something incredibly similar. You don't need to know what
> folder the user is in CheckAccess because thats part of the ACL associated
> with it. You assign users (or groups) particular access to different
> folders. Check Access will do the rest of the work
> so if you had 2 folders in the root for
> /ClientA
> /ClientB
> and neither wants to see the other... (well you don't want them too)
> you would assign permissions for the group to clienta for clienta folder,
> and clientb for clientb folder.
> Now they may be able to see the folder, but if they try to access it, it
> gets access denied.
> Otherwise, it sounds like your trying to re-write CheckAccess in almost
> the same way it is now... just think about it a bit differently.
>
>
> "Ed Allison" <ed@.optix.co.uk> wrote in message
> news:OP6TJBCSGHA.5908@.TK2MSFTNGP14.phx.gbl...
>> Hi everyone,
>> At the moment, my company is looking at ways to offer data hosting to our
>> customers. As far as Reporting Services goes, the current idea is that
>> they
>> would contact a Report Server hosted by us externally. As a result, we
>> are
>> looking at which security options are best and would appreciate some
>> insight
>> if anyone has any suggestions.
>> At the moment, the idea is to have a single report server with different
>> folders for each customer. We would like to implement security so that
>> each
>> customer can see their own folder, but no-one else can, and no-one can
>> see
>> the directory of folders. It does not appear to be feasible to do this
>> with
>> windows role-based security, so we are looking at writing our own custom
>> security extension. The problem here is that there does not seem to be a
>> way, when dealing with AceStructs, for example, to monitor which folder
>> the
>> user is in.
>> Anyway, my questions are:
>> 1. Is this whole approach wrong-headed, i.e. do we really need to have a
>> different ReportServer for each customer? We would like to avoid this if
>> possible.
>> 2. If we do use the same server with different folders, what is the best
>> way to check what folder the user is in and whether that is their correct
>> folder (in, for example, the IAuthorizationExtension.CheckAccess
>> implemented
>> method)?
>> As ever, any help very much appreciated.
>> Ed Allison
>>
>

Wednesday, March 28, 2012

InvalidReportParameterException using Data Processing Extensions

We have a report that runs via the data processing extensions. Running this
report from the reporting service interface or via the web is fine.
However, we have a requirement for running this report via some very
speciifc schedules. To achieve this we are programatically rendering this
report. We supply three paramters for this to run. The report runs a stored
procedure to obtain a list of valid periodIds. We pass it a valid period id
(can be found in the list) however, we get the error message below.
Any pointers greatly appreciated.
Steve
*** EXCEPTION: SoapException
*** MSG: System.Web.Services.Protocols.SoapException: Default value or value
provided for the report parameter 'periodId' is not a valid value. -->
Microsoft.ReportingServices.Diagnostics.Utilities.RSException: Default value
or value provided for the report parameter 'periodId' is not a valid value.
-->
Microsoft.ReportingServices.Diagnostics.Utilities.InvalidReportParameterException:
Default value or value provided for the report parameter 'periodId' is not a
valid value.
at
Microsoft.ReportingServices.ReportProcessing.ParameterInfoCollection.ThrowIfNotValid()
at
Microsoft.ReportingServices.Library.RSService.RenderAsLiveOrSnapshot(CatalogItemContext
reportContext, ClientRequest session, Warning[]& warnings,
ParameterInfoCollection& effectiveParameters)
at
Microsoft.ReportingServices.Library.RSService.RenderFirst(CatalogItemContext
reportContext, ClientRequest session, Warning[]& warnings,
ParameterInfoCollection& effectiveParameters, String[]& secondaryStreamNames)
at Microsoft.ReportingServices.Library.RenderFirstCancelableStep.Execute()
at
Microsoft.ReportingServices.Diagnostics.CancelablePhaseBase.ExecuteWrapper()
-- End of inner exception stack traceHi Steve,
I am having a similar problem and I wonder if you figured out what the
problem was...
Thanks,
Ana|||Hi Ana,
It turned out that the problem was one of case sensitivity.
The IDs we were dealing with were all GUIDs. Some of the lists were
uppercase, some were lowercase. As the comparison does not happen in our case
insensitive SQL Server environment, this caused an issue.
Hopefully, any problem you have is just as simple.
Good luck
Steve
"awatanabe@.herald.com" wrote:
> Hi Steve,
> I am having a similar problem and I wonder if you figured out what the
> problem was...
> Thanks,
> Ana
>

Invalid URI problem

Hi,

I got a problem in MS-SQL 2k reporting service that when I set a hyper link into a data-bind table, sometime it prompt "Invalid URI: The hostname could not be parsed" error, and the bind data should contain special char like space, -, etc.

Is the char affect the error or another problem? And any solution if it's the char problem?

The development tools is VS 2003 and the report format is rdl

I feel sorry about that the error is my programming error on using "\" on URL.

In IE or firefox, the browser can automatically resolve this typo error so I cannot indicate it easily. But in reporting service, it will check this error before the report generated.

Monday, March 26, 2012

invalid report server database

I'm trying to install the developer edition of SQL Reporting Services in a
developer edition of SQL 2000. I keep getting the error message
"rsInvalidReportServerDatabase" and the expected version is 'C.0.6.54'. I do
a complete uninstall, manually remove the database and log files, and attempt
another install, but keep getting an error that I need to run rsactivate.
When I do I get the error that the Report Web service has not generated a
public key. I unchecked the require SSL during install. When I run the report
manager I get the invalid report server database. Any help will be
appreciated.The problem is that I changed the name of the machine and needed to update
Security with the SQL logon of the new <local machine>\ASPNET account and
set the database access for Master, ReportServer, ReportServerTempDB to
RSExecRole. If anyone gets this same error, you may want to check your
ASPNET logon in SQL server.
Dan
"DLS" <DLS@.discussions.microsoft.com> wrote in message
news:EB4F685C-7B22-4499-AC95-26E53A123A42@.microsoft.com...
> I'm trying to install the developer edition of SQL Reporting Services in a
> developer edition of SQL 2000. I keep getting the error message
> "rsInvalidReportServerDatabase" and the expected version is 'C.0.6.54'. I
> do
> a complete uninstall, manually remove the database and log files, and
> attempt
> another install, but keep getting an error that I need to run rsactivate.
> When I do I get the error that the Report Web service has not generated a
> public key. I unchecked the require SSL during install. When I run the
> report
> manager I get the invalid report server database. Any help will be
> appreciated.

Friday, March 23, 2012

Invalid object name 'ReportServerTempDB.dbo.PersistedStream'

Hi,
I've restored my report server 2005 from serverA to serverB and
Reporting Services will run and I can access the reports, but the
above error will pop whenever I try to run a report. I followed the
steps outlined below - where did I go wrong?
1) backed up the encryption key on serverA
2) backed up the report server databases on both servers
3) shut down RS on serverB
4) detached the reportserver database on serverB
5) renamed reportserver.mdf and ldf to reportserver.mdf_old and
reportserver.ldf_old
6) restored reportserver.mdf and ldf from serverA onto serverB
7) started reporting services on serverB - failed to initialize
8) restored encryption key and then deleted the row from
REPORTSERVER.DBO.KEYS where machinename = 'serverB'
9) restarted reporting services and the pages displayed
10) accessed the report that I wanted to view and the error above
popped
11) tried deleting and re-creating reportserverTempDB by dropping and
recreating from the CatalogTemp.sql file from the install - made sure
that the collations matched
Here is the error text:
ReportingServicesService!runningjobs!4!4/3/2007-09:17:42:: e ERROR:
Error in timer Database Cleanup (NT Service) :
System.Data.SqlClient.SqlException: Invalid object name
'ReportServerTempDB.dbo.PersistedStream'.
at System.Data.SqlClient.SqlConnection.OnError(SqlException
exception, Boolean breakConnection)
at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException
exception, Boolean breakConnection)
at
System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject
stateObj)
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior,
SqlCommand cmdHandler, SqlDataReader dataStream,
BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject
stateObj)
at
System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds,
RunBehavior runBehavior, String resetOptionsString)
at
System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior
cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean
async)
at
System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior
cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String
method, DbAsyncResult result)
at
System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult
result, String methodName, Boolean sendToPipe)
at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
at
Microsoft.ReportingServices.Library.InstrumentedSqlCommand.ExecuteNonQuery()
at
Microsoft.ReportingServices.Library.DatabaseCleanupTimer.CleanBatch()
at
Microsoft.ReportingServices.Library.DatabaseCleanupTimer.DoTimerAction()
at
Microsoft.ReportingServices.Diagnostics.TimerActionBase.TimerAction(Object
unused)On Apr 3, 10:41 am, "Tim" <timgoldenst...@.msn.com> wrote:
> Hi,
> I've restored my report server 2005 from serverA to serverB and
> Reporting Services will run and I can access the reports, but the
> above error will pop whenever I try to run a report. I followed the
> steps outlined below - where did I go wrong?
> 1) backed up the encryption key on serverA
> 2) backed up the report server databases on both servers
> 3) shut down RS on serverB
> 4) detached the reportserver database on serverB
> 5) renamed reportserver.mdf and ldf to reportserver.mdf_old and
> reportserver.ldf_old
> 6) restored reportserver.mdf and ldf from serverA onto serverB
> 7) started reporting services on serverB - failed to initialize
> 8) restored encryption key and then deleted the row from
> REPORTSERVER.DBO.KEYS where machinename => 'serverB'
> 9) restarted reporting services and the pages displayed
> 10) accessed the report that I wanted to view and the error above
> popped
> 11) tried deleting and re-creating reportserverTempDB by dropping and
> recreating from the CatalogTemp.sql file from the install - made sure
> that the collations matched
> Here is the error text:
> ReportingServicesService!runningjobs!4!4/3/2007-09:17:42:: e ERROR:
> Error in timer Database Cleanup (NT Service) :
> System.Data.SqlClient.SqlException: Invalid object name
> 'ReportServerTempDB.dbo.PersistedStream'.
> at System.Data.SqlClient.SqlConnection.OnError(SqlException
> exception, Boolean breakConnection)
> at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException
> exception, Boolean breakConnection)
> at
> System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject
> stateObj)
> at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior,
> SqlCommand cmdHandler, SqlDataReader dataStream,
> BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject
> stateObj)
> at
> System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds,
> RunBehavior runBehavior, String resetOptionsString)
> at
> System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior
> cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean
> async)
> at
> System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior
> cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String
> method, DbAsyncResult result)
> at
> System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult
> result, String methodName, Boolean sendToPipe)
> at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
> at
> Microsoft.ReportingServices.Library.InstrumentedSqlCommand.ExecuteNonQuery()
> at
> Microsoft.ReportingServices.Library.DatabaseCleanupTimer.CleanBatch()
> at
> Microsoft.ReportingServices.Library.DatabaseCleanupTimer.DoTimerAction()
> at
> Microsoft.ReportingServices.Diagnostics.TimerActionBase.TimerAction(Object
> unused)
This MS article might be of assistance.
http://msdn2.microsoft.com/en-us/library/ms159093.aspx
Regards,
Enrique Martinez
Sr. Software Consultant|||Thanks Enrique - it turned out to be a permissions issue on the
ReportServerTempDB in that RSExecRole role

Wednesday, March 21, 2012

Invalid namespace

I'm getting the following error message when I tried to configure Reporting Services in 2005 SQL:

"No report servers were found on the specified machine.

Invalid namespace" Any assistance to get over this hurdle will be appreciated!

We have the same problem. Our reportserver suddenly went down and now shows this problem.

Wednesday, March 7, 2012

Intra-query parallelism caused deadlock

Hi,
I am running a select query , which used left join on 5 tables. this is
reporting server there are no data updates, only select stmts. it has been
failing at runtime , the same query is running fine with different
parameters.
It is Dell machine with 4cpu/6gig /sql ent 2000/windows 2000 adv. max
degree of parallelism is 0 (before i change) , when i set max degree of
parallelism to 1 , then the query did run fine. As I remeber i havent
changed any configuration recently.
The query failed with following message.
Server: Msg 8650, Level 13, State 127, Line 1
Intra-query parallelism caused your server command (process ID #63) to
deadlock. Rerun the query without intra-query parallelism by using the query
hint option (maxdop 1).
Can somebody explain what caused it.
Thanks,
Subbu.Hi!
Do please check the article at http://support.microsoft.com/?kbid=837983.
You will find possible reasons & workarounds there.
--
Dejan Sarka, SQL Server MVP
Associate Mentor
Solid Quality Learning
More than just Training
www.SolidQualityLearning.com
"Subbaiahd" <subbaiahd@.hotmail.com> wrote in message
news:ewpo438gEHA.3264@.tk2msftngp13.phx.gbl...
> Hi,
> I am running a select query , which used left join on 5 tables. this is
> reporting server there are no data updates, only select stmts. it has been
> failing at runtime , the same query is running fine with different
> parameters.
> It is Dell machine with 4cpu/6gig /sql ent 2000/windows 2000 adv. max
> degree of parallelism is 0 (before i change) , when i set max degree of
> parallelism to 1 , then the query did run fine. As I remeber i havent
> changed any configuration recently.
>
> The query failed with following message.
> Server: Msg 8650, Level 13, State 127, Line 1
> Intra-query parallelism caused your server command (process ID #63) to
> deadlock. Rerun the query without intra-query parallelism by using the
query
> hint option (maxdop 1).
>
> Can somebody explain what caused it.
> Thanks,
> Subbu.
>
>|||Thank you. I found it later.
"Dejan Sarka" <dejan_please_reply_to_newsgroups.sarka@.avtenta.si> wrote in
message news:OUAafLChEHA.2916@.TK2MSFTNGP12.phx.gbl...
> Hi!
> Do please check the article at http://support.microsoft.com/?kbid=837983.
> You will find possible reasons & workarounds there.
> --
> Dejan Sarka, SQL Server MVP
> Associate Mentor
> Solid Quality Learning
> More than just Training
> www.SolidQualityLearning.com
> "Subbaiahd" <subbaiahd@.hotmail.com> wrote in message
> news:ewpo438gEHA.3264@.tk2msftngp13.phx.gbl...
> > Hi,
> >
> > I am running a select query , which used left join on 5 tables. this is
> > reporting server there are no data updates, only select stmts. it has
been
> > failing at runtime , the same query is running fine with different
> > parameters.
> >
> > It is Dell machine with 4cpu/6gig /sql ent 2000/windows 2000 adv. max
> > degree of parallelism is 0 (before i change) , when i set max degree of
> > parallelism to 1 , then the query did run fine. As I remeber i havent
> > changed any configuration recently.
> >
> >
> >
> > The query failed with following message.
> >
> > Server: Msg 8650, Level 13, State 127, Line 1
> >
> > Intra-query parallelism caused your server command (process ID #63) to
> > deadlock. Rerun the query without intra-query parallelism by using the
> query
> > hint option (maxdop 1).
> >
> >
> >
> > Can somebody explain what caused it.
> >
> > Thanks,
> >
> > Subbu.
> >
> >
> >
> >
>

Friday, February 24, 2012

Intranet/Internet and Reporting Services

We have a situation where we are going to have our IIS server with two NIC
cards. One for the internet and one for the intranet. We are planning to have
our SQL Server connected to the IIS server via the intranet.
My question is... if a user on the internet requests a report and we render
it programmatically via visual basic/visual C# (Using a reporting services
object in ASP) on the web will they have access to the report even though
they do not have direct access to the SQL Reporting Services server? Will I
be able to take what is returned to that object and display it on the
Intranet?
TIA,
PatrickYes. You can use the Response.BinaryWrite() method to direct the report
content to a webform or ASP page. There are limitations, however, with
images and interactive report features when using this approach.
"Patrick Allmond" <PatrickAllmond@.discussions.microsoft.com> wrote in
message news:EDC55557-ECE5-4F21-B07B-583896BDE7D5@.microsoft.com...
> We have a situation where we are going to have our IIS server with two NIC
> cards. One for the internet and one for the intranet. We are planning to
> have
> our SQL Server connected to the IIS server via the intranet.
> My question is... if a user on the internet requests a report and we
> render
> it programmatically via visual basic/visual C# (Using a reporting services
> object in ASP) on the web will they have access to the report even though
> they do not have direct access to the SQL Reporting Services server? Will
> I
> be able to take what is returned to that object and display it on the
> Intranet?
> TIA,
> Patrick
>

Intranet CAL license

Hello,
I know that you need a SQL Server license for the reporting services server
installation but what about the report viewers/developers?... just a couple
of questions:
1) Do you need a SQL Server CAL license for every report developer using
visual studio .NET?
2) Do ALL report viewers need a CAL license? Or does this depend upon how
you deploy the reports?
Any advice would be appreciated.
Thanksif you are developing reports using vs.net then you will need a client license
if people are accessing the reports over the web then i'm not aware that
you need a licence (for a start it would be impossible to monitor)
"Basil" wrote:
> Hello,
> I know that you need a SQL Server license for the reporting services server
> installation but what about the report viewers/developers?... just a couple
> of questions:
> 1) Do you need a SQL Server CAL license for every report developer using
> visual studio .NET?
> 2) Do ALL report viewers need a CAL license? Or does this depend upon how
> you deploy the reports?
> Any advice would be appreciated.
> Thanks|||The licensing for RS is the same as for SQL Server. For instance, if
internet users are access the reports it would be the same as internet users
accessing SQL Server. I believe MS has special per processor licensing for
internet use. For intranet, every client that would access the report server
needs to have a CAL. Either per client or you can do the per processor. At
least that is my understanding of how the licensing works. The important
thing is RS licensing and SQL Server licensing is the same thing.
Bruce Loehle-Conger
MVP SQL Server Reporting Services
"adolf garlic" <adolfgarlic@.discussions.microsoft.com> wrote in message
news:B22B84CB-CFD8-40F1-A6BB-4CF868DD1685@.microsoft.com...
> if you are developing reports using vs.net then you will need a client
> license
>
> if people are accessing the reports over the web then i'm not aware that
> you need a licence (for a start it would be impossible to monitor)
> "Basil" wrote:
>> Hello,
>> I know that you need a SQL Server license for the reporting services
>> server
>> installation but what about the report viewers/developers?... just a
>> couple
>> of questions:
>> 1) Do you need a SQL Server CAL license for every report developer using
>> visual studio .NET?
>> 2) Do ALL report viewers need a CAL license? Or does this depend upon how
>> you deploy the reports?
>> Any advice would be appreciated.
>> Thanks

Interview questions

Hello,

I have an interview coming up for a vb.net programmer and work involves Reporting Services. What questions/tests could they possibly ask me?

Thanks in advance

Hi,

The forums is basically a place where you can ask your doubts/queries etc. For interview questions, it would be better if you search Google. There are a lot of inteview questions sites too.

Regards,

Vivek

Sunday, February 19, 2012

Internet URL Access

I am creating a web appliction to access Reporting Service, but I got some
problem
1. User loges on web application via Forms Authentication
2. User types in report parameters.
3. Program gets all parameters, then call Reporting Server URL to get report.
It works fine with intranet, but it doesn't work with internet, because the
reporting service uses Windows Authentication. I don't want allow Anonymous
access Reporing service.
What should I do?Can you use the RS web service to render your reports? The user can log
into your app as normal, and in your code, you supply credentials (that will
authenticate) to the RS web service and return the report as PDF, etc.
Or you can set the RS up to use Forms Authentication and have your users go
directly there:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnsql2k/html/ufairs.asp
--
Adrian M.
MCP
"pepcag" <pepcag@.discussions.microsoft.com> wrote in message
news:6F030717-3E37-40D2-B5D4-3AF49338DF27@.microsoft.com...
>I am creating a web appliction to access Reporting Service, but I got some
> problem
> 1. User loges on web application via Forms Authentication
> 2. User types in report parameters.
> 3. Program gets all parameters, then call Reporting Server URL to get
> report.
> It works fine with intranet, but it doesn't work with internet, because
> the
> reporting service uses Windows Authentication. I don't want allow
> Anonymous
> access Reporing service.
> What should I do?

Internet reporting

I've recently set up SQL Server 2005 and have implemented Report Services /
Report Manager for users to be able to view reports via our intranet. Many
of the users are remote users, from time to time, and I would like for these
users to see the same reports from the Internet (preferrably being able to
use their same Windows Auth login). Our SQL Server is a separate machine
from our web server, and the current Report Services and Manager is set up on
the SQL Server. Can I set up the Report Manager on either the SQL Server,
web server, or both for users to be able to view reports from both the
intranet and Internet? If so, how? I'd also prefer this to be seamless, so
that the user doesn't know the difference between intranet and Internet
reports (if their is a difference).I suggest you go through this first in your online books
search for "Configuring a Report Server for Internet Access" I think your
problem will be solved after going through this.
Amarnath
"Kat" wrote:
> I've recently set up SQL Server 2005 and have implemented Report Services /
> Report Manager for users to be able to view reports via our intranet. Many
> of the users are remote users, from time to time, and I would like for these
> users to see the same reports from the Internet (preferrably being able to
> use their same Windows Auth login). Our SQL Server is a separate machine
> from our web server, and the current Report Services and Manager is set up on
> the SQL Server. Can I set up the Report Manager on either the SQL Server,
> web server, or both for users to be able to view reports from both the
> intranet and Internet? If so, how? I'd also prefer this to be seamless, so
> that the user doesn't know the difference between intranet and Internet
> reports (if their is a difference).|||Thank you for the suggestion. I've already read this books-online entry, and
many others as well. They did not answer my question and that's why I came
to the newsgroup.
"Amarnath" wrote:
> I suggest you go through this first in your online books
> search for "Configuring a Report Server for Internet Access" I think your
> problem will be solved after going through this.
> Amarnath
>
> "Kat" wrote:
> > I've recently set up SQL Server 2005 and have implemented Report Services /
> > Report Manager for users to be able to view reports via our intranet. Many
> > of the users are remote users, from time to time, and I would like for these
> > users to see the same reports from the Internet (preferrably being able to
> > use their same Windows Auth login). Our SQL Server is a separate machine
> > from our web server, and the current Report Services and Manager is set up on
> > the SQL Server. Can I set up the Report Manager on either the SQL Server,
> > web server, or both for users to be able to view reports from both the
> > intranet and Internet? If so, how? I'd also prefer this to be seamless, so
> > that the user doesn't know the difference between intranet and Internet
> > reports (if their is a difference).|||Is there no one else that can offer some insight to my questions?
"Kat" wrote:
> I've recently set up SQL Server 2005 and have implemented Report Services /
> Report Manager for users to be able to view reports via our intranet. Many
> of the users are remote users, from time to time, and I would like for these
> users to see the same reports from the Internet (preferrably being able to
> use their same Windows Auth login). Our SQL Server is a separate machine
> from our web server, and the current Report Services and Manager is set up on
> the SQL Server. Can I set up the Report Manager on either the SQL Server,
> web server, or both for users to be able to view reports from both the
> intranet and Internet? If so, how? I'd also prefer this to be seamless, so
> that the user doesn't know the difference between intranet and Internet
> reports (if their is a difference).

Internet Explorer Version 7.0 Beta 3 can not load Reporting Services

Hi, all!

Internet Explorer Version 7.0 Beta 3 can not load Reporting Services, please check this error. Because my company always using Reporting Services.

I open report OK but when choose and click View Report. Nothing load and IE 7 using a lots resource RAM. And I check many computer set up IE 7. they still error.

Please help me.

Thanks.

There have been some issues around that in the beta phase, but as the RC1 is on the road you should upgrade to this one.

HTH, Jens K. Suessmeyer.


http://www.sqlserver2005.de

|||

Just in addition: https://connect.microsoft.com/SQLServer/feedback/ViewFeedback.aspx?FeedbackID=157905

HTH, Jens K. Suessmeyer.


http://www.sqlserver2005.de|||

Dude, it's a MS beta.....

Software is like a new car, never buy one the first year it is introduced.

|||http://blogs.msdn.com/bwelcker/archive/2006/08/28/728739.aspx