Showing posts with label logic. Show all posts
Showing posts with label logic. Show all posts

Wednesday, March 7, 2012

Custom data processing logic

We are developing a web application that has to do a significant amount of
data processing before a report can be run. Please would someone advise me as
to the best place to put this custom data processing logic. Should I do it in
my app beforehand or is there an appropriate hook in the report processing
lifecycle?
Further info:
- The processing involves copying data to snapshot tables and then
enriching this data: the processing is complex and varies depending on the
user.
- We will use security extensions for Forms authentication and custom
authorization.
- We would like the user to be able to use the drill-down feature so would
want to use the web-based Report Viewer.
Any help would be greatly appreciated.
StuHello Stu,
Based on my experience, I suggest you to process your data first when your
user login or just after the login process.
After that, you could show the report.
My suggestion of the report view control is that you use the local report
in your application so that the report will use your custom authentication
and you do not need to customize the authentication in the report server.
All this is to avoid the slow performance of the report to the user.
Please let me know if you have any question.
Sincerely,
Wei Lu
Microsoft Online Community 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.|||Since it is a complex processing and moreover you have developed a web
application, do it in your application and get the final results to be
displayed, that will be faster, so RS will be used for reporting the end
results. Why the processing in your custom applications is that you get very
good flexibility like massaging the data, and filtering as per the user
etc... Finally the reporting part with layout, format, drilldown etc..can be
done using RS.
Amarnath, MCTS.
"Stu" wrote:
> We are developing a web application that has to do a significant amount of
> data processing before a report can be run. Please would someone advise me as
> to the best place to put this custom data processing logic. Should I do it in
> my app beforehand or is there an appropriate hook in the report processing
> lifecycle?
> Further info:
> - The processing involves copying data to snapshot tables and then
> enriching this data: the processing is complex and varies depending on the
> user.
> - We will use security extensions for Forms authentication and custom
> authorization.
> - We would like the user to be able to use the drill-down feature so would
> want to use the web-based Report Viewer.
> Any help would be greatly appreciated.
> Stu|||Thanks. I will look into using the report viewer control.
"Wei Lu [MSFT]" wrote:
> Hello Stu,
> Based on my experience, I suggest you to process your data first when your
> user login or just after the login process.
> After that, you could show the report.
> My suggestion of the report view control is that you use the local report
> in your application so that the report will use your custom authentication
> and you do not need to customize the authentication in the report server.
> All this is to avoid the slow performance of the report to the user.
> Please let me know if you have any question.
> Sincerely,
> Wei Lu
> Microsoft Online Community 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.
>|||Hello Stu,
Thanks for the update. If you have any question , please feel free to let
me know.
Sincerely,
Wei Lu
Microsoft Online Community 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.

Sunday, February 19, 2012

Custom business logic handler question

I am currenly have a simple merge replication topology. The publisher-distibutor is SQL Server 2005 and the subscriber is a SQL Server Express. The type of subscription is non anonymous pull.

I made a custom business logic handler class that is trying the following:

When a new record is inserted in a published table on the pubsliher, some additional records are added in a differenct table in subscriber. Then the "InsertHandler" method returns "AcceptData" in order to allow the agent to add the new record in current table also.

So I am establishing a new connection to the subscriber and I am trying to add the additional recs in the different table. The problem is that this different table is also published as read-only on the subscriber. So my insert fails saying that table is not updatable.

Is there any way to bypass this problem?

In fact I realised in general that when my custom logic handler performs some DML operations on the subscriber, these are NOT considered as part of the replication e.g. the NOT FOR REPLICATION constraints and triggers are active for these operations.

Is this normal?

Do you have these other tables set as download_only articles?

And more importantly why are you trying to insert at the subscriber when you are doing DML at the publisher? Couldn't you do these other DMLs at the publisher and let merge agent insert these new rows at the subscriber?

Custom business logic handler question

I am currenly have a simple merge replication topology. The publisher-distibutor is SQL Server 2005 and the subscriber is a SQL Server Express. The type of subscription is non anonymous pull.

I made a custom business logic handler class that is trying the following:

When a new record is inserted in a published table on the pubsliher, some additional records are added in a differenct table in subscriber. Then the "InsertHandler" method returns "AcceptData" in order to allow the agent to add the new record in current table also.

So I am establishing a new connection to the subscriber and I am trying to add the additional recs in the different table. The problem is that this different table is also published as read-only on the subscriber. So my insert fails saying that table is not updatable.

Is there any way to bypass this problem?

In fact I realised in general that when my custom logic handler performs some DML operations on the subscriber, these are NOT considered as part of the replication e.g. the NOT FOR REPLICATION constraints and triggers are active for these operations.

Is this normal?

Do you have these other tables set as download_only articles?

And more importantly why are you trying to insert at the subscriber when you are doing DML at the publisher? Couldn't you do these other DMLs at the publisher and let merge agent insert these new rows at the subscriber?