IP-Planning Function Help!! Is this possible?

Dear Experts,
I am relatively new to IP and I want to check if this is possible. I would like to copy a Keyfigure value from one Aggregation level to another Aggregation level.
Here is my scenario.
I have an Aggregation level 1 where it has characteristics Product Group, Year, Version and Percentage. So the planner would plan as
Product Grp-Year-Version---Percentage
GROUP1-2010-100---10%
GROUP2-2010-100---20%
GROUP3-2010-100---15%
Now I have another Aggregation level 2 where it has characteristics Product Group, Product, Year, Version and Cost. I  would want the Percentage value which was planned in Agg. level 1 to be copied to all the products in that group. My Planning book would look like
Product Grp-PRODUCT-Year-Version-Percentage-Standard Cost-Plan Cost
GROUP1-PRD1-2010-100-10%-$100-$110
GROUP1-PRD2-2010-100-10%-$200-$220
GROUP1-PRD3-2010-100-10%-$300-$330
GROUP2-PRD4-2010-100-20%-$1000-$1200
GROUP2-PRD5-2010-100-20%-$2000-$2400
GROUP2-PRD6-2010-100-20%-$3000-$3600
GROUP3-PRD7-2010-100-15%-$1000-$1150
GROUP3-PRD8-2010-100-15%-$2000-$2300
GROUP3-PRD9-2010-100-15%-$3000-$3450
Currently The above products already exist in the cube but the Percentage value for them is blank. When the user saves the first planning book I would want the Planning function to be executed and change the percentage value of each product based on the Prodcut group it belongs to. Also I want the Plan cost to be calculated with the percentage value and the standard cost.
Now when the Planned opens the second planning book he can see the Plan cost already calculated based on the percentage value. However, I will provide an option to the user to change the Plan cost if needed.
Important thing for me to know how I can  take the percentage value from first few records and change the value of percentage in the second set of records for each product based on its product group.
Hope my explanation is clear and it is possible to do it.
Thanks for your inputs.
KK

Hey Andrey, I have tried in several different way but was not able to achieve this. My Stupidity!! I am new to IP and this is the first time I am using  Fox formulae  and this is driving me crazy. I think its just a basic understanding issue.
I just want  to reiterate whay I exactly wanted. Could you please help me with the code.
Here is the current data in the planning  cube. The first 3 rows are planned from a planning book. The rest of the rows are loaded from a flat file. When the planning function is executed we would want to take the percentage from the Product group and assign it to each product in the rest of the rows there by calculating the Plan cost.
Current/Before executing Planning Function.
Product Grp-PRODUCT-Year-Version-Percentage-Standard Cost-Plan Cost
GROUP1-#-2010-100-10%-00-00
GROUP2-#-2010-100-20%-00-00
GROUP3-#-2010-100-15%-00-00
GROUP1-PRD1-2010-100-00-$100-00
GROUP1-PRD2-2010-100-00-$200-00
GROUP1-PRD3-2010-100-00-$300-00
GROUP2-PRD4-2010-100-00-$1000-00
GROUP2-PRD5-2010-100-00-$2000-00
GROUP2-PRD6-2010-100-00-$3000-00
GROUP3-PRD7-2010-100-00-$1000-00
GROUP3-PRD8-2010-100-00-$2000-00
GROUP3-PRD9-2010-100-00-$3000-00
After executing Planning Function
Product Grp-PRODUCT-Year-Version-Percentage-Standard Cost-Plan Cost
GROUP1-#-2010-100-10%-00-00
GROUP2-#-2010-100-20%-00-00
GROUP3-#-2010-100-15%-00-00
GROUP1-PRD1-2010-100-10%-$100-$110
GROUP1-PRD2-2010-100-10%-$200-$220
GROUP1-PRD3-2010-100-10%-$300-$330
GROUP2-PRD4-2010-100-20%-$1000-$1200
GROUP2-PRD5-2010-100-20%-$2000-$2400
GROUP2-PRD6-2010-100-20%-$3000-$3600
GROUP3-PRD7-2010-100-15%-$1000-$1150
GROUP3-PRD8-2010-100-15%-$2000-$2300
GROUP3-PRD9-2010-100-15%-$3000-$3450
This is what I would expect after executing the planning function. Could you please help me with the code. What needs to be selected as the Characteristics to be changed and the Key figure and if I have to select any characteristics for conditions.
Thanks in advance for your help!!
KK

Similar Messages

  • Many applets require the same function.  Is this possible?

    I have an irpt page that I will be creating at least 9 iGrids (lights).  Each of the grids represents data from a line.  Each of those grids use the same display and query.  Each of the applets differ in which the Param.1 is the line number.  My function UpdateEvent (Lights_Updated) assigns variables to each of the measurement's data and assigns its conditional values for only the first line.  Before I go further, I would like to create something that will use the same variables, but apply them to each of the applets.  I really would not like to replicate this function 8 more times for each of the lines.  Is it possible and what can I do to get started?
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
    <!--          
    Owner          
    Phone          
    Date          
    Brief Description:
                   Extrusion dashboard consisting of lights indicate good and bad data.
                   Data consist of manufacturing and QA checks
    -->
            <title>Extrusion Dashboard</title>
            <meta http-equiv="Content-Type" content="text/html; charset=us-ascii" />
            <meta http-equiv="Expires" content="0" />
            <meta http-equiv="Cache-Control" content="no-cache" />
            <meta http-equiv="Pragma" content="no-cache" />
              <script type="text/javascript">
    where          tblMain.All applets
    applet          BLineLights...NLineLights
    type          UpdateEvent
    class          param
    method          UpdateEvent
    Comments     Extracts the cell value for each measurement along with
                   its lower and upper spec.  The specs are compared to the
                   actual values and given a color when conditions are met.
    Examples     n/a
              function Lights_Updated()
                   var applet = document.BLineLights;
                   var grid = applet.getGridObject();
                   var BnewGasUsage = grid.getCellValue(1,4);
                   var BGasUsageLL = grid.getCellValue(1,5);
                   var BGasUsageUL = grid.getCellValue(1,6);
                   var BnewTopTemp = grid.getCellValue(2,4);
                   var BTopTempLL = grid.getCellValue(2,5);
                   var BTopTempUL = grid.getCellValue(2,6);
                   var BnewMiddleTemp = grid.getCellValue(3,4);
                   var BMiddleTempLL = grid.getCellValue(3,5);
                   var BMiddleTempUL = grid.getCellValue(3,6);
                   var BnewBottomTemp = grid.getCellValue(4,4);
                   var BBottomTempLL = grid.getCellValue(4,5);
                   var BBottomTempUL = grid.getCellValue(4,6);
                   // Gas Usage
                   if (BnewGasUsage == BGasUsageLL || BnewGasUsage == BGasUsageUL)
                        grid.setCellColorAsString(1,7, "yellow");
                   else if (BnewGasUsage < BGasUsageLL || BnewGasUsage > BGasUsageUL)
                        grid.setCellColorAsString(1,7, "red");
                   else
                        grid.setCellColorAsString(1,7, "green");
                   // Top Temp
                   if (BnewTopTemp == BTopTempLL || BnewTopTemp == BTopTempUL)
                        grid.setCellColorAsString(2,7, "yellow");
                   else if (BnewTopTemp < BTopTempLL || BnewTopTemp > BTopTempUL)
                        grid.setCellColorAsString(2,7, "red");
                   else
                        grid.setCellColorAsString(2,7, "green");
                   // Middle Temp
                   if (BnewMiddleTemp == BMiddleTempLL || BnewMiddleTemp == BMiddleTempUL)
                        grid.setCellColorAsString(3,7, "yellow");
                   else if (BnewMiddleTemp < BMiddleTempLL || BnewMiddleTemp > BMiddleTempUL)
                        grid.setCellColorAsString(3,7, "red");
                   else
                        grid.setCellColorAsString(3,7, "green");
                   // Bottom Temp
                   if (BnewBottomTemp == BBottomTempLL || BnewBottomTemp == BBottomTempUL)
                        grid.setCellColorAsString(4,7, "yellow");
                   else if (BnewBottomTemp < BBottomTempLL || BnewBottomTemp > BBottomTempUL)
                        grid.setCellColorAsString(4,7, "red");
                   else
                        grid.setCellColorAsString(4,7, "green");
                   //applet.updateGrid(true);
              </script>
        </head>
        <body>
    <!--          
              This body consist of two tables one of which is embedded in the first table.  "tblMain" sets the perimeter of the body. 
                   (1) The first row contains the line identification. 
                   (2) The second row contains the Manufacturing iGrids for each line.
                   (3) The third row contains the QA checks iGrids for each line.
    -->
              <form name="frmMain">
                   Extrusion Lines CrossTab version (proven slow)
                   <table name="tblMain" border="5">
                        <TR>
                             <td></td>
                             <TD align="Center">B</TD>
                             <TD align="Center">C</TD>
                             <TD align="Center">D</TD>
                             <TD align="Center">E</TD>
                             <TD align="Center">F</TD>
                             <TD align="Center">G</TD>
                             <TD align="Center">L</TD>
                             <TD align="Center">M</TD>
                             <TD align="Center">N</TD>
                        </TR>
                        <TR>
                             <td>
                                  <TABLE name="tblDesc" border="0">
                                  <TR>
                                       <TD>Gas Usage</TD>
                                  </TR>
                                  <TR>
                                       <TD>Top Temp</TD>
                                  </TR>
                                  <TR>
                                       <TD>Middle Temp</TD>
                                  </TR>
                                  <TR>
                                       <TD>Bottom Temp</TD>
                                  </TR>
                                  </TABLE>
                             </td>
                             <TD>
                                  <applet name="BLineLights" codebase="/Illuminator/Classes" code="iGrid" archive="illum8.zip" width="75" height="100" mayscript>
                                  <param name="DisplayTemplate" value="LincolnElectric/Training/gpyles/Production/dspSK_DB_CurrentData">
                                  <param name="QueryTemplate" value="LincolnElectric/Training/gpyles/Production/qrySK_DB_CurrentData">
                                  <param name="Param.1" value="B">
                                  <param name="UpdateEvent" value="Lights_Updated">
                                  </applet>
                             </TD>
                             <TD>
                                  <applet name="CLineLights" codebase="/Illuminator/Classes" code="iGrid" archive="illum8.zip" width="75" height="100" mayscript>
                                  <param name="DisplayTemplate" value="LincolnElectric/Training/gpyles/Production/dspSK_DB_CurrentData">
                                  <param name="QueryTemplate" value="LincolnElectric/Training/gpyles/Production/qrySK_DB_CurrentData">
                                  <param name="Param.1" value="C">
                                  <param name="UpdateEvent" value="Lights_Updated">
                                  </applet>                              
                             </TD>
                        </TR>
                        <TR>
                             <TD>
                             </TD>
                        </TR>
                   </TABLE>
              </form>
        </body>
    </html>

    I think you can keep one "master" function, let's continue to call that "Lights_Updated".
    For each of your 9 iGrid applets, you'll need 9 unique functions because unfortunately, you can not do <param name="UpdateEvent" value="Lights_Updated('CLine')">
    But, what you can do is pass a reference to a specific applet once, you are in Javascript.  What I mean is this.
    Have an update event on the BLineLights called BLineLights_Updated.
    Have an update event on the CLineLights called CLineLights_Updated.
    and so on.
    Then, each of your XLineLights_Updated functions will call the master Lights_Updated function, passing in a reference to the correct applet, like this:
    function BLineLights_Updated() {
        Lights_Updated(document.BLineLights);
    function CLineLights_Updated() {
        Lights_Updated(document.CLineLights);
    function XLineLights_Updated() {
        Lights_Updated(document.XLineLights);
    function Lights_Updated(myAppletRef) {
        // then this next line is the only thing that changes.
        var applet = myAppletRef;
        var grid = applet.getGridObject();
        var BnewGasUsage = grid.getCellValue(1,4);
        var BGasUsageLL = grid.getCellValue(1,5);
        var BGasUsageUL = grid.getCellValue(1,6);
        ... more code here
    Does this make sense?  That's a lot of code to have to repeat 9 times!

  • Functionality spec - is this possible to achieve?

    I have a request from a client for an app that requires certain functionality I am unsure is possible. I am happy to learn how to do it if it is possible but just wanted to get a yay or a nay as to whether this should be possible to implement.
    App is for iPad only.
    The app is to be used by Health & Safety inspectors and needs to generate and email a report (ideally in pdf format) to a designated recipient.
    The app will consist primarily of a form where each form field requires the inspector to enter a value
    The inspector can include a photo associated with any of the form fields (the photo can be taken using the iPad camera or one chosen from the photo library on the iPad.
    Once the form has been completed clicking on a Submit button will send the data to an external server and the server will deal with creating the pdf and emailing it.
    I have created PDF files on the fly before using PHP so I know that in theory this is possible but I just need to get some reassurance that I will be able to implement the entire process described above.
    I am not looking for a ready made solution - just really some reassurance this is technically possible without too many headaches. If you can spot any problematic elements please let me know.
    Thanks
    Paul

    If you think about a worse case, an inspector might have lined up ten 8 megapixel images, and that final post could take quite a while. Could you design the form as a series of pages, where at the end of each entry you post that page's worth of data?
    Doing it that way would mean you could call one PHP script that cues up the many pages to make the PDF, then on the last screen you call a different PHP that combines the previously uploaded images, and sends them as a PDF to the specified email address.
    I don't think it would be easy to make that final PDF have editable text, it would just be a series of images.
    As for the creating and sending of the image, you can image a movieclip that is a template of the page in question. When the form is filled in you do a draw() of the movieclip to create the bitmap you need to submit, and then you call the PHP with the bitmap data.
    Here's a function from something I made recently, that is able to send a bitmapdata as a png or jpg to various PHPs:
    public function sendflake(bmd:BitmapData,type:String="save",format:String = "png",fromname:String = "",toemail:String = ""){ 
              var t:int = getTimer();
              var byteArray:ByteArray = new ByteArray();
              if(format=="png"){
                        bmd.encode(new Rectangle(0,0,bmd.width, bmd.height), new PNGEncoderOptions(), byteArray);
              trace("png",getTimer()-t);
              }else{
                        bmd.encode(new Rectangle(0,0,bmd.width, bmd.height), new JPEGEncoderOptions(), byteArray);
              trace("jpg",getTimer()-t);
              var loader:URLLoader = new URLLoader();
              var path:String = host+"saveimage.php"
              if(type=="print"){
                        path = host+"printimage.php"
              if(type=="email"){
                        path = host+"emailimage.php"
              var url:String = path + "?name=" + fromname + "&email=" + toemail;
              var req:URLRequest = new URLRequest(url);
              req.requestHeaders =  new Array(new URLRequestHeader("Content-type","application/octet-stream"));
              req.method = URLRequestMethod.POST;
              req.data = byteArray;
              loader.addEventListener(Event.COMPLETE,sent);
              loader.load(req);
    The gettimer parts are just to make sure the PHP URL is not still cached, and the various PHPs are used to either send the image to a playback AIR app, to a print server, or to email to someone.

  • SQL Query Help - Is this possible or impossible????

    Hi guys,
    I need help with an SQL query that I'm trying to develop. It's very easy to explain but when trying to implement it, I'm struggling to achieve the results that I want.....
    For example,
    I have 2 tables
    The first table is:
    1) COMPANY create table company (manufacturer varchar2(25),
                                                          date_established date,
                                                          location varchar2(25) );My sample test date is:
    insert into company values ('Ford', 1902, 'USA');
    insert into company values ('BMW', 1910, 'Germany');
    insert into company values ('Tata', 1922, 'India');The second table is:
    2) MODELS create table models (manufacturer varchar(25),
                                                 model varchar2(25),
                                                 price number(10),
                                                 year date,
                                                 current_production_status varchar2(1) ) ;My sample test data is:
    insert into models values ('Ford', 'Mondeo', 10000, 2010, 0);
    insert into models values ('Ford', 'Galaxy', 12000,   2008, 0);
    insert into models values ('Ford', 'Escort', 10000, 1992, 1);
    insert into models values ('BMW', '318', 17500, 2010, 0);
    insert into models values ('BMW', '535d', 32000,   2006, 0);
    insert into models values ('BMW', 'Z4', 10000, 1992, 0);
    insert into models values ('Tata', 'Safari', 4000, 1999, 0);
    insert into models values ('Tata', 'Sumo', 5500,   1996, 1);
    insert into models values ('Tata', 'Maruti', 3500, 1998, 0);And this is my query:
    SELECT
            com.manufacturer,
            com.date_established,
            com.location,
            DECODE(nvl(mod.current_production_status, '0'), '0', '-', mod.model),
            DECODE(nvl(mod.current_production_status, '0'), '0', '-', mod.price),
            DECODE(nvl(mod.current_production_status, '0'), '0', '-', mod.year),
            mod.current_production_status
    FROM
           company com,
           models mod
    WHERE
          mod.manufacturer = com.manufacturer
          and com.manufacturer IN ('Ford', 'BMW', 'Tata')
          and mod.current_production_status IN (1,0)
    ORDER BY
            mod.current_production_status DESCWhat I want the query to output is this:
    com.manufacturer        com.date_established          com.location          mod.model          mod.price             mod.year     mod.current_production_status
    Ford               1902                    USA               Escort               10000               1992          1
    BMW               1910                    Germany               -               -               -          0
    Tata               1922                    India               Sumo               5500               1998          1If current_production_status is 1 it means this particular model has been discontinued
    If current_production_status is 0 it means the manufacturer does not have any discontinued models and all are in procuction.
    The rule is only one record per manufacturer is allowed to have a current_production_status of 1 (so only one model from the selection the manufactuer offers is allowed to be discontinued).
    So the query should output the one row where current_production_status is 1 for each manufacturer.
    If for a given manufacturer there are no discontinued models and all have a current_production_status of 0 then ouput a SINGLE row that only includes the data from the COMPANY table (as above). The rest of the columns from the MODELS table should be populated with a '-' (hyphen).
    My query as it is above will output all the records where current status is 1 or 0 like this
    com.manufacturer        com.date_established          com.location          mod.model          mod.price          mod.year     mod.current_production_status
    Ford               1902                    USA               Escort               10000               1992          1
    Tata               1922                    India               Sumo               5500               1998          1
    Ford               1902                    USA               -               -               -          0                    
    Ford               1902                    USA               -               -               -          0
    BMW               1910                    Germany               -               -               -          0
    BMW               1910                    Germany               -               -               -          0
    BMW               1910                    Germany               -               -               -          0
    Tata               1922                    India               -               -               -          0
    Tata               1922                    India               -               -               -          0However this is not what I want.
    Any ideas how I can achieve the result I need?
    Thanks!
    P.S. Database version is '10.2.0.1.0'

    Hi Vishnu,
    Karthiks query helped...
    But this is the problem I am facing...
    SELECT
            com.manufacturer,
            com.date_established,
            com.location,
            DECODE(nvl(mod.current_production_status, '0'), '0', '-', mod.model),
            DECODE(nvl(mod.current_production_status, '0'), '0', '-', mod.price),
            DECODE(nvl(mod.current_production_status, '0'), '0', '-', mod.year),
            mod.current_production_status
    FROM
           company com,
           models mod
    WHERE
          mod.manufacturer = com.manufacturer
          and com.manufacturer = 'Ford'
          and mod.current_production_status IN (1,0)
    ORDER BY
            mod.current_production_status DESCThe value of:
    and com.manufacturer = 'Ford'will be dependent on front end user input....
    When I run the query above I get all the rows where current_production_status is either 1 or 0.
    I only require the rows where current_production_status is 1.
    So if I amend it to look like this:
         and mod.current_production_status = 1This works....
    BUT if a user now passes in more than one manufacturer EG:
    and com.manufacturer IN ('Ford', 'BMW')The query will only return the one row for Ford where current_production_status is 1. However because BMW has no models where current_production_status is 1 (all 3 are 0), I still want this to be output - as one row....
    So like this:
    com.manufacturer        com.date_established          com.location          mod.model          mod.price             mod.year     mod.current_production_status
    Ford               1902                    USA               Escort               10000               1992          1
    BMW               1910                    Germany               -               -               -          0So (hopefully you understand), I want both cases to be catered for.....whether a user enters one manufacturer or more than one...
    Thanks you so much!
    This is really driving me insane :-(

  • Customised Planning functions in Integrated Planning

    Hi experts,
    i have a requirement in my project like this.
    i have 2 suppliers S1 ans S2 having data like
    S1             S2
    100           50
    if i change the value of S1 to 90 the difference of the value (100-90) needs to add to S2 i.e 5010.(the total of S1 and S2 should be constant i.e S1S2=150 in all cases).
    is there any standard Planning function to execute this scenario.please provide your inputs for this.
    Thanks in advance.

    Hi,
    i think there is a possible way of doing this even if the total ie S1+S2 is not know.guess the solution will be long to implement it. U can use it if its necessary.
    there is a paper on how t run planning functions on delta records.
    You need to implement this first.
    then create a planning function that has a condition for suppliers  s2 alone.Read the delta records of S1, multiply the value with -1 and add it to the value of S2.
    this way the total the relations can be maintained.
    Regards.
    Shafi

  • Standard Planning function Type

    Hi,
    Would anybody give some example of standard planning function type except COPY and REVALUATION.
    Points will be awarded to the suitable reply
    Regards,

    Hi ,
      Kindly go through the below link for more details on all standard functions,
    [http://help.sap.com/SAPHELP_NW04s/helpdata/EN/43/37d8c2af4c1bcbe10000000a1553f7/frameset.htm]
    1. Unit conversion:
               Consider that all your planned records are in "G" unit and if you want to convert this to any other unit like "Pound", then you can use this planning function. The prerequisite for this is, you need to create a suitable "Unit conversion type" using the tcode: RSUOM, for converting "G" to "Pounds".
    2. Currency Translation:
               Consider that all your planned records are in "EUR" currency and if you want to convert this to any other currency like "USD", then you can use this planning function. The prerequisite for this is, you need to create a suitable "Currency translation type" using the tcode: RSCUR, for converting "EUR" to "USD".
    3. Deleting Invalid Combinations:
                Consider that you did not have any characteristicc relationships in your project and hence you have invalid data in your planning cube. For example, you have 'Product' and 'Product Group' in your cube and the end user has entered wrong values for 'product group' for a corresponding 'product'. In this case you can create a characteristic relationship for 'Product' and 'Product Group' and then execute this planning function so that all the records with invalid relationships between 'Product' and 'Product Group' will be deleted.
    4. Repost:
             This is similar to 'Copy' planning function. But the only difference is 'Copy' copies the records from source to target. But 'Repost' moves the records from source to target, (i.e.) after the records are copied they are deleted in the source.
    5. Repost (Characteristic Relationships):
             This is similar to 'Deleting Invalid Combinations' but the only difference is, instead of deleting the invalid combinations, this function reposts the old relationships to the new correct ones based on active characteristic relationships.
    6. Distribution by Key:
            You can use the Distribution by Key function type to generate the characteristic combinations to which data is distributed in accordance with the master data and characteristic relationships. The key figure values are distributed according to the expressly specified distribution keys. These are distribution functions that determine the weighting of the distribution.
    For example, you have planned revenue based on 'Country' but you have some part of the revenue which is "not assigned" to any country. You can use this planning function to distribute this "Not Assigned" revenue to any particular "Country".
    7. Distribution by Reference Data:
              You use the Distribution by Reference Data function type to generate combinations of characteristics that correspond to the reference data. The system distributes data in accordance with these combinations. The key figure values are distributed by percentage in accordance with the reference data. You use the table for key figure selection to select the key figures that you want to distribute.
    For example, you have actual values for the year '2011' and you want to use this data to distribute it to the future year '2012'.
    In this case you can use this planning function, to distribute the '2011' data to '2012'. The prerequisite for this is there should be planned data already available for the year '2012'. This function is used after the manual planning is done for the future year.
    Hope this clears your doubt.
    Regards,
    Balajee

  • I have an ipad and iphone sharing icloud.  The ipad is using 268mb, the iphone 2.6.  My plan is 5gb but it keeps saying I don't have enough space to back them up.  How is this possible?

    I have an ipad and iphone sharing icloud.  The ipad is using 268mb, the iphone 2.6.  My plan is 5gb but it keeps saying I don't have enough space to back them up.  How is this possible?

    Hey sameyrs2,
    Thanks for the question. Based on what you stated, it seems like you are getting a message when trying to backup to iCloud. I would recommend that you read these articles, they may be helpful in troubleshooting your issue.
    iCloud: Understanding Backup alert messages
    Manage your iCloud storage
    Thanks for using Apple Support Communities.
    Cheers,
    Mario

  • IP - Is it possible to call exit planning function from ABAP Report..

    Hi All,
    Greetings.
    Is it possible to call exit planning function from ABAP Report (t-code SE38) ? Or I mean is not limited only to be called from ABAP Report, perhaps from BSP / Web-Dynpro / Function Module.
    If somebody here has been doing it before, I'm keen to ask to kindly share it. Particularly how to call and transfer data to that exit function.
    Or if somebody has done in BPS, appreciate if it can be shared too .
    Thanks a lot and have a good day,
    Best regards,
    Daniel N.

    Hi.
    You can achive this as suggested by Mattias in your previous post.
    Lets say you have next data structure:
    CostCenter | Amount | PercentForDistibution |
    Create input ready query in this format. Restrict cost center by variable type range.
    Create WAD with analysis item.
    When you run web page you enter range of cost centers (lets say you will enter 101004 to 101010).
    I assume you have data only for 101004 in your cube (lets say 1000).
    You will see only one record in your webpage.
    CostCenter | Amount | PercentForDistibution |
    101004       | 1000     | NOTHING
    When you create WAD in analysis item properties set "NUMBER_OF_NEW_LINES" to lets say 1 (so in WAD you will see always one blank line for entering new data).
    Just add 6 new records:
    CostCenter | Amount   | PercentForDistibution |
    101005       | NOTHING| 10
    101006       | NOTHING| 30
    101007       | NOTHING| 20
    101008       | NOTHING| 25
    101009       | NOTHING| 5
    101010       | NOTHING| 10
    Then run planning FOX function like this:
    FOREACH Z_COST_CENTER.
    IF {Amount, Z_COST_CENTER} <> 0
    Z_AMNT_TO_DISTRIBUTE = {Amount, Z_COST_CENTER}.
    ENDIF.
    ENDFOR.
    FOREACH Z_COST_CENTER.
    IF {PercentForDistibution Z_COST_CENTER} <> 0.
    {Amount, Z_COST_CENTER} = Z_AMNT_TO_DISTRIBUTE * {PercentForDistibution Z_COST_CENTER}.
    ENDIF.
    ENDFOR.
    It is not perfect FOX, but as an idead, it should work.
    Regards.

  • How to implement this planning function using Fox formula

    Hello,
    I am new to Fox.
    I want to implement this complex logic in a planning function
    i have A (Kf X from infoprovider Z_A), B (Kf Y from infoprovider Z_B) & moreover there is one more condition,
    If current FISCPER > variable value of FISCPER
    KF Z = KF Z1 (from Cube C1)
    Else KF Z = KF Z2 (from Cube C2).
    for a particular calender week,
    X =   ( Y * Z ) / (summation of (Y * Z)  for each week of the whole year)
    I know it is complex.
    but i have to implement this in a planning function.
    The aggreagtion level is built on a multiprovider having A, B , C1 & C2.
    Can someone help me out with the FOX formula for this? or is there any better way to do this.
    Thanks john

    Hi Gerardo,
    Thanks for that.
    I have tried something similiar to it
    DATA CHA_CALWEEK TYPE 0CALWEEK.
    DATA CHA_COMP_CODE TYPE 0COMP_CODE.
    DATA CHA_FISCPER TYPE 0FISCPER.
    DATA VAR_PERIOD  TYPE 0FISCPER.
    DATA SUM_YEAR TYPE F.
    DATA TEMP_D TYPE F.
    DATA SUM_WEEK TYPE F.
    CURRENCY IS LOCAL CURRENCY. FOR DATA SELECTION TO BE RIGHT, NECESSARY TO DERIVE FROM CC.
    DATA UN_LOC_CURRCY TYPE 0LOC_CURRCY.
    UN_LOC_CURRCY = VARV(Z_U_I100).
    CHA_COMP_CODE = VARV(Z_U_I100).
    To Calculate the D
    VAR_PERIOD = VARV(Z_U_I010).
    SUM_YEAR = 0.
    TEMP_D =0.
    IF CHA_FISCPER > VAR_PERIOD.
    TEMP_D = {ZSA_BUD2X,CHA_COMP_CODE,CHA_FISCPER,YBUDG_01X,CHA_CALWEEK}.
    FOREACH CHA_CALWEEK.
    SUM_YEAR = SUM_YEAR + TEMP_D * {ZCREENTSV,CHA_COMP_CODE,CHA_FISCPER,ZIP_RREF1} .
    ENDFOR.
    ELSE.
    TEMP_D = ({ZSAEXCUSV,CHA_COMP_CODE,CHA_FISCPER,YRT_C02X} - {ZCREENTSV,CHA_COMP_CODE,CHA_FISCPER,YRT_C02X}).
    FOREACH CHA_CALWEEK.
    SUM_YEAR = SUM_YEAR + TEMP_D * {ZIP_INDEX,CHA_COMP_CODE,CHA_FISCPER,ZIP_RREF1}) .
    ENDFOR.
    ENDIF.
    But i am getting a syntax error
    Formula error: } expected
      Syntax error in row 21, column 20
    i have marke line21 in bold. above.
    I feel it is correct, still wonder why i am getting this error.
    can you pls help ?

  • Input Help (F4) does not work for Planning Functions in Web

    Hi Gurus,
    I am working in BI-Integrated Planning.
    When I execute a planning function from web layout (through Web Application Designer), the "Input Help" does not work. When I give F4 it takes me to the initial planning layout screen from the planning function variable screen without any action being performed.
    But the "Input Help" works fine when I have to select for the variable from the initial selection to open the planning layout.
    Can anyone suggest me any fix for this...
    Thanks!!!

    Hi All,
    Can somebody help me here what went wrong with indesign cc extension so that copy/paste does not work in input type element text
    Regards,
    Alam

  • I already have creative cloud Photography plan and just want to add dreamweaver, is this possible?  Alternatively, I have tried purchasing the Complete - For CS Customers but it asks me to contact customer support and then sends me through to the forums!!

    I already have creative cloud Photography plan and just want to add dreamweaver, is this possible?  Alternatively, I have tried purchasing the Complete — For CS Customers but it asks me to contact customer support and then sends me through to the forums!!

    yes.
    contact adobe support by clicking here and, when available, click 'still need help', https://helpx.adobe.com/contact.html

  • Which planning function i have to use and how to write this planning fucnti

    Hi Bi Guru's,
    I have rolled out  BW SEM-BPS Planning Layout's for the Annual Budget in my organistaion.
    There are two levels of layout given for the each sales person.
    1)  Sales quantity to be entered Material and  country wise for all 12 months ( April 2009 to March 2010)
    2)  Rate per unit and to entered in second sheet, Material and country wise for the total qty entered in the first layout.
    Now i need to calculate the sales vlaue for each period and for the each material.
    Which planning function i have to use and how to write this planning fucntion.
    Please suggest me some solution ASAP.
    Thanks in Advance,
    Nilesh

    Hi Deepti,
    Sorry to trouble you...
    I require your help for the following scenario for caluclating Sales Value.
    I have Plan data in the following format.
    Country   Material    Customer    Currency    Fiscyear    Fiscper           Qty         Rate        Sales Value
    AZ          M0001      CU001          #             2009          001.2009        100.00                        
    AZ          M0001      CU002          #             2009          001.2009        200.00                        
    BZ          M0001      CU003          #             2009          001.2009        300.00
    BZ          M0001      CU003          #             2009          002.2009        400.00
    BZ          M0002      CU003          #             2009          002.2009        300.00
    AZ          M0001       #               USD          2009             #                                 10.00
    BZ          M0001       #               USD          2009             #                                 15.50
    BZ          M0002       #               USD          2009             #                                 20.00
    In the Above data the Rate lines are entered in the Second Layout, Where the user enters on the Country Material Level with 2009 value for FISCYEAR.
    I am facing problem with this type of data. 
    I want to store the sales value for each Material Qty.
    Please suggest some solution.
    Re
    Nilesh

  • HELP! JSP as items in a region - is this possible?

    Hi All,
    Can someone please tell me how to bring in a JSP code as an item or portlet within a region. Is this possible with Oracle9iAS release 2? I need to generate dynamic html within a particular region based on a query string parameter and I thought this is one way of doing it.
    If anyone can help, that would be great!
    Thanks in advance,
    Kim

    Kim,
    There are many articles on Portal Center that discuss building portlets from JSPs. You can also post questions on this topic to the PDK forum.
    For PL/SQL, there are a number of options. You can build PL/SQL portlets - the dynamic page component is a good start, that is conceptually similar to JSPs.
    You can also create PL/SQL items that can be rendered in-place or displayed as a link - make sure that you don't use the "Simple PL/SQL" item type, as you can't control the rendering behaviour. Use the supplied "PL/SQL" item type, or create your own custom item type based on "Simple PL/SQL".
    Finally, any item type (except the "simple" ones) can be associated with a procedure that can generate dynamic content. The procedures can be PL/SQL or any function that can be invoked via a URL (e.g. a JSP or servlet).
    Note that in your PL/SQL procedures you'll need to use the HTP package to generate HTML.
    Regards,
    Jerry
    Portal PM

  • Error :The function upload is not possible for this documentu2019

    Hi,
    The users are using Solution manager Help Desk system.
    When a specific user tries to create a message from the satellite system, and tries to upload a  document, he is unable to do so.
    He is getting an error message : 'The function <upload> is not possible for this documentu2019
    The message number is BCOS024.
    The user is unable to attach word, note pads, excel etc. any types of documents.
    He is able to type a description/ title etc and save the message. And the message is reflected in the Solution manager help desk system.
    He comes across that message only if he tries to upload an attachment.
    Please advice.
    Thanks in advance.

    Hi Kase,
    What version of SAPGUI you use?
    We had the same problem.
    This problem was solved once we upgraded SAPGUI to 710 Patch Level 11.
    Regards,
    Sanjai

  • Need help creating an "insert file" to add an attachment to a form?  Is this possible?

    I am trying to add an "insert file/attachment" field to a form that I'm creating but am having trouble finding information.   Is this possible?   Please advise.
    Thank you!

    Hi,
    The form with add attachment feature on link http://eslifeline.files.wordpress.com/2009/04/addattachments.pdf
    works fine but when I copy paste objects to use 2-3 times on page 2 and 3 then after attaching different files at all 3 sections, I see only same type of files when using view attachments. I understand it is same like when making 2 fields name same act same together.
    Please help me make the javascript run differently (as new) for each add attachment function.
    Thanks

Maybe you are looking for

  • Photoshop no longer working after Lion OSX upgrade ?

    Just upgraded to Lion, and my photoshop no longer seems to be working and has a question mark through it on the icon on the dock ? Is there a fix ? or do we have to wait for Adobe / Apple to fix it...

  • SAP Note 144253 For error Enter valid delivery plant in sales order

    Hi all, I am getting the error "Enter valid delivery plant" while creating the sales order . This is due to Customer and plant are same . For that I got one SAP Note 144253. If anyone implimented this SAP note Could you please share is there any impa

  • Bluetooth mouse

    Hi I'm looking for a bluetooth mouse with a scroll wheel and a button to navigate backwards in browsers. I'm thinking about the microsoft one but I heard it requires the dongle in order to work and I'd prefer to use the built in mac bluetooth. Thanks

  • Lead time issue

    Dear Sap Gurus, Is there is any report or in table  to check all the transportation Lead time settings  setting for particular plant  for all customers ? Because i need to upload several new Lead Time  due to the updation in transportation I want  co

  • It keep trying to make me update Firefox, what do I do?

    Everytime I go on Firefox I will be doing whatever, then a new tab pops up saying, Please Update Browser at the top. It says "You are currently browsing the web with Firefox and your Video Player might be outdated. Please update to the latest version