Doubt on occurs 0 & script.....

HI
THIS ARIJIT
CAN ANYONE TELL ME THE
1)HOW TO CREATE BUTTON IN SELECTION SCREEN???
2)IN CASE OF ITAB WHEN WE DEFINE OCCURS 0 THEN A 8 KB PAGE IS ALLOCATED..
IF I DEFINE OCCURS 1 THEN THE PAGE SIZE IS 16 KB...PLESE CLEAR MY DOUBT??
3) CAN ANYONE TELL ME HOW MANY NUMBERS OF MAIN WINDOW IN SCRIPT IN ONE PAGE WE CAN DEFINE MAX 1 MAIN WINDOW
BUT IN SMARTFORMS WE CAN DEINE HOW MANY NUMBER OF MAIN WINDOW IN ONE
PAGE?? PLESE CLEAR MY DOUBT??
I WILL REWARD BY POINT..

for the first point
check this link.
Button in a selection screen
for second point.
DIff btn occurs 0 and occurs n
for third point
Smartforms: How many main window can i have in a page ?
regds,
kiran

Similar Messages

  • A doubt with a script in CCX 9

    Hi
    I have a script wich a user can place a call to a DN, hear a prompt asking for leave a message to be recorded and after finish press #.
    Question is script is running all properly but i can not reach where is leaving message recorded.
    This is the script
    And this is where i put to be saved the prompts, but is always empty
    In systemPromptDir  "..\..\system\es_ES\"
    Is a CCX 9 what i must to change in order to make this run?
    Thanks!!

    Please, please, please, I am begging you on my knees. Please. Cooperate.
    Do reactive debug. Tell me where it fails. What is the last step that is correctly executed.
    Shooting in the dark saying maybe this is wrong or that is wrong will not get us anywhere.
    By the way, that variable systemPromptDir is not used anymore if you did what I told you and removed the Write Document step.
    This is the last comment from me if you can't do what I ask you to do. I am sorry, but I can't help if you are not willing to cooperate.
    G.

  • How we can handle the below doubt in Java Script!!

    Hi All,
    I need to handle the below scenerio in javascript, i am very poor in scripting langauage could any help me out.
    Below are the three where we have specail character
    words as
    1. transfer (…)
    2. Shell’s
    3. Vitol – as
    The above 3 are having some specail characters which we need to
    replace as mentioned below
    need to use a Function/Method in some scripting language like Java
    script to replace the special character with a predefined sequence eg:
    single quote with “a1b1” before inserting the data in to the data base
    and then while retrieving the record from the database replace “a1b1”
    with single quote.
    Note#:It is a text area where user can either enter or copy and paste
    the content.
    Thanks,
    Anoo..

    Hi Anoo,
    always remember to put your apex and database versions, it makes it easier to help.
    You mentioned stripping out special characters and then putting them back for display. Is there a particular reason why?
    If you're having difficulty querying the 'special' characters from SQL, you can create a view to handle that complexity.
    The examples you gave don't contain any characters you can't query on. Maybe I'm missing something.
    Kofi

  • Basic doubt in InDesign Scripting

    Hi All,
    I have little bit knowledge in InDesign Scripting, but i have not rectify the below error.
    Take an example,
    I want to move "Footnote" styled paragraphs to another frame or another document. I have followed the below steps.
    1. Find parastyle
    2. Matched para's assigned to array
    3. using the array i am going to move.
    In this logic, First para moved perfectly, but other paras are totally changed.
    It is happend because of para index changed at the time of moving. How to avoid this problem?
    Regards,
    sudar.

    findText() and its cousins have an optional argument to reverse the order of the results.
    At least that's what the object model says.
    Dirk

  • Small doubt reg the script

    Hi all...
    in my form i have two pages.
    1. First
    2. Next
    what i need is , i want to display one window(name XXX)in last page only.
    Exactly what it means is, if the line items(in main window) is sufficient space in first page then i will print XXX window in first page. If not then i need to print in the last page.
    If it solves my problem i will award u..
    regards,
    Arjun Jain.

    hi,
    I didn't get ur requirement exactly,
    what i understood is if there is sufficient space in first page after displaying all the line items,then want to DISPLAY XXX window in 1st page else display it in 2nd page
    I am assuming it as a Paragraph.
    In that case write the code of XXX in between PROTECT ENDPROTECT tags in main window only at the end (after the code for line items).
    if after displaying line items space is there, XXX data is displayed automatically in that page only,otherwise whole data gets displayed in the next page automatically..
    If it is a footer text,
    u can give it in seperate window as u wish and adjust that window to the bottom of the page and proceed as above.
    do assign points if it helps you

  • Sap script-without element

    Hi Friends,
                     I have a doubt in SAP SCRIPT..pls Clarify it..
    i Got two times one and only first record while execute my Script... i don't know..
    i i have done this without text element suppose if i am passing value with text element  getting first record only ont time..
    May i Know difference passing value with text element and without text element..
    i have post my code also...
    data: begin of itab occurs 1,
          mandt like mara-mandt,
          matnr like mara-matnr,
          end of itab.
    CLEAR ITAB.
    select mandt matnr up to 7 rows from mara
    into corresponding fields of table itab.
    clear itab.
    call function 'OPEN_FORM'
    EXPORTING
      APPLICATION                       = 'TX'
      ARCHIVE_INDEX                     =
      ARCHIVE_PARAMS                    =
      DEVICE                            = 'PRINTER'
      DIALOG                            = 'X'
       FORM                              = 'ZS_SAP'
       LANGUAGE                          = SY-LANGU
      OPTIONS                           =
      MAIL_SENDER                       =
      MAIL_RECIPIENT                    =
      MAIL_APPL_OBJECT                  =
      RAW_DATA_INTERFACE                = '*'
      SPONUMIV                          =
    IMPORTING
      LANGUAGE                          =
      NEW_ARCHIVE_PARAMS                =
      RESULT                            =
    EXCEPTIONS
      CANCELED                          = 1
      DEVICE                            = 2
      FORM                              = 3
      OPTIONS                           = 4
      UNCLOSED                          = 5
      MAIL_OPTIONS                      = 6
      ARCHIVE_ERROR                     = 7
      INVALID_FAX_NUMBER                = 8
      MORE_PARAMS_NEEDED_IN_BATCH       = 9
      SPOOL_ERROR                       = 10
      CODEPAGE                          = 11
      OTHERS                            = 12
    if sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    endif.
    loop at itab.
    call function 'WRITE_FORM'
    EXPORTING
      ELEMENT                        = 'NAME '
       FUNCTION                       = 'SET'
       TYPE                           = 'BODY'
       WINDOW                         = 'MAIN'
    IMPORTING
      PENDING_LINES                  = ITAB
    EXCEPTIONS
       ELEMENT                        = 1
       FUNCTION                       = 2
       TYPE                           = 3
       UNOPENED                       = 4
       UNSTARTED                      = 5
       WINDOW                         = 6
       BAD_PAGEFORMAT_FOR_PRINT       = 7
       SPOOL_ERROR                    = 8
       CODEPAGE                       = 9
       OTHERS                         = 10
    if sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    endif.
    endloop.
    call function 'CLOSE_FORM'
    IMPORTING
      RESULT                         =
      RDI_RESULT                     =
    TABLES
      OTFDATA                        =
    EXCEPTIONS
      UNOPENED                       = 1
      BAD_PAGEFORMAT_FOR_PRINT       = 2
      SEND_ERROR                     = 3
      SPOOL_ERROR                    = 4
      CODEPAGE                       = 5
      OTHERS                         = 6
    if sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

    Your question can't be read. Please reformat your post, use PREVIEW before posting again. 2500 characters maxi.
    Thx

  • In SAP Scripts MAIN procesed first?

    Hi Experts,
    I hv a small doubts in SAP Scripts, they r,
    1- In SAP Scripts the MAIN window is procesed very first all over the SAP Script?
    2- To debug the script, after activating the debugger in Script, Shall I go & debug the Print prog step by step or just run the Transaction, e.g.
    say ME23?
    ThanQ.

    Hi Srinivas,
       The order in which the windows are triggered is determined by the print program.
    The print program will call the WRITE_FORM function modules which will trigger the windiw that is passed to it.
    You can see the example print program:
    RSTXEXP1
    The fm WRITE_FORM is called multiple times, and different windows get triggered as and when the control comes to the Function module.
    And regarding your second question, in general you cannot run the print programs as stand alone(most cases) as the would not have and executable code outside the form-endform .So, to test the script, you must run the transaction after your activate the script debugging.
    Regards,
    Ravi

  • Using Wildcards in Mapping Script

    Hi everybody, im new in FDM and i have some doubts about mapping scripts.
    I have to recreate this Hyperion Translation Rule into FDM:
    ACC_SAP              tm_sap     Reverse Sign         UD4
    N21099Z300     {NULL}     FALSE     CD1
    D31199Z000     {NULL}     FALSE     CD1
    ????99     *     FALSE     CD
    ACC_SAP is the source account
    TM_SAP will be loaded into UD5 (as look up)
    How could i manage with a like mapping?
    I guess using a script but im not sure how to use wildcards within scripts, is it possible?
    Another related question, in a explicit mapping, how can i manage with NULL values if i want to assign them [None] value, do i have to put NULL in th source field?
    BR and thanks

    Thanks KellyDGreen. With the exampl shown is as you say but what if tm_sap has wildcards?
    F.i
    ACC_SAP TM_SAP TARGET_CUSTOM4
    999? 123? 198276
    Suppose that TM_SAP has been stored in UD5. Source dimensions are different from target dimension so i have to do it via script, dont I?
    BR
    Francisco

  • Script to add markers to text by paragraph format

    With previous versions of Framemaker, I had a FrameScript which would loop through my document and add a marker to text based on the paragraph format applied. The marker text would be the selected paragraph.
     I am now trying to recreate this in Extendscript for use in Framemaker 10 and am completely stumped. 
    I have no doubt that my script (copied below) is completely off-track, but I wondered if anybody would be able to help point me in the direction of my many mistakes.
    Basically, I want the script to find all paragraphs with the "*Part no." format applied, make that text the text range and then apply a marker to that range. A bit of research has shown that I probably need to create a list of paragraph formats, but I believe that I have far more problems than just that.
    var pgfFmt1 = flow.GetNamedPgfFmt (*Part no.);
    while (pgfFmt1.ObjectValid())  
        function createMarker (doc, pgf, offset, type, text)    {
            var tRange, marker;
            tRange = pgfFmt1.TextRange;
            marker = doc.NewAnchoredObject(Constants.FO_Marker, tRange);
            marker.MarkerType = type;
            marker.MarkerText = text;
            return 1;
    createMarker (doc, pgf, 0, "Index", 0);
    Many thanks in advance to anyone who is able to offer me some pointers!

    Well, it seems that my script is only 95% there. While my script finds the target paragraphs and adds a marker, only the first word of each paragraph is selected as the marker text. I really need the script to select the whole paragraph as the marker text. I have tried many combinations, but cannot seem to get the right outcome. Could anybody please point me in the right direction? Script is copied below. Many thanks!
    var doc = app.ActiveDoc;
    var flow = doc.MainFlowInDoc;
    var tframe = flow.FirstTextFrameInFlow;
    var pgf = tframe.FirstPgf;
    var target1 = doc.GetNamedObject(Constants.FO_PgfFmt, "*Part no.");
    var target2 = doc.GetNamedObject(Constants.FO_PgfFmt, "*Parent Bold");
    var target3 = doc.GetNamedObject(Constants.FO_PgfFmt, "*Child");
    var target4 = doc.GetNamedObject(Constants.FO_PgfFmt, "*Child indent");
    var target5 = doc.GetNamedObject(Constants.FO_PgfFmt, "*Child indent 2");
    while (pgf.ObjectValid())   {
    if (pgf.Name == target1.Name)   {
        createMarker (doc, pgf, 0, "Index", "");
    else if (pgf.Name == target2.Name)  {
        createMarker (doc, pgf, 0, "Subject", "");
    else if (pgf.Name == target3.Name)  {
        createMarker (doc, pgf, 0, "Subject", "");
    else if (pgf.Name == target4.Name)  {
        createMarker (doc, pgf, 0, "Subject", "");
    else if (pgf.Name == target5.Name)  {
        createMarker (doc, pgf, 0, "Subject", "");
    pgf = pgf.NextPgfInDoc;
    function createMarker(doc, pgf, offset, type, text) {
        var tLoc = new TextLoc(pgf, offset);
        var marker = doc.NewAnchoredObject(Constants.FO_Marker, tLoc);
        var markerType = doc.GetNamedObject(Constants.FO_MarkerType, type);
        marker.MarkerTypeId = markerType;
        marker.MarkerText = text;
        return 1;

  • Calling Rss feed from Script Editor webpart

    I am trying to add this script to Script Editor webpart and this doesnt work. I dont see anything on webpart. Can anyone help me
    where I went wrong. 
    <html>
    <head>
    <script type="text/javascript">
    $(document).ready(function()
    $.ajax(
    type:”GET”,
    url: "rssreader.com/englishfeeds.xml",
    datatype:”xml”,
    success:function(xml)
    $(xml).find(‘item’).each(function()
    Var Title=$(this).find(‘title’).text;
    Var link=$(this).find(‘link’).text;
    $(“body”).append(‘<div><span>’+Title’</span><span>’+Description’</span></div>’)
    error:function()
    Alert(‘Sorry Error occurred’);
    </script>
    </head>
    <body>
    </body></html>

    Not sure but somehow your quotes seems different then they should actually look.
    //Replace
    type:”GET”,
    //Replace With
    type:"GET",
    Do similar changes at other places as well both for double quotes as well as single quotes.
    Also, replace
    $(this).find(‘title’).text
    with
    $(this).find('title').text();
    Do similar change for link as well
    Also where you are appending the html, where are you getting the Description from ?? Also there is a missing + symbol after Title there.
    Do the above changes and see if that helps
    Geetanjali Arora | My blogs |

  • VI Scripting - Preserve a VI's namespace?

    Hi,
    I'm currently using VI Scripting to generate a set of VIs based on the contents of an xml file.  The set of generted VIs end up being claimed as part of a library file (call it library1.lvlib).  The problem is that if I need to regenerate these VIs I cannot seem to preserve the namesapce.
    As an example, once claimed by the library, the VI will have a namesapce of library1.lvlib:MyGeneratedVI.  If I simply generte the VI then the namespace becomes MyGeneratedVI.  I tried modifying the Name property of the VI reference that I am saving but I keep getting an error 1 fromt he property node.  Documentation indicates that one can only write to the Name property if the file does not exist on disk.  I'm even adding a delete to adhere to this rule, but still get an error 1.
    If I set some bogus namespace after deleting (say HelloWorld), then set of the Name property is successfull, but I don't see it reflected in the saved VI.  However trying to set something meaningful like library1.lvlib:MyGeneratedVI doesn't work.
    Is what I am trying to do even possible?  Since the VI gets recompiled after it gets claimed by a library, I'm not sure if this is something that one can do through VI scripting.

    When in doubt, attempt to script the actions that one would manually do in the IDE.
    I couldn't succesfully change the fully qualified name of the VI I was going to save.  Instead I'm finding the library that owns the original VI (if one exists), opening the library via the application class, programatically removing the unclaimed VI, and inserting it back again to fix the reprocity.  After performing these steps, a save operation is done to both the libray file, and VI (that was added to the library).
    This should associate the auto generated VI with the library of the VI it replaced.

  • Development class of script

    hi experts,
                   i have a doubt regarding sap scripts.
    How to change the developement class of a script?

    You can use standard program RSWBO052 to change development class.
    R3TR DTEL Data Element
    Next blank line
    Click FORM = <script_name>
    F8 9 Execute -> double click and change the class
    Also you can check this link.
    http://www.sapgenie.com/abap/tips_and_tricks.htm#How_to_change_development_class_of_a_SAPscript
    Hope this will help.
    ~~Guduri

  • Exporting multiple e-mails as .pdf

    I'm responsible for coordinating a multi-author, book-writing project and I've been asked to store all e-mail correspondences in a fashion that allows all of the authors and project managers to access the e-mails. I have a shared folder set up on my Google drive that allows all the users to access shared files which is working fantastically, but I can't find a way to export large quantities of e-mails at the same time that also works for Google drive.
    After a quick Google search I found this site which provided instructions on how to install this set of scripts which allowed me to archive my selected e-mails as .rtf files with their attachments. It works great and allows me to customize the naming of the files to allow other authors to easily locate a specific e-mail. It names each file "From %f to %t - %s - %M %d, %Y.rtf" where %t is the recipient, %f is the sender, %s is the subject/thread topic and %M %d, %Y is Month day, year (eg To John Smith from Jane Doe - Book Project - December 12, 2012.rtf).
    Unfortunately, after uploading the folder containing all these .rtf files I found out that .rtf can't be viewed on Google and must be downloaded then opened on the user's computer. To fix this I tried having Google automatically convert the files to Google docs as it uploaded the files, but this didn't work and even if it did I fear the files would lose their attachments.
    I then tried searching for scripts that would allow me to change all of the .rtf files to .pdf. I found and tried a few, but they all had problems (the script would only operate on pre Mountain Lion, the requires Word for Mac, etc.)
    Then I tried finding a script that would work like the first successful one, but export the files as .pdf rather than .rtf. I couldn't find anything, but found an article that reminded me I could print to .pdf from mail ("Save as PDF..." in the system print window). I tried doing this, but after 'printing' the first of all the e-mails an error box pops up and no more e-mails 'print.' If I "Open PDF in Preview" I can successfully save all of the e-mails as .pdf, but their file names are all Preview of "<e-mail subject>".pdf which isn't helpful because nearly all correspondences in the group have a subject like "Book" or "Book Project" meaning it'd be impossible to determine which e-mail is which by the .pdf filename.
    I feel like their are a lot of different routes I can take to solve this problem, I just need help finding the components:
    1. Use the first successful script to export as .rtf, then use another script to convert them to .pdf. This would be the best because it will allow me to use a useful filenaming system. To do this I need a script that can convert .rtf to .pdf on my system.
    2. Find a script like the first, successful script I used that allows me to export the e-mails as a .pdf using the subject, to/from, etc. as the filename.
    3. Open PDF in Preview, save, then use a script to rename all the files by extracting the subject, to/from and date from the .pdfs. To do this I need a script that can find the subject, etc. in the .pdf and use that data to change the file name. (I highly doubt such a script exists and I don't have the script-writing skills to create one myself.)
    4. Any other solution that allows me to take a lot of e-mails from my Mail app and upload them to my Google drive while maintaining attachments and generating logical filenames.
    5. Any other solution that makes it possible for me to make correspondences available for all authors to access (keeping in mind that cross-platform compatibility is essential).
    Suggestions?

    I found your first suggestion while doing a Google search. That post was made in mid-2011, almost a year before Mountain Lion released. Apple changed the way scripts work in Mountain Lion and this script no longer works.
    As far as I can tell, the second solution only works for printing one e-mail to a .pdf at a time and doesn't support batch filenaming.

  • Error in moveDimension within a forEach for Swapping charts

    Hi All,
    I tried to implement what was done in the following blog (which is a great idea) but it works perfect if I don't change the layout of any of the chart, mainly the bigger chart.
    Blog: SAP Design Studio Tips and Tricks #1: Swapping charts into focus on-demand
    In my case, what I see in the bigger chart could change.
    For example, by default I see Sales by Region (Europe, America, Asia, etc), and the user can filter by a Region and see the Countries.
    So, When I change the bigger chart with other chart I loose the filter and the drill down done before.
    To solve this, I tried to "save" the drills made in rows and columns, before to do what it is done in the blog, but I don't know why the moveDimension is not working as I expected, what is more, when I execute the dashboard and run the event, it says there is an error in my script and the error is in the moveDimension.
    I want to share my code, just if you have the chance to test it, and see if it works.
    Thanks, Federico
    My Code:
    // Initializing variables
    var DS1_Name = DS_1.getInfo().queryTechnicalName;
    var DS2_Name = DS_2.getInfo().queryTechnicalName;
    var system = DS_1.getInfo().system;
    var chart = CHART_1.getChartType();
    // Saving the layout
    var DS1_COL_BEF = DS_2.getDimensions(Axis.COLUMNS);
    var DS1_ROW_BEF = DS_2.getDimensions(Axis.ROWS);
    var DS2_COL_BEF = DS_1.getDimensions(Axis.COLUMNS);
    var DS2_ROW_BEF = DS_1.getDimensions(Axis.ROWS);
    // Swapping charts
    DS_1.assignDataSource(system, DataSourceType.QUERY, DS2_Name);
    DS_2.assignDataSource(system, DataSourceType.QUERY, DS1_Name);
    CHART_1.setChartType(CHART_2.getChartType());
    CHART_2.setChartType(chart);
    // Taking the actual columns & rows
    var DS1_COL_AFT = DS_1.getDimensions(Axis.COLUMNS);
    var DS1_ROW_AFT = DS_1.getDimensions(Axis.ROWS);
    var DS2_COL_AFT = DS_2.getDimensions(Axis.COLUMNS);
    var DS2_ROW_AFT = DS_2.getDimensions(Axis.ROWS);
    // Removing dimensions
    DS1_COL_AFT.forEach(function(element, index) {
      DS_1.removeDimension(element);
    DS1_ROW_AFT.forEach(function(element, index) {
      DS_1.removeDimension(element);
    DS2_COL_AFT.forEach(function(element, index) {
      DS_2.removeDimension(element);
    DS2_ROW_AFT.forEach(function(element, index) {
      DS_2.removeDimension(element);
    // Adjusting the charts as they were
    DS1_COL_BEF.forEach(function(element, index) {
      DS_1.moveDimensionToColumns(element);
    DS1_ROW_BEF.forEach(function(element, index) {
      DS_1.moveDimensionToRows(element);
    DS2_COL_BEF.forEach(function(element, index) {
      DS_2.moveDimensionToColumns(element);
    DS2_ROW_BEF.forEach(function(element, index) {
      DS_2.moveDimensionToRows(element);

    Hi Federico Galban ,
    I tried a similar scenario like this for  a much simple case the moveDimension part works fine for me.
    I have a doubt in your script,
    // Adjusting the charts as they were
    DS1_COL_BEF.forEach(function(element, index) {
      DS_1.moveDimensionToColumns(element);
    DS1_ROW_BEF.forEach(function(element, index) {
      DS_1.moveDimensionToRows(element);
    DS2_COL_BEF.forEach(function(element, index) {
      DS_2.moveDimensionToColumns(element);
    DS2_ROW_BEF.forEach(function(element, index) {
      DS_2.moveDimensionToRows(element);
    Your goal is ultimately to swap the charts, so shouldnt this be done as follows
    // Adjusting the charts as they were
    DS1_COL_BEF.forEach(function(element, index) {
      DS_2.moveDimensionToColumns(element);
    DS1_ROW_BEF.forEach(function(element, index) {
      DS_2.moveDimensionToRows(element);
    DS2_COL_BEF.forEach(function(element, index) {
      DS_1.moveDimensionToColumns(element);
    DS2_ROW_BEF.forEach(function(element, index) {
      DS_1.moveDimensionToRows(element);
    Just asking to be clear, if wrong pls ignore
    Thanks
    Karthik Swaminathan.

  • InternalCatalogException in Reporting Services 2008 - no reports rendering

    Hi all,
    We've had an unexpected outage on two of our reporting services server overnight and we're hoping someone can point us in the right direction.  We have a Windows Server 2008 machine running about 5 instances of reporting services in standalone, non-IIS
    mode.
    Two of these instances have started hitting exceptions when rendering any reports.  I include an excerpt from the log below.
    The first evidence of a problem in the log is an InternalCatalogException, of which I can find many unrelated hits when searching the forums so I don't think this is specific enough to trace.  I do note a reference to "segmentedChunkStore" in the
    text which seems like a better clue.
    I've eliminated the idea of a machine/OS issue due to several instances not affected by this problem.  There is some possibly related info which may help:
    -This machine is a HyperV VM which has been moved between hosts within the last few weeks. In the process, all Report Server databases were backed up and restored at the new site.
    - It uses a Custom Authentication extension authored by us.
    - Within the last few days, users of three RS instances advised that a role permission they had prior to the move (Consume Reports Task) was no longer granted.  I had to re-grant this to the role.  The two
    RS instances now experiencing the InternalCatalogException issue raised an error at the time about not being able to find a group when I granted the task.  I added the group, granted again, and it granted without error so I thought nothing more
    of it.
    - These two RS instances have been working fine since the HyperV host move right up until last night.
    - The machine had several Windows Updates queued up which were installed last night.  Since completion of the updates and subsequent reboot, these two Reporting Services instances now raise this InternalCatalogException error when trying to render any
    reports from Report Manager, Report Server, or previous from Report Viewer.
    At this point, I'm suspecting some sort of data corruption has occurred in the ReportServer databases, initially causing the loss of the Consume Reports permission and, after a reboot, these exeptions. But any suggestions on how to troubleshoot further greatly
    appreciated. Here is the excerpt from the log.
    library!ReportServer_0-1!8d4!09/19/2012-20:55:53:: Call to GetItemTypeAction(/Risk Manager/Dashboard Module/Medsys/IncConseqCountYTD).
    library!ReportServer_0-1!12f0!09/19/2012-20:55:53:: Call to GetItemTypeAction(/Risk Manager/Dashboard Module/Medsys/IncCount13Months).
    library!ReportServer_0-1!f98!09/19/2012-20:55:53:: Call to GetItemTypeAction(/Risk Manager/Dashboard Module/Medsys/my30DayActionList).
    library!ReportServer_0-1!10c0!09/19/2012-20:55:53:: Call to GetItemTypeAction(/Risk Manager/Dashboard Module/Medsys/org30DayStatusPanel).
    library!ReportServer_0-1!830!09/19/2012-20:55:54:: i INFO: RenderForNewSession('/Risk Manager/Dashboard Module/Medsys/org30DayStatusPanel')
    library!ReportServer_0-1!830!09/19/2012-20:55:54:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details.,
    segmentedChunkStore;
     Info: Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details.
    library!ReportServer_0-1!830!09/19/2012-20:55:55:: i INFO: Exception InternalCatalogException dumped to: C:\Program Files\Microsoft SQL Server\MSRS10.TESTIMPACRS\Reporting Services\Logfiles flags= ReferencedMemory, AllThreads, SendToWatson
    chunks!ReportServer_0-1!830!09/19/2012-20:55:55:: w WARN: Rolling back shared chunk transaction for snapshot '49663ae9-6692-4ea2-8a5d-210de4729653', Permanent=False.
    library!ReportServer_0-1!830!09/19/2012-20:55:55:: w WARN: Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details.
    library!ReportServer_0-1!ff8!09/19/2012-20:55:55:: i INFO: RenderForNewSession('/Risk Manager/Dashboard Module/Medsys/my30DayStatusPanel')
    library!ReportServer_0-1!8d4!09/19/2012-20:55:55:: i INFO: RenderForNewSession('/Risk Manager/Dashboard Module/Medsys/triCountPanel')
    library!ReportServer_0-1!8d4!09/19/2012-20:55:55:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details., segmentedChunkStore;
     Info: Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details.
    library!ReportServer_0-1!ff8!09/19/2012-20:55:55:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details., segmentedChunkStore;
     Info: Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details.
    chunks!ReportServer_0-1!ff8!09/19/2012-20:55:55:: w WARN: Rolling back shared chunk transaction for snapshot '68d6456c-1ed0-46eb-8bec-37b04f94065a', Permanent=False.
    library!ReportServer_0-1!ff8!09/19/2012-20:55:55:: w WARN: Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details.
    library!ReportServer_0-1!8d4!09/19/2012-20:55:56:: i INFO: Exception InternalCatalogException dumped to: C:\Program Files\Microsoft SQL Server\MSRS10.TESTIMPACRS\Reporting Services\Logfiles flags= ReferencedMemory, AllThreads, SendToWatson
    chunks!ReportServer_0-1!8d4!09/19/2012-20:55:56:: w WARN: Rolling back shared chunk transaction for snapshot '464d6ec5-f256-4633-97d9-792c700931a0', Permanent=False.
    library!ReportServer_0-1!8d4!09/19/2012-20:55:56:: w WARN: Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details.
    library!ReportServer_0-1!b90!09/19/2012-20:55:56:: i INFO: RenderForNewSession('/Risk Manager/Dashboard Module/Medsys/my30DayActionList')
    library!ReportServer_0-1!b90!09/19/2012-20:55:56:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details., segmentedChunkStore;
     Info: Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details.
    library!ReportServer_0-1!1598!09/19/2012-20:55:57:: i INFO: RenderForNewSession('/Risk Manager/Dashboard Module/Medsys/IncCount13Months')
    library!ReportServer_0-1!b90!09/19/2012-20:55:57:: i INFO: Exception InternalCatalogException dumped to: C:\Program Files\Microsoft SQL Server\MSRS10.TESTIMPACRS\Reporting Services\Logfiles flags= ReferencedMemory, AllThreads, SendToWatson
    chunks!ReportServer_0-1!b90!09/19/2012-20:55:57:: w WARN: Rolling back shared chunk transaction for snapshot '94bb87a7-bece-454e-b418-78b18b9eacb1', Permanent=False.
    library!ReportServer_0-1!b90!09/19/2012-20:55:57:: w WARN: Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details.
    library!ReportServer_0-1!8d4!09/19/2012-20:55:57:: i INFO: RenderForNewSession('/Risk Manager/Dashboard Module/Medsys/IncConseqCountYTD')
    library!ReportServer_0-1!1598!09/19/2012-20:55:57:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details., segmentedChunkStore;
     Info: Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details.
    library!ReportServer_0-1!8d4!09/19/2012-20:55:58:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details., segmentedChunkStore;
     Info: Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details.
    chunks!ReportServer_0-1!8d4!09/19/2012-20:55:58:: w WARN: Rolling back shared chunk transaction for snapshot 'e254656f-6c22-49e6-b473-5ed986e0a730', Permanent=False.
    library!ReportServer_0-1!8d4!09/19/2012-20:55:58:: w WARN: Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details.
    library!ReportServer_0-1!1598!09/19/2012-20:55:58:: i INFO: Exception InternalCatalogException dumped to: C:\Program Files\Microsoft SQL Server\MSRS10.TESTIMPACRS\Reporting Services\Logfiles flags= ReferencedMemory, AllThreads, SendToWatson
    chunks!ReportServer_0-1!1598!09/19/2012-20:55:58:: w WARN: Rolling back shared chunk transaction for snapshot 'e15cc0b9-c8b1-446a-a3bf-da2ceba6273d', Permanent=False.
    library!ReportServer_0-1!1598!09/19/2012-20:55:58:: w WARN: Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details.
    library!WindowsService_0!14a0!09/19/2012-21:01:07:: i INFO: Call to CleanBatch()
    library!WindowsService_0!14a0!09/19/2012-21:01:13:: i INFO: Cleaned 0 batch records, 0 policies, 0 sessions, 0 cache entries, 0 snapshots, 0 chunks, 0 running jobs, 0 persisted streams, 0 segments, 0 segment mappings.
    Regards,
    Michael

    There are some more objects that reference the hardcoded temp DB of the ReportingServer:
    - dbo.ExtendedDataSources (VIEW)
    - dbo.ExtendedDataSets (VIEW)
    - dbo.ExtendedCatalog (FUNCTION)
    I've created a TSQL Script which does the job for you. The script below creates a script that can be executed on a renamed ReportingServer DB. 
    Just set appropriate values for the variables @oldTempDB and
    @newTempDB 
    SET NOCOUNT ON
    GO
    IF EXISTS (SELECT * FROM tempdb..sysobjects WHERE id=OBJECT_ID('tempdb..#tmp_objects')) DROP TABLE #tmp_objects
    GO
    DECLARE @oldTempDB varchar(150), @newTempDB varchar(150)
    SET @oldTempDB='ReportServer$TempDB'
    SET @newTempDB='MY_ReportServer$TempDB'
    SELECT
    CASE type_desc
    WHEN 'VIEW'
    THEN 'VIEW'
    WHEN 'SQL_STORED_PROCEDURE'
    THEN 'PROC'
    WHEN 'SQL_TRIGGER'
    THEN 'TRIGGER'
    WHEN 'SQL_SCALAR_FUNCTION'
    THEN 'FUNCTION'
    WHEN 'SQL_INLINE_TABLE_VALUED_FUNCTION'
    THEN 'FUNCTION'
    WHEN 'SQL_TABLE_VALUED_FUNCTION'
    THEN 'FUNCTION'
    END AS objectType
    , m.definition AS SQLCommand
    , s.name AS SchemaName
    , o.name as ObjectName
    , s.name + '.' + o.name AS objectFullName
    , 0 AS done
    , 0 AS success
    , NEWID() AS ID
    , LEN(m.definition) AS Length
    INTO #tmp_objects
    FROM sys.objects o
    INNER JOIN sys.all_sql_modules m
    ON m.object_id=o.object_id
    INNER JOIN sys.schemas s
    ON s.schema_id=o.schema_id
    WHERE type_desc IN (
    'VIEW'
    , 'SQL_STORED_PROCEDURE'
    , 'SQL_TRIGGER'
    -- , 'USER_TABLE'
    , 'SQL_SCALAR_FUNCTION'
    , 'SQL_TABLE_VALUED_FUNCTION'
    , 'SQL_INLINE_TABLE_VALUED_FUNCTION'
    AND PATINDEX('%' + @oldTempDB + '%', m.definition)>0
    AND PATINDEX('%' + @newTempDB + '%', m.definition)=0
    PRINT 'BEGIN TRANSACTION'
    PRINT 'SET NUMERIC_ROUNDABORT OFF'
    PRINT 'GO'
    PRINT 'SET ANSI_PADDING, ANSI_WARNINGS, CONCAT_NULL_YIELDS_NULL, ARITHABORT, QUOTED_IDENTIFIER, ANSI_NULLS ON'
    PRINT 'GO'
    DECLARE @SQLDefinition VARCHAR(MAX), @ObjectName VARCHAR(200), @ObjectType VARCHAR(50), @CommandID VARCHAR(50), @ObjectFullName VARCHAR(350), @SchemaName VARCHAR(50), @searchPattern varchar(250), @reverseSearchPattern varchar(250)
    DECLARE @LineBreakPos INT, @Pos INT, @patternCounter INT
    WHILE EXISTS(
    SELECT *
    FROM #tmp_objects
    WHERE done=0
    BEGIN
    SELECT TOP 1
    @CommandID=ID
    FROM #tmp_objects
    WHERE done=0
    ORDER BY objectName
    /*-----------------------create output-----------------------------------------*/
    SELECT
    @SQLDefinition=t.SQLCommand
    , @ObjectName=t.objectName
    , @SchemaName=t.SchemaName
    , @ObjectFullName=t.objectFullName
    , @ObjectType=t.objectType
    FROM #tmp_objects t
    WHERE
    t.ID=@CommandID
    SET @patternCounter=0
    /************replace create by alter and oldTempDB by newTempDB***********/
    WHILE @patternCounter<4
    BEGIN
    IF @patternCounter=0 SET @searchPattern='%CREATE %' + @ObjectType +'% %' + @SchemaName + '.' + @ObjectName + '%'
    IF @patternCounter=1 SET @searchPattern='%CREATE %' + @ObjectType +'% %[' + @SchemaName + '].' + @ObjectName + '%'
    IF @patternCounter=2 SET @searchPattern='%CREATE %' + @ObjectType +'% %[' + @SchemaName + '].[' + @ObjectName + ']%'
    IF @patternCounter=3 SET @searchPattern='%CREATE %' + @ObjectType +'% %' + @SchemaName + '.[' + @ObjectName + ']%'
    SET @reverseSearchPattern=REPLACE(REVERSE(@SearchPattern),'[','[[]')
    SET @SearchPattern=REPLACE(@SearchPattern,'[','[[]')
    IF PATINDEX(@searchPattern, @SQLDefinition)>0
    BEGIN
    SET @patternCounter=99
    SET @SQLDefinition= REPLACE(
    SUBSTRING(
    SUBSTRING(@SQLDefinition,
    1,
    LEN(@SQLDefinition) - PATINDEX(@ReverseSearchPattern, REVERSE(@SQLDefinition))+1
    PATINDEX(@searchPattern, @SQLDefinition),
    LEN(@SQLDefinition)
    'CREATE ',
    'ALTER '
    + SUBSTRING(
    @SQLDefinition, LEN(@SQLDefinition) - PATINDEX(@ReverseSearchPattern, REVERSE(@SQLDefinition))+2
    , LEN(@SQLDefinition)
    SET @SQLDefinition=REPLACE(@SQLDefinition, @oldTempDB, @newTempDB)
    END
    ELSE
    BEGIN
    SET @patternCounter=@patternCounter+1
    END
    END
    IF @patternCounter=99 /*found pattern*/
    BEGIN
    /************END replace create by alter*******/
    PRINT ''
    PRINT ''
    PRINT '/******ALTER ' + @ObjectType + ' ' + @ObjectFullName + '******/'
    PRINT 'PRINT ''******ALTER ' + @ObjectType + ' ' + @ObjectFullName + '*******'''
    PRINT 'GO'
    SET @LineBreakPos=CHARINDEX(CHAR(13)+CHAR(10), LEFT(@SQLDefinition,8000))
    IF @LineBreakPos>0 AND LEN(@SQLDefinition)>=8000
    BEGIN
    SET @Pos=1
    WHILE @LineBreakPos>0
    BEGIN
    PRINT SUBSTRING(@SQLDefinition, @Pos, @LineBreakPos-1)
    SET @Pos=@Pos + @LineBreakPos+1
    SET @LineBreakPos=CHARINDEX(CHAR(13)+CHAR(10), SUBSTRING(@SQLDefinition, @Pos, 8000))
    END
    END
    ELSE
    BEGIN
    PRINT @SQLDefinition
    END
    PRINT ''
    PRINT 'GO'
    PRINT 'IF @@ERROR>0 BEGIN ROLLBACK TRANSACTION ''Errors occured, script abborded'' SET NOEXEC ON END'
    PRINT 'GO'
    /*---------------------------end output----------------------------------------------*/
    END
    UPDATE TG
    SET TG.done=1
    , TG.success=(CASE WHEN @patternCounter=99
    THEN 1
    ELSE 0
    END
    FROM #tmp_objects TG
    WHERE
    TG.ID=@CommandID
    END
    PRINT 'IF @@TRANCOUNT>0 BEGIN COMMIT TRANSACTION PRINT ''Successful'' END '
    PRINT 'GO'
    PRINT 'SET NOEXEC OFF'
    Select *
    FROM #tmp_objects
    WHERE success=0
    DROP TABLE #tmp_objects
    Execute this script in MSSQL Management Studio or in a similar tool and copy the created script from the "Messages" pane. If any object fails a table containing them will appear in the results pane.
    Make sure you check the resulting script first before executing to avoid accidential altering of an object.
    have fun with it! ...and thanks to microsoft for making us an extra loop...
    Claude

Maybe you are looking for