Forum FAQ: How do I achieve column break in a matrix?

Symptom
Although you can set page break for column group in Reporting Services 2008, page breaks are ignored on column groups. Reference:
http://msdn.microsoft.com/en-us/library/ms156434.aspx
Solution
Here are some workarounds, available forboth Reporting Services 2005 and2008:
Workaround 1
Spread the columns from one matrix into several matrixes. You can first copy one matrix and then paste it into several ones you want. Then set the filter for each column group to make sure that the total columns’ length in one matrix just fit a page’s width.
Workaround 2
The other method is to use a custom code.
a.     Please copy the following code to the custom code area:
Dim FlagTable As System.Collections.Hashtable
Dim Flag AS Integer
 Function MyFunc(ByVal NewValue As Object) As Integer
If (FlagTable Is Nothing) Then
FlagTable = New System.Collections.Hashtable
End If
If (NewValue Is Nothing) Then
NewValue = "-"
End If
If (Not FlagTable .Contains(NewValue )) Then
Flag =Flag + 1
FlagTable.Add(NewValue, nothing)
End If
MyFunc = Flag
End Function
b.     Create a list in your report.
Imagine thatthe column group of a matrix is grouped bythe field ‘Column_Group’, then set the detail group of list withthe expression like this:
=Ceiling(Code.MyFunc(Fields!Column_Group.Value)/5)
Note: This means the Max number of column in matrix will be five after you follow step C.
c.      Sort the dataset by column group field, and then drag the matrix into the list. Click Preview.
Workaround 3
Similar to the second method, you need to modify the dataset.
a.     Create an ID column for the column group in your dataset.
For example,there isa datasetwith the following query:
SELECT * FROM Table
The column group is grouped on the field “Group1”.Then, modify the query like this:
SELECT *, Dense_Rank()OVER(order by Group1) AS ID FROM Table 
b.     Create a list in your report, set the detail group of the list with the Expression like this:
=Ceiling(Fields!ID.Value/5)
Note: This meansthat the Max number of column in matrix will be five after you followthe step C.
c.      Sort the dataset bythe column group and then drag the matrix into the list. Click Preview.

I have near about 30 matrics. so I need a paging. I did every thing as per this post and it really works for me.
I have total four columns. On one page it should show three and the remaining one will be moved to next page.
Problem occurs when in my first row i have 3 columns and in next page if I have one columns then it show proper on first page but on second page also it gives me three columns insted of one. the first column data is exactly what I have but in remaining two
columns it shows some garbage data.
I have data like below.
Metric ColumnNo RowNo
1 1
1
2 2
1
3 3
1
4 1
2
so while grouping i have a row parent group on RowNo and Column group on ColumnNo.
can anyone please advice on this.

Similar Messages

  • Column break in nested matrix

    Hi guys,
    I created a report of some quality test results containing table with nested matrix for details. I need the
    sub-matrix  to be grouped by row and by
    column and limit the number of result columns in row (to fit the width of report neatly). I went trough the articles about doing column group break already:
    http://social.msdn.microsoft.com/Forums/sqlserver/en-US/32f28407-e1ca-457e-92fd-d292e32dde4e/limit-no-of-columns-in-ssrs-matrix-report?forum=sqlreportingservices 
    http://social.msdn.microsoft.com/Forums/sqlserver/en-US/ea9d795b-8d17-41d2-a1d7-a4069ebb4539/forum-faq-how-do-i-achieve-column-break-in-a-matrix?forum=sqlreportingservices (I have used the 2nd workaround)
    My solution without the column count limit feature works perfectly. But when trying to break, the report seems to associate the column groups related to another parent table row, because the number of result grouped columns in row is
    less or equal to the set number (=4) as follows:
    Test type Test
    A A1
    Parameter A1-1 A1-2 A1-3 A1-4 // OK - break made after 4 columns of A1
    Min x x x x
    Max y y y y
    Measured z z z z
    Parameter A1-5 A1-6 // OK - break made after test type A1 (?Bug cause: "column count 2 for now")
    Min x x
    Max y y
    Measured z z
    A2
    Parameter A2-1 // OK - break made after test type A2 (?Bug cause: "column count 3 for now")
    Min x
    Max y
    Measured z
    B B1
    Parameter B1-1 // Not OK - break already made after 1st column (?Bug cause: "column count 4 for now:"=>BREAK)
    Min x
    Max y
    Measured z
    Parameter B1-2 B1-3 B1-4 // OK - break made after test type B1
    Min x x x
    Max y y y
    Measured z z z
    C C1
    Parameter C1-1 C1-2 C1-3 C1-4 // OK - break made after 4 columns of C1
    Min x x x x
    Max y y y y
    Measured z z z z
    Parameter C1-5 C1-6 // OK - break made after test type C1
    Min x x
    Max y y
    Measured z z
    I have modified the proposed function script for my purposes - set the reset of ID counter in the header of  parent row test, set the column ID  as concatenation of all level values (test type, test and watched parameter),  played with ordering
    of data and extra grouping, but with no success.
    Does anybody have a suggestion what is going on and how to solve this issue?
    Thanks,
    Marion
    PS: I'm sorry for the table illustration (done the best that I could). As a newbie I'm not allowed to post with picture. 
    Edit: Do you need some extra information to help? Does somebody have an idea how to achieve the same design with column break some other way?

    Hi,
    The column break needs to reset when it starts a new row grouping.  The customer code therefore needs parameters for the row grouping and for the column grouping.
    The code below is slightly different to a lot of examples.
    Creating hashtables would keep a record of every column value, so for large reports, this would use a small but significant amount of memory.  It only needs to know when it changes.  I've also used static variables as the scope only needs to be
    the function and not global, plus this makes it a single module of code which helps on larger projects.
    The ceiling calculation has been replaced with some integer maths to prevent odd rounding issues that cause hard to trace/reproduce bugs.  E.G. a 4 column should be 4-4-4-4-4 but 16 /4 should be 4 but might be
    4.000000000000001.  Ceilling then returns 5 so you end up with a column jumping to the next line :- 4-3-5-4-4.
    Note that everything that used to calculate the row grouping should be concatenated as a single parameter for the most robust solution.  In the example the sub group is unique for the entire dataset so is not an issue, but if a sub group is only unique
    in the group, there is a small change of a miscalculation.
    Here's my solution:
    In the code
    Function GroupFunction(
    ByVal NewGroup as string ,
    ByVal NewColumn as string ,
    ByVal ColumnBreak as Integer ) As Integer
    static OldGroup as string = ""
    static OldColumn as string = ""
    static RecordCount as integer = 0
    if (OldGroup <> NewGroup ) then
    OldGroup = NewGroup
    OldColumn = ""
    RecordCount = RecordCount + ( ColumnBreak - RecordCount Mod ColumnBreak )
    end if
    if (OldColumn <> NewColumn) then
    OldColumn = NewColumn
    RecordCount = RecordCount +1
    end if
    GroupFunction =RecordCount +
    ( ColumnBreak - (RecordCount - 1) Mod ColumnBreak )
    End Function
    In the report
    = Code.GroupFunction( Fields!MainGroup.Value & ":" & Fields!SubGroup.Value   , Fields!Parameter.Value , 4 )
    If you want a different number of columns, you can change the 4 to a report parameter.
    Output
    A
    A1
    Value Type
    A1-01
    A1-02
    A1-03
    A1-04
    Max
    2
    5
    8
    11
    Measured
    3
    6
    9
    12
    Min
    1
    4
    7
    10
    Value Type
    A1-05
    A1-06
    A1-07
    A1-08
    Max
    14
    1
    1
    1
    Measured
    15
    1
    1
    1
    Min
    13
    16
    1
    1
    Value Type
    A1-09
    A1-10
    Max
    1
    1
    Measured
    1
    1
    Min
    1
    1
    A
    A2
    Value Type
    A2-01
    Max
    1
    Measured
    1
    Min
    1
    B
    B1
    Value Type
    B1-01
    B1-02
    B1-03
    B1-04
    Max
    1
    1
    1
    1
    Measured
    1
    1
    1
    1
    Min
    1
    1
    1
    1
    Value Type
    B1-05
    Max
    1
    Measured
    1
    Min
    1
    C
    C1
    Value Type
    C1-01
    C1-02
    C1-03
    C1-04
    Max
    1
    1
    1
    1
    Measured
    1
    1
    1
    1
    Min
    1
    1
    1
    1
    Value Type
    C1-05
    C1-06
    Max
    1
    1
    Measured
    1
    1
    Min
    1
    1
    Best Regards
    Fergus

  • [Forum FAQ] How to install and configure Windows Server Essentials Experience role on Windows Server 2012 R2 Standard via PowerShell locally and remotely

    As we all know,
    the Windows Server Essentials Experience role is available in Windows Server 2012 R2 Standard and Windows Server 2012 R2 Datacenter. We can add the Windows Server
    Essentials Experience role in Server Manager or via Windows PowerShell.
    In this article, we introduce the steps to install and configure Windows
    Server Essentials Experience role on Windows Server 2012 R2 Standard via PowerShell locally and remotely. For better analyze, we divide this article into two parts.
    Before installing the Windows Server Essentials Experience Role, please use
    Get-WindowsFeature
    PowerShell cmdlet to ensure the Windows Server Essentials Experience (ServerEssentialsRole) is available. (Figure 1)
    Figure 1.
    Part 1: Install Windows Server Essentials Experience role locally
    Add Windows Server Essentials Experience role
    Run Windows PowerShell as administrator, then type
    Add-WindowsFeature ServerEssentialsRole cmdlet to install Windows Server Essentials Experience role. (Figure 2)
    Figure 2.
    Note: It is necessary to configure Windows Server Essentials Experience (Post-deployment Configuration). Otherwise, you will encounter following issue when opening Dashboard.
    (Figure 3)
    Figure 3.
      2. Configure Windows Server Essentials Experience role
    (1)  In an existing domain environment
    Firstly, please join the Windows Server 2012 R2 Standard computer to the existing domain through the path:
    Control Panel\System\Change Settings\”Change…”\Member of. (Figure 4)
    Figure 4.
    After that, please install Windows Server Essentials Experience role as original description. After installation completed, please use the following command to configure Windows
    Server Essentials:
    Start-WssConfigurationService –Credential <Your Credential>
    Note: The type of
    Your Credential should be as: Domain-Name\Domain-User-Account.
    You must be a member of the Enterprise Admin group and Domain Admin group in Active Directory when using the command above to configure Windows Server Essentials. (Figure 5)
    Figure 5.
    Next, you can type the password for the domain account. (Figure 6)
    Figure 6.
    After setting the credential, please type “Y” to continue to configure Windows Server Essentials. (Figure 7)
    Figure 7.
    By the way, you can use
    Get-WssConfigurationStatus
    PowerShell cmdlet to
    get the status of the configuration of Windows Server Essentials. Specify the
    ShowProgress parameter to view a progress indicator. (Figure 8)
    Figure 8.
    (2) In a non-domain environment
    Open PowerShell (Run as Administrator) on the Windows Server 2012 R2 Standard and type following PowerShell cmdlets: (Figure 9)
    Start-WssConfigurationService -CompanyName "xxx" -DNSName "xxx" -NetBiosName "xxx" -ComputerName "xxx” –NewAdminCredential $cred
    Figure 9.
    After you type the commands above and click Enter, you can create a new administrator credential. (Figure 10)
    After creating the new administrator credential, please type “Y” to continue to configure Windows Server Essentials. (Figure 11)
    After a reboot, all the configurations will be completed and you can open the Windows Server Essentials Dashboard without any errors. (Figure 12)
    Figure 12.
    Please click to vote if the post helps you. This can be beneficial to other community members reading the thread.

    Part 2: Install and configure Windows Server Essentials Experience role remotely
    In an existing domain environment
    In an existing domain environment, please use following command to provide credential and then add Server Essentials Role: (Figure 13)
    Add-WindowsFeature -Name ServerEssentialsRole
    -ComputerName xxx -Credential DomainName\DomainAccount
    Figure 13.
    After you enter the credential, it will start install Windows Server Essentials role on your computer. (Figure 14)
    Figure 14.
    After the installation completes, it will return the result as below:
    Figure 15.
    Next, please use the
    Enter-PSSession
    cmdlet and provide the correct credential to start an interactive session with a remote computer. You can use the commands below:
    Enter-PSSession –ComputerName
    xxx –Credential DomainName\DomainAccount (Figure 16)
    Figure 16.
    Then, please configure Server Essentials Role via
    Add-WssConfigurationService cmdlet and it also needs to provide correct credential. (Figure 17)
    Figure 17.
    After your credential is accepted, it will update and prepare your server. (Figure 18)
    Figure 18.
    After that, please type “Y” to continue to configure Windows Server Essentials. (Figure 19)
    Figure 19.
    2. In a non-domain environment
    In my test environment, I set up two computers running Windows Server 2012 R2 Standard and use Server1 as a target computer. The IP addresses for the two computers are as
    below:
    Sevrer1: 192.168.1.54
    Server2: 192.168.1.53
    Run
    Enable-PSRemoting –Force on Server1. (Figure 20)
    Figure 20.
    Since there is no existing domain, it is necessary to add the target computer (Server1) to a TrustedHosts list (maintained by WinRM) on Server 2. We can use following command
    to
    add the TrustedHosts entry:
    Set-Item WSMan:\localhost\Client\TrustedHosts IP-Address
    (Figure 21)
    Figure 21.
    Next, we can use
    Enter-PSSession
    cmdlet and provide the correct credential to start an interactive session with the remote computer. (Figure 22)
    Figure 22.
    After that, you can install Windows Server Essentials Experience Role remotely via Add-WindowsFeature ServerEssentialsRole cmdlet. (Figure 23)
    Figure 23.
    From figure 24, we can see that the installation is completed.
    Figure 24.
    Then you can use
    Start-WssConfigurationService cmdlet to configure Essentials Role and follow the steps in the first part (configure Windows Server Essentials Experience in a non-domain environment) as the steps would be the same.
    The figure below shows the status of Windows Server Essentials.
    Figure
    25.
    Finally, we have successfully configured Windows Server Essentials on Server1. (Figure 26)
    Figure 26.
    More information:
    [Forum
    FAQ] Introduce Windows Powershell Remoting
    Windows Server Essentials Setup Cmdlets
    Please click to vote if the post helps you. This can be beneficial to other community members reading the thread.

  • [Forum FAQ] How do I add an average line to series group on SQL Server Reporting Services column chart?

    Introduction
    In SQL Server Reporting Service (SSRS), you may need an average value on column chart.
    For the above chart, add an average score line to the chart, you can get which student’s score is larger than average score, and which student’s score is less than average score clearly. This document demonstrates how to add an average line to series groups
    on SSRS column chart.
    Solution
    To achieve this requirement, you can add another values to the chart, change the chart type to line chart. Set the value to average value of the series group and set the line to show only once by using expression. Please refer to the link below to see the
    detail steps.
    Click the chart to display the Chart Data pane.
    Add Score field to the Values area.
    Right-click the new inserted Score1 and select Change Chart Type. And then change chart type to line chart in the Select Chart Type window.
    Change the Category Group name to Subject. Here are the screenshot for you reference.
    Right-click the new inserted Score1 and select Series Properties.
    Click the expression button on the right of Value field textbox, type the expression below:
    =Avg(Fields!Score.Value,"Subject"))
    Click Visibility in the left pane, select “Show or hide based on an expression”, and type in the expression below:
    =IIF(Fields!Name.Value="Rancy",FALSE,TRUE)
    Name in the expression is one of the Students. Then only one line chart is be displayed by using this expression.
    Click Legend in the left pane, type Average_Score to the Custom legend text box.
    The report looks like below:
    Applies to
    Microsoft SQL Server 2005
    Microsoft SQL Server 2008
    Microsoft SQL Server 2008 R2
    Microsoft SQL Server 2012
    Please click to vote if the post helps you. This can be beneficial to other community members reading the thread.

    Thanks,
    Is this a supported scenario, or does it use unsupported features?
    For example, can we call exec [ReportServer].dbo.AddEvent @EventType='TimedSubscription', @EventData='b64ce7ec-d598-45cd-bbc2-ea202e0c129d'
    in a supported way?
    Thanks! Josh

  • [Forum FAQ] How to configure a Data Driven Subscription which get multi-value parameters from one column of a database table?

    Introduction
    In SQL Server Reporting Services, we can define a mapping between the fields that are returned in the query to specific delivery options and to report parameters in a data-driven subscription.
    For a report with a parameter (such as YEAR) that allow multiple values, when creating a data-driven subscription, how can we pass a record like below to show correct data (data for year 2012, 2013 and 2014).
    EmailAddress                             Parameter                      
    Comment
    [email protected]              2012,2013,2014               NULL
    In this article, I will demonstrate how to configure a Data Driven Subscription which get multi-value parameters from one column of a database table
    Workaround
    Generally, if we pass the “Parameter” column to report directly in the step 5 when creating data-driven subscription.
    The value “2012,2013,2014” will be regarded as a single value, Reporting Services will use “2012,2013,2014” to filter data. However, there are no any records that YEAR filed equal to “2012,2013,2014”, and we will get an error when the subscription executed
    on the log. (C:\Program Files\Microsoft SQL Server\MSRS10_50.MSSQLSERVER\Reporting Services\LogFiles)
    Microsoft.ReportingServices.Diagnostics.Utilities.InvalidReportParameterException: Default value or value provided for the report parameter 'Name' is not a valid value.
    This means that there is no such a value on parameter’s available value list, this is an invalid parameter value. If we change the parameter records like below.
    EmailAddress                        Parameter             Comment
    [email protected]         2012                     NULL
    [email protected]         2013                     NULL
    [email protected]         2014                     NULL
    In this case, Reporting Services will generate 3 reports for one data-driven subscription. Each report for only one year which cannot fit the requirement obviously.
    Currently, there is no a solution to solve this issue. The workaround for it is that create two report, one is used for view report for end users, another one is used for create data-driven subscription.
    On the report that used create data-driven subscription, uncheck “Allow multiple values” option for the parameter, do not specify and available values and default values for this parameter. Then change the Filter
    From
    Expression:[ParameterName]
    Operator   :In
    Value         :[@ParameterName]
    To
    Expression:[ParameterName]
    Operator   :In
    Value         :Split(Parameters!ParameterName.Value,",")
    In this case, we can specify a value like "2012,2013,2014" from database to the data-driven subscription.
    Applies to
    Microsoft SQL Server 2005
    Microsoft SQL Server 2008
    Microsoft SQL Server 2008 R2
    Microsoft SQL Server 2012
    Please click to vote if the post helps you. This can be beneficial to other community members reading the thread.

    For every Auftrag, there are multiple Position entries.
    Rest of the blocks don't seems to have any relation.
    So you can check this code to see how internal table lt_str is built whose first 3 fields have data contained in Auftrag, and next 3 fields have Position data. The structure is flat, assuming that every Position record is related to preceding Auftrag.
    Try out this snippet.
    DATA lt_data TYPE TABLE OF string.
    DATA lv_data TYPE string.
    CALL METHOD cl_gui_frontend_services=>gui_upload
      EXPORTING
        filename = 'C:\temp\test.txt'
      CHANGING
        data_tab = lt_data
      EXCEPTIONS
        OTHERS   = 19.
    CHECK sy-subrc EQ 0.
    TYPES:
    BEGIN OF ty_str,
      a1 TYPE string,
      a2 TYPE string,
      a3 TYPE string,
      p1 TYPE string,
      p2 TYPE string,
      p3 TYPE string,
    END OF ty_str.
    DATA: lt_str TYPE TABLE OF ty_str,
          ls_str TYPE ty_str,
          lv_block TYPE string,
          lv_flag TYPE boolean.
    LOOP AT lt_data INTO lv_data.
      CASE lv_data.
        WHEN '[Version]' OR '[StdSatz]' OR '[Arbeitstag]' OR '[Pecunia]'
             OR '[Mita]' OR '[Kunde]' OR '[Auftrag]' OR '[Position]'.
          lv_block = lv_data.
          lv_flag = abap_false.
        WHEN OTHERS.
          lv_flag = abap_true.
      ENDCASE.
      CHECK lv_flag EQ abap_true.
      CASE lv_block.
        WHEN '[Auftrag]'.
          SPLIT lv_data AT ';' INTO ls_str-a1 ls_str-a2 ls_str-a3.
        WHEN '[Position]'.
          SPLIT lv_data AT ';' INTO ls_str-p1 ls_str-p2 ls_str-p3.
          APPEND ls_str TO lt_str.
      ENDCASE.
    ENDLOOP.

  • [Forum FAQ] How to convert data of date time's type stored in database to display Time Zone based on different territories?

    Introduction:
    There is a date’s type field in the database. When using the field in the report, clients want to convert the field’s values based on own Time Zone to show the date field.
    Workaround:
    Currently, Reporting Services doesn’t provide the function that can get the Time Zone of a client machine. To work around the issue, you need to add a custom code in the report to convert Time Zone and create a parameter through which the client users can
    select his/her Time Zone, and then pass the parameter value to the custom function. Please see the details as follows:
    1. Click the Report, select Report Properties and add the custom code as the screenshot shown:
    Custom code:
    Shared Function FromUTC (ByVal d As Date, ByVal tz As String) As Date
    Return (TimeZoneInfo.ConvertTimeBySystemTimeZoneId(d, TimeZoneInfo.Utc.Id, tz))
    End Function
    2. Create a parameter named TimeZone (you can name the parameter according to your requirement), select Available value and click Specify values.
    Label                                                               
    Value
    China Standard Time                                        
    China Standard Time
    Central European Time Zone                              Central European Time Zone
    India Time Zone                                               
    India Time Zone
    United States of America Time zones                   United States of America Time zones
    3. Call the custom code and type the expression to convert the Time Zone as follows:
    =Code.FromUTC(Fields!UTCDateFromDatabase.Value,Parameters!TimeZone.Value)
    Note: If you use the expression “=Code.FromUTC(Fields!UTCDateFromDatabase.Value,TimeZone.CurrentTimeZone.StandardName)”, it cannot achieve the goal because TimeZone.CurrentTimeZone.StandardName gets the TimeZone of Report Server side rather than Client side.
    More information:
    TimeZone Class
    http://msdn.microsoft.com/en-us/library/system.timezone(v=vs.110).aspx
    Applies to
    Microsoft SQL Server 2005
    Microsoft SQL Server 2008
    Microsoft SQL Server 2008 R2
    Microsoft SQL Server 2012

    Hello,
    Please read the answer provided by Kalman on the following thread:
    http://social.technet.microsoft.com/Forums/es-ES/446df85a-7ad8-4891-8748-478a26350c5c/how-to-compare-tables-in-two-different-servers-while-one-of-the-server-name-has-a-?forum=transactsql
    Hope this helps.
    Regards,
    Alberto Morillo
    SQLCoffee.com

  • [Forum FAQ] How to display an image from Http response in Reporting Services?

    Question:
    There is a kind of scenario that users want to display an image which is from URL. In Reporting Services, if the URL points to an image file, we can directly display it by typing the URL in embedded image. However, some URLs are just sending Http requests
    to server side, then redirect to another position and the server will return the image. For these kind of URLs, Reporting Services can’t directly render the image from Http response.
    Answer:
    To achieve this goal, we can add custom code into the report. Pass the URL as argument into our custom function so that we can create HttpRequest and get the HttpResponse. Then we can use custom function to return the Bytes() from the HttpResponse and render
    it into an image in report.
    Ps: In Reporting Services, it only support drawing Bytes() array into image, so we need to have our custom function return Bytes array.
    Add the assembly and custom code into the report.
    Public shared Function GetImageFromByte(Byval URL as String) As byte() 
                    Dim photo as System.Drawing.Image 
             Dim Request As System.Net.HttpWebRequest 
           Dim Response As System.Net.HttpWebResponse 
                  Request = System.Net.WebRequest.Create(URL)         
                     Response = CType(Request.GetResponse, System.Net.WebResponse) 
                 If Request.HaveResponse Then  
                      If Response.StatusCode = Net.HttpStatusCode.OK Then                    
                           photo = System.Drawing.Image.FromStream(Response.GetResponseStream) 
                     End If 
                 End If 
                  Dim ms AS System.IO.MemoryStream = new System.IO.MemoryStream() 
                 photo.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg) 
                    Dim imagedata as byte()  
                    imagedata = ms.GetBuffer()  
                    return imagedata
    End Function
    Grant the permission for assemblies. 
    Go to: 
    C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies\RSpreviewPolicy.config 
    C:\Program Files\Microsoft SQL Server\MSSQL\Reporting Services\ReportServer\rssrvpolicy.config
    Give “FullTrust” for Report_Expressions_Default_Permissions.
    Insert an image into report. 
    Expression:
    =Code.GetImageFromByte("https://encrypted-tbn2.gstatic.com/images?q=tbn:ANd9GcSrVwPoAtlcA2A3KaiAJi-XjS4icr1QUnKYr7uzpX3IL3g2GPisAQ")
    The Result looks below:
    Applies to:
    Reporting Services 2005
    Reporting Services 2008
    Reporting Services 2008 R2
    Reporting Services 2012
    Reporting Services 2014
    Please click to vote if the post helps you. This can be beneficial to other community members reading the thread.

    >
    Hi, I'd like to display a dynamic image from the web inside a JLabel or any other swing component it could work in. I've been looking on the Swing tutorials and others forums, all I can have is that a JLabel can load an Icon object, defined by an image URL, but can this URL be like "http://xxxxx/image.jpg" somehow or can it only be a local image URL?>
    I do not know why you start talking about an image on the web then go on to show concerns about whether it will work for a 'local' URL.
    But perhaps this answer will cover the possibilities.
    So long as you can from an URL to the image, and the bytes are available for download (e.g. some web sites wrap a direct call to an image in HTML that embeds the image), the URL based icon constructors will successfully load it.
    It does not matter if that URL points to
    - a web site,
    - a local server ('localhost'),
    - an URL representation of a File on the local file system, or
    - it is inside a Jar file that is on the application's run-time classpath.
    How you go about forming a valid URL to a 'local resources' (or indeed what you regard as local resources) is another matter, depending on the form of the project, and how the resources are stored (see list above).
    Probably the main reason that examples use images at a hard coded URL on the net is that it makes an 'image example' self contained. As soon as we compile and run it, we can see the result. I have posted a few examples like that on these forums.
    Edit 1:
    BTW - Welcome to the Sun forums
    Edited by: AndrewThompson64 on Apr 21, 2009 12:15 PM

  • [Forum FAQ] How do I have Invoke-SqlCmd return a date value without adding time

    Introduction
    A select statement executed from Invoke-SqlCmd returns a value from a Date column, the value has "12:00:00 AM" appended.  The same select statement executed within SQL Server Management Studio displays the date properly without any time formatting.
    Sample data is as follows:
    How to have Invoke-SqlCmd return Date values without adding time for multiple Date type columns and pipe the output into CSV file?
    Solution
    In SQL Server 2012 or onwards, use the FORMAT() function to convert datetime values to date format when executing query from Invoke-SqlCmd. In earlier versions such as SQL Server 2008 R2, use the traditional CONVERT() function to format datetime values to
    different date formats(yyyy.mm.dd, mm/dd/yyyy, etc) when executing query from Invoke-SqlCmd. Then pipe the output of SQL query result into CSV file by specifying export-csv parameter. An example is as follows.
    Create a table named “Test_invokesqlcmd” that contains Date type columns in SQL Server.
    USE Test
    Go
    CREATE TABLE [dbo].[Test_invokesqlcmd](
        [id] [int] NOT NULL,
        [name] [varchar](20) NULL,
        [test1] [date] NULL,
        [test2] [date] NULL
    ) ON [PRIMARY]
    GO
    insert into [dbo].[Test_invokesqlcmd]
    values(1,'David','2014-10-15','2015-01-07'),(2,'Jane','2011-08-05','2012-11-7'),(3,'Crystal','2013-09-15','2010-02-24')
    Define a query string, execute it from Invoke-SqlCmd and save the query result to a CSV file.
    Scripts for SQL Server 2012:
    $query1 = @"
        use Test;
        SELECT FORMAT(test1,'d') as newtest1, FORMAT(test2,'d') as newtest2 from dbo.Test_invokesqlcmd
    write-host $query1
    Invoke-Sqlcmd -Query $query1 -ServerInstance localhost | export-csv -notypeinformation -path c:\Files\test.csv
    Scripts for SQL Server 2008 R2:
    $query2 = @"
        Use Test;
        SELECT CONVERT(varchar, test1, 102) as newtest1,CONVERT(varchar, test2, 102) as newtest2
        FROM dbo. Test_invokesqlcmd
    write-host $query2
    Invoke-Sqlcmd -Query $query2 -ServerInstance localhost | export-csv -notypeinformation -path c:\Files\test.csv
    Check the results in SQL Server PowerShell window and csv file.
    SQL Server 2012:
    SQL Server 2008 R2:
    Reference
    Using the Invoke-Sqlcmd cmdlet
    SQL Server Functions that helps to convert date and time values to and from string literals and other date and time formats
    Applies to
    SQL Server 2014
    SQL Server 2012
    SQL Server 2008 R2
    SQL Server 2008
    Please click to vote if the post helps you. This can be beneficial to other community members reading the thread.

    Cross posted. More appropriate in JSF forum so continue conversation there.
    http://forum.java.sun.com/thread.jspa?threadID=717292&messageID=4142615#4142615

  • [Forum FAQ] How to deploy applications remotely

    In some situations, we may need some ways to install applications remotely, here we summarize four general ways to deploy applications.
    1. Using PowerShell to install
    We can use the Win32_Product class to install Windows Installer packages, remotely or locally, so in this way, we can use powerShell command to invoke this function. For example, to install the NewPackage.msi package located in the network
    share \\AppServ\remote on the remote computer PC01, type the following command at the Windows PowerShell prompt:
    (Get-WMIObject -ComputerName PC01 -List | Where-Object -FilterScript {$_.Name -eq "Win32_Product"}).Install(\\AppSrv\remote\NewPackage.msi)
    In same method, we can use the following command to deploy .exe application:
    (Get-WMIObject -ComputerName PC01 -List | Where-Object -FilterScript {$_.Name -eq "Win32_Process"}).Create(\\AppSrv\remote\NewPackage.exe)
    Note: The applications should use Windows Installer technology.
    2. PsExec tool: one of sysinternals utilities
    PsExec's most powerful uses include launching interactive command-prompts on remote systems and remote-enabling tools like IpConfig that otherwise do not have the ability to show information about remote systems. So, we can use this feature to install our
    applications, in fact this is similar with PowerShell methods, the only difference is that PsExec is a comprehensive tool. Similarly, we can use the following command to achieve our goal:
    psexec \\PC01  cmd /c  "\\AppSrv\remote\NewPackage.msi" /quiet /norestart
    Note: we can also use PsExec tool to install Microsoft Update file (.msu)
    psexec \\PC01  -s -h -d wusa.exe  "\\AppSrv\remote\NewPackage.msu" /quiet /norestart
    3. Group Policy Software Installation
    In domain environment, this method is very useful to deploy our software. It only supports MSI package for deployment.
    We can choose assign a program to user or computer. If you assign the program to a user, it is installed when the user logs on to the computer. When the user first runs the program, the installation is completed. If you assign the program to a computer,
    it is installed when the computer starts, and it is available to all users who log on to the computer. When a user first runs the program, the installation is completed.
    You can get the installation information of group policy software installation in event viewer, including success or failure.
    4. System Center Configuration Manger
    The Microsoft System Center Configuration Manager software distribution feature provides a set of tools and resources that help you create and manage packages and advertisements used to distribute software to client resources within your enterprise. This
    is a comprehensive suit for deployment.
    How to Deploy Applications in Configuration Manager
    http://technet.microsoft.com/en-us/library/gg682082.aspx
    Summary:
    There are a lot of methods for software deployment, here just introduce some generic ways.
    Here is another important point of software deployment: Some applications do not use windows installer technology. 
    Applications that do not use Windows Installer technology may have application-specific methods for automated deployment. For example, a .exe file may be just a wrapper, it can be anything. To determine whether there is a method for deployment automation,
    check the documentation for the application or consult the application vendor's support system. In some cases, even if the application vendor did not specifically design the application for installation automation, the installer software manufacturer may have
    some techniques for automation.
    Please click to vote if the post helps you. This can be beneficial to other community members reading the thread.

    In some situations, we may need some ways to install applications remotely, here we summarize four general ways to deploy applications.
    1. Using PowerShell to install
    We can use the Win32_Product class to install Windows Installer packages, remotely or locally, so in this way, we can use powerShell command to invoke this function. For example, to install the NewPackage.msi package located in the network
    share \\AppServ\remote on the remote computer PC01, type the following command at the Windows PowerShell prompt:
    (Get-WMIObject -ComputerName PC01 -List | Where-Object -FilterScript {$_.Name -eq "Win32_Product"}).Install(\\AppSrv\remote\NewPackage.msi)
    In same method, we can use the following command to deploy .exe application:
    (Get-WMIObject -ComputerName PC01 -List | Where-Object -FilterScript {$_.Name -eq "Win32_Process"}).Create(\\AppSrv\remote\NewPackage.exe)
    Note: The applications should use Windows Installer technology.
    2. PsExec tool: one of sysinternals utilities
    PsExec's most powerful uses include launching interactive command-prompts on remote systems and remote-enabling tools like IpConfig that otherwise do not have the ability to show information about remote systems. So, we can use this feature to install our
    applications, in fact this is similar with PowerShell methods, the only difference is that PsExec is a comprehensive tool. Similarly, we can use the following command to achieve our goal:
    psexec \\PC01  cmd /c  "\\AppSrv\remote\NewPackage.msi" /quiet /norestart
    Note: we can also use PsExec tool to install Microsoft Update file (.msu)
    psexec \\PC01  -s -h -d wusa.exe  "\\AppSrv\remote\NewPackage.msu" /quiet /norestart
    3. Group Policy Software Installation
    In domain environment, this method is very useful to deploy our software. It only supports MSI package for deployment.
    We can choose assign a program to user or computer. If you assign the program to a user, it is installed when the user logs on to the computer. When the user first runs the program, the installation is completed. If you assign the program to a computer,
    it is installed when the computer starts, and it is available to all users who log on to the computer. When a user first runs the program, the installation is completed.
    You can get the installation information of group policy software installation in event viewer, including success or failure.
    4. System Center Configuration Manger
    The Microsoft System Center Configuration Manager software distribution feature provides a set of tools and resources that help you create and manage packages and advertisements used to distribute software to client resources within your enterprise. This
    is a comprehensive suit for deployment.
    How to Deploy Applications in Configuration Manager
    http://technet.microsoft.com/en-us/library/gg682082.aspx
    Summary:
    There are a lot of methods for software deployment, here just introduce some generic ways.
    Here is another important point of software deployment: Some applications do not use windows installer technology. 
    Applications that do not use Windows Installer technology may have application-specific methods for automated deployment. For example, a .exe file may be just a wrapper, it can be anything. To determine whether there is a method for deployment automation,
    check the documentation for the application or consult the application vendor's support system. In some cases, even if the application vendor did not specifically design the application for installation automation, the installer software manufacturer may have
    some techniques for automation.
    Please click to vote if the post helps you. This can be beneficial to other community members reading the thread.

  • [Forum FAQ] How to use multiple field terminators in BULK INSERT or BCP command line

    Introduction
    Some people want to know if we can have multiple field terminators in BULK INSERT or BCP commands, and how to implement multiple field terminators in BULK INSERT or BCP commands.
    Solution
    For character data fields, optional terminating characters allow you to mark the end of each field in a data file with a field terminator, as well as the end of each row with a row terminator. If a terminator character occurs within the data, it is interpreted
    as a terminator, not as data, and the data after that character is interpreted and belongs to the next field or record. I have done a test, if you use BULK INSERT or BCP commands and set the multiple field terminators, you can refer to the following command.
    In Windows command line,
    bcp <Databasename.schema.tablename> out “<path>” –c –t –r –T
    For example, you can export data from the Department table with bcp command and use the comma and colon (,:) as one field terminator.
    bcp AdventureWorks.HumanResources.Department out C:\myDepartment.txt -c -t ,: -r \n –T
    The txt file as follows:
    However, if you want to bcp by using multiple field terminators the same as the following command, which will still use the last terminator defined by default.
    bcp AdventureWorks.HumanResources.Department in C:\myDepartment.txt -c -t , -r \n -t: –T
    The txt file as follows:
    When multiple field terminators means multiple fields, you use the below comma separated format,
    column1,,column2,,,column3
    In this occasion, you only separate 3 fields (column1, column2 and column3). In fact, after testing, there will be 6 fields here. That is the significance of a field terminator (comma in this case).
    Meanwhile, using BULK INSERT to import the data of the data file into the SQL table, if you specify terminator for BULK import, you can only set multiple characters as one terminator in the BULK INSERT statement.
    USE <testdatabase>;
    GO
    BULK INSERT <your table> FROM ‘<Path>’
     WITH (
    DATAFILETYPE = ' char/native/ widechar /widenative',
     FIELDTERMINATOR = ' field_terminator',
    For example, using BULK INSERT to import the data of C:\myDepartment.txt data file into the DepartmentTest table, the field terminator (,:) must be declared in the statement.
    In SQL Server Management Studio Query Editor:
    BULK INSERT AdventureWorks.HumanResources.DepartmentTest FROM ‘C:\myDepartment.txt’
     WITH (
    DATAFILETYPE = ‘char',
    FIELDTERMINATOR = ‘,:’,
    The new table contains like as follows:  
    We could not declare multiple field terminators (, and :) in the Query statement,  as the following format, a duplicate error will occur.
    In SQL Server Management Studio Query Editor:
    BULK INSERT AdventureWorks.HumanResources.DepartmentTest FROM ‘C:\myDepartment.txt’
     WITH (
    DATAFILETYPE = ‘char',
    FIELDTERMINATOR = ‘,’,
    FIELDTERMINATOR = ‘:’
    However, if you want to use a data file with fewer or more fields, we can implement via setting extra field length to 0 for fewer fields or omitting or skipping more fields during the bulk copy procedure.  
    More Information
    For more information about filed terminators, you can review the following article.
    http://technet.microsoft.com/en-us/library/aa196735(v=sql.80).aspx
    http://social.technet.microsoft.com/Forums/en-US/d2fa4b1e-3bd4-4379-bc30-389202a99ae2/multiple-field-terminators-in-bulk-insert-or-bcp?forum=sqlgetsta
    http://technet.microsoft.com/en-us/library/ms191485.aspx
    http://technet.microsoft.com/en-us/library/aa173858(v=sql.80).aspx
    http://technet.microsoft.com/en-us/library/aa173842(v=sql.80).aspx
    Applies to
    SQL Server 2012
    SQL Server 2008R2
    SQL Server 2005
    SQL Server 2000
    Please click to vote if the post helps you. This can be beneficial to other community members reading the thread.

    Thanks,
    Is this a supported scenario, or does it use unsupported features?
    For example, can we call exec [ReportServer].dbo.AddEvent @EventType='TimedSubscription', @EventData='b64ce7ec-d598-45cd-bbc2-ea202e0c129d'
    in a supported way?
    Thanks! Josh

  • [Forum FAQ] How do I limit the rendering extension of a report in Report Manager?

    Question:
    There are scenarios that users need to disable some rendering extensions for some specific report. Since the rendering extension is configured for all report, if we modify anything in rsreportserver.config file, it will apply to all reports. How to achieve
    this kind of requirement?
    Answer:
    Since disabling some extensions is only applying for specific reports, we can’t directly modify the configuration file. However, we can have a workaround to achieve this goal on HTML page level. We can embed javascript code in Report page to hide the rendering
    extensions in export format list based on the name of report.
    Open the Report.aspx, the default location is
    C:\Program Files\Microsoft SQL Server\MSRS12.MSSQLSERVER\Reporting Services\ReportManager\Pages
    Add the Javascript code below into the file:
    <script language = "Javascript">
    //javascript: get parameter from URL
    function getParameter(paraStr, url)
        var result = "";
        //get all parameters from the URL
        var str = "&" + url.split("?")[1];
        var paraName = paraStr + "=";
        //check if the required parameter exist
        if(str.indexOf("&"+paraName)!=-1)
            //if "&" is at the end of the required parameter
            if(str.substring(str.indexOf(paraName),str.length).indexOf("&")!=-1)
                //get the end string
                var TmpStr=str.substring(str.indexOf(paraName),str.length);
                //get the value.
                result=unescape(TmpStr.substr(TmpStr.indexOf(paraName) + paraName.length,TmpStr.indexOf("&")-TmpStr.indexOf(paraName) -
    paraName.length));  
            else
                result=unescape(str.substring(str.indexOf(paraName) + paraName.length,str.length));
        else
            result="Null";  
        return (result.replace("&",""));  
    var timer2;
    var dueTime2=0
    function RemoveCTLExportFormats(format)
                    dueTime2 += 50;
                    if(dueTime2 > 30000)
                                    clearTimeout(timer2);
                                    return;
                    var obj=document.getElementsByTagName("Select");
                    for(var i=0;i<obj.length;i++)
                                    if (obj[i].title == "Export Formats")
    var k = -1;
    for(var j = 0; j < obj[i].length; j ++)
    if(obj[i].options[j].value.toLowerCase() == format.toLowerCase())
    k = j;     
    obj[i].options.remove(k);
    clearTimeout(timer2);  
    return;                                                                 
                    timer2=setTimeout("RemoveCTLExportFormats('" + format + "')",50);
    function RemoveOption(report, format)
                    if(getParameter("ItemPath", location.href).toLowerCase() == report.toLowerCase())
                                    timer2=setTimeout("RemoveCTLExportFormats('" + format
    + "')",50);
                    else
                                    return;
    RemoveOption("1", "Excel");
    </script>
    Then we just need to pass the report full path and the export format into RemoveOption function to disable the export format. For example: RemoveOption("/ReportSamples/report1", "Excel");
    Since the javascript is loaded before rendering the report, we have to make the function to run every few milliseconds. This is not efficient and there is such a lot of code. To simplify the code and improve the performance, we can use JQuery to directly get
    the export format we want based on title. So we can change the javascript code into the JQuery code below:
    <script src="http://code.jquery.com/jquery-1.10.2.min.js" type="text/javascript"></script>
    <script type="text/javascript">  
        $(function () {                         
            var result = new RegExp('[\?&]ItemPath=([^&#]*)').exec(window.location.href)[1];          
            var reportName = result.split('%2f')[result.split('%2f').length - 1];
            if (reportName == "1") {
                $("a[title='Excel']").hide();
    </script> 
    The result looks like below:
    Applies to:
    Reporting Services 2005
    Reporting Services 2008
    Reporting Services 2008 R2
    Reporting Services 2012
    Reporting Services 2014
    Please click to vote if the post helps you. This can be beneficial to other community members reading the thread.

    Hi Grégory
      Thanks for answering . . .
       How is this different from any other conditional formatting?  I'm sorry, but I really don't understand.  If I can change the color of text based on a condition or conditionally suppress a detail row, why can't I change the row background color based on the toggle state when the textbox is toggled?  If it's just not possible, then how is textbox.togglestate used?  Is is only used to set the initial toggle state programmatically? 
        I'm really confused.  Clearly, an event is fired when you toggle a textbox.  The screen gets refreshed.  I don't understand why I can't conditionally color a row based on the toggle state of a text box.  Please help me understand - or guide to a place that explains how that textbox property is used.
    Thanks!
    Karen

  • [Forum FAQ] How do i use xml stored in database as dataset in SQL Server Reporting Services?

    Introduction
    There is a scenario that users want to create SSRS report, the xml used to retrieve data for the report is stored in table of database. Since the data source is not of XML type, when we create data source for the report, we could not select XML as Data Source
    type. Is there a way that we can create a dataset that is based on data of XML type, and retrieve report data from the dataset?
    Solution
    In this article, I will demonstrate how to use xml stored in database as dataset in SSRS reports.
    Supposing the original xml stored in database is like below:
    <Customers>
    <Customer ID="11">
    <FirstName>Bobby</FirstName>
    <LastName>Moore</LastName>
    </Customer>
    <Customer ID="20">
    <FirstName>Crystal</FirstName>
    <LastName>Hu</LastName>
    </Customer>
    </Customers>
    Now we can create an SSRS report and use the data of xml type as dataset by following steps:
    In database, create a stored procedure to retrieve the data for the report in SQL Server Management Studio (SSMS) with the following query:
    CREATE PROCEDURE xml_report
    AS
    DECLARE @xmlDoc XML;  
    SELECT @xmlDoc = xmlVal FROM xmlTbl WHERE id=1;
    SELECT T.c.value('(@ID)','int') AS ID,     
    T.c.value('(FirstName[1])','varchar(99)') AS firstName,     
    T.c.value('(LastName[1])','varchar(99)') AS lastName
    FROM   
    @xmlDoc.nodes('/Customers/Customer') T(c)
    GO
    P.S. This is an example for a given structured XML, to retrieve node values from different structured XMLs, you can reference here.
    Click Start, point to All Programs, point to Microsoft SQL Server, and then click Business Intelligence Development Studio (BIDS) OR SQL Server Data Tools (SSDT). If this is the first time we have opened SQL Server Data Tools, click Business Intelligence
    Settings for the default environment settings.
    On the File menu, point to New, and then click Project.
    In the Project Types list, click Business Intelligence Projects.
    In the Templates list, click Report Server Project.
    In Name, type project name. 
    Click OK to create the project. 
    In Solution Explorer, right-click Reports, point to Add, and click New Item.
    In the Add New Item dialog box, under Templates, click Report.
    In Name, type report name and then click Add.
    In the Report Data pane, right-click Data Sources and click Add Data Source.
    For an embedded data source, verify that Embedded connection is selected. From the Type drop-down list, select a data source type; for example, Microsoft SQL Server or OLE DB. Type the connection string directly or click Edit to open the Connection Properties
    dialog box and select Server name and database name from the drop down list.
    For a shared data source, verify that Use shared data source reference is selected, then select a data source from the drop down list.
    Right-click DataSets and click Add Dataset, type a name for the dataset or accept the default name, then check Use a dataset embedded in my report. Select the name of an existing Data source from drop down list. Set Query type to StoredProcedure, then select
    xml_report from drop down list.
    In the Toolbox, click Table, and then click on the design surface.
    In the Report Data pane, expand the dataset we created above to display the fields.
    Drag the fields from the dataset to the cells of the table.
    Applies to
    Reporting Services 2008
    Reporting Services 2008 R2
    Reporting Services 2012
    Reporting Services 2014
    Please click to vote if the post helps you. This can be beneficial to other community members reading the thread.

    I have near about 30 matrics. so I need a paging. I did every thing as per this post and it really works for me.
    I have total four columns. On one page it should show three and the remaining one will be moved to next page.
    Problem occurs when in my first row i have 3 columns and in next page if I have one columns then it show proper on first page but on second page also it gives me three columns insted of one. the first column data is exactly what I have but in remaining two
    columns it shows some garbage data.
    I have data like below.
    Metric ColumnNo RowNo
    1 1
    1
    2 2
    1
    3 3
    1
    4 1
    2
    so while grouping i have a row parent group on RowNo and Column group on ColumnNo.
    can anyone please advice on this.

  • [Forum FAQ] How to get SSIS packages XML definition which are stored in SQL Server Integration Services instance

    Introduction
    Integration Services gives you the ability to import and export packages, and by doing this change the storage format and location of packages. But after import packages into package store, how can we get the package XML definition?
    Solution
    As we know, SSIS packages are stored in msdb using existing SSIS storage table([msdb].[dbo].[sysssispackages]). The “packagedata” column store the actual SSIS package with Image data type. In order to get the package XML definition, we need to convert “packagedata”
    column through Varbinary to XML. You can refer to the following steps:
    Using the following query to get package GUID:
    SELECT [name],
                [id]
      FROM [msdb].[dbo].[sysssispackages]
    Using the following query to convert packagedata column to XML: SELECT id, CAST(CAST(packagedata AS VARBINARY(MAX)) AS XML) PackageDataXML
    FROM      [msdb].[dbo].[sysssispackages]
    WHERE id= 'ABB264CC-A082-40D6-AEC4-DBF17FA057B2'
    More Information
    sysssispackages (Transact-SQL):
    http://msdn.microsoft.com/en-us/library/ms181582.aspx
    Applies to
    SQL Server 2005
    SQL Server 2008
    SQL Server 2008R2
    SQL Server 2012
    SQL Server 2014
    Please click to vote if the post helps you. This can be beneficial to other community members reading the thread.

    Hi Ketak. Thank you for replying. I already followed your instructions - specifically -
    You do not see the SQL Server Reporting Services  service in SharePoint Central Administration after installing SQL Server 2012 SSRS in SharePoint mode
    I get the following error when I run rssharepoint.msi on the APP sever (where Central Admin is installed). I have to run this other wise
    Install-SPRSService and Install-SPRSServiceProxy 
    are not recognized as commands on that server.
    Failed to call GetTypes on assembly Microsoft.AnalysisServices.SPAddin, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91. Could not load file or assembly Microsoft.AnalysisServices.SPClient, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91'
    or one of its dependencies. The system cannot find the file specified.
    macrel

  • [Forum FAQ] How to show Windows Update in Control Panel in Clean Installation of Windows 10 Technical Preview Build 9926

    Scenario
    If you performed a clean installation of the new Windows 10 Technical Preview Build 9926, you would find Windows Update is only available in
    Settings and is hidden in Control Panel by default. However, Windows Update is still available in Control Panel if it is an upgrade version of Windows 10 Technical Preview Build 9926.
    Solution
    After the comparison of the two different version, the differences is the following registry:
    HKLM\SOFTWARE\Microsoft\WindowsUpdate\UX\IsConvergedUpdateStackEnabled
    In clean installation version:
    In upgrade version:
    The method to make Windows Update show in Control Panel in the clean installation of Windows 10 Technical Preview Build 9926:
    Edit the REG_DWORD value of IsConvergedUpdateStackEnabled from 1 to 0.
    Applies to
    Clean installation of Windows 10 Technical Preview Build 9926
    Please click to vote if the post helps you. This can be beneficial to other community members reading the thread.

    We’ve seen a few forum posts talking about changing registry keys to alter the update experience we shipped in Technical Preview build 9926. There are a couple of reasons that we don’t recommend doing things like that.
    First, the default experience is what we’ve tested across not just the Windows 10 team, but across all of Microsoft before we released it to you. That doesn’t mean that you won’t still find bugs, but it’s definitely the code that’s been most thoroughly
    tested. Changing things back to older versions is risky because the combination of those old settings with the rest of Windows 10 is not something that’s been validated or supported, so we can’t predict the side effects. It’s possible that changing registry
    settings related to update could cause a machine to no longer be able to get new updates or Technical Preview builds.
    The other reason to avoid changing the default update experience is that a lot of update-related code is actually being re-written in order to scale across the variety of different device types Windows 10 will support. Since Technical Previews are
    a work-in-progress, some code that may still be in build 9926 won’t actually ship in the final version of Windows 10 that we provide to all our customers, so trying to re-enable that code temporarily won’t provide a way to accurately assess Windows 10’s update
    capabilities.
    We want to hear your feedback! We’re sharing Technical Preview releases early so we can understand exactly how customers are using our software and make sure we are designing our experiences to address those scenarios. The more
    specific the feedback, the more helpful it is for us – saying “I hate the new Windows Update UI” isn’t very useful, but when we see “I need to be able to tell Windows Update to grab updates from WU itself and not from my internal corporate server, so the new
    Windows Update UI is painful for me”, we can actually understand what changes we could make to solve those specific problems. We can’t promise to fix everything that everyone asks for – and sometimes what one customer wants is exactly what another customer
    doesn’t want – but the more you can help us understand why you want something changed, the better we can try to meet those needs.
    Thanks for listening, and we look forward to hearing your responses.
    http://answers.microsoft.com/en-us/insider/forum/insider_wintp-insider_update/warning-disabling-the-new-windows-update-ui-may/dc846517-eca0-4960-b0ff-1eb7227223f5

  • [Forum FAQ] How do I change default values shown in Report Delivery Options?

    Introduction
    Some users want to change default values shown in Report Delivery Options when creating standard subscriptions. Someone might want to always Cc the report to a specified user without sending the report URL. So they want to display those default values display
    automatically when creating standard subscriptions like below.
    Solution
    To achieve this goal, please embed JavaScript code into the SubscriptionProperties.aspx file to change those default values (By default, the file’s location is: <Installation directory>\Reporting Services\ReportManager\Pages\SubcriptionProperties.aspx).
    The example below will show how to set default values for “Cc” field and “Include Link” field.
    Before coding, pleas find out the corresponding HTML tags of the two fields in the browser using IE Developer Tools.
    Get “Cc” field with its corresponding HTML tag
    Get “Include Link” field with its corresponding HTML tag
    Embed such a code snippet at the end of the existing code within the SubcriptionProperties.aspx file
    <script runat="server">   
    protected void Page_Load(object sender, EventArgs e)
        Page.ClientScript.RegisterStartupScript(typeof(Page),"MyScript", "var cc = document.getElementById('CcEmailAddressesID');cc.value = '[email protected]';var IncludeLink = document.getElementById('ui_cbIncludeLink');IncludeLink.checked
    = false;",true);}
    </script>
    Create a new subscription to check the default values shown in Report Delivery Options 
    Applies to
    Reporting Services 2005
    Reporting Services 2008
    Reporting Services 2008 R2
    Reporting Services 2012
    Reporting Services 2014
    Please click to vote if the post helps you. This can be beneficial to other community members reading the thread.

    Thanks,
    Is this a supported scenario, or does it use unsupported features?
    For example, can we call exec [ReportServer].dbo.AddEvent @EventType='TimedSubscription', @EventData='b64ce7ec-d598-45cd-bbc2-ea202e0c129d'
    in a supported way?
    Thanks! Josh

Maybe you are looking for