With 'Revenue' Fact Column how can i calculate 'Previous 3 Months Revevue'

Hi All ,
i have a Column Called Revenue from Fact Table. i need to calculate Previous 3 Months Revevue
How can i achive this ? please help me
Thanks in advance

Hi,
Create one new logical coloumn bmm layer and
1.Check Use existing logical columns as the source
2.Click the Expression Builder button (three dots) to open the Expression Builder
3.Select Functions > Time Series Functions > Ago.
by using this u can create 3 months year ago revenue coloumn and use this coloumn in your formula
hope this will help for you
Naresh

Similar Messages

  • How can i calculate manually fact and dimensional table ralations?

    hi friends,
    how can i know the information dimension table >15 of fact table, how can i calculate thses percentages manually?
    regards
    suneel.

    hi Suneel,
    it's another topic, to improve query performance, we evaluate if aggregate help or not, to justify we use bw statistic or ST03N, where summarization ratio is > 10;
    the summarization ratio = number of record read from database / number of record transferred,
    we need also the other parameter 'percentage of db time', time spent on database / total query runtime.
    check
    SAP BW Query Performance Tuning with Aggregates
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/3f66ba90-0201-0010-ac8d-b61d8fd9abe9
    hope this helps.

  • When printing two-sided from my Mac on landscape A4 with 2 columns, how can I get my HP Photosmart 6520 to print the same way up?

    When printing two-sided from my Mac on landscape A4 with 2 columns, how can I get my HP Photosmart 6520 to print the same way up?

    Or, it is set the other way around (which makes more sense). Even though you are in Landscape mode, it is binding on the Long Side of the paper. Since you are in Landscape, you would want it to bind on the short side.
    Think of the Binding like a Book. How would you flip the finished pages to read the “book.” Where it would be bound in the imaginary book is how you want it to print.

  • How can i calculate overtime hours with PCR?

    hi all,
    i was wandering, can i calculate overtime hours in this case?
    example my DWS for this day is 08.00 - 16.00
    i do early overtime from 06.00 - 08.00, and after my working hours is finished, i do late overtime from 16.00 - 19.00
    (in TIP it is separated in 2 rows)
    how can i calculate my total overtime with pcr? i want to use the total for another calculation..
    06.00 - 08.00 : 2 hours
    16.00 - 19.00 : 3 hours
    +
            total      : 5 hours.
    thx all..

    ZPRN    DVARSTPRSNT
    N      COLOP*
    Y     DOUTTPORIGS
    Y E  HRS=0     HRS=PNUM  ADDDB9066 COLOP*
    Y *  COLOP*
    THE ZPRN PCR WILL GET THE TOTAL NUMBER WORKING HRS IN TIME TYPE 9066
    Now we will write a pcr to get overtime details
          DVARSTDPRCL
    *    DVARSTHOLCL
    * 1  D HRS=D9066  HRS-S HRS?0
    * 1 * ADDDB9067
    * 1 < COLOP*
    0 *
    NOW THIS PCR WILL BRING THE OVERTIME
    BASED ON YOUR DAILY WORK SCHEDULES U NEED TO CHANGE VARSTDPRCL NOW MY RULES WILL WORK FOR ALL THE SHIFTS OTHER THAN WEEKLY OFFS
    REGARDS,
    RAJA SEKHAR.

  • How can I calculate 3D distance with OS10g

    Hi,
    How can i calculate 3D distance between two objects using OS 10g?
    Thanks,

    If you have two 3d points you can:
    Make them into a line string
    Linear reference the 3d line string
    The length of the 3d line string is the distance between the points
    3d linear referencing is not supported for geodetic (non-cartesian) data.
    In 11g of course the story changes drastically.
    Here is a simple example:
    create or replace function points3dDistance(geom1 sdo_geometry,geom2 sdo_geometry)
    return number deterministic as
    geom sdo_geometry;
    length number;
    begin
    -- creating a 3d line segment
      geom := sdo_geometry(3002,null,null,sdo_elem_info_array(),sdo_ordinate_array());
    -- not checking, but should be cartesian coordinate system
    -- also geom1 and geom2 coordinate systems must match
      geom.sdo_srid := geom1.sdo_srid;
    -- creating a line segment from two points
      geom.sdo_elem_info.extend(3);
      geom.sdo_elem_info := sdo_elem_info_array(1,2,1);
      geom.sdo_ordinates.extend(6);
    -- if production i would check first for sdo_ordinates/elem info
    -- and make sure point data with the right number or ordinates
    -- since only demo assume input data comes from sdo_point in geom1 and geom2
      geom.sdo_ordinates(1) := geom1.sdo_point.x;
      geom.sdo_ordinates(2) := geom1.sdo_point.y;
      geom.sdo_ordinates(3) := geom1.sdo_point.z;
      geom.sdo_ordinates(4) := geom2.sdo_point.x;
      geom.sdo_ordinates(5) := geom2.sdo_point.y;
      geom.sdo_ordinates(6) := geom2.sdo_point.z;
    -- Now convert to lrs3d and get the length
      return sdo_lrs.measure_range_3d(sdo_lrs.convert_to_lrs_geom_3d(geom));
    end;
    select points3dDistance(
      sdo_geometry(3001,41048,sdo_point_type(5000,5000,0),null,null),
      sdo_geometry(3001,41048,sdo_point_type(5000,6000,1000),null,null))
    from dual;

  • How can i calculate tempsize and logdir size ?

    Hello:
    I have one database on a primary server and its replica on a replica server.
    Since one week to now, Mexican Exchange have had a considerable growth on transactions.
    My database works in line, every night all data is cleaned waiting for new data on next day.
    From last Thursday (29 april 2010) my replicas have had problems on drop all data using delete from.
    I use delete from because those tables are Oracle cache groups defined.
    Looking for error on tterrors logs (yesterday I got this error) I could see that replica was ran out of temporal memory.
    On line database and replica database I have defined same temporal memory size, on this case 512Mb. But primary database did not send any error about this parameter, so if I checked “monitor” columns on database, my temp_in_use size is too less than temp_allocate_size.
    My problem is, how can I calculate temp_allocate_size ?
    So I have had close to 3,000,000 record on a simple table, I mean, I could have 2 or 3 tables with same number of rows.
    If I have this parameter (may be 9,000,000) rows to be deleted, is there any way to calculate temp_allocate_size ?
    But now, I suppose that I need enogh space on “LogDir”, my high_water_mark for permanent memory is 10GB, I have defined 16 gb for LogDir, but if I stopped replication since the operation starts, I had 100% space used at middle of my operation, so 5Gb on real database used, it is using close to 16 gb on LogDir.
    My second doubt … is there any way to calculate LogDir size having the maximum database size ??
    Thanks a lot for your help.
    Regards.

    I think that approaching this from the perspective of increasing temporary space and log space is not the best way.
    Firstly, there are better ways to delete all rows from a table instead of using delete...
    1. For regular tables (ones that are not part of a cache group) you can use TRUNCATE TABLE ... This operation is replicated but the voilume of replicated data is vastly smaller than if you delete all rows individually. Also, it should take a lot less Temp space on both the source and target system.
    2. For cache tables, you could use UNLOAD CACHE GROUP ... This is similar to TRUNCATE but for cache tables. Again, this operation is replicated. Note that if you are using AWT or SWT cache groups and you DELETE in TimesTen then the data is also deleted from Oracle... is that wjhat is desired?
    If you have to use DELETE then it is very important that you delete the rows in small batches rather than as one huge transaction. Trying to replicate a delete of 3M rows will cause huge problems for replication. A much better solution is to delete in smaller batches using some application logic as follows:
    loop:
    commit;
    DELETE FIRST 1000 FROM sometable;
    If rowcount > 0 then goto loop;
    commit;
    This approach has 5 benefits:
    1. Much less Temp space will be needed.
    2. Replication will be able to process the delets as they occur rather than waiting until all 3M rows have been deleted and then trying to tepliate a single transaction of 3M deletes. This will greatly improve replication performance and also prevent excessive log file buildup.
    3. Checkpointing will be able to purge log files as the delete progresses rather than having to wait until all rowsw have been deleted. This will prevent excessive log file buildup.
    4. The overall time required will be much reduced compared to deleting all rows in a single delete.
    You should not stop replication while the delete s are being done as this just causes log file accumulation.
    To answer your original question. it is not possible ot 'calculate' the required temp space pof log space; rather one must use observed data from when the system is running to determine the necessary size. For Temp size, you can look at the Temp high water mark to see the maximum space used and then set TempSize to somewhat more than that value. For log space, you need enough to sustain the maximum amount of log data generated with some contingency. Running our of log space is a very bad idea...
    If you adopt my suggestions above then you can avoid these issues and also complete the cleanup of data in a shorter time.
    Chris

  • How can we calculate no.of leave used by the employee except sunday.

    Dear Friends,
    i have query how can we calculate no.of leave taken by the employee except sunday & government holiday.
    Example: A person take a sick leave From 13/02/2008 to 20/02/2008 with in that period 17th was sunday.
    when we calculate absence day for that person,Total value is 8 days but exact output is 7days only.How can i get exact result,any function module is avilable for this issue .
    Thanks & Regards,
    Rajkumar.A

    Hi,
    you have to consider SL leave as in holiday's So you can check with clinet if client says consider you can otherwise you con't
    its depend client requirement
    and you can go to controlls inSAP and change absence controlls for SL with holidays
    Regards
    Suresh

  • How can i calculate distance on Image in a pictureBox ?

    This is a screenshot of what i mean:
    In the screenshot i have a cone. The cone is moving around 360 degrees.
    In the form1 top i have this:
    private float distanceFromCenterKm = 200F; //in kilometers
    private float distanceFromCenterPixels; //in pixels 183pixels = 200Km
    Now in the constructor i did:
    numericUpDown1.Value = 260.5M;
    So now the distance is 300km
    Then:
    //initialize distanceFromCenterPixels
    distanceFromCenterPixels = (float)(/*183d*/ (double)numericUpDown1.Value * (double)distanceFromCenterKm / 200d);
    The numericupdown1 in the designer set the minimum value to 50 and maximum to 300 in jumps of 50.
    But now what i don't know is how to calculate the distance for example from the center to where the shadow start you can see in the screenshot that the shadow i mean just a bit before the 300km start. So i want that the cone will get untill the start of
    the shadow border. I'm close and i could keep playing with the values but how can i make that the numericupdown1 values will jump not by 50 but by some value/s so i can calculate easy any distance to any point ?
    Or something else maybe something like i'm using my mouse cursor when i make a click on a point some where in the image the cone will get to this distance(radius).
    So if i clicked with the mouse on the 300km on the image the value of the numericupdown will change to 260.5
    And if i clicked on the shadow border(will be hard to click exactly on the border) the cone will get to this distance.
    But my main question/problem is how to calculate any distance for example to this shadow border ?

    You simply should not go this way.
    Get a Map SDK and go on. 
    Microsoft has one. Probably for you is the best one the WPF one. AFAIK has it classes which you probably also can incorporate in your Windows Forms solution to get the Geo Information.
    https://msdn.microsoft.com/en-us/library/hh750210.aspx
    Success
    Cor

  • How can I calculate which is the index (x-value) correspondant to a certain value of a signal?

    I just want to calculate the quality of the peak in a FFT, defined as you can see in the attached file.
    For that, I would need to know how can I calculate in Labview the index or indices (x-value) correspondant to a certain amplitude value of the function.
    Kind regards, and thank you for reading,
    Jose
    Solved!
    Go to Solution.
    Attachments:
    quality.jpg ‏6 KB

    If you know the lineshape (e.g. Lorentzian), you can use nonlinear fit. This will give you the most accurate value.
    In the most simple case (insignificant offset and noise, no other peaks) you can apply the following code (if there are other peaks, then take a apropriate array subset before applying the code). To get correct units, just scale with df.
    LabVIEW Champion . Do more with less code and in less time .
    Attachments:
    WidthAtHalfHeight.png ‏52 KB

  • How can I calculate the request time ?

    Hello,
    How can I calculate the total consume time in each request ?
    For example, I want to start calculating the time when I click on a Link or a button and the end time when it completed load the page !
    Eric

    You could use a filter like this one:
    import java.io.*;
    import java.net.*;
    import java.util.*;
    import java.text.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    import javax.servlet.Filter;
    import javax.servlet.FilterChain;
    import javax.servlet.FilterConfig;
    import javax.servlet.ServletContext;
    import javax.servlet.ServletException;
    import javax.servlet.ServletRequest;
    import javax.servlet.ServletResponse;
    public class TimeFilter implements Filter {
        // The filter configuration object we are associated with.  If
        // this value is null, this filter instance is not currently
        // configured.
        private FilterConfig filterConfig = null;
        private static final boolean debug = false;
        private long start = 0;
        private long end = 0;
        public TimeFilter() {
        private void doBeforeProcessing(ServletRequest request, ServletResponse response)
        throws IOException, ServletException {
            if (debug) log("CalendarFilter:DoBeforeProcessing");
            System.out.print("In Filter  ");
            this.start = System.currentTimeMillis();
            System.out.println((new java.util.Date()).toString() +
                               " start request ");
        private void doAfterProcessing(ServletRequest request, ServletResponse response)
        throws IOException, ServletException {
            if (debug) log("TimeFilter:DoAfterProcessing");
            System.out.println("Completion Time = " + (System.currentTimeMillis() - start));
         * @param request The servlet request we are processing
         * @param result The servlet response we are creating
         * @param chain The filter chain we are processing
         * @exception IOException if an input/output error occurs
         * @exception ServletException if a servlet error occurs
        public void doFilter(ServletRequest request, ServletResponse response,
        FilterChain chain)
        throws IOException, ServletException {
            if (debug) log("TimeFilter:doFilter()");
            doBeforeProcessing(request, response);
            Throwable problem = null;
            try {
                chain.doFilter(request, response);
            catch(Throwable t) {
                problem = t;
                t.printStackTrace();
            doAfterProcessing(request, response);
            // If there was a problem, we want to rethrow it if it is
            // a known type, otherwise log it.
            if (problem != null) {
                if (problem instanceof ServletException) throw (ServletException)problem;
                if (problem instanceof IOException) throw (IOException)problem;
                sendProcessingError(problem, response);
         * Return the filter configuration object for this filter.
        public FilterConfig getFilterConfig() {
            return (this.filterConfig);
         * Set the filter configuration object for this filter.
         * @param filterConfig The filter configuration object
        public void setFilterConfig(FilterConfig filterConfig) {
            this.filterConfig = filterConfig;
         * Destroy method for this filter
        public void destroy() {
         * Init method for this filter
        public void init(FilterConfig filterConfig) {
            this.filterConfig = filterConfig;
            if (filterConfig != null) {
                if (debug) {
                    log("TimeFilter:Initializing filter");
         * Return a String representation of this object.
        public String toString() {
            if (filterConfig == null) return ("TimeFilter()");
            StringBuffer sb = new StringBuffer("TimeFilter(");
            sb.append(filterConfig);
            sb.append(")");
            return (sb.toString());
        private void sendProcessingError(Throwable t, ServletResponse response) {
            String stackTrace = getStackTrace(t);
            if(stackTrace != null && !stackTrace.equals("")) {
                try {
                    response.setContentType("text/html");
                    PrintStream ps = new PrintStream(response.getOutputStream());
                    PrintWriter pw = new PrintWriter(ps);
                    pw.print("<html>\n<head>\n</head>\n<body>\n"); //NOI18N
                    // PENDING! Localize this for next official release
                    pw.print("<h1>The resource did not process correctly</h1>\n<pre>\n");
                    pw.print(stackTrace);
                    pw.print("</pre></body>\n</html>"); //NOI18N
                    pw.close();
                    ps.close();
                    response.getOutputStream().close();;
                catch(Exception ex){ }
            else {
                try {
                    PrintStream ps = new PrintStream(response.getOutputStream());
                    t.printStackTrace(ps);
                    ps.close();
                    response.getOutputStream().close();;
                catch(Exception ex){ }
        public static String getStackTrace(Throwable t) {
            String stackTrace = null;
            try {
                StringWriter sw = new StringWriter();
                PrintWriter pw = new PrintWriter(sw);
                t.printStackTrace(pw);
                pw.close();
                sw.close();
                stackTrace = sw.getBuffer().toString();
            catch(Exception ex) {}
            return stackTrace;
        public void log(String msg) {
            filterConfig.getServletContext().log(msg);
    }and in the web.xml :
       <filter>
            <filter-name>TimeFilter</filter-name>
            <filter-class>
                com.filter.TimeFilter
            </filter>
        <filter-mapping>
            <filter-name>TimeFilter</filter-name>
            <url-pattern>/services/*</url-pattern>
        </filter-mapping > 

  • How can I calculate the value of the cell, which depends on other rows?

    Hi, all!
    I have an application with table. In this table i have calculate some fields, that doesn't exists in data class and depends on other row values, e.g. current row number, or sum of previous rows. How can i calculate this values in TableView?
    The problem is that I have no information about the current row number in the cell value factory.
    Example:
    public class Transaction {
         public String getName();
         public BigInteger getAmount();
    } // There is no getter for "Balance"
    Result table should be something like this:
    Name
    Amount
    Balance
    transaction1
    300
    300
    transaction2
    200
    500
    transaction3
    500
    1000
    Also, after sorting by "Amount", "Balance" should be recalculated:
    Name
    Amount
    Balance
    transaction3
    500
    500
    transaction1
    300
    800
    transaction2
    200
    1000

    Strings can be converted to numbers by various parse methods. For instance Strings can be converted to double via Double.parseDouble(myString).
    That being said, it appears that your textfield will contain numbers and operators, and so these operators will need to be parsed too. I would advise you to search on the terms Java infix postfix.

  • How can I calculate disk space/DB space and storage spaces.

    Hi all,
    How can I calculate space clauses and memory related parameters for tables and table spaces? Updation is not allowed in these tables.
    I have to create a database also.
    I expect a reply with examples.
    [email protected]
    [email protected]
    Thanks for all replies .

    Boby,
    The formula to estimate the storage parameters for tables and indexes are the following:
    Table size = db block size * (# of Estimated rows in 12 months * average row length)/(db block size-90) *(1-PCTFREE/100)
    Let assume that you want to create a table called Jose_tab,
    db block size = 4092
    Estimated row length in 12 months = 1000
    Average row len = 100
    PCTFREE(Updation is not allowed) = 0
    Then, your INITIAL storage parameter will be estimated as follows:
    4092*1000*100
    (4092-90)*(1-0/100)
    = About 10M
    Your create table command will look like this,
    CREATE TABLE jose_tab
    (col1 VARCHAR2(10), col2 NUMBER(2),
    ....coln VARCHAR2(100))
    STORAGE(INITIAL 10M NEXT 10M
    PCTINCREASE 0)
    PCTFREE 0 PCTUSED 80
    TABLESPACE tablespace_name;
    Storage parameters for tablespace depends on the amount of disk space available. You can ignore tablespace storage parameters since the size of the tablespace is determined by the size(s) of the data files. Refer to the DBA manual for details.
    John

  • I BOUGH A EBOOK WITH A INCORRECT MAIL, HOW CAN I TRANFER THIS EBOOK TO MY CORRECT ADOBE ACCOUNT?

    I BOUGH A EBOOK WITH A INCORRECT MAIL, HOW CAN I TRANFER THIS EBOOK TO MY CORRECT ADOBE ACCOUNT?

    Hi there
    No need to get testy. Lilybiri was being spot on with the comparison.
    The only solution for you will be to uninstall the Flash player, then locate an older version of the Flash player and install it on the Windows XP you have. Captivate is now at version 8 and several years have passed since version 1.1. You will likely not make 1.1 work with Windows 7 or Windows 8. In fact, the only way I'm aware to remotely make it work on those operating systems is by first ensuring you have the Professional or Ultimate version, then installing the Windows XP mode Virtual Machine.
    Here is a link for uninstalling the Flash Player
    And here is a link for the older versions
    Sorry, but you are on your own to sort exactly how far back you will need to go to find a version of Flash Player that works with this version of Captivate. And keep in mind, that even though you finally get a Flash Player version that allows it to run, you will only be able to run it on some form of Windows XP. It will not run on Windows 7 or 8 unless you install the VM. And when you do that, you will be stuck inside the VM and will not be able to record anything outside it in the 7 or 8 environment.
    Cheers... Rick

  • Row with sum of column- how to?

    Hallo,
    i have a jspx-site with a table.
    one of the columns help prices. about these column i want to show a row with the sum of the column. how can i do that.
    any help is appreciated.

    Hi,
    See:
    Displaying a total sum value in the af:table -> footer
    Kuba

  • How can I calculate the total time in java?

    Hello!
    I need to calculate the total time!
    For example I have start time:
              Format formatter1;
              Date date1 = new Date();
              formatter1 = new SimpleDateFormat("hh:mm:ss");
              String startTime = formatter1.format(date1);
              //startTime = "14:20:40";
    And I have finish time:
              Format formatter2;
              Date date2 = new Date();
              formatter2 = new SimpleDateFormat("hh:mm:ss");
              String finishTime = formatter2.format(date2);
              //finishTime = "08:30:55";
    So, after manually calculating, I get total time: "18:10:15"
    How can I calculate the total time in java? (Using formatter1 and formatter2 I suppose)
    What I need is to print "total 18:10:15"
    Thanks!

    800512 wrote:
    I did the following but, I think something is wrong here:
    I defined before: Date date1 = new Date(); Date date2 = new Date();
    And it should be exactly 5 seconds between them.
    I found delta between date1 and date2:
    Format formatter = new SimpleDateFormat("HH:mm:ss");
              long timeInMilliFromStart = date1.getTime() - date2.getTime() ;
              Date date3 = new Date(timeInMilliFromStart);
              String timeInSecFromStart = formatter.format(date3);
    and I get always
    //timeInSecFromStart = 02:00:05
    But it should be exactly 00:00:05.
    What can be a problem?Because, like I said, a Date measure an instant in time, not a duration. So when you have 5000 ms, and you turn that into a Date, that means 5 sec. after the epoch, which works out to 1/1/1970 00:00:05.000 GMT.
    As I mentioned, if you're not currently in GMT, then you have to set the TZ of the DateFormat to GMT. Right now, it's showing you the time in your TZ. If you included the date in your SimpleDateFormat, you'd see either 1/1/1970 or 12/31/1969, depending on which TZ you're in.
    Bottom line: You're trying to use these classes in a way they're not meant for, and while you can get the results you want for a limited set of inputs if you understand what these classes do and how to work with that, it's a brittle approach and comes with all kinds of caveats.

Maybe you are looking for