显示标签为“matrix”的博文。显示所有博文
显示标签为“matrix”的博文。显示所有博文

2012年3月29日星期四

Floating headers in a matrix

I added floating headers in a RS matrix and it worked great. I developed another RS matrix and decided I would add floating headers. I went back to the first RS matrix looking to find out how I did it. I couldn't find the location of the Header/ footer section that I checked that said " Header should remain visable when scrolling" Can someone help?Well I found it under the column and row heading. It wouldn't let me render a report with a floating header as the matrix is contained in a list. Any Ideas?|||

Please try the following approach:

1. Put the list into a main report.
2. Add a subreport inside the list.
3. Point the subreport to a report that has the matrix as a top-level data region.

-- Robert

|||ty

2012年3月27日星期二

flexible column width based on data length in a matrix

I would like my matrix to have the column widths be the same as the maximum
length of data in that column, just like what we like to see when we are
looking at data in Excel. I do not want the data to wrap, I want it to push
the width of the column to the right so all data is on one line.
How do I do that?
StephanieOn Aug 22, 11:12 am, Stephanie <Stepha...@.discussions.microsoft.com>
wrote:
> I would like my matrix to have the column widths be the same as the maximum
> length of data in that column, just like what we like to see when we are
> looking at data in Excel. I do not want the data to wrap, I want it to push
> the width of the column to the right so all data is on one line.
> How do I do that?
> Stephanie
If I'm understanding you correctly, you should be able to select the
table/matrix cell and select F4 for the Properties window and then set
'Can Grow' below Layout to 'True.' Hope this helps.
Regards,
Enrique Martinez
Sr. Software Consultant|||My understanding of the 'Can Grow' property is that it will allow it to grow
vertically, not horizontally. Is that correct? I've tried 'Can Grow' with
no luck.
"EMartinez" wrote:
> On Aug 22, 11:12 am, Stephanie <Stepha...@.discussions.microsoft.com>
> wrote:
> > I would like my matrix to have the column widths be the same as the maximum
> > length of data in that column, just like what we like to see when we are
> > looking at data in Excel. I do not want the data to wrap, I want it to push
> > the width of the column to the right so all data is on one line.
> >
> > How do I do that?
> >
> > Stephanie
>
> If I'm understanding you correctly, you should be able to select the
> table/matrix cell and select F4 for the Properties window and then set
> 'Can Grow' below Layout to 'True.' Hope this helps.
> Regards,
> Enrique Martinez
> Sr. Software Consultant
>|||On Aug 28, 9:32 am, Stephanie <Stepha...@.discussions.microsoft.com>
wrote:
> My understanding of the 'Can Grow' property is that it will allow it to grow
> vertically, not horizontally. Is that correct? I've tried 'Can Grow' with
> no luck.
> "EMartinez" wrote:
> > On Aug 22, 11:12 am, Stephanie <Stepha...@.discussions.microsoft.com>
> > wrote:
> > > I would like my matrix to have the column widths be the same as the maximum
> > > length of data in that column, just like what we like to see when we are
> > > looking at data in Excel. I do not want the data to wrap, I want it to push
> > > the width of the column to the right so all data is on one line.
> > > How do I do that?
> > > Stephanie
> > If I'm understanding you correctly, you should be able to select the
> > table/matrix cell and select F4 for the Properties window and then set
> > 'Can Grow' below Layout to 'True.' Hope this helps.
> > Regards,
> > Enrique Martinez
> > Sr. Software Consultant
Unfortunately, the Size: Width Property cannot be modified as part of
a table cell, etc. One other thing to consider is to verify that you
don't have merged cells when exporting to Excel. This could be do to
using table controls over each other (i.e., one on the top of the
report and one on the bottom) that have different widths or have cells
of different widths. For the most part, you will want all table/matrix
controls to all have the exact same physical dimensions amongst cells
and overall. Hope this helps.
Regards,
Enrique Martinez
Sr. Software Consultant

2012年3月9日星期五

Fix matrix column and IF-ELSE statement

Hello.
I have to questions -
1) I have a matrix in my report and I want The group column to be fix so if I have a lot of columns and I scroll left the Header column will stay in the left of the screen and only the result column will be scrolled.
How can I do it?
2) How can I use a IF-ELSE statment or a CASE in the expression?
I want one of my column to be red if the value is "1", green if the value is "2" and blue if the value is "3".
Is there a way to do it?

Thanks in advance.Just to let you know that I found a replacment for the if.

I found that there is a switch-case statment in SSRS :)

I still be happy to hear if there is a way to make the first column of a matrix or table fix (like in excel) so they will stay visible even if I scroll left or right.

Thanks.|||

You can do the fix column using the fixedHeader property set to true on the cell of the table you are trying to lock.

Hope this helps

Andy

|||Hi Andy.

Thanks for your reply.

The FixedHeader is good only for table but I'm more intresting in Matrix.
In matrix you also have column that you define and I want those column to stay fixed on the left while I'm scrolling to the right with the rest of the data.

I didn't found any attribute like the "fixheader" for the matrix column.

Thank again.

Roy.|||

I would assume the field you want to remain visible is on a header as this is usually the case.

For this if you Edit the Column Group (or add the group!) then you will have an option asking if "Group header should remain visible when scrolling"

|||Andy - you are the man :)

Thanks a lot pal, I looked for ages for this solution!

Its exactly what I needed and now I can sleep well again :)

Thanks and take care,
Roy.

Fix matrix column and IF-ELSE statement

Hello.
I have to questions -
1) I have a matrix in my report and I want The group column to be fix
so if I have a lot of columns and I scroll left the Header column will
stay in the left of the screen and only the result column will be
scrolled.
How can I do it?
2) How can I use a IF-ELSE statment or a CASE in the expression?
I want one of my column to be red if the value is "1", green if the
value is "2" and blue if the value is "3".
Is there a way to do it?
Thanks in advance.Just to let you know that I found a replacment for the if.
I found that there is a switch-case statment in SSRS :)
I still be happy to hear if there is a way to make the first column of
a matrix or table fix (like in excel) so they will stay visible even if
I scroll left or right.
Thanks.
nicknack =EB=FA=E1:
> Hello.
> I have to questions -
> 1) I have a matrix in my report and I want The group column to be fix
> so if I have a lot of columns and I scroll left the Header column will
> stay in the left of the screen and only the result column will be
> scrolled.
> How can I do it?
> 2) How can I use a IF-ELSE statment or a CASE in the expression?
> I want one of my column to be red if the value is "1", green if the
> value is "2" and blue if the value is "3".
> Is there a way to do it?
> > Thanks in advance.|||O=2Ek so I got the answer to this matrix thing too.
After creating a column group you can use (in the "edit group" option)
the "Group header should remain visible when scrolling" and thats what
make the magic happen.
Thanks to andy for the solution :)
take care,
Roy
nicknack =D7=9B=D7=AA=D7=91:
> Just to let you know that I found a replacment for the if.
> I found that there is a switch-case statment in SSRS :)
> I still be happy to hear if there is a way to make the first column of
> a matrix or table fix (like in excel) so they will stay visible even if
> I scroll left or right.
> Thanks.
> nicknack =C3=AB=C3=BA=C3=A1:
> > Hello.
> > I have to questions -
> > 1) I have a matrix in my report and I want The group column to be fix
> > so if I have a lot of columns and I scroll left the Header column will
> > stay in the left of the screen and only the result column will be
> > scrolled.
> > How can I do it?
> > 2) How can I use a IF-ELSE statment or a CASE in the expression?
> > I want one of my column to be red if the value is "1", green if the
> > value is "2" and blue if the value is "3".
> > Is there a way to do it?
> > > > Thanks in advance.

Fix matrix column and IF-ELSE statement

Hello.
I have to questions -
1) I have a matrix in my report and I want The group column to be fixso if I have a lot of columns and I scroll left the Header column willstay in the left of the screen and only the result column will bescrolled.
How can I do it?
2) How can I use a IF-ELSE statment or a CASE in the expression?
I want one of my column to be red if the value is "1", green if the value is "2" and blue if the value is "3".
Is there a way to do it?

Thanks in advance.Just to let you know that I found a replacment for the if.

I found that there is a switch-case statment in SSRS :)

I still be happy to hear if there is a way to make the first column ofa matrix or table fix (like in excel) so they will stay visible even ifI scroll left or right.

Thanks.|||

O.k so I got the answer to this matrix thing too.

After creating a column group you can use (in the "edit group" option) the "Group header should remain visible when scrolling" and thats what make the magic happen.

Thanks to andy for the solution :)

take care,

Roy z.

2012年3月7日星期三

First, Last, Middle ??

I have a Matrix that always displays two rows of data.
One row show values from Jan 1 of the current year.
The second row shows values for today.
In the foot I show the % the values have changed so YTD with the following
formula:
=(Last(Fields!Core.Value) - First(Fields!Core.Value)) /
First(Fields!Core.Value) * 100
This works great and looks like this:
Date | Core
--
Jan 1 2005 | $400
Aug 31 2005 | $500
--
Footer +25%
I have been asked to add in the value from a year ago today but still
display the change in value from just Jan 1.
Date | Core
--
Aug 31 2004 | $300
Jan 1 2005 | $400
Aug 31 2005 | $500
--
Footer +25% (Diff between Jan 1 and Aug 31 2005)
How would I calc the % change in the footer. My formula will not work as the
"First" value is a year ago today not Jan 1. Is there a "Middle" function ?
:) :)
Thoughts ?
Thanks in Advance
Pete MitchellTry something like this:
=(Last(Fields!Core.Value) - CDate("1/1/"&CStr(Year(First(Fields!Core.Value)))))
/
CDate("1/1/"&CStr(Year(First(Fields!Core.Value)))) * 100
GeoSynch
"PeteMitchell" <PeteMitchell@.discussions.microsoft.com> wrote in message
news:EE7A94F6-8F3B-46EC-87E3-7DA323C927D0@.microsoft.com...
>I have a Matrix that always displays two rows of data.
> One row show values from Jan 1 of the current year.
> The second row shows values for today.
> In the foot I show the % the values have changed so YTD with the following
> formula:
> =(Last(Fields!Core.Value) - First(Fields!Core.Value)) /
> First(Fields!Core.Value) * 100
> This works great and looks like this:
> Date | Core
> --
> Jan 1 2005 | $400
> Aug 31 2005 | $500
> --
> Footer +25%
> I have been asked to add in the value from a year ago today but still
> display the change in value from just Jan 1.
> Date | Core
> --
> Aug 31 2004 | $300
> Jan 1 2005 | $400
> Aug 31 2005 | $500
> --
> Footer +25% (Diff between Jan 1 and Aug 31 2005)
> How would I calc the % change in the footer. My formula will not work as the
> "First" value is a year ago today not Jan 1. Is there a "Middle" function ?
> :) :)
> Thoughts ?
> Thanks in Advance
> Pete Mitchell|||Actually, it probably shoud be:
=(Last(Fields!Core.Value) - CDate("1/1/"&CStr(Year(Last(Fields!Core.Value)))))
/ CDate("1/1/"&CStr(Year(Last(Fields!Core.Value)))) * 100
GeoSynch
"GeoSynch" <SpamSlayed@.Casablanca.com> wrote in message
news:ecLK3yprFHA.3884@.TK2MSFTNGP11.phx.gbl...
> Try something like this:
> =(Last(Fields!Core.Value) -
> CDate("1/1/"&CStr(Year(First(Fields!Core.Value))))) /
> CDate("1/1/"&CStr(Year(First(Fields!Core.Value)))) * 100
>
> GeoSynch
>
> "PeteMitchell" <PeteMitchell@.discussions.microsoft.com> wrote in message
> news:EE7A94F6-8F3B-46EC-87E3-7DA323C927D0@.microsoft.com...
>>I have a Matrix that always displays two rows of data.
>> One row show values from Jan 1 of the current year.
>> The second row shows values for today.
>> In the foot I show the % the values have changed so YTD with the following
>> formula:
>> =(Last(Fields!Core.Value) - First(Fields!Core.Value)) /
>> First(Fields!Core.Value) * 100
>> This works great and looks like this:
>> Date | Core
>> --
>> Jan 1 2005 | $400
>> Aug 31 2005 | $500
>> --
>> Footer +25%
>> I have been asked to add in the value from a year ago today but still
>> display the change in value from just Jan 1.
>> Date | Core
>> --
>> Aug 31 2004 | $300
>> Jan 1 2005 | $400
>> Aug 31 2005 | $500
>> --
>> Footer +25% (Diff between Jan 1 and Aug 31 2005)
>> How would I calc the % change in the footer. My formula will not work as the
>> "First" value is a year ago today not Jan 1. Is there a "Middle" function ?
>> :) :)
>> Thoughts ?
>> Thanks in Advance
>> Pete Mitchell
>|||Thanks a bunch.
How does that work ?
There are two fields in play here : Date and Core
How is that get the Core.value when the Date.value = Jan 1 2005 ?
Pete
"GeoSynch" wrote:
> Actually, it probably shoud be:
> =(Last(Fields!Core.Value) - CDate("1/1/"&CStr(Year(Last(Fields!Core.Value)))))
> / CDate("1/1/"&CStr(Year(Last(Fields!Core.Value)))) * 100
>
> GeoSynch
>
> "GeoSynch" <SpamSlayed@.Casablanca.com> wrote in message
> news:ecLK3yprFHA.3884@.TK2MSFTNGP11.phx.gbl...
> > Try something like this:
> > =(Last(Fields!Core.Value) -
> > CDate("1/1/"&CStr(Year(First(Fields!Core.Value))))) /
> > CDate("1/1/"&CStr(Year(First(Fields!Core.Value)))) * 100
> >
> >
> > GeoSynch
> >
> >
> > "PeteMitchell" <PeteMitchell@.discussions.microsoft.com> wrote in message
> > news:EE7A94F6-8F3B-46EC-87E3-7DA323C927D0@.microsoft.com...
> >>I have a Matrix that always displays two rows of data.
> >> One row show values from Jan 1 of the current year.
> >> The second row shows values for today.
> >>
> >> In the foot I show the % the values have changed so YTD with the following
> >> formula:
> >>
> >> =(Last(Fields!Core.Value) - First(Fields!Core.Value)) /
> >> First(Fields!Core.Value) * 100
> >>
> >> This works great and looks like this:
> >> Date | Core
> >> --
> >> Jan 1 2005 | $400
> >> Aug 31 2005 | $500
> >> --
> >> Footer +25%
> >>
> >> I have been asked to add in the value from a year ago today but still
> >> display the change in value from just Jan 1.
> >>
> >> Date | Core
> >> --
> >> Aug 31 2004 | $300
> >> Jan 1 2005 | $400
> >> Aug 31 2005 | $500
> >> --
> >> Footer +25% (Diff between Jan 1 and Aug 31 2005)
> >>
> >> How would I calc the % change in the footer. My formula will not work as the
> >> "First" value is a year ago today not Jan 1. Is there a "Middle" function ?
> >> :) :)
> >>
> >> Thoughts ?
> >>
> >> Thanks in Advance
> >>
> >> Pete Mitchell
> >
> >
>
>|||CDate("1/1/"&CStr(Year(Last(Fields!Core.Value)))) evaluates thusly:
Last(Fields!Core.Value) = '08/31/2005' data type Date
Year(Last(Fields!Core.Value)) = '2005' data type Integer
CStr(Year(Last(Fields!Core.Value))) converts it to a string value
so that when concatenated with "1/1/" it will evaluate to string value
"1/1/2005"
CDate converts it back to an actual date value of '01/01/2005'
GeoSynch
"PeteMitchell" <PeteMitchell@.discussions.microsoft.com> wrote in message
news:940A01C6-D8A5-4C44-8BA4-3AF232AD790F@.microsoft.com...
> Thanks a bunch.
> How does that work ?
> There are two fields in play here : Date and Core
> How is that get the Core.value when the Date.value = Jan 1 2005 ?
> Pete
>
> "GeoSynch" wrote:
>> Actually, it probably shoud be:
>> =(Last(Fields!Core.Value) -
>> CDate("1/1/"&CStr(Year(Last(Fields!Core.Value)))))
>> / CDate("1/1/"&CStr(Year(Last(Fields!Core.Value)))) * 100
>>
>> GeoSynch
>>
>> "GeoSynch" <SpamSlayed@.Casablanca.com> wrote in message
>> news:ecLK3yprFHA.3884@.TK2MSFTNGP11.phx.gbl...
>> > Try something like this:
>> > =(Last(Fields!Core.Value) -
>> > CDate("1/1/"&CStr(Year(First(Fields!Core.Value))))) /
>> > CDate("1/1/"&CStr(Year(First(Fields!Core.Value)))) * 100
>> >
>> >
>> > GeoSynch
>> >
>> >
>> > "PeteMitchell" <PeteMitchell@.discussions.microsoft.com> wrote in message
>> > news:EE7A94F6-8F3B-46EC-87E3-7DA323C927D0@.microsoft.com...
>> >>I have a Matrix that always displays two rows of data.
>> >> One row show values from Jan 1 of the current year.
>> >> The second row shows values for today.
>> >>
>> >> In the foot I show the % the values have changed so YTD with the following
>> >> formula:
>> >>
>> >> =(Last(Fields!Core.Value) - First(Fields!Core.Value)) /
>> >> First(Fields!Core.Value) * 100
>> >>
>> >> This works great and looks like this:
>> >> Date | Core
>> >> --
>> >> Jan 1 2005 | $400
>> >> Aug 31 2005 | $500
>> >> --
>> >> Footer +25%
>> >>
>> >> I have been asked to add in the value from a year ago today but still
>> >> display the change in value from just Jan 1.
>> >>
>> >> Date | Core
>> >> --
>> >> Aug 31 2004 | $300
>> >> Jan 1 2005 | $400
>> >> Aug 31 2005 | $500
>> >> --
>> >> Footer +25% (Diff between Jan 1 and Aug 31 2005)
>> >>
>> >> How would I calc the % change in the footer. My formula will not work as
>> >> the
>> >> "First" value is a year ago today not Jan 1. Is there a "Middle" function
>> >> ?
>> >> :) :)
>> >>
>> >> Thoughts ?
>> >>
>> >> Thanks in Advance
>> >>
>> >> Pete Mitchell
>> >
>> >
>>

First, Last, Again

I have a Matrix that always displays two rows of data.
One row show values from Jan 1 of the current year.
The second row shows values for today.
In the foot I show the % the values have changed so YTD with the following
formula:
=(Last(Fields!Core.Value) - First(Fields!Core.Value)) /
First(Fields!Core.Value) * 100
This works great and looks like this:
Date | Core
--
Jan 1 2005 | $400
Aug 31 2005 | $500
--
Footer +25%
I have been asked to add in the value from a year ago today but still
display the change in value from just Jan 1.
Date | Core
--
Aug 31 2004 | $300
Jan 1 2005 | $400
Aug 31 2005 | $500
--
Footer +25% (Diff between Jan 1 and Aug 31 2005)
How would I calc the % change in the footer. My formula will not work as the
"First" value is a year ago today not Jan 1. Is there a "Middle" function ?
:) :)
Thoughts ?
Thanks in Advance
Pete Mitchellmaybe you could use groups to accomplish the division of the first row from
the other two. Then you could just hide the group header and footer of
group1 and hide the header of group 2. I am not sure how the first and last
will work with groups ... just a thought
> Date | Core
> --
> Aug 31 2004 | $300 ======== > group 1
> Jan 1 2005 | $400 ========> group 2
> Aug 31 2005 | $500 ========> group 2
> --
> Footer +25% (Diff between Jan 1 and Aug 31 2005)
"PeteMitchell" wrote:
> I have a Matrix that always displays two rows of data.
> One row show values from Jan 1 of the current year.
> The second row shows values for today.
> In the foot I show the % the values have changed so YTD with the following
> formula:
> =(Last(Fields!Core.Value) - First(Fields!Core.Value)) /
> First(Fields!Core.Value) * 100
> This works great and looks like this:
> Date | Core
> --
> Jan 1 2005 | $400
> Aug 31 2005 | $500
> --
> Footer +25%
> I have been asked to add in the value from a year ago today but still
> display the change in value from just Jan 1.
> Date | Core
> --
> Aug 31 2004 | $300
> Jan 1 2005 | $400
> Aug 31 2005 | $500
> --
> Footer +25% (Diff between Jan 1 and Aug 31 2005)
> How would I calc the % change in the footer. My formula will not work as the
> "First" value is a year ago today not Jan 1. Is there a "Middle" function ?
> :) :)
> Thoughts ?
> Thanks in Advance
> Pete Mitchell
>|||Thanks, good suggestion.
"MJ Taft" wrote:
> maybe you could use groups to accomplish the division of the first row from
> the other two. Then you could just hide the group header and footer of
> group1 and hide the header of group 2. I am not sure how the first and last
> will work with groups ... just a thought
> > Date | Core
> > --
> > Aug 31 2004 | $300 ======== > group 1
> > Jan 1 2005 | $400 ========> group 2
> > Aug 31 2005 | $500 ========> group 2
> > --
> > Footer +25% (Diff between Jan 1 and Aug 31 2005)
>
> "PeteMitchell" wrote:
> > I have a Matrix that always displays two rows of data.
> > One row show values from Jan 1 of the current year.
> > The second row shows values for today.
> >
> > In the foot I show the % the values have changed so YTD with the following
> > formula:
> >
> > =(Last(Fields!Core.Value) - First(Fields!Core.Value)) /
> > First(Fields!Core.Value) * 100
> >
> > This works great and looks like this:
> > Date | Core
> > --
> > Jan 1 2005 | $400
> > Aug 31 2005 | $500
> > --
> > Footer +25%
> >
> > I have been asked to add in the value from a year ago today but still
> > display the change in value from just Jan 1.
> >
> > Date | Core
> > --
> > Aug 31 2004 | $300
> > Jan 1 2005 | $400
> > Aug 31 2005 | $500
> > --
> > Footer +25% (Diff between Jan 1 and Aug 31 2005)
> >
> > How would I calc the % change in the footer. My formula will not work as the
> > "First" value is a year ago today not Jan 1. Is there a "Middle" function ?
> > :) :)
> >
> > Thoughts ?
> >
> > Thanks in Advance
> >
> > Pete Mitchell
> >