Grid or light box type report in SSRS 2012

Hi I am trying to create a grid report like a light box type display in SSRS. I want to display images horizontally across the report and then down. I am using VS 2013. I understand from my searching that this can be done using a matrix control and grouping
using an expression to limit the number of cells displayed across the page (in my case 3) and this works partly. I get a display where my images are off set like below:
data data data
                      data data data
data data data
I can't work out how to have each row of images progress down the page so that I see each row of three starting from the left and not off set like this:
Data data data
Data data data
data data data
Grateful for your help.
 

Hi WhyIsItSoHard,
According to your description, you want to display values in a matrix from left to right and each row align to left, right?
In Reporting Services, values in matrix cells display aggregate values scoped to the intersection of the row and column groups to which the cell belongs. If there is no corresponding value for each intersection, it’s possible that the matrix will display
like the first structure you mentioned. In your scenario, if you want to display as the second structure, you could embed the matrix in a list. Please refer to steps below:
1. Query  the table except the null values, then create a list and a matrix, then drag the matrix into the list, and delete the first row of the matrix.
2. The final design should look like below. Then preview the report.
Reference:
Lists (Report Builder and SSRS)
If you have any question, please feel free to ask.
Best regards,
Qiuyun Yu
Qiuyun Yu
TechNet Community Support

Similar Messages

  • Can someone suggest some good books for sql reporting services (SSRS) 2012 or above?

    Hi Everyone,
        Can someone suggest some good books for sql reporting services (SSRS) 2012 and above? I ave been working on ssrs for past 2 months and have a basic understanding of ssrs.
    Regards
    Regards

    Hi,
    you can look for below options;
    http://www.amazon.in/Microsoft-Server-Reporting-Services-Recipes/dp/0470563117#reader_0470563117
    http://www.goodreads.com/book/show/18147604-learning-sql-server-reporting-services-2012
    Thanks
    Please Mark This As Answer or vote for Helpful Post if this helps you to solve your question/problem. http://techequation.com

  • Cannot implment security setting on the report level - SSRS 2012

    Hi All:
    I am having a weird problem on my SSRS 2012 reporting portal, I cannot click any of the drop down list like the example below. Is there anything from the setting?
    It is not only about the reporting level, any arrow on the reporting server, like data source, are kind of dead as well.
    Please kindly help and thanks in advance.
    Cheers
    Johnny

    Hi JohnnyKahWang,
    According to your description, you can view folders and reports on report manager, but you could not click any of the drop down list.
    Reporting Services uses role-based security to grant user access to a report server, and there are two types of roles: Item-level roles and System-level roles. Access to reports, folders, models, shared data sources, and resources is controlled through item-level
    role assignments. Each user who requires access to a report server must have at least one item-level role assignment. On a new installation, only local administrators have access to a report server. In this case, a local administrator need to create a role
    assignment which has Manage folders and Manage reports task to the account by following steps:
    Click Home at the top of the page to open the Report Manager home page.
    Click the drop-down arrow next to the folders and reports.
    Click New Role Assignment.
    In Group or user name, specify the name of a group or account.
    Select a role which can perform Manage folders and Manage reports tasks.
    Click OK to save the role assignments.
    For more information about Setting Item-Level Permissions on a Report Server, please refer to the following document:
    http://technet.microsoft.com/en-us/library/aa337471(v=sql.105).aspx
    If you have any more questions, please feel free to ask.
    Thanks,
    Wendy Fu
    Wendy Fu
    TechNet Community Support

  • How to do Ad-hoc reports with SSRS 2012 (Report Builder 3.0) for the database SQL Server 2012

    <p>Hi,</p><p>Please could anybody help me how to do ad-hoc reports by using SSRS 2012.</p><p>I am able to create ad-hoc reports using Report Builder3.0 and SQL Server 2008 R2. </p><p>I have built the report Model
    in for the instance 2008 R2&nbsp;</p><div class="t-paste-container">Using Report Manager 2012 </div>

    Hi Gowri,
    From your description, you can create create ad-hoc reports using Report Builder 3.0 and SQL Server 2008 R2, and now you want to know how to how to do ad-hoc reports by using SSRS 2012, right? In SQL Server 2012, the default version of Report Builder is
    3.0, so you can create create ad-hoc reports using Report Builder 3.0 as before.
    If you have any questions, please feel free to ask.
    Regards,
    Charlie Liao
    TechNet Community Support

  • Rendering HTML report from SSRS 2012 with full details

    I want to get the parent level grouping and child data in a single HTML file from SSRS 2012 so that it doesn't try to refresh when
    clicked on expand/contract the tree. The reason is i'm getting SSRS report from java application and when i try to expand or contract the tree view it tries to connect to SSRS. Is there a possibility to do it?

    Hi shady2111,
    According to your description, you have a drill down report rendered in a HTML file. Now you find when expand/contract the toggle item, the application starts to access SSRS. Right?
    In Reporting Service, when we render a report, all the data supposed to be retrieved. Even in application, like some applications using Report View Control, it still working same as in BIDS. Based on your information, we don't how this java application designed.
    And it's hardly to figure out the reason that caused your problem. So please post some detail information about the report and application if possible. Also for your troubleshooting, we suggest you cancel the "Display can be toggled by this report item" in
    row visibility to see if the data is fully rendered.
    If you have any question, please feel free to ask.
    Best Regards,
    Simon Hou

  • Colour expressions for Chart type report on SSRS

    Hi Folks,
    Actually My Graph is populating this based on Table 2 results : At No 3 there is unique colour yellow there in table . how can I apply colour yellow bar at 3 , rest of them are one colour please help me.
    Thanks in advanse.

    Hi Cherukuri19,
    According to your description, you want to conditionally set the color of the series base on field person_colour’s value, if the value contains yellow, then set the series’ color to yellow, else, another color. If so, we can use an expression to achieve
    your goal. Please refer to the following steps:
    Right click series on the chart and open Series Properties dialog box.
    In left pane, click Fill.
    In pick color section, click the expression (fx) button, and type the following expression, then click OK.
    =IIf(Fields!person_colour.Value like "*Yellow", "Yellow", "Blue")
    If you have any questions, please feel free to let me know.
    Best Regards,
    Wendy Fu

  • Error on the reports with drill-through links on SSRS 2012 SP2 -- Invalid URI: The Uri string is too long

    Hi, We are migrating SSRS 2008 R2 reports to SSRS 2012 SP2. (PS. SSRS 2012 SP2 has been applied.) Everything went smooth expect some reports which were using reporting services. These reports have some drilin-through actions and was passing in a huge
    xml parameter. I referred to some other posts in which there were also some similar issues like "The Uri string is too long."  but they're different. My reports can be opened and the error only occurred when accessing the drill-through actions.
    As I know, Microsoft has provided the fix for the known issue "The Uri string is too long." in sp1 but it looks it can't cover this kind of situation since I have installed the SSRS SP 2. Is there any solution? In addition, there's no such
    issue on SSRS 2008 R2.
    Thanks,
    onizga

    Hi onizga,
    According to your description that you are migrating SSRS 2008 R2 reports to SSRS 2012 SP2, after migration you got some error like “The Uri string is too long” which only occurred when accessing the drill-through actions, right?
    Usually, the issue can be caused when you try to pass some parameters that cause the URL length to exceed 65,520 characters for a Microsoft SQL Server 2012 Reporting Services (SSRS 2012), you cannot render the report, and you may receive the following error
    message:
    The value of parameter 'param' is not valid. (rsInvalidParameter).Invalid URI: The Uri string is too long.
    This is an known issue and already have the hotfix SQL Server 2012 Service Pack1 Cumulative Update 9 (CU9) as you know, you can try to reinstall this hotfix to fixed this issue:
    http://support.microsoft.com/kb/2916827 .Any issue after applying the update, please post it on the following thread or you can submit an feedback:
    http://connect.microsoft.com/SQLServer/feedback/details/788964/ssrs-2012-invalid-uri-the-uri-string-is-too-long 
    Similar threads for your reference:
    SSRS - The value of parameter 'param' is
    not valid. ---> System.UriFormatException: Invalid URI: The Uri string is too long.
    Microsoft.ReportingServices.Diagnostics.Utilities.InvalidParameterException:
    The value of parameter 'pSetOfScopes' is not valid. ---> System.UriFormatException: Invalid URI: The Uri string is too long
    If you still have any question, please feel free to ask
    Regards
    Vicky Liu
    If you have any feedback on our support, please click here

  • SSRS 2012: Report Header PrintOnFirstPage-problem after report migration from SSRS 2008

    Hi ,
    I developed my report using VS 2008 IDE and the report header property "PrintOnFirstPage" is set to False.
    The content of the header are some textboxes and lines that should show only on page number > 1.
    This works fine in VS 2008 IDE in preview mode as well as with reports rendered by SSRS 2008 report server.
    Recently I migrate&convert the same report to SSRS 2012 I noticed a different rendering behaviour of my report.
    So in VS 2010 preview mode, the page headers content (textboxe etc.)  is not visible on first page but the headers space did not colapse as it does in VS 2008 IDE preview mode.
    I checked all the report properties but unable to find a solution to my problem.
    I was able to reprduce the same behaviour by creating a new report using VS2010 IDE.
    Any ideas are greatly appreciated
    Thanks
    Bodo

    Hi BodoHH,
    I have tested on my local enviorment and can't reproduce the issue, the issue can be caused by many factors, it can be caused by the properties setting and can also caused by the visual studio, Detais information below for your reference:
    As you mentioned that you have check all the report properties, please also check the tablix,Page Header,report body properties to see if the size are the same with that in the SSRS2008.
    Please open this rdl report in the report builder to see if the print layout is correct, if it works fine, the issue can be caused by the visual studio.
    Please also try to upload the rdl report to report manager to check the layout.
    Please also provide the snaphot of the layout in VS2010 to let us better analysis about the issue.
    If you still have any problem, please feel free to ask.
    Regards,
    Vicky Liu
    If you have any feedback on our support, please click
    here.
    Vicky Liu
    TechNet Community Support

  • SubReports Issues in SSRS 2005 Reports Upgrade to 2012

    Hi there!
    We are planning to upgrade our SSRS 2005 reports to SSRS 2012. As I heard there will are some upgrade compatibility issues, I read the below MSDN article and found that the Reports that include subreports may fail in upgrade. Below
    is the article.
    Upgrading a Report with Subreports:
    When a report contains subreports,
    one of four possible states can occur during upgrade:
    The main report and all subreports can be successfully upgraded. They are processed by the SQL Server 2012 Reporting Services (SSRS) report processor.
    The main report and all subreports cannot be upgraded. They are processed by the SQL Server 2005 Reporting Services report processor.
    The main report can be upgraded but one or more subreports cannot be upgraded. The main report is processed by the SQL Server 2012 Reporting Services (SSRS) report processor, but the rendered report shows the message "Error: Subreport
    could not be processed" in the location where the subreport that could not be upgraded would appear.
    The main report cannot be upgraded but one or more subreports can be upgraded. The main report is processed by the SQL Server 2012 Reporting Services (SSRS) report processor, but the rendered report shows the message "Error: Subreport
    could not be processed" in the location where the subreport would appear.
    If you see the error "Error: Subreport could not be processed",
    you must change the definition of the main report or the subreport so that the reports can be processed by the same version of the report processor.
    Can some one please tell me what does the above line mean? What does it mean by the phrase
    change the definition of main report? Does it mean I need to set any property in the main report?
    Please help! Thanks in advance.
    Ammy

    Hi Ammy,
    When you open an .rdl file in Report Designer in SQL Server Data Tools (SSDT), if the report was created for a previous namespace, Report Designer automatically creates a backup file and upgrades the report to the current namespace. This is the only way
    you can upgrade a report definition file. A report with subreports must be processed by the same version of the Reporting Services report processor. When upgrading reports to the current version of the report definition schema, the main report and the subreports
    may or may not be updated at the same time. If the version is not compatible between a report and its subreports, the following message is displayed: "Subreport could not be processed."
    If we want to change the definition of the report, we can open an .rdl file in Report Designer in SQL Server Data Tools (SSDT).  Then the namespace of the report will upgrade to the current namespace. For more information about Identify the Report Schema
    Version, please see the following document:
    http://msdn.microsoft.com/en-us/library/cc627465(v=sql.110).aspx
    Hope this helps.
    Thanks,
    Katherine Xiong
    Katherine Xiong
    TechNet Community Support

  • SSRS 2012 excel export is still coming out as an xls not xlsx

    Hello, All
    I am pretty new to SSRS 2012 and trying to migrate existing SSRS 2005 reports to SSRS 2012 to resolve the limited record export function with classic excel format.
    The server is using .Net Framework 2 application pool as below and it's not showing any page with .Net Framework 4.
    I have migrated RDL files using SQL Data Tools and updated web.config and aspx pages too.
    <system.web>
    <httpHandlers>
    <add path="Reserved.ReportViewerWebControl.axd" verb="*" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" validate="false"/>
    <remove verb="*" path="*.asmx"/>
    <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    <add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    <add verb="GET,HEAD" path="ScriptResource.axd" validate="false" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    </httpHandlers>
    <compilation debug="true" strict="false" explicit="true">
    <assemblies>
    <add assembly="System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
    <add assembly="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    <add assembly="Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
    <add assembly="Microsoft.ReportViewer.Common, Version=10.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
    <add assembly="System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
    <add assembly="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    <add assembly="System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
    <add assembly="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
    <add assembly="System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    <add assembly="System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    <add assembly="System.Web.Services, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
    <add assembly="System.DirectoryServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
    <add assembly="System.DirectoryServices.Protocols, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
    <add assembly="System.EnterpriseServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
    <add assembly="System.ServiceProcess, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
    <add assembly="System.Web.RegularExpressions, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
    <add assembly="Infragistics2.WebUI.Shared.v7.3, Version=7.3.20073.38, Culture=neutral, PublicKeyToken=7DD5C3163F2CD0CB"/>
    <add assembly="Infragistics2.WebUI.WebDateChooser.v7.3, Version=7.3.20073.38, Culture=neutral, PublicKeyToken=7DD5C3163F2CD0CB"/>
    <add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    <add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    <add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    <add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    </assemblies>
    <buildProviders>
    <add extension=".rdlc" type="Microsoft.Reporting.RdlBuildProvider, Microsoft.ReportViewer.Common, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
    </buildProviders>
    </compilation>
    Also, Report Viewer 2012, 2010 and 2008 (all of them) were installed on the server.
    I checked the RSReportServer.config file and it does have xlsx available and xls visible=false instead.
    <Extension Name="EXCEL" Type="Microsoft.ReportingServices.Rendering.ExcelRenderer.ExcelRenderer,Microsoft.ReportingServices.ExcelRendering" Visible="false"/>
    <Extension Name="EXCELOPENXML" Type="Microsoft.ReportingServices.Rendering.ExcelOpenXmlRenderer.ExcelOpenXmlRenderer,Microsoft.ReportingServices.ExcelRendering"/>
    The target RDL file looks working fine with .xlsx file export in the SQL Data Tools(Report Designer) but it's not exporting xlsx file and trying to export classic xls and failed to generate more than 65536 records.
    Can anyone help me with this issue?
    Did I miss anything in the settings or something?
    Your help would be much appreciated.

    Hello,
    If I understand correctly, Excel render format is working fine when you export RDL file, but cannot work for RDLC file.
    RDL files are created by the SQL Server 2012 version of Report Designer. RDLC files are created by the Visual Studio 2010 version of Report Designer. RSReportServer.config file is control RDL file rather than RDLC file. Based on my test, in Visual Studio
    2010, when we export RDLC file, Excel render format is .xls. You can try to use Visual Studio 2012 to test, if it can export .xlsx file.
    In order to solve the excel limitation issue, please refer to the document below:
    http://msbitips.com/?p=624
    Regards,
    Alisa Tang
    Alisa Tang
    TechNet Community Support

  • SSRS 2012 export to Excel 2010 Via IE8 has many compatibility issues

    Hi There,
    We have many reports in SSRS 2012 which had originally developed in SSRS 2005. When ever we render these report into Excel we face two major issues;
    First: After reports render in to Excel (xlsx) format, we have cell, column, row shifting problem and every element of the report is not in the same place as appose to 2005 render to xls format. Second.
    for any drill through (link) report all the url will be blocked by Excel. 
    We use SSRS 2012, Office 2010 and IE 8. Also we don't want to add Export to Excel 2003 feature. In other word we want out put in xlsx. 
    Any solution, suggestion, hotfix is appreciated 

    Hi Mercede,
    According to your description, after you updated SSRS 2005 reports to SSRS 2012, reports render appose to 2005 when export them to Excel, and drill through link is blocked.
    Question1:
    A report definition file includes a reference to the RDL namespace that specifies the version of the report definition schema that is used to validate the .rdl file. After a report is upgraded locally or on the report server, you might notice additional errors,
    warnings, and messages. This is the result of changes to the internal report object model and processing components, which cause messages to appear when underlying problems in the report are detected.
    When you open an .rdl file in Report Designer in SQL Server Data Tools (SSDT), if the report was created for a previous namespace, Report Designer automatically creates a backup file and upgrades the report to the current namespace. This is the only way
    you can upgrade a report definition file.
    In order to improve the efficiency of troubleshooting, I need to ask several questions:
    “we have cell, column, row shifting problem and every element of the report is not in the same place as appose to 2005 render to xls format” Could you please provide detailed information about the problem? I would be appreciated it if you could provide
    a screenshot.
    Did you update the reports by opening the .rdl files in SSDT?
    Could you export report to Excel 2003 to see if it displays correctly?
    This may be a lot of information to ask for at one time. However, by collecting this information now, it will help us move more quickly toward a solution.
    Question2:
    I tested the issue in my local machine, when we add drillthrough action to the report, if we select Go to report or Go to URL, the link works fine after we export report to excel. It failed to work when we use javascript:void window.open to open a URL in new
    windows, the “window.open” can’t work in Excel because of the JavaScript protocol can work only with an exact page.
    For more information about Upgrade Reports, please refer to the following document:
    https://msdn.microsoft.com/en-us/library/ms143674(v=sql.110).aspx
    If you have any more questions, please feel free to ask.
    Thanks,
    Wendy Fu
    If you have any feedback on our support, please click
    here.
    Wendy Fu
    TechNet Community Support
    Hi Wendy,
    Thank you much for your fast respond. And as for your questions:
    1- Yes I did upgrade them by using SSDT tools in VS2012 and then deploy them again into our SSRS2012 report server.
    2- For URLs and Hyperlinks, because the action is go to sub report, I used "Go To Report" and by look at content that been blocked by Excel, I have noticed that (Go To Report) action passes IP address of our SSRS Server . I don't know how can I change
    it to use the actual path instead.
    3- Shifting the Cells and Rows means when I export report (from SSRS 2005) to excel in xls format (Excel 2003 for example), has very same look as it shows in screen, but when I export it from ssrs 2012 to render it in to xlsx format (Excel 2010 in our case)
    I face with merging cells and when I compare this xlsx out put with xls out put of very same report I have see the row that used to be on A23 for example now is in A20 or the column that used to be in A7 now is in B9 for example. And required a lot of manual
    work on design to work with spaced between text boxes and location of each data region, and overlaps to get the same result. I want to know is there more efficient way to achieve the same out put as  xls.
    4- I can't export report to render in Excel 2003 (xls) format directly from SSRS server for we don't have that option in our export list, but I did "save it as" xls and faced the same Row, column, cell shifting as with xlsx.
    Thank you so much 
    I am realistic, I expect miracles.

  • Multivalued parameter in SSRS 2012

    I am designing a report using SSRS 2012.
    I want to pass multiple transactions id to the report as parameter.
    In the report i have declared @tranid as parameter and set "Allow multiple values" checked.
    So how to pass more than one transactions ids through my code ?
    and how to write query in the report.
    My code (which is not working)
    strids =  "tran1,tran2,tran3"
    Dim param1 As New ReportParameter("tranid", strIds, False)
    Dim params As New Collections.Generic.List(Of ReportParameter)
     params.Add(param1)
    ReportViewer1.ServerReport.SetParameters(params)
    In the report my query, Select * from myTable where transactionNo in (@tranid)
    If i pass only one then its working. If i select more than 1 then not working.
    h2007

    Hi,
    To pass multi value parameters in ssrs reports We have to set "Allow multiple values" option for that parameter.
    Next step is to create a split function in the DB(split with ,(comma)) and use that split function like below
    Select * from mytable where transactionId in (SELECT value from dbo.split_fn(@transactionId,',')).
    Additional Info :Instead of "in" operator u can use "ifexists" since using "in" operator  will raise some performance issues.
    Thanks,
    Kishore Babu K
    Kishore Babu K

  • Sharepoint 2013 and SSRS 2012 Integration - Report Server Content Types not displayed

    Hello, Everyone:
      I installed SSRS 2012 on our Sharepoint 2013 application server following the step-by-step instruction from the posting below:
      http://msdn.microsoft.com/en-us/library/jj219068.aspx
      Everything goes well after STEP 3 is completed.
      I did see the reporting services started and SSRS service application created.
      However, when I created a new site and tried to enable the predefined Reporting Services content types, I do not see the Shared data source (.rsds) files, report models (.smdl), and Report Builder report definition (.rdl) 3 types of files listed at
    all.
      Further more, when I go to the Provision Subscriptions and Alerts page, I keep getting a "SQL Server Agent state cannot be determined" error, even though the username and password provided is the admin user
    for the database.
      Any experience of what is wrong with the SSRS - Sharepoint integration? Please help!
    Tina

    Hello, Treavor:
      Now that the content types problem is resolved, I need to come back to the
    Provision Subscriptions and Alerts page.
      I guess I'm a little confused about what is being asked for the Provision Subscriptions and Alerts  page.
      The user I provided on the Provision Subscriptions and Alerts  page is my user-defined sysadmin role. And the page takes that.
      When I downloaded the SQL script, it was trying to give the automatically generated user "sa-SPDevContentAppPo" permission.
      Which user are we using to detect the SQL Server Agent?
      Thanks again!
    Tina

  • SSRS Header Image extension for Cross Tab type Reports to full page width

    Hi All,
    I'm trying  to adjust  a Image  on Header ,the problem I'm facing is the image doesnt extend with the page full width  when there is cross tab type reports.
    Many thanks

    Solved
    There  is a property for background repeat setting  when set to Repaet X has worked for me

  • Regarding putting trafic lights in alv report

    Hi frnds,
                     I need to add Traffic lites to my program can any one help me how to do that.
    Below i m providing my code.
    <code>
    *ztest_alv
    *& Report  ZSAMPLEALV3                                                 *
    REPORT  ZSAMPLEALV3
            MESSAGE-ID Z00.
    TABLE DECLARATIONS
    TABLES : EKKO.        "Purchasing Document Header
    CONSTANTS DECLARATIONS
    CONSTANTS : C_EBELN(5) VALUE 'EBELN'.
    DATA DECLARATIONS
    DATA : V_FLAG,        "For Select Status
           V_DATA(50).    "To Store Data
    TYPE DECLARATIONS FOR ALV                                            *
    TYPE-POOLS : SLIS.
    *Type Declarations for Field Catalog for Basic List
    DATA : I_FLDCAT_HEAD  TYPE SLIS_T_FIELDCAT_ALV,
           WA_FLDCAT_HEAD TYPE SLIS_FIELDCAT_ALV.
    *Type Declarations for Field Catalog for Secondary List
    DATA : I_FLDCAT_ITEM  TYPE SLIS_T_FIELDCAT_ALV,
           WA_FLDCAT_ITEM TYPE SLIS_FIELDCAT_ALV.
    *Type Declarations for Displaying Images on Basic Grid
    DATA : I_COMMENT  TYPE SLIS_T_LISTHEADER,
           WA_COMMENT TYPE SLIS_LISTHEADER.
    *Type Declarations for Displaying Images on Secondary Grid
    DATA : I_COMMENT_SEC  TYPE SLIS_T_LISTHEADER,
           WA_COMMENT_SEC TYPE SLIS_LISTHEADER.
    *Type Declarations for ALV Events for Basic Grid
    DATA : I_EVENTS TYPE SLIS_T_EVENT,
           WA_EVENT LIKE LINE OF I_EVENTS.
    *Type Declarations for ALV Events for Secondary Grid
    DATA : I_EVENTS_SEC TYPE SLIS_T_EVENT,
           WA_EVENT_SEC LIKE LINE OF I_EVENTS.
    *Type Declarations for Layout Design
    DATA : WA_LAYOUT TYPE SLIS_LAYOUT_ALV.
    *Type Declarations for Linking the fields
    DATA : WA_KEYINFO TYPE SLIS_KEYINFO_ALV.
    Type declarations for coloring field
    DATA : wa_color type LVC_S_SCOL.
    DATA: IT_COLOR TYPE TABLE OF LVC_S_SCOL.
    INTERNAL TABLE DECLARATIONS
    *--Internal Table for Basic List
    DATA : BEGIN OF IT_FINAL_BAS OCCURS 0,
             EBELN LIKE EKKO-EBELN,        "Purchasing Document Number
             BUKRS LIKE EKKO-BUKRS,        "Company Code
             AEDAT LIKE EKKO-AEDAT,        "Date on which the record was created
             EKORG LIKE EKKO-EKORG,        "Purchasing Organization
             EKGRP LIKE EKKO-EKGRP,        "Purchasing group
             COLOR(3) ,                     "For applying color
           END OF IT_FINAL_BAS.
    *--Internal Table for Secondary List
    DATA : BEGIN OF IT_FINAL_SEC OCCURS 0,
             EBELN LIKE EKPO-EBELN,        "Purchasing Document Number
             MATNR LIKE EKPO-MATNR,        "Material Number
             TXZ01 LIKE EKPO-TXZ01,        "Material Desc
             WERKS LIKE EKPO-WERKS,        "Plant
             LGORT LIKE EKPO-LGORT,        "Location
             MATKL LIKE EKPO-MATKL,        "Material Group
             MENGE LIKE EKPO-MENGE,        "Purchase order quantity
             MEINS LIKE EKPO-MEINS,        "Order unit
             NETPR LIKE EKPO-NETPR,        "Net price in purchasing document (in document currency)
             NETWR LIKE EKPO-NETWR,        "Net order value in PO currency
             DUMMY LIKE ICON-ID,           "For placing Icon
             COLOR(3) ,                     "For applying color
           END OF IT_FINAL_SEC.
    *--Internal Table for Secondary List with selected records
    DATA : BEGIN OF I_ITEM_DISPLAY OCCURS 0,
             EBELN LIKE EKPO-EBELN,        "Purchasing Document Number
             MATNR LIKE EKPO-MATNR,        "Material Number
             TXZ01 LIKE EKPO-TXZ01,        "Material Desc
             WERKS LIKE EKPO-WERKS,        "Plant
             LGORT LIKE EKPO-LGORT,        "Location
             MATKL LIKE EKPO-MATKL,        "Material Group
             MENGE LIKE EKPO-MENGE,        "Purchase order quantity
             MEINS LIKE EKPO-MEINS,        "Order unit
             NETPR LIKE EKPO-NETPR,        "Net price in purchasing document (in document currency)
             NETWR LIKE EKPO-NETWR,        "Net order value in PO currency
             DUMMY LIKE ICON-ID,           "For placing Icon
             COLOR(3) ,                     "For applying color
           END OF I_ITEM_DISPLAY.
    SELECTION SCREEN
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-H01.
    SELECT-OPTIONS: S_EBELN FOR EKKO-EBELN.
    SELECTION-SCREEN END OF BLOCK B1.
    SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-002.
    SELECTION-SCREEN : BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(20) TEXT-003.
    PARAMETERS: P_DISP RADIOBUTTON GROUP RAD1 DEFAULT 'X'.
    SELECTION-SCREEN : END OF LINE.
    SELECTION-SCREEN : BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(20) TEXT-005.
    PARAMETERS: P_UPD RADIOBUTTON GROUP RAD1.
    SELECTION-SCREEN : END OF LINE.
    SELECTION-SCREEN END OF BLOCK B2.
    Event : INITIALIZATION
    INITIALIZATION.
      MOVE 'Developed by'(001) TO V_DATA.
    Event : AT SELECTION SCREEN
    AT SELECTION-SCREEN.
      PERFORM VALIDATE_EBELN.
    Event : START-OF-SELECTION
    START-OF-SELECTION.
    *--Getting the Data
      PERFORM GET_DATA.
    *--Generating the Field catalog for basic and secondary grid
      PERFORM GET_FLDCAT.
    *--Generating the Layout for basic and secondary grid
      PERFORM GET_LAYOUT.
    *--Generating the key infor to link Basic grid to Secondary grid
      PERFORM GET_KEYINFO.
    *--Generating the Events for Basic and Secondary Grid
      PERFORM GET_EVENTS.
    *--Displaying data only
      IF P_DISP = 'X'.
    PERFORM DISPLAY_DATA.
    ELSE .
    PERFORM UPDATE_DATA.
    ENDIF.
    Event : END-OF-SELECTION
    END-OF-SELECTION.
    *&      Form  DISPLAY_DATA
          text
    -->  p1        text
    <--  p2        text
    FORM DISPLAY_DATA .
    IF V_FLAG EQ 'X'.
    *--Generating Basic List
        PERFORM DISP_BASIC_LIST.
    ELSE.
    IF SY-SUBRC NE 0.
        MESSAGE I010 WITH 'No Data Found To Display'(002).
      ENDIF.
    ENDFORM.                    " DISPLAY_DATA
         SUB-ROUTINES
    *&      Form  VALIDATE_EBELN
          Validating the PO No
    FORM VALIDATE_EBELN .
      SELECT EBELN
      UP TO 1 ROWS
      INTO (EKKO-EBELN)
      FROM EKKO
      WHERE EBELN IN S_EBELN.
      ENDSELECT.
      IF SY-SUBRC NE 0.
        MESSAGE I010 WITH 'Invalid PO No'(003) S_EBELN-LOW 'To'(004) S_EBELN-HIGH.
      ENDIF.
    ENDFORM.                    " VALIDATE_EBELN
    *&      Form  GET_DATA
          Getting Basic List and Secondary List Data
    FORM GET_DATA .
    *--Getting Basic List Data
      SELECT EBELN                  "PO No
             BUKRS                  "Company Code
             AEDAT                  "Creation Date
             EKORG                  "Purch Org
             EKGRP                  "Purch Group
       INTO TABLE IT_FINAL_BAS
       FROM EKKO
       WHERE EBELN IN S_EBELN.
    *--Getting Secondary List Data
      IF SY-SUBRC EQ 0.
        SELECT EBELN                "PO No
               MATNR                "Material No
               TXZ01                "Material Desc
               WERKS                "Plant
               LGORT                "Location
               MATKL                "Material Group
               MENGE                "PO Qty
               MEINS                "Unit
               NETPR                "Net Price
               NETWR                "Net Value
          INTO TABLE IT_FINAL_SEC
          FROM EKPO
          WHERE EBELN IN S_EBELN.
      ENDIF.
    IF SY-SUBRC EQ 0.
       V_FLAG = 'X'.
    ELSE.
       V_FLAG = SPACE.
    ENDIF.
    ENDFORM.                    " GET_DATA
    *&      Form  GET_FLDCAT
          Generating the Field Catalog
    FORM GET_FLDCAT .
    *--Generating the Field Catalog for Basic List
    WA_FLDCAT_HEAD-REPTEXT_DDIC = 'Status'.
    WA_FLDCAT_HEAD-FIELDNAME = 'LIGHT'.
    WA_FLDCAT_HEAD-COL_POS = '1'.
    WA_FLDCAT_HEAD-JUST = 'C'.
    WA_FLDCAT_HEAD-OUTPUTLEN = '4'.
    WA_FLDCAT_HEAD-ICON           = 'X'.
    APPEND WA_FLDCAT_HEAD TO I_FLDCAT_HEAD.
    CLEAR WA_FLDCAT_HEAD .
      WA_FLDCAT_HEAD-FIELDNAME = 'EBELN'.
      WA_FLDCAT_HEAD-COL_POS = '2'.
      WA_FLDCAT_HEAD-JUST = 'C'.
      WA_FLDCAT_HEAD-OUTPUTLEN = '12'.
      WA_FLDCAT_HEAD-SELTEXT_M  = 'PO Number'(006).
      WA_FLDCAT_HEAD-DDICTXT = 'M'.
      WA_FLDCAT_HEAD-REF_TABNAME = ' '.
      WA_FLDCAT_HEAD-HOTSPOT = 'X'.
      APPEND WA_FLDCAT_HEAD TO I_FLDCAT_HEAD.
      CLEAR WA_FLDCAT_HEAD .
      WA_FLDCAT_HEAD-FIELDNAME = 'BUKRS'(007).
      WA_FLDCAT_HEAD-COL_POS = '3'.
      WA_FLDCAT_HEAD-OUTPUTLEN = '12'.
      WA_FLDCAT_HEAD-SELTEXT_M = 'Company Code'(008).
      WA_FLDCAT_HEAD-DDICTXT = 'M'.
      APPEND WA_FLDCAT_HEAD TO I_FLDCAT_HEAD.
      WA_FLDCAT_HEAD-FIELDNAME = 'AEDAT'(009).
      WA_FLDCAT_HEAD-COL_POS = '4'.
      WA_FLDCAT_HEAD-OUTPUTLEN = '10'.
      WA_FLDCAT_HEAD-SELTEXT_M = 'PO Date'(010).
      WA_FLDCAT_HEAD-DDICTXT = 'M'.
      APPEND WA_FLDCAT_HEAD TO I_FLDCAT_HEAD.
      WA_FLDCAT_HEAD-FIELDNAME = 'EKORG'(011).
      WA_FLDCAT_HEAD-COL_POS = '5'.
      WA_FLDCAT_HEAD-OUTPUTLEN = '6'.
      WA_FLDCAT_HEAD-SELTEXT_M = 'PO Org'(012).
      WA_FLDCAT_HEAD-DDICTXT = 'M'.
      WA_FLDCAT_HEAD-EDIT = 'X'.
      APPEND WA_FLDCAT_HEAD TO I_FLDCAT_HEAD.
      WA_FLDCAT_HEAD-FIELDNAME = 'EKGRP'(013).
      WA_FLDCAT_HEAD-COL_POS = '6'.
      WA_FLDCAT_HEAD-OUTPUTLEN = '8'.
      WA_FLDCAT_HEAD-SELTEXT_M = 'PO Group'(014).
      WA_FLDCAT_HEAD-DDICTXT = 'M'.
      WA_FLDCAT_HEAD-DO_SUM = 'X'.
      APPEND WA_FLDCAT_HEAD TO I_FLDCAT_HEAD.
    *--Generating the Field Catalog for secondary List
      WA_FLDCAT_ITEM-FIELDNAME = 'EBELN'.
      WA_FLDCAT_ITEM-COL_POS = '1'.
      WA_FLDCAT_ITEM-JUST = 'C'.
      WA_FLDCAT_ITEM-OUTPUTLEN = '12'.
      WA_FLDCAT_ITEM-SELTEXT_M  = 'PO Number'(006).
      WA_FLDCAT_ITEM-DDICTXT = 'M'.
    WA_FLDCAT_ITEM-REF_TABNAME = ' '.
      APPEND WA_FLDCAT_ITEM TO I_FLDCAT_ITEM.
      WA_FLDCAT_ITEM-FIELDNAME = 'MATNR'(015).
      WA_FLDCAT_ITEM-COL_POS = '2'.
      WA_FLDCAT_ITEM-JUST = 'C'.
      WA_FLDCAT_ITEM-OUTPUTLEN = '18'.
      WA_FLDCAT_ITEM-SELTEXT_M  = 'Item Number'(016).
      WA_FLDCAT_ITEM-DDICTXT = 'M'.
    WA_FLDCAT_ITEM-REF_TABNAME = ' '.
      APPEND WA_FLDCAT_ITEM TO I_FLDCAT_ITEM.
      WA_FLDCAT_ITEM-FIELDNAME = 'TXZ01'(017).
      WA_FLDCAT_ITEM-COL_POS = '3'.
      WA_FLDCAT_ITEM-JUST = 'C'.
      WA_FLDCAT_ITEM-OUTPUTLEN = '40'.
      WA_FLDCAT_ITEM-SELTEXT_M  = 'Item Desc'(018).
      WA_FLDCAT_ITEM-DDICTXT = 'M'.
      APPEND WA_FLDCAT_ITEM TO I_FLDCAT_ITEM.
      WA_FLDCAT_ITEM-FIELDNAME = 'WERKS'(019).
      WA_FLDCAT_ITEM-COL_POS = '4'.
      WA_FLDCAT_ITEM-JUST = 'C'.
      WA_FLDCAT_ITEM-OUTPUTLEN = '6'.
      WA_FLDCAT_ITEM-SELTEXT_M  = 'Plant'(020).
      WA_FLDCAT_ITEM-DDICTXT = 'M'.
      APPEND WA_FLDCAT_ITEM TO I_FLDCAT_ITEM.
      WA_FLDCAT_ITEM-FIELDNAME = 'LGORT'(021).
      WA_FLDCAT_ITEM-COL_POS = '5'.
      WA_FLDCAT_ITEM-JUST = 'C'.
      WA_FLDCAT_ITEM-OUTPUTLEN = '9'.
      WA_FLDCAT_ITEM-SELTEXT_M  = 'Location'(022).
      WA_FLDCAT_ITEM-DDICTXT = 'M'.
      APPEND WA_FLDCAT_ITEM TO I_FLDCAT_ITEM.
      WA_FLDCAT_ITEM-FIELDNAME = 'MATKL'(023).
      WA_FLDCAT_ITEM-COL_POS = '6'.
      WA_FLDCAT_ITEM-JUST = 'C'.
      WA_FLDCAT_ITEM-OUTPUTLEN = '10'.
      WA_FLDCAT_ITEM-SELTEXT_M  = 'Mat Group'(024).
      WA_FLDCAT_ITEM-DDICTXT = 'M'.
      APPEND WA_FLDCAT_ITEM TO I_FLDCAT_ITEM.
      WA_FLDCAT_ITEM-FIELDNAME = 'MENGE'(025).
      WA_FLDCAT_ITEM-COL_POS = '7'.
      WA_FLDCAT_ITEM-JUST = 'C'.
      WA_FLDCAT_ITEM-OUTPUTLEN = '17'.
      WA_FLDCAT_ITEM-SELTEXT_M  = 'PO Qty'(026).
      WA_FLDCAT_ITEM-DDICTXT = 'M'.
      APPEND WA_FLDCAT_ITEM TO I_FLDCAT_ITEM.
      WA_FLDCAT_ITEM-FIELDNAME = 'MEINS'(027).
      WA_FLDCAT_ITEM-COL_POS = '8'.
      WA_FLDCAT_ITEM-JUST = 'C'.
      WA_FLDCAT_ITEM-OUTPUTLEN = '3'.
      WA_FLDCAT_ITEM-SELTEXT_M  = 'Unit'(028).
      WA_FLDCAT_ITEM-DDICTXT = 'M'.
      APPEND WA_FLDCAT_ITEM TO I_FLDCAT_ITEM.
      WA_FLDCAT_ITEM-FIELDNAME = 'NETPR'(029).
      WA_FLDCAT_ITEM-COL_POS = '9'.
      WA_FLDCAT_ITEM-JUST = 'C'.
      WA_FLDCAT_ITEM-OUTPUTLEN = '14'.
      WA_FLDCAT_ITEM-SELTEXT_M  = 'Net Price'(037).
      WA_FLDCAT_ITEM-DDICTXT = 'M'.
      APPEND WA_FLDCAT_ITEM TO I_FLDCAT_ITEM.
      WA_FLDCAT_ITEM-FIELDNAME = 'NETWR'(030).
      WA_FLDCAT_ITEM-COL_POS = '10'.
      WA_FLDCAT_ITEM-JUST = 'C'.
      WA_FLDCAT_ITEM-OUTPUTLEN = '16'.
      WA_FLDCAT_ITEM-SELTEXT_M  = 'Net Value'(031).
      WA_FLDCAT_ITEM-DDICTXT = 'M'.
      APPEND WA_FLDCAT_ITEM TO I_FLDCAT_ITEM.
      WA_FLDCAT_ITEM-FIELDNAME = 'DUMMY'(038).
      WA_FLDCAT_ITEM-COL_POS = '11'.
      WA_FLDCAT_ITEM-JUST = 'C'.
      WA_FLDCAT_ITEM-OUTPUTLEN = '3'.
      WA_FLDCAT_ITEM-SELTEXT_M  = 'Status'(039).
      WA_FLDCAT_ITEM-DDICTXT = 'M'.
      WA_FLDCAT_ITEM-ICON = 'X'.
      APPEND WA_FLDCAT_ITEM TO I_FLDCAT_ITEM.
    ENDFORM.                    " GET_FLDCAT
    *&      Form  DISP_BASIC_LIST
          Generating the Basic List
    FORM DISP_BASIC_LIST .
    **--Applying the color to record in Basic List
        SORT IT_FINAL_BAS BY BUKRS.
         LOOP AT IT_FINAL_BAS.
            IF IT_FINAL_BAS-BUKRS LE '1000'.
              IT_FINAL_BAS-COLOR = 'C21'.
            ELSEIF IT_FINAL_BAS-BUKRS GT '1000' AND IT_FINAL_BAS-BUKRS LE '2000'.
              IT_FINAL_BAS-COLOR = 'C41'.
            ELSEIF IT_FINAL_BAS-BUKRS GT '2000' AND IT_FINAL_BAS-BUKRS LE '3000'.
              IT_FINAL_BAS-COLOR = 'C71'.
            ELSEIF IT_FINAL_BAS-BUKRS GT '3000'.
              IT_FINAL_BAS-COLOR = 'C51'.
            ELSE.
              IT_FINAL_BAS-COLOR = 'C61'.
            ENDIF.
              MODIFY IT_FINAL_BAS INDEX SY-TABIX.
           ENDLOOP.
    *--Generating the Grid output
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
        I_INTERFACE_CHECK                 = ' '
        I_BYPASSING_BUFFER                = ' '
        I_BUFFER_ACTIVE                   = ' '
          I_CALLBACK_PROGRAM                = 'ZTEST_ALV'
        I_CALLBACK_PF_STATUS_SET          = ' '
        I_CALLBACK_USER_COMMAND           = ' '
        I_CALLBACK_TOP_OF_PAGE            = ' '
        I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
        I_CALLBACK_HTML_END_OF_LIST       = ' '
        I_STRUCTURE_NAME                  =
          I_BACKGROUND_ID                   = 'PLAIN_BACKGROUND'
        I_GRID_TITLE                      =
        I_GRID_SETTINGS                   =
          IS_LAYOUT                         = WA_LAYOUT
          IT_FIELDCAT                       = I_FLDCAT_HEAD
        IT_EXCLUDING                      =
        IT_SPECIAL_GROUPS                 =
        IT_SORT                           =
        IT_FILTER                         =
        IS_SEL_HIDE                       =
        I_DEFAULT                         = 'X'
        I_SAVE                            = ' '
        IS_VARIANT                        =
          IT_EVENTS                         = I_EVENTS
        IT_EVENT_EXIT                     =
        IS_PRINT                          =
        IS_REPREP_ID                      =
        I_SCREEN_START_COLUMN             = 0
        I_SCREEN_START_LINE               = 0
        I_SCREEN_END_COLUMN               = 0
        I_SCREEN_END_LINE                 = 0
        IT_ALV_GRAPHICS                   =
        IT_HYPERLINK                      =
        IT_ADD_FIELDCAT                   =
        IT_EXCEPT_QINFO                   =
        I_HTML_HEIGHT_TOP                 =
        I_HTML_HEIGHT_END                 =
      IMPORTING
        E_EXIT_CAUSED_BY_CALLER           =
        ES_EXIT_CAUSED_BY_USER            =
        TABLES
          T_OUTTAB                          = IT_FINAL_BAS
       EXCEPTIONS
         PROGRAM_ERROR                     = 1
         OTHERS                            = 2
      IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    ENDFORM.                    " DISP_BASIC_LIST
    *&      Form  GET_EVENTS
          Getting the ALV Events
    FORM GET_EVENTS .
      CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
       EXPORTING
         I_LIST_TYPE           = 0
       IMPORTING
         ET_EVENTS             = I_EVENTS
       EXCEPTIONS
         LIST_TYPE_WRONG       = 1
         OTHERS                = 2
      IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    *--Calling the User Defined sub-routines for ALV Events
      IF NOT I_EVENTS[] IS INITIAL.
        READ TABLE I_EVENTS INTO WA_EVENT WITH KEY NAME = 'TOP_OF_PAGE'.
        WA_EVENT-FORM = 'GENERATE_USERCOMMAND_HEADER'.
        MODIFY I_EVENTS FROM WA_EVENT INDEX SY-TABIX.
       READ TABLE I_EVENTS INTO WA_EVENT WITH KEY NAME = 'TOP_OF_PAGE'.
       WA_EVENT-FORM = 'FRM_TOP_OF_PAGE'.
       MODIFY I_EVENTS FROM WA_EVENT INDEX SY-TABIX.
        READ TABLE I_EVENTS INTO WA_EVENT WITH KEY NAME = 'END_OF_LIST'.
        WA_EVENT-FORM = 'GENERATE_USERCOMMAND_FOOTER'.
        MODIFY I_EVENTS FROM WA_EVENT INDEX SY-TABIX.
        READ TABLE I_EVENTS INTO WA_EVENT WITH KEY NAME = 'USER_COMMAND'.
        WA_EVENT-FORM = 'GENERATE_USERCOMMAND3'.
        MODIFY I_EVENTS FROM WA_EVENT INDEX SY-TABIX.
      ENDIF.
    ENDFORM.                    " GET_EVENTS
    *&      Form  GENERATE_USERCOMMAND_HEADER
          Displaying Header-Text and Logo on Grid
    FORM GENERATE_USERCOMMAND_HEADER.
      CLEAR I_COMMENT[].
      WA_COMMENT-TYP = 'H'.
      WA_COMMENT-INFO = 'General Purchase Order Info'(032).
      APPEND WA_COMMENT TO I_COMMENT.
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
        EXPORTING
          IT_LIST_COMMENTARY = I_COMMENT
          I_LOGO             = 'ENJOYSAP_LOGO'.
        I_END_OF_LIST_GRID       = 'X'.
    ENDFORM.                    " GENERATE_USERCOMMAND
    *FORM FRM_TOP_OF_PAGE.
    write :/ text-005 intensified on.
    write :/ text-006 , sy-sysid,14 sy-mandt.
    write :/ text-007 , sy-uname.
    write :/ text-008 , sy-datum.
    write :/ text-009 , sy-uzeit.
    skip.
    *ENDFORM.
    *&      Form  GENERATE_USERCOMMAND_FOOTER
          Displaying Footer-Text
    FORM GENERATE_USERCOMMAND_FOOTER .
      CLEAR I_COMMENT[].
      WA_COMMENT-TYP = 'S'.
      WA_COMMENT-KEY = V_DATA.
      WA_COMMENT-INFO = 'kaka'(033).
      APPEND WA_COMMENT TO I_COMMENT.
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
        EXPORTING
          IT_LIST_COMMENTARY       = I_COMMENT
         I_LOGO                   = ''
          I_END_OF_LIST_GRID       = 'X'.
    ENDFORM.                    " GENERATE_USERCOMMAND_FOOTER
    *&      Form  GENERATE_USERCOMMAND3
          Getting the F-Code and Calling Secondary List
    -->  P_UCOMM        LIKE SY-UCOMM
    -->  P_SELFIELD     TYPE SLIS_SELFIELD
    FORM GENERATE_USERCOMMAND3 USING P_UCOMM LIKE SY-UCOMM
                                     P_SELFIELD TYPE SLIS_SELFIELD.
       CASE P_UCOMM.
        WHEN '&IC1'.   "DOUBLE CLICK Func-Code
          READ TABLE IT_FINAL_BAS INDEX P_SELFIELD-TABINDEX.
          REFRESH I_ITEM_DISPLAY.
    *--Applying the color to record in Secondary List
          LOOP AT IT_FINAL_SEC WHERE EBELN = IT_FINAL_BAS-EBELN.
            IF IT_FINAL_SEC-NETPR EQ 0.
              IT_FINAL_SEC-DUMMY = '@0A@'.
              IT_FINAL_SEC-COLOR = 'C61'.
            ELSEIF IT_FINAL_SEC-NETPR GT 0 AND IT_FINAL_SEC-NETPR LE 200.
              IT_FINAL_SEC-DUMMY = '@09@'.
              IT_FINAL_SEC-COLOR = 'C41'.
            ELSEIF IT_FINAL_SEC-NETPR GT 200 AND IT_FINAL_SEC-NETPR LE 1000.
              IT_FINAL_SEC-DUMMY = '@08@'.
              IT_FINAL_SEC-COLOR = 'C71'.
            ELSEIF IT_FINAL_SEC-NETPR GT 1000.
              IT_FINAL_SEC-DUMMY = '@6P@'.
              IT_FINAL_SEC-COLOR = 'C51'.
            ENDIF.
              MODIFY IT_FINAL_SEC INDEX SY-TABIX.
            MOVE-CORRESPONDING IT_FINAL_SEC TO I_ITEM_DISPLAY.
            APPEND I_ITEM_DISPLAY.
            CLEAR I_ITEM_DISPLAY.
          ENDLOOP.
    *--Getting the ALV Events of Secondary List
          PERFORM GET_EVENTS_SEC.
    *--Generating the ALV Secondary Grid output
          CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
           EXPORTING
            I_INTERFACE_CHECK              = ' '
            I_BYPASSING_BUFFER             =
            I_BUFFER_ACTIVE                = ' '
              I_CALLBACK_PROGRAM             = 'ZTEST'
            I_CALLBACK_PF_STATUS_SET       = ' '
            I_CALLBACK_USER_COMMAND        = ' '
            I_STRUCTURE_NAME               =
              I_BACKGROUND_ID                = 'PLAIN_BACKGROUND'
              IS_LAYOUT                      = WA_LAYOUT
              IT_FIELDCAT                    = I_FLDCAT_ITEM
            IT_EXCLUDING                   =
            IT_SPECIAL_GROUPS              =
            IT_SORT                        =
            IT_FILTER                      =
            IS_SEL_HIDE                    =
            I_DEFAULT                      = 'X'
            I_SAVE                         = ' '
            IS_VARIANT                     =
              IT_EVENTS                      = I_EVENTS_SEC
            IT_EVENT_EXIT                  =
            IS_PRINT                       =
            IS_REPREP_ID                   =
            I_SCREEN_START_COLUMN          = 0
            I_SCREEN_START_LINE            = 0
            I_SCREEN_END_COLUMN            = 0
            I_SCREEN_END_LINE              = 0
          IMPORTING
            E_EXIT_CAUSED_BY_CALLER        =
            ES_EXIT_CAUSED_BY_USER         =
            TABLES
              T_OUTTAB                       = I_ITEM_DISPLAY
            EXCEPTIONS
              PROGRAM_ERROR                  = 1
              OTHERS                         = 2
          IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
          ENDIF.
      ENDCASE.
    ENDFORM.                    " GENERATE_USERCOMMAND3
    *&      Form  GET_LAYOUT
          Generating the Layout
    FORM GET_LAYOUT .
      WA_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.           "OPTIMIZING FIELD WIDTH
      WA_LAYOUT-ZEBRA = 'X'.                       "PUTTING ZEBRA COLORS
      WA_LAYOUT-INFO_FIELDNAME = 'COLOR'(034).     "APPLYING COLORS TO ROWS
    ENDFORM.                    " GET_LAYOUT
    *&      Form  GET_KEYINFO
          Getting Key info
    FORM GET_KEYINFO .
    *--Linking the Basic List to Secondary List
      WA_KEYINFO-HEADER01 = C_EBELN.
      WA_KEYINFO-ITEM01 = C_EBELN.
    ENDFORM.                    " GET_KEYINFO
    *&      Form  GET_EVENTS_SEC
          Getting Secondary List Events
    FORM GET_EVENTS_SEC .
    CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
      EXPORTING
        I_LIST_TYPE           = 0
       IMPORTING
         ET_EVENTS             = I_EVENTS_SEC
       EXCEPTIONS
         LIST_TYPE_WRONG       = 1
         OTHERS                = 2
      IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    *--Calling user-defined sub-routines for Secondary List
      IF NOT I_EVENTS_SEC[] IS INITIAL.
        READ TABLE I_EVENTS_SEC INTO WA_EVENT_SEC WITH KEY NAME = 'TOP_OF_PAGE'.
        WA_EVENT_SEC-FORM = 'GENERATE_USERCOMMAND_H_SEC'.
        MODIFY I_EVENTS_SEC FROM WA_EVENT_SEC INDEX SY-TABIX.
        READ TABLE I_EVENTS_SEC INTO WA_EVENT_SEC WITH KEY NAME = 'END_OF_LIST'.
        WA_EVENT_SEC-FORM = 'GENERATE_USERCOMMAND_F_SEC'.
        MODIFY I_EVENTS_SEC FROM WA_EVENT_SEC INDEX SY-TABIX.
      ENDIF.
    ENDFORM.                    " GET_EVENTS_SEC
    *&      Form  GENERATE_USERCOMMAND_H_SEC
       Displaying Header-Text and Logo on Grid For Secondary List
    FORM GENERATE_USERCOMMAND_H_SEC.
      CLEAR I_COMMENT_SEC[].
      WA_COMMENT_SEC-TYP = 'H'.
      WA_COMMENT_SEC-INFO = 'Purchase Order Info'(035).
      APPEND WA_COMMENT_SEC TO I_COMMENT_SEC.
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
        EXPORTING
          IT_LIST_COMMENTARY = I_COMMENT_SEC
          I_LOGO             = 'ENJOYSAP_LOGO'.
        I_END_OF_LIST_GRID       = 'X'.
    ENDFORM.                    " GENERATE_USERCOMMAND_H_SEC
    *&      Form  GENERATE_USERCOMMAND_F_SEC
          Displaying Footer-Text for Secondary List
    FORM GENERATE_USERCOMMAND_F_SEC.
      CLEAR I_COMMENT_SEC[].
      WA_COMMENT_SEC-TYP = 'S'.
      WA_COMMENT_SEC-KEY = V_DATA.
      WA_COMMENT_SEC-INFO = 'kak1'(036).
      APPEND WA_COMMENT_SEC TO I_COMMENT_SEC.
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
        EXPORTING
          IT_LIST_COMMENTARY       = I_COMMENT_SEC
         I_LOGO                   = ''
          I_END_OF_LIST_GRID       = 'X'.
    ENDFORM.                    " GENERATE_USERCOMMAND_F_SEC
    *&      Form  UPDATE_DATA
          text
    -->  p1        text
    <--  p2        text
    *form UPDATE_DATA .
    *CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
      I_INTERFACE_CHECK                 = ' '
      I_BYPASSING_BUFFER                = ' '
      I_BUFFER_ACTIVE                   = ' '
      I_CALLBACK_PROGRAM                = ' '
      I_CALLBACK_PF_STATUS_SET          = ' '
      I_CALLBACK_USER_COMMAND           = ' '
      I_CALLBACK_TOP_OF_PAGE            = ' '
      I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
      I_CALLBACK_HTML_END_OF_LIST       = ' '
      I_STRUCTURE_NAME                  = I_STRUCTURE_NAME
      I_BACKGROUND_ID                   = ' '
      I_GRID_TITLE                      = I_GRID_TITLE
      I_GRID_SETTINGS                   = I_GRID_SETTINGS
      IS_LAYOUT                         = IS_LAYOUT
      IT_FIELDCAT                       = IT_FIELDCAT
      IT_EXCLUDING                      = IT_EXCLUDING
      IT_SPECIAL_GROUPS                 = IT_SPECIAL_GROUPS
      IT_SORT                           = IT_SORT
      IT_FILTER                         = IT_FILTER
      IS_SEL_HIDE                       = IS_SEL_HIDE
      I_DEFAULT                         = 'X'
      I_SAVE                            = ' '
      IS_VARIANT                        = IS_VARIANT
      IT_EVENTS                         = IT_EVENTS
      IT_EVENT_EXIT                     = IT_EVENT_EXIT
      IS_PRINT                          = IS_PRINT
      IS_REPREP_ID                      = IS_REPREP_ID
      I_SCREEN_START_COLUMN             = 0
      I_SCREEN_START_LINE               = 0
      I_SCREEN_END_COLUMN               = 0
      I_SCREEN_END_LINE                 = 0
      I_HTML_HEIGHT_TOP                 = 0
      I_HTML_HEIGHT_END                 = 0
      IT_ALV_GRAPHICS                   = IT_ALV_GRAPHICS
      IT_HYPERLINK                      = IT_HYPERLINK
      IT_ADD_FIELDCAT                   = IT_ADD_FIELDCAT
      IT_EXCEPT_QINFO                   = IT_EXCEPT_QINFO
      IR_SALV_FULLSCREEN_ADAPTER        = IR_SALV_FULLSCREEN_ADAPTER
    IMPORTING
      E_EXIT_CAUSED_BY_CALLER           = E_EXIT_CAUSED_BY_CALLER
      ES_EXIT_CAUSED_BY_USER            = ES_EXIT_CAUSED_BY_USER
    TABLES
       t_outtab                          = t_outtab
    EXCEPTIONS
      PROGRAM_ERROR                     = 1
      OTHERS                            = 2
    *IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    *ENDIF.
    *endform.                    " UPDATE_DATA
    </code>
    regards,
    sanjay

    Hi,
    Please refer to the code below:
    REPORT ALV_LIGHTS.* Published at SAPTechnical.COMTYPES: BEGIN OF ty_alv,
            lights(1) TYPE c, "Exception, Holding the value of the lights
            text(20) TYPE c,  "some text
           END OF ty_alv.DATA: gs_alv TYPE ty_alv,
          gt_alv TYPE TABLE OF ty_alv,
          gr_alv TYPE REF TO cl_salv_table,
          gr_columns TYPE REF TO cl_salv_columns_table.START-OF-SELECTION.
      gs_alv-lights = '1'.    "Color red
      gs_alv-text = 'RED SIGNAL'.
      APPEND gs_alv TO gt_alv.  gs_alv-lights = '2'.    "Color yellow
      gs_alv-text = 'YELLOW SIGNAL'.
      APPEND gs_alv TO gt_alv.  gs_alv-lights = '3'.    "Color green
      gs_alv-text = 'GREEN SIGNAL'.
      APPEND gs_alv TO gt_alv.  CALL METHOD cl_salv_table=>factory
        IMPORTING
          r_salv_table = gr_alv
        CHANGING
          t_table      = gt_alv.  gr_columns = gr_alv->get_columns( ).  gr_columns->set_exception_column( value = 'LIGHTS' ).  CALL METHOD gr_alv->display.
    Thanks,
    Sriram Ponna.

Maybe you are looking for

  • Unable to capture from Sony HDFX1 camera

    Built a new PC and utilized a top end ATI Radeon dual video card. Running Vista Ultra OS(hmmmm), plenty ram, processor, etc. PC does not see my camera when I plug in for capture. Do I need a special codec or 1394 HD drivers available for HD capture f

  • Error while editing groups in Oracle Portal 3.0

    I get following error message when I try to add a user to a group: Unexpected Error in wwsec_app_group_mgr.edit_group - ORA-00001: unique constraint (PORTAL30.WWSEC_FLAT_UK) violated (WWC-41234) Unexpected error encountered in wwsec_api.add_user_to_l

  • Creating Connection Pool for DB2 V6.1

    Hi, I have created the Connection Pool to point to the DB2 database and has successfully created the entity bean jar file. However, when I encountered the following error: The pool TestPool could not be found. Please make sure that it is declared in

  • Web form integration error

    I am working on integrating a web form with Oracle CRM On-demand. This web form offers the ability for users to submit file attachments. Rether than submit the whole file as an attachments, we would like them to submit a URL to the attachment. I woul

  • Upgraded - 1.4.1 to 2.1 beta

    I waited as long as I could stand it. I just made the upgrade plunge from 1.4.1 to 2.1 beta (I skipped 2.0 after all of the issues with 2.0 were reported here). So far so good. I haven't found any show stoppers. I'm enjoying the merge to panorama in