Sunday, March 11, 2012
Dynamic Filtering
I have been playing with dynamic filtering in merge replication and I
have a question about its behavior. What I have done is to use a user
defined function to evaluate SUSER_SNAME() and return a list of ids by
which the records should be filtered for that user.
Everything works fine and synchronization works as expected. However if
the list of ids that the UDF returns changes, it makes no difference when I
synchronize. It will only reflect that change when I reiniliaze the
subscriber and synchronize again.
So my question is:
Is the filtering criteria "locked" when you apply the snapshot? How does
it work?
Thanks,
Maer
Hello Maer,
Based on my scope, this behavior is as designed because synchronization
only synchronize the data between publication and subscriber and it does
nothing to filter itself. Reinitialization will usually update the snapshot
on subscriber according to filter. The snapshot schema and data are applied
at the Subscriber after the next time the Snapshot Agent prepares a
snapshot and merge Agent runs.
Regards,
Peter Yang
MCSE2000/2003, MCSA, MCDBA
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.
================================================== ===
--
>From: "Maer" <maer@.auditleverage.com>
>Subject: Dynamic Filtering
>Date: Wed, 26 Oct 2005 18:35:53 -0400
>Lines: 20
>X-Priority: 3
>X-MSMail-Priority: Normal
>X-Newsreader: Microsoft Outlook Express 6.00.2900.2180
>X-RFC2646: Format=Flowed; Original
>X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
>Message-ID: <uFHCI1n2FHA.1700@.tk2msftngp13.phx.gbl>
>Newsgroups: microsoft.public.sqlserver.replication
>NNTP-Posting-Host: pcp08364781pcs.lndsd201.pa.comcast.net 68.42.19.117
>Path: TK2MSFTNGXA01.phx.gbl!TK2MSFTNGP08.phx.gbl!tk2msft ngp13.phx.gbl
>Xref: TK2MSFTNGXA01.phx.gbl microsoft.public.sqlserver.replication:17387
>X-Tomcat-NG: microsoft.public.sqlserver.replication
> Hi Guys,
> I have been playing with dynamic filtering in merge replication and I
>have a question about its behavior. What I have done is to use a user
>defined function to evaluate SUSER_SNAME() and return a list of ids by
>which the records should be filtered for that user.
> Everything works fine and synchronization works as expected. However
if
>the list of ids that the UDF returns changes, it makes no difference when
I
>synchronize. It will only reflect that change when I reiniliaze the
>subscriber and synchronize again.
> So my question is:
> Is the filtering criteria "locked" when you apply the snapshot? How
does
>it work?
> Thanks,
> Maer
>
>
|||I find what I have to do is run multiple snapshots for each subscriber when
I am doing something like what you are attempting to do.
So I override the value of SUSER_NAME() with the PublisherLogin of andrew
and get a snapshot for andrew which I distribute, then I repeat for Nancy.
The accounts have to be in the dbo role of the publication database and the
distribution database to get this to work IIRC. Make sure you set
PublisherLogin in the snapshot agent.
Hilary Cotter
Looking for a SQL Server replication book?
http://www.nwsu.com/0974973602.html
Looking for a FAQ on Indexing Services/SQL FTS
http://www.indexserverfaq.com
"Maer" <maer@.auditleverage.com> wrote in message
news:uFHCI1n2FHA.1700@.tk2msftngp13.phx.gbl...
> Hi Guys,
> I have been playing with dynamic filtering in merge replication and I
> have a question about its behavior. What I have done is to use a user
> defined function to evaluate SUSER_SNAME() and return a list of ids by
> which the records should be filtered for that user.
> Everything works fine and synchronization works as expected. However
if
> the list of ids that the UDF returns changes, it makes no difference when
I
> synchronize. It will only reflect that change when I reiniliaze the
> subscriber and synchronize again.
> So my question is:
> Is the filtering criteria "locked" when you apply the snapshot? How
does
> it work?
> Thanks,
> Maer
>
|||Hi Hilary,
Are you referring to dynamic snapshots? Let me show you my filter and
the UDF that I created to illustrate my dilemma (below). As you can see
SUSER_SNAME() is used in the body of the UDF. According to BOL:
"You can use the SUSER_SNAME() system function nested in a user-defined
function in the filter criteria for a dynamic filter, and you can use a
dynamic snapshot (for example, MyUDF(SUSER_SNAME()) where the MyUDF
user-defined function evaluates the SUSER_SNAME() system function). The
system function must be visible in the dynamic filter criteria. If the
system function exists in the definition of the user-defined function, and
you enter only the user-defined function in the dynamic filter, you will not
be able to use a dynamic snapshot."
However I cannot do something like "select id from
udf_GetIdList(SUSER_SNAME() ,'Categories')" expliciting passing
SUSER_SNAME() so that it is visible in the filter criteria (I get a syntax
error).
As I said, the filter below works fine, but the whole point of this exercise
was to be able to change the Replication_Filters table so that it would
return different ids for that user without having to reinitialize the
subscriber and create another another snapshot.
According to Peter Yang, I would still have to reinitialize the subscriber
otherwise the different ids will not have any effect on the filtering. Since
the ids would change quite often, this is not desirable.
Given this scenario and my UDF limitation. Is there any other way to get the
result I am looking for?
Thank you for your help,
Maer
SELECT <published_columns> FROM [dbo].[Categories] WHERE
CategoryId in (select id from udf_GetIdList('Categories'))
CREATE FUNCTION [dbo].[udf_GetIdList]
(
@.TableName sysname
)
RETURNS @.IdList Table
(
id int
)
AS
BEGIN
insert @.IdList
SELECT dbo.Replication_Filters.PKId
FROM dbo.Replication_Filters INNER JOIN
dbo.Replication_Users ON
dbo.Replication_Filters.UserId = dbo.Replication_Users.UserId INNER JOIN
dbo.Replication_FilteredTables ON
dbo.Replication_Filters.TableId = dbo.Replication_FilteredTables.TableId
WHERE (dbo.Replication_Users.UserName = SUSER_SNAME() ) AND
(dbo.Replication_FilteredTables.TableName = @.TableName)
return
END
"Hilary Cotter" <hilary.cotter@.gmail.com> wrote in message
news:O9jIFLu2FHA.956@.TK2MSFTNGP10.phx.gbl...
>I find what I have to do is run multiple snapshots for each subscriber when
> I am doing something like what you are attempting to do.
> So I override the value of SUSER_NAME() with the PublisherLogin of andrew
> and get a snapshot for andrew which I distribute, then I repeat for Nancy.
> The accounts have to be in the dbo role of the publication database and
> the
> distribution database to get this to work IIRC. Make sure you set
> PublisherLogin in the snapshot agent.
> --
> Hilary Cotter
> Looking for a SQL Server replication book?
> http://www.nwsu.com/0974973602.html
> Looking for a FAQ on Indexing Services/SQL FTS
> http://www.indexserverfaq.com
> "Maer" <maer@.auditleverage.com> wrote in message
> news:uFHCI1n2FHA.1700@.tk2msftngp13.phx.gbl...
> if
> I
> does
>
|||Hello Maer,
It seems you are trying to filter different tables according to user name.
Dynamic filter is designed to filter rows according to the "where"
condition on a specific column. UDF you uses returns a table which does not
fit for a where clause.
Since you want to filter different tables for users, I am afraid that you
have to reinitialize the subscriber because the snapshot are different.
Regards,
Peter Yang
MCSE2000/2003, MCSA, MCDBA
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.
--
>From: "Maer" <maer@.auditleverage.com>
>References: <uFHCI1n2FHA.1700@.tk2msftngp13.phx.gbl>
<O9jIFLu2FHA.956@.TK2MSFTNGP10.phx.gbl>
>Subject: Re: Dynamic Filtering
>Date: Thu, 27 Oct 2005 11:55:12 -0400
>Lines: 113
>X-Newsreader: Microsoft Outlook Express 6.00.2900.2180
>X-RFC2646: Format=Flowed; Original
>X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
>Message-ID: <uGxp45w2FHA.2196@.tk2msftngp13.phx.gbl>
>Newsgroups: microsoft.public.sqlserver.replication
>NNTP-Posting-Host: pcp08364781pcs.lndsd201.pa.comcast.net 68.42.19.117
>Path: TK2MSFTNGXA01.phx.gbl!TK2MSFTNGP08.phx.gbl!tk2msft ngp13.phx.gbl
>Xref: TK2MSFTNGXA01.phx.gbl microsoft.public.sqlserver.replication:17415
>X-Tomcat-NG: microsoft.public.sqlserver.replication
> Hi Hilary,
> Are you referring to dynamic snapshots? Let me show you my filter and
>the UDF that I created to illustrate my dilemma (below). As you can see
>SUSER_SNAME() is used in the body of the UDF. According to BOL:
>"You can use the SUSER_SNAME() system function nested in a user-defined
>function in the filter criteria for a dynamic filter, and you can use a
>dynamic snapshot (for example, MyUDF(SUSER_SNAME()) where the MyUDF
>user-defined function evaluates the SUSER_SNAME() system function). The
>system function must be visible in the dynamic filter criteria. If the
>system function exists in the definition of the user-defined function, and
>you enter only the user-defined function in the dynamic filter, you will
not
>be able to use a dynamic snapshot."
> However I cannot do something like "select id from
>udf_GetIdList(SUSER_SNAME() ,'Categories')" expliciting passing
>SUSER_SNAME() so that it is visible in the filter criteria (I get a
syntax
>error).
>As I said, the filter below works fine, but the whole point of this
exercise
>was to be able to change the Replication_Filters table so that it would
>return different ids for that user without having to reinitialize the
>subscriber and create another another snapshot.
>According to Peter Yang, I would still have to reinitialize the subscriber
>otherwise the different ids will not have any effect on the filtering.
Since
>the ids would change quite often, this is not desirable.
>Given this scenario and my UDF limitation. Is there any other way to get
the[vbcol=seagreen]
>result I am looking for?
>Thank you for your help,
>Maer
>SELECT <published_columns> FROM [dbo].[Categories] WHERE
>CategoryId in (select id from udf_GetIdList('Categories'))
>CREATE FUNCTION [dbo].[udf_GetIdList]
>(
> @.TableName sysname
>)
>RETURNS @.IdList Table
>(
> id int
>)
> AS
>BEGIN
> insert @.IdList
> SELECT dbo.Replication_Filters.PKId
> FROM dbo.Replication_Filters INNER JOIN
> dbo.Replication_Users ON
>dbo.Replication_Filters.UserId = dbo.Replication_Users.UserId INNER JOIN
> dbo.Replication_FilteredTables ON
>dbo.Replication_Filters.TableId = dbo.Replication_FilteredTables.TableId
> WHERE (dbo.Replication_Users.UserName = SUSER_SNAME() ) AND
>(dbo.Replication_FilteredTables.TableName = @.TableName)
> return
>END
>
>"Hilary Cotter" <hilary.cotter@.gmail.com> wrote in message
>news:O9jIFLu2FHA.956@.TK2MSFTNGP10.phx.gbl...
when[vbcol=seagreen]
Nancy.[vbcol=seagreen]
I[vbcol=seagreen]
when
>
>
Friday, March 9, 2012
Dynamic dropdownlist
I have 3 dropdown lists in report.
1 - ID Dropdownlist
2 - Name Dropdownlist
3- Financial Dropdownlist
I want to fill 2nd dropdown and 3rd dropdown based on 1st dropdown list
selection
Is it possible in Sql reporting services
Appreciate any help
Thanksyes, they are called cascading parameters. see BOL
"repalley" wrote:
> Hey guys,
> I have 3 dropdown lists in report.
> 1 - ID Dropdownlist
> 2 - Name Dropdownlist
> 3- Financial Dropdownlist
> I want to fill 2nd dropdown and 3rd dropdown based on 1st dropdown list
> selection
> Is it possible in Sql reporting services
> Appreciate any help
> Thanks|||Take a look to the following article:
http://www.databasejournal.com/features/mssql/article.php/3386441
Also there other usefull articles of the same author.
Carlos Krauss
"mike" wrote:
> yes, they are called cascading parameters. see BOL
>
> "repalley" wrote:
> > Hey guys,
> >
> > I have 3 dropdown lists in report.
> > 1 - ID Dropdownlist
> > 2 - Name Dropdownlist
> > 3- Financial Dropdownlist
> >
> > I want to fill 2nd dropdown and 3rd dropdown based on 1st dropdown list
> > selection
> > Is it possible in Sql reporting services
> >
> > Appreciate any help
> > Thanks
Sunday, February 19, 2012
Dynamic Column Selection in Stored Procedure
Here is the issue I'm having. I am writing a stored procedure that takes a couple of parameters. Each one is the value within a specific column in one table (i.e., @.part = 'o-ring' or @.sub_assembly = 'hydraulic ram'). Needless to say, the columns form a hierarchy. What I am trying to achieve is to allow the user to specify one of the parameters and get a count for all records where the specified value is in the corresponding column. So, if the user puts in the parameter @.part = 'o-ring', I want it to know that the where clause for the select statement should look for o-ring in the part column and not the sub_assembly column. Here is what I am trying to do, which isn't working.
DECLARE @.querycolumn varchar(20),
@.queryvalue varchar(35)
SET @.querycolumn = ''
SET @.queryvalue = ''
IF(@.sub_assembly = NULL)
BEGIN
IF(@.part = NULL)
BEGIN
PRINT 'This is an error. You must have at least a part'
END
ELSE
BEGIN
SET @.querycolumn = 'Part'
SET @.queryvalue = @.part
END
END
ELSE
BEGIN
SET @.querycolumn = 'SubAssembly'
SET @.queryvalue = @.sub_assembly
END
SELECT SubAssembly, Part, COUNT(RecordID)
FROM Table
WHERE @.querycolumn = @.queryvalue
GROUP BY SubAssembly, Part
ORDER BY SubAssembly, Part
The problem is that I'm getting an error when I try to use @.querycolumn to supply the column name to the WHERE clause. Any ideas or suggestions?you should build a command string and then execute it by EXEC()
try this:
DECLARE @.querycolumn varchar(20), @.queryvalue varchar(35), @.command varchar(200)
SET @.command = ''
...
...
...
SET @.command = 'SELECT SubAssembly, Part, COUNT(RecordID) FROM Table
WHERE '+@.querycolumn+' = '''+@.queryvalue+''' GROUP BY SubAssembly, Part
ORDER BY SubAssembly, Part'
EXEC(@.command)
it should help...|||How About:
Declare @.subAssembly nvarchar(215), @.queryColumn nvarchar(216), @.part nvarchar(214)
Declare @.t Table( RecordId int identity(1,1), Part nvarchar(215), SubAssembly nvarchar(214) )
Select @.part = Null --N'Part A'
, @.subAssembly = N'Sub Zero'
Insert @.t (Part, SubAssembly)
Select 'Part A', 'Sub A'
Union
Select 'Part B', 'Sub B'
Union
Select 'Part A', 'Sub Zero'
Union
Select 'Part B', 'Sub Zero'
Select Case
When @.part Is Not Null Then Part
End As 'Part'
, Case
When @.subAssembly Is Not Null Then SubAssembly
End As 'SubAssembly'
, Count(RecordId) As 'Count'
From @.t
Where part = Coalesce(@.part, part)
And SubAssembly = Coalesce(@.SubAssembly, SubAssembly)
Group By Case
When @.part Is Not Null Then Part
End
, Case
When @.subAssembly Is Not Null Then SubAssembly
End
Select * From @.t|||I forgot to mention that the select statement is going to be used in a cursor.
DECLARE generic_cursor CURSOR FOR
EXEC(@.command)
throws an error|||Good lord why?
Gonna make the FETCH dynamic as well?
You have to understand that dynamic sql executes in a separate spid...so your sproc won't access to that session, and it will disappear when the execution is complete.
What are you actually trying to do?|||...and throwing a cursor into the mess too...|||Just say no to cursors.|||Ok, I'll take a stab at this... I'd start with something like:SELECT Count(*)
FROM (
SELECT
p.SubAssembly, p.Part
FROM Table AS p
WHERE p.Part = @.part
UNION SELECT
s.SubAssembly, s.Part
FROM Table AS s
WHERE s.SubAssembly = @.SubAssembly
) AS zIt makes no sense to me to try grouping, since the groups will make no sense at all. This code avoids cursors, although it could be used to create one (although why you'd do that is beyond me). It also uses the UNION to sidestep the need for dynamic code too.
The question is, will it help tianmingqing at all?
-PatP|||Okay, so what I am trying to accomplish here is to create a stored procedure (main routine) that calls another stored procedure (sub routine) that creates a cursor based on parameters passed in by the main routine. I was trying to make that cursor creation dynamic so that I didn't have to write four versions of the same query where only one line in the where clause changes. Maybe I need to rethink this...|||...but why the cursor?
Even mentioning cursors on this forum starts raising concerns, because 9 time out of 10 (at least) they are not necessary and just complicate the code.|||because I need to take each row from the cursor one at a time and compare it with the results from another query that uses the same parameters to make sure that the counts match. If they don't, then I need to return the two counts, and the parameter values so that I know where I have a problem in a process I am running. Thus the reason for the cursor is to iterate through a results set. Is that not a good use for a cursor, and why the disdain for them? Sorry, most of my previous SQL work has been done in relative isolation with help from BOL, so I'm somewhat of a newbie.|||Cursors are really leftovers from previous technologies. They are effectively hang-ons from the logic of unit-record equipment where everything had to be handled one card at a time.
Other database products still use cursors heavily. As a matter of fact, some database engines still rely on cursors for nearly everything that they do.
There is nothing intrinsicly wrong with cursors. As a matter of fact, they are still the only practical way to handle a few tasks such as mass-renaming objects, managing logins, etc.
However, from a performance perspective cursors are at least one order of magnitude slower than similar set-based solutions to the same problem. They are often much worse than that!
For your problem, a simple join of the two queries would get you exactly what you've asked for, with lots less code, and would be much more efficient than using cursors to do the same task.
This begs my original question from my previous post... Did the solution I suggested help you?
-PatP|||...but why the cursor?
Even mentioning cursors on this forum starts raising concerns, because 9 time out of 10 (at least)
More...9.99999|||It would be interesting to keep stats on this.
Raise your hand if you have ever found a cursor in somebody else's code and the use of a cursor actually WAS required...
Hmm...I'm not smelling a lot of armpits...|||Okay, so due to the overwhelming suggestions go forego the cursor, I decided to reconsider what I was attempting and this is what I have come up with.
CREATE PROCEDURE some_proc_name
@.part = NULL,
@.sub_assembly = NULL
AS
CREATE TABLE #temp_table1
( t1_count int,
t2_count int,
part varchar(35),
subAssembly varchar(35)
)
CREATE TABLE #temp_table2
( t2_count int,
part varchar(35),
subAssembly(35)
)
IF(@.sub_assembly = NULL)
BEGIN
IF(@.part = NULL)
BEGIN
PRINT 'This is an error. You must have at least a part'
END
ELSE
BEGIN
INSERT INTO #temp_table1(t1_count, part, subAssembly)
SELECT COUNT(RecordID), part, subAssembly
FROM some_table
WHERE part = @.part
GROUP BY part, subAssembly
INSERT INTO #temp_table2(t2_count, part, subAssembly)
SELECT COUNT(RecordID), part, subAssembly
FROM some_other_table
WHERE part = @.part
GROUP BY part, subAssembly
END
END
ELSE
BEGIN
INSERT INTO #temp_table1(t1_count, part, subAssembly)
SELECT COUNT(RecordID), part, subAssembly
FROM some_table
WHERE subAssembly = @.sub_assembly
GROUP BY part, subAssembly
INSERT INTO #temp_table2(t2_count, part, subAssembly)
SELECT COUNT(RecordID), part, subAssembly
FROM some other table
WHERE subAssembly = @.sub_assembly
GROUP BY part, subAssembly
END
UPDATE #temp_table1
SET t2_count =
(SELECT t2_count
FROM #temp_table2
WHERE part = #temp_table1.part)
SELECT *
FROM #temp_table1
WHERE t1_count <> t2_count
ORDER BY subAssembly, part
This seems to work fairly well. Thanks everyone for the input.
Dynamic Column Names
I am trying to achieve something a bit complex (or at least appears to be for me).
I have the following table structure:
UID, GroupID, ColumnName, ColumnValue
here is some example data:
UID, GroupId, ColumnName, ColumnValue
1, 1, MAC Address, 8a7sd87sad
2, 1, IP Address, 192.168.1.100
3, 1, Name, John
4, 2, MAC Address, 09a8sd098as
5, 2, Name, Steven
and here is what I would like the example to come out like:
GroupID, MAC Address, IP Address, Name
1, 8a7sd87sad, 192.168.1.100, John
2, 09a8sd098as, NULL, Steven
It needs to be completely dynamic though, as a new column name could be entered to the source table at any time...
I have tried Dynamic SQL and JOINs, but can only seem to get it to work correctly. I was starting to consider doing a loop similar to this:
Code Snippet
DECLARE @.ColumnName varchar(128)
DECLARE @.Sql varchar(255)
SELECT @.ColumnName = [ColumnName] FROM tblSourceData
SELECT @.Sql = 'SELECT [GroupId], [ColumnValue] AS ['+@.ColumnName+'] FROM tblSourceData'
EXEC (@.Sql)
Could somebody please point me in the right direction? I've heard a bit about Pivot tables in my search for this solution, is that perhaps the route I need to go?
Regards,
Justin
You need not to have dynamic SQL, you are trying to achieve the table pivoting..
Code Snippet
Create Table #data (
[UID] Varchar(100) ,
[GroupId] Varchar(100) ,
[ColumnName] Varchar(100) ,
[ColumnValue] Varchar(100)
);
Insert Into #data Values('1','1','MAC Address','8a7sd87sad');
Insert Into #data Values('2','1','IP Address','192.168.1.100');
Insert Into #data Values('3','1','Name','John');
Insert Into #data Values('4','2','MAC Address','09a8sd098as');
Insert Into #data Values('5','2','Name','Steven');
On SQL server 2000/2005,
Code Snippet
Select
GroupId,
Max(Case When[ColumnName] = 'MAC Address' Then ColumnValue End) as [MAC Address],
Max(Case When[ColumnName] = 'IP Address' Then ColumnValue End) as [IP Address],
Max(Case When[ColumnName] = 'Name' Then ColumnValue End) as [Name]
from
#data
Group By
GroupId
Only on SQL server 2005,
Code Snippet
Select * From
(Select GroupId,ColumnName,ColumnValue from #data) as Data
Pivot
(
Max(ColumnValue) For ColumnName in([MAC Address], [IP Address], [Name])
)
as PVT
|||
The one problem though is that you are still manually specifying column names, when I don't want to have to manually change my SQL each time I add a new column in the table... Is there no way of making this more dynamic?
Regards,
Justin
|||Using the previous temp table data,
On SQL Server 2000/2005
Code Snippet
Declare @.PreparedQuery as Varchar(8000);
Declare @.SqlQuery as Varchar(8000);
Set @.PreparedQuery = 'Max(Case When[ColumnName] = ''?'' Then ColumnValue End) as [?]'
Set @.SqlQuery = 'Select GroupId'
Select @.SqlQuery = @.SqlQuery + ',' +Replace(@.PreparedQuery,'?',ColumnName)
From
(select Distinct ColumnName from #data) as Data
Exec (@.SqlQuery + 'from #data Group By GroupId')
On SQL Server 2005
Code Snippet
Declare @.PreparedQuery as Varchar(8000);
Declare @.SqlQuery as Varchar(8000);
Set @.PreparedQuery = '[?]'
Set @.SqlQuery =
'Select * From (Select GroupId,ColumnName,ColumnValue from #data) as Data
Pivot (Max(ColumnValue) For ColumnName in('
Select @.SqlQuery = @.SqlQuery + Replace(@.PreparedQuery,'?',ColumnName) + ','
From
(select Distinct ColumnName from #data) as Data
Set@.SqlQuery = Substring(@.SqlQuery,1,Len(@.SqlQuery)-1) + ')) as Pvt'
Exec (@.SqlQuery)
|||Works a charm, and is a lot less code than I originally thought it would be, thank you!
Wednesday, February 15, 2012
Dyanmically add fileds
Is it possible to edit the report dynamically.Please let me know
your thoughts.
--
Thanks and Regards
M. S. Raja Mohamed,
Senior Devoloper,
PHOTON INFOTECH PVT LTD.,
Adayar,
Chennai.Not easily. If doing the server product you have to modify the report and
redeploy. If you use the new controls that ship with VS 2005 you can modify
the report and then use the controls in local mode. This means you have your
own front end, you are not using report manager. Also you have to provide
the dataset and the report to the control.
Bruce Loehle-Conger
MVP SQL Server Reporting Services
"Raja Mohamed" <Raja@.photoninfotech.com> wrote in message
news:%23Tacn0M7FHA.3660@.TK2MSFTNGP09.phx.gbl...
> Hi Guys,
> Is it possible to edit the report dynamically.Please let me
> know your thoughts.
> --
> Thanks and Regards
> M. S. Raja Mohamed,
> Senior Devoloper,
> PHOTON INFOTECH PVT LTD.,
> Adayar,
> Chennai.
>|||Yes, you can do this
There are article and sample code available at this link
http://www.codeproject.com/dotnet/DynamicReport.asp
Hope this helps. Let me know
Sumit Pilankar
"Raja Mohamed" <Raja@.photoninfotech.com> wrote in message
news:%23Tacn0M7FHA.3660@.TK2MSFTNGP09.phx.gbl...
> Hi Guys,
> Is it possible to edit the report dynamically.Please let me
> know your thoughts.
> --
> Thanks and Regards
> M. S. Raja Mohamed,
> Senior Devoloper,
> PHOTON INFOTECH PVT LTD.,
> Adayar,
> Chennai.
>