Generate Data subscription only if data present

Hi,
I would like to create an email only when there is data. It's an exception report, so only need to generate an email if there is data. I could possibly do it by selecting the option 'When the report data is updated on the report server' for delivery but
it doesn't seem to work.
Is there a better way to do this. I can see there are different parameters for the email options. Of course I could select an email address which doesn't exist if no data present but that's not ideal. Does the IncludeReport option work, but looks like it
will create the email with no report included? What's the best way to achieve this? Thank you.
Panos

Hi Panos,
Per my understanding that you don't want to send the scheduled email subscription if the report have no data and when there is data in the report, the subscription should send, right?
Step by Step details information about how to achieve this in the similar thread below for your reference:
SSRS report email Scheduling omit zero record
For Data-Driven subscription you can modify your dataset query by using an stored procedure like below:
CREATE PROCEDURE Test
    @Para nvarchar(50)
AS
    SELECT * from yourtable
    where Comment=@Para
    IF @@ROWCOUNT = 0 RAISERROR('No data', 16, 1)
GO
Note:If there is no data in the report, if will give error message and the email subscription will not send.
please reference to the blog as below for more details information
http://blogs.msdn.com/b/bimusings/archive/2005/07/29/445080.aspx
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

Similar Messages

  • HT1976 why is my iphone 4 does not have cellular data network only cellular data

    why is my iphone 4 does not have a cellular data network and apn only cellular data without apn settings,thanks

    # Settings > Refresh apps on background. I would suggest to completely turn that off
    # Settings > Privacy > Location tracking > Only Maps, Google Maps are allowed to use location tracking in my case, you could also turn that off completely or be very selective which apps can use your GPS.
    # Settings > E-mail, calendar .. >deselect 'Push' and set it to either Fetch e.g. once an hour for all separate e-mail accounts you have. In your case you could set it to Manual so you won't use any data as long as you won't open your E-mail app and manually download e-mails.
    It could also be that there is still an app running in the background as i had. See also this post.
    In that case you need to dive into the Settings > General > Info > Diagnostics and Use >
    Diagnostics and Use >logs per app to determine which app isn't closed although you turned off your phone (or even in my case reset to factory settings  without backup). It's unfortunately pretty hard to find the app that is causing this. Therefore i wish Apple would come up with a better solution for this to see which processes/app(s) should be killed (now the best solution is removing the app completely).

  • How to compare sales of 2 dates with only one date is given?

    I am having a requirement such that the user wants to see the particular company Y2D sales of this year and previous year, and only one variable selection is given (today's date). How can i design the report to see this year sales and last year sales in separate columns?

    Hi ,
    You have to create two RKFs.
    In the first RKF , you have to create a customer exit variable on your date and that too it should be interval . Using the CMOD code , populate this interval from the 1st day of this year till the date user is entering .
    In the second RKF , you have to create a customer exit variable on your date and that too it should be interval . Using the CMOD code, you have to populate the interval from the 1st day of the previous year till the same date as entered by user but it should be of last year .
    You have to write the above 2 codes in I_STEP = 2 mode .
    Hope the above reply was helpful.
    Kind Regards,
    Ashutosh Singh

  • InfoPackage ABAP Routine for Date Range - Only Start Date Extracted

    I am using an ABAP Routine in an InfoPackage to select data for a 2 year period.  The routine converts SY-DATUM into the Current Fiscal Year and Period, and then calculates the Starting and Ending Fiscal Year / Period of a 24 month period.  The Start and End values are passed to the InfoPackage as l_t_range-low and l_t_range-high.
    The Source and Target are both Basic Infocubes.
    The InfoPackage executes successfully, and the Selection values on the Header tab of the monitor reflect a 24 month period.  Unfortunately, on closer review of the data in the cube, only data for the first month appears to have been loaded.  I’m guessing that the extract was only performed with the From value, even though a To value was also provided.
    I created a simple Infopackage and manually input the selection parameter values just to be sure I wasn’t overlooking something. The InfoPackage performed as expected, loading more data which spanned the selection time period.
    I can provide the code if it helps, but the fact that the monitor reflects a Start and End value suggests that the problem is with the InfoPackage, not the ABAP routine.
    Has anybody ever experienced this before ?  Any ideas would be greatly appreciated ?
    Thanks,
    Lyle

    We can write ABAP routine in Infopackage with a range of values (From & To). Make sure you fill all the following information while building the final range information as below,
       l_s_range-sign    = 'I'.
       l_s_range-option  = 'BT'.
       l_s_range-low     = lowvalue.
       l_s_range-high    = highvalue.
      MODIFY l_t_range FROM l_s_range INDEX l_idx.
    As you can see the key is passing the "BT" information for capturing range.
    Hope it helps..
    thanks
    Kumar

  • Two characteristics for date but only same date wanted?

    Hello experts,
    we have 2 date characteristics,
    Calendar day
    Due day
    For one calendar day we could have several due dates. But in Reporting we just want to have always for the calendar day the same due day. We know how to resolv it in the data model but we prefer a reporting solution.
    example:
    Calendar day -  01/01/2009              | 01/02/2009
    Due date - 01/01/2009 - 01/03/2009 | 01/02/2009 - 01/03/2009
    Key figure - 100 - 1500 |  120 - 150
    We just want to see the due date 01/01/2009. Both characteristics are drilled down.
    Result example wanted:
    Calendar day - 01/01/2009 | 01/03/2009
    Due Date - 01/01/2009 | 01/03/2009
    Key figure - 100 | 200
    Thank you for help!
    regards,
    Peter

    Hi,
    You can do this by using replacement path variables and defining a formula which compares these two variables. Output of the formula will be 1 or 0 based on the comparision (Calday == due date).
    After this you can define a condition using the formula you have created to compare those dates.
    but i think all this can be achieved only if you have the due date in the drill down. however you can hide the due date by keeping it in rows, i think this will not have an effect in the result of the query.
    let us know if this helps,
    Regards,
    Rk.

  • (Again) java.util.Date vs java.sql.Date

    Hi there,
    (Again) Im trying to understand the EXACT difference between
    java.util.Date vs java.sql.Date.
    Googling, I can see that this is a very "popular" subject, but I still
    cannot figure out it exactly.
    Many writers claim that java.sql.Date only stores the DATE part (yyyy-
    mm-dd) but not the TIME part (hh:MM:ss) of a Date/Time value, but that
    I can easily disprove:
                    java.util.Date ud = new java.util.Date();                 java.sql.Date sd = new java.sql.Date(ud.getTime());                 System.out.println(DateFormatUtils.                                 format(ud, "yyyy-MM-dd HH:mm:ss.SSS"));                 System.out.println(DateFormatUtils.                                 format(sd, "yyyy-MM-dd HH:mm:ss.SSS"));
    Output:
                    2009-09-18 15:17:36.635                 2009-09-18 15:17:36.635
    So, apparently, java.sql.Date and java.util.Date have THE SAME
    precision (at least down to the millisecs...).
    And the official API documentation, really looks more confusing than
    helpful to me::
    *"java.sql.Date:*
    *A thin wrapper around a millisecond value that allows JDBC to identify*
    *this as an SQL DATE value. A milliseconds value represents the*
    *number of milliseconds that have passed since January 1, 1970*
    *00:00:00.000 GMT.*
    *To conform with the definition of SQL DATE, the millisecond values*
    *wrapped by a java.sql.Date instance must be 'normalized' by setting*
    *the hours, minutes, seconds, and milliseconds to zero in the*
    *particular time zone with which the instance is associated. "*
    Exactly what means "an SQL DATE value" ? How EXACTLY does it differ
    from a java.util.Date value?
    Most importantly: WHY does JDBC need to distinguish between them?
    And, here again: *"a java.sql.Date instance must be 'normalized' by*
    *setting the hours, minutes, seconds, and milliseconds to zero in the*
    *particular time zone..."*
    What does that mean exactly? Apparently, the constructor doesnt
    enforce this restriction, per the example above. So what's the REAL
    point with this type, java.sql.Date?
    Very greatful, if you can help me clarify this, once and for all.
    TIA,

    And the official API documentation, really looks more confusing than helpful to me:The problem is that you need to understand SQL as well as Java for this to make sense. It's not the Java API's job to tell you how your SQL database works - there's a myriad of subtle differences even when the DB is compliant with the SQL spec.
    Most compliant databases support DATE, TIME, and TIMESTAMP values. DATE represents only a date. TIME represents only a time. TIMESTAMP represents both. There are further complicating factors, but that's roughly how it stands.
    In Java the normal type for representing time is (or was when the API was created) the java.util.Date but this is a close approximation only to the TIMESTAMP value. In order to bring the two together the java.sql.Date, java.sql.Time and java.sql.Timestamp classes were created. Making them derive from java.util.Date was probably not a good idea.
    java.util.Date suffers from a number of deficiencies. java.util.Calendar was supposed to address them but didn't really succeed. The JodaTime library is rather better, but it's all a lot more complicated than you might expect - partly because time management really is a much harder problem than it appears at first glance - there are timezones, leap years, leap seconds, the difference between astronomical and atomic time, and so on and so forth.

  • Date of import vs date camera thinks it is

    I imported a huge group of pics using my daughters old digital camera that can't seem to keep dates straight.
    I then went and took just a few more and imported them. Turns out The camera thinks it's 2007.
    I was able to find and rename the pics with last import but I've spent hours trying to find the other batch. I can't find them .
    The library is 27,000 pics. While searching I noticed many , many pictures with the wrong date. This whole date process is wrong.
    I need to know date of import. Is there any way to doe this ?
    I have an older version of iPhoto but if the new version has a way to find photos by date I'll get it.
    thanks f

    I then went and took just a few more and imported them. Turns out The camera thinks it's 2007.
    Any digital camera should have a menu where you can adjust the date. Only the date may get reset to default, if the camera battery is empty for a long time. Then you need to reset it in the camera after recharging the camera.
    I have an older version of iPhoto
    Which version exactly?
    Probably your version also has a mode to sort the photos by date from the view menu:
    If sorting by date does not help, try a smart album: File > New > Smart album
    My examples are from iPhoto 9.5.1.
    --Léonie
    P.S. You can correct the dates after import with Photos > Adjust Date and Time

  • Issue dates of only parent publications are getting reflected in a subscriptions order.

    Dear All,
    Could you please help me with a development pertaining to Issue dates of only parent publications are getting reflected in a subscriptions order.
    Synopsis:
    An offer has been created by me using combination of two publications namely A and B.
    The Combination has been defined by creating a mix type (JDMPS0) by keeping A as a parent publication and B as a child publication.
    When a subscriptions order gets created for this combo offer, the order delivers the issues of both the Publications as per their respective issue dates. The deliveries of the same can be observed in table (JVVLFZUO)
    The Issue crops up when I wish to terminate this order over the issue dates of the child publication. This is because issue dates of only parent publications are getting reflected in a subscriptions order (JK03).
    Could you please suggest a development where in I'll be able to view issue dates of all publications.
    Regards,
    Himanshu

    Hi,
    Please sit with your PP Consultant.
    Muzamil

  • Unflatten data using only the output from flatten to string

    Using the Unflatten from String vi requires that you provide the type. This is not always possible - you may not know it (or you have a number to choose from). In a situation where the original data is flattened, then the Type String & Data string are clustered & flattened again, you have a common structure no matter what the source data. Unflattening will return the Type & Data strings of the original data, however I have seen no vi anywhere that either converts Type String to Type, or Unflattens data given only the Type & Data strings. How is either of these done?
    Attachments:
    Type_conversion.vi ‏48 KB

    You are asking too much from LabVIEW or any compiler for that matter. When the the datatype is unknown or undefined at compile time, it can't change the code to adapt to the incoming data. That is the programmer's job to do this and provide code to detect the incoming datatype and branch to appropriate routine to handle each datatype after it has been cast to a known type.
    The compiler has to know the datatype before generating the code. Can you imagine executing your diagram in debug mode and see the wire change type from one iteration to the other as the incoming data changes type? That's the programmer that knows what datatypes are to be expected.
    The original poster suggested to bundle typestring and flat data: you essentialy have
    a structure similar to a variant. If you want to use undefined datatype, you should use variants instead of flattened strings since it includes the datatype. See my presentation on OpenG.org http://openg.org/tiki/tiki-index.php?page=2003-05-06+Group+Meeting
    to see how to manipulate variant data at run-time.
    LabVIEW, C'est LabVIEW

  • Retrieving data from an ArrayList and presenting them in a JSP

    Dear Fellow Java Developers:
    I am developing a catalogue site that would give the user the option of viewing items on a JSP page. The thing is, a user may request to view a certain item of which there are several varieties, for example "shirts". There may be 20 different varieties, and the catalogue page would present the 20 different shirts on the page. However, I want to give the user the option of either viewing all the shirts on a single page, or view a certain number at a time, and view the other shirts on a second or third JSP page.
    See the following link as an example:
    http://www.eddiebauer.com/eb/cat_default.asp?nv=2|21472|9&tid=&c=&sc=&cm_cg=&lp=n2f
    I am able to retrieve the data from the database, and present all of them on a JSP, however I am not sure how to implement the functionality so that they can be viewed a certain number at a time. So if I want to present say 12 items on a page and the database resultset brings back 30 items, I should be able to present the first 12 items on page1, the next 12 items on page2, and the remaining 6 items on page3. How would I do this? Below is my scriplet code that I use to retrieve information from the ArrayList that I retrieve from my database and present them in their entirety on a single JSP page:
    <table>
    <tr>
    <%String product=request.getParameter("item");
    ArrayList list=aBean.getCatalogueData(product);
    int j=0, n=2;
    for(Iterator i=list.iterator(); i.hasNext(); j++){
    if(j>n){
    out.print("</tr><tr>");
    j=0;
    Integer id=(Integer)i.next();
    String name=(String)i.next();
    String productURL=(String)i.next();
    out.print("a bunch of html with the above variables embedded inside")
    %>
    </tr>
    </table>
    where aBean is an instace of a JavaBean that retrieves the data from the Database.
    I have two ideas, because each iteration of the for loop represents one row from the database, I was thinking of introducing another int variable k that would be used to count all the iterations in the for loop, thus knowing the exact number. Once we had that value, we would then be able to determine if it was greater than or less than or equal to the maximum number of items we wanted to present on the JSP page( in this case 12). Once we had that value would then pass that value along to the next page and the for loop in each subsequent JSP page would continue from where the previous JSP page left off. The other option, would be to create a new ArrayList for each JSP page, where each JSP page would have an ArrayList that held all the items that it would present and that was it. Which approach is best? And more importantly, how would I implement it?
    Just wondering.
    Thanks in advance to all that reply.
    Sincerely;
    Fayyaz

    -You said to pass two parameters in the request,
    "start", and "count". The initial values for "start"
    would be zero, and the inital value for "count" would
    be the number of rows in the resultSet from the
    database, correct?Correct.
    -I am a little fuzzy about the following block of code
    you gave:
    //Set start and count for next page
    start += count; // If less than count left in array, send the number left to next next page
    count = ((start*3)+(count*3) < list.size()) ? (count) : ((list.size() - (start*3))/3)
    Could you explain the above block of code a little
    further please?Okay, first, I was using the ternary operators (boolean) ? val_if_true : val_if_false;
    This works like an if() else ; statement, where the expression before the ? represents the condition of the if statement, the result of the expression directly after the ? is returned if the condition is true, and the expression after the : is returned if the condition is false. These two statments below, one using the ternary ? : operators, and the other an if/else, do the same thing:
    count = ((start*3)+(count*3) < list.size()) ? (count) : ((list.size() - (start*3))/3);
    if ((start*3)+(count*3) < list.size()) count = count;
    else count = ((list.size() - (start*3))/3);Now, why all the multiplying by 3s? Because you store three values in your list for each product, 1) the product ID, 2) the product Name, and 3) the product URL. So to look at the third item, we need to be looking at the 9th,10th, and 11th values in the list.
    So I want to avoid an ArrayIndexOutOfBounds error from occuring if I try to access the List by an index greater than the size of the list. Since I am working with product numbers, and not the number of items stored in the list, I need to multiply by three, both the start and count, to make sure their sum does not exceed the value stored in the list. I test this with ((start*3)+(count*3) < list.size()) ?. It could have been done like: ((start + count) * 3 < list.size()) ?.
    So if this is true, the next page can begin looking through the list at the correct start position and find the number of items we want to display without overstepping the end of the list. So we can leave count the way it is.
    If this is false, then we want to change count so we will only traverse the number of products that are left in the list. To do this, we subtract where the next page is going to start looking in the list (start*3) from the total size of the list, and devide that by 3, to get the number of products left (which will be less then count. To do this, I used: ((list.size() - (start*3))/3), but I could have used: ((list.size()/3) - start).
    Does this explain it enough? I don't think I used the best math in the original post, and the line might be better written as:
    count = ((size + count)*3 < list.size()) ? (count) : ((list.size()/3) - start);All this math would be unnecessary if you made a ProductBean that stored the three values in it.
    >
    - You have the following code snippet:
    //Get the string to display this same JSP, but with new start and count
    String nextDisplayURL = encodeRedirectURL("thispage.jsp?start=" + start + "&count=" + count + "&item=" + product);
    %>
    <a href="<%=nextDisplayURL%>">Next Page</a>
    How would you do a previous page URL? Also, I need to
    place the "previous", "next" and the different page
    number values at the top of the JSP page, as in the
    following url:
    http://www.eddiebauer.com/eb/cat_default.asp?nv=2|21472
    9&tid=&c=&sc=&cm_cg=&lp=n2f
    How do I do this? I figure this might be a problem
    since I am processing the code in the middle of the
    page, and then I need to have these variables right at
    the top. Any suggestions?One way is to make new variable names, 'nextStart', 'previousStart', 'nextCount', 'previousCount'.
    Calculate these at the top, based on start and count, but leave the ints you use for start and count unchanged. You may want to store the count in the session rather than pass it along, if this is the case. Then you just worry about the start, or page number (start would be (page number - 1) * count. This would be better because the count for the last page will be less than the count on other pages, If we put the count in session we will remember that for previous pages...
    I think with the details I provided in this and previous post, you should be able to write the necessary code.
    >
    Thanks once again for all of your help, I really do
    appreciate the time and effort.
    Take care.
    Sincerely;
    Fayyaz

  • Calendar - when I want to edit a monthly recurring event but only for one month I am no longer given the box to update only that date.

    Calenndar - when I want to edit a monthly recurring event but only for one month I am no longer given the box to update only that date month.  How do I do this with the new operating system?

    Adding to Alan's answer:
    One of the problems that comes with these tricks for variable-rate acquisition is being able to match up sample data with the time that it was sampled. 
    If you weren't using either of E-series board's counters, there is a nifty solution to this!  You'll be using 1 of the counters to generate the variable-rate sampling clock.  You can then use the 2nd counter to perform a buffered period measurement on the output of the 1st counter.  This gives you a hw-timed measurement of every sampling interval.  You would need to keep track of a cumulative sum of these periods to generate a hw-accurate timestamp value for each sample.
    Note:  the very first buffered period measurement is the time from starting the 2nd counter until the first active edge from the 1st.  For your app, you should ignore it.
    -Kevin P.

  • Attempted repair of 3.5.1 database yields message that it may "...remove data supported only in newer versions..."

    After starting Aperture with Command+Option keys, and being presented Photo Library First Aid, then choosing Repair Database radio button, then clicking on Repair --- I am presented with a dailogue: 
    "This library has been opened with a newer version of Aperture.
    Repairing the library using this version of Aperture may remove data supported only in newer versions of Aperture."
    This does not add up, as I am running 3.5.1, which is the newest version.
    So, I am concerned about running the repair.
    Thoughts?
    Richard

    Richard, I am seeing the same. For some libraries Aperture seems to be confused about the version:
    My Aperture version is 3.5.1, the library is version 3.5.1, but still I am getting this message when trying to repair, even after repeated repairs.
    The repair does not seem to cause any harm, however, but I cannot recommend it as safe, as long as we do not know, what is causing this.
    I am seeing this only for libraries, that have been opened by the latest iPhoto 9.5.1. Is that the same for your Aperture libraries?
    -- Léonie
    Added: Repeated "Repair" does not help, but after one "rebuild", the version number will revert to normal and stick, and the warning is gone. But don't try to "rebuild" without first updating your backup of the Aperture library.

  • How can we generate a report in master data?

    hi,
    can we generate a report in master data,if yes pl give me the procedure, i am un able to get it.
    thanks & regards
    venkat

    Hi,
    Once we make the MAster infoobject as the data target, then we can create the report on the master data. to make the IO as Data target , you just need to mention the tick mark for<i> Infoprovide</i> check box  in the <i>MAster data /Texts</i> tab page of the IO.
    help says that:
    <i>InfoProvider:
    This indicator specifies whether the characteristic is an InfoProvider.
    If you want to use a characteristic as an InfoProvider, you have to assign an InfoArea to the characteristic. The system displays the characteristic in the InfoProvider tree in the Data Warehousing Workbench. You can use the characteristic as an InfoProvider in reporting and analysis.
    You can only use a characteristic as an InfoProvider if the characteristic contains texts or attributes.
    You can define queries for the characteristic (more precisely, for the master data of the characteristic) if you are using a characteristic as an InfoProvider. In this case, on the Attributes tabstrip, you are able to switch-on dual-level navigation attributes (navigation attributes for navigation attributes) for this characteristic in its role as InfoProvider.</i>
    With rgds,
    Anil kumar Sharma .P
    IBM-India.

  • Only LiveCycle Data Services 2.6 or higher is supported in this version of Flash Builder.

    Hi guys!
    I am using LiveCycle Data services 2.6 and Flash Builder 4.0..  and getting an error
    Only LiveCycle Data Services 2.6 or higher is supported in this version of Flash Builder.
    Any suggestion? why Flashbuilder is not detecting correct version?
    Thanks

    Hi Tom,
    Thank for reply.
    In my application I was using Flex 3.0 and LCDS 2.6.  I need to  generat PDF
    generate and save 100% at client side. so I used Flex Gumbo  to use
    filestream.save since flex 3.0 doesn't support filestream. Using Gumbo let
    me filestream but gave me an "direction" style declaration for charting
    component .. mismatch with previous version. To overcome that I used Flex 4
    flash builder. That gave got rid of direction but gave me LCDS 2.6 version
    error. I have copied my older workspace  to another location and using this
    workspace for Flex 4. I am using LCDS 2.6 though it give me same error. I
    have almost given up, really dont know what needed to be done. Thanks for
    your help.
    Vipul

  • Idoc is recieved on port but only control data

    Hi all,
    I hav created a program to send data on file port. Idoc gives status 03. but we we see data on recieving port (when file is generated)then data is abent only control data is recieved . No data records are there.I'm using FM EDI_OUTPUT_NEW to send data
    If I send that idoc again directly running The  FM EDI_OUTPUT_NEW then then conrol data and data records are recieved successfully.
    Plz help me
    Regards
    Richa

    Hi!
    The data section is missing mostly in that case, if all the data fields within it is empty. IDoc sending is skipping empty fields.
    In WE19, I think you entered all data within the fields.
    Check your sender program, you might accidentally clear the IDoc data strucure before the MASTER_IDOC_DISTRIBUTE fm call.
    Regards
    Tamá

Maybe you are looking for