How to avoid double logon

Hello experts,
can i avoid that a user is logged in a bsp 2 times (two different pc´s) ?
Is there a standard solution in SAP or is it custom development?

hye Benjimin,
  It is not possible to auhenticate single log in through any standard setting. Authetication is bascially initiated from the browse side and hence no real standard setting exists.
  This can be achieved only through custom programming.
Regards
Imran.

Similar Messages

  • How to avoid double-click to click-box

    Hello,
    until now I did not find a solution for this problem:
    I have created a training course for a specific application, and in this coure are some click boxes on which the user should click. On many click boxes should the user click only once but if he double-click the click box, in real application nothing happens. There is only one way to succes the action - one click. But in captivate when the user double-click the click box instead of one click it evaluate as success action (the click box is set only to one click, double-click checkbox is not checked).
    So my question is, is there any way how to avoid double-click in cases where the user should click only once? Or in case he double-click the click box to show failure caption?
    Many thanks.
    Lukas

    Hi all
    Interesting thread. Unfortunately, what would be needed here is some sort of a widget that would run some internal timer. Sure, you can try multiple Click Boxes and configure one with a Single Click and one with a Double Click. But the problem with that (as I see it) is regardless of what you might try, the Single Click will win out every time. Thus you would need a widget of some sort that would "listen" for a Double Click and respond appropriately.
    Tough call... Rick
    Click here for Adobe Authorized Captivate and RoboHelp HTML   Training
    Click here for the SorcerStone Blog
    Click here for RoboHelp and Captivate eBooks

  • How to avoid database logon dialog on every action of refreshing reports

    I am using Crystal reports 208 SP2 and has a database connection to oracle database. Connection is esablished and report retrieves desired data, The problem is when ever i open this report ( which has this connection set) and do a refresh,  the report the LogOn dialog pops up.
    How to avoid or save this log on info such that it does not pops up the LogOn dialog when i open the report and do a refresh(F5).?

    Hi Don,
    Thanks for the reply. To try  your suggested approach, i need some clarifications .
    _Problem summary:for refrence, _
    I am following the steps mentioned below to establish a database connection, and fetch the data.
    1) I am using Oracle drivers for configuring the ODBC data source. As part of configuration i will specify the Oracle server name
    2) In crystal reports, Using "Database" menu, i open "Database Expert" dialog and "Make New connection" by specifing the data source mentioned in step 1). During this process, (ODBC)logon information will be filled in. The user ID and password used has all the rights to access the tables in the database. Logon will be successful and connection is established.
    3) Further i use the database table from the "Database Expert" on to the report and refresh(F5) to fetch the data.
    After step 3, I close the report  and reopen it. Now trying to refresh the database logon dialog pops up. I need to avoid this pop up
    Requesting Clarification:;
    1) You have specified "When you connect you have the option to use Trusted Authentication, check this option on". Where is this option. Is it in the crystal reports or is it available during data source configuration. Kindly specify.
    2) Here "Enterprise logon info that has been configured on the Oracle server." implies the oracle database login information right? If yes, this login details are available and i am using this logon information(i.e. UseriD and Password) during database connection.
    If No, Is "Enterprise logon info " is something which should be specifically enabled by DBA in oracle11g configuraion.
    Kindly suggest.
    Edited by: R Guru on Oct 17, 2009 7:32 PM

  • How to avoid doubling data

    Hi experts,
    i loaded a flatfile1 into an ODS and then into an infocube. Again i loaded another flat file2 ( which had the same records as well as few more records as first one) the same way.. when i look at the Infocube, some of the records have double the values. How do i avoid this.. can i go for delta load from ods to infocube..
    all the above loads are fulupdate.
    Also SDNers,
    By full update do we get all the data again if we load from ODS even if we laoded previously.?
    thanks
    Dave
    Message was edited by: Dave Marcus

    If you go as Delta from ODS to Cube, ODS will take care in sending only the changed records and the new records.
    see this link:
    Re: Delta Processing in ODS
    Also see:
    ODS & Delta
    Thanks,
    Raj

  • How to avoid double-counting in Total field

    Hi Gurus,
    I'm new to Essbase.
    Here's a question I don't know how Essbase handle it, my source data stores at relational database, normally one row in the fact table associates with only one row in dimension table, but very common scenario like one fact row can associate with many rows in dimension table, to simplify we have 4 tables:
    1. DimProduct(ProductID, ProductName). there's one row like 1, "Bike"
    2. FactSales(ProductID, Quantity), there's one row like 1, 10
    3. FactSalesReasons(ProductID,ReasonID), there're 2 rows like 1,1 and 1,2 , suppose there're 2 reasons associate with this product sale, that means 1-N relationship between fact and dimension.
    4. DimReason(ReasonID,ReasonName), there're 2 rows like 1,"Quality" and 2, "Promotion"
    I expect the report as follows:
    ProductName ReasonName Quantity
    Bike Quality 10
    Promotion 10
    Total 10
    But while built cube, I got the value 20 of Total. I know Microsoft SSAS has a many-many dimension usage can avoid this double counting issue (no need to write extra calculation script), can Essbase do similar way?
    Thanks!
    Xiao

    What I would recommend in this case would be in a calc script. I would guess that this dimension is sparse which usually has a low calculation priority (calcs first and may get overwritten). So, at least for a first pass at a calculation...
    ========
    SET UPDATECALC OFF;
    Calc All;
    "Total Reason" = @AVG(SKIPNONE,@CHILDREN("Total Reason"));
    ========
    SKIP options are "none", "missing", "zero" or "both".
    This will calculate for all accounts.

  • How to avoid the logon screen after closing the browser

    Im working with annonymous users showing a Iview but when I close the browser, instead of closing the browser the logon of portal appears. I dont want that how can I avoid this ?
    thx

    Hi
    I am not clear with your question. How do you close the browser ? Is it by hitting the cross button on the Top right corner ?
    Murali.

  • BSP - How to avoid the Logon Popup

    Hi All,
    When I test any BSP application from SE80, a popup is displayed asking for username and password. How do I avoid this popup.
    Useful answers will be rewarded.
    Thanks in Advance,
    Regards,
    Archana

    Ask your basis team how much it will cost to implement Single Sign On (for more info search the forums on how to achieve this, since i'm not a bais consultant I can't give tou anymore info)
    regards, Rob

  • How to avoid double extension *jpg.tif when exporting layers to files?

    Please help, I checked all the topics related and it seems nobody bothers about this issue.
    When I do a Photomerge of a series of jpg files, Photoshop builds a multilayered file - but preserves in the name of each layer *.jpg 
    When I want now to export layers to files, the Scripting function will do the dumb thing and export each file with the original name - ending in JPG - , plus the extension required by me - for ex tif.
    It does the same if I chose to export as jpg files and puts double extension again < *.JPG.jpg> at the end of each file exported from a layer.
    I looked everywhere and couldn't find a way to solve this behavior, which forces me to do batch renames in Bridge.
    The next program where I need the files (After Effects) doesn't want to import these files with double extensions.
    Has anyone encountered this issue and what can be done to avoid these double extensions at Scripts/Export layers to files?
    Thanks for the answer

    I have just altered my script so that it will remove the extentions if found.
    http://www.scriptsrus.talktalk.net/Layer%20Saver.htm
    Also it would be better to use :-
    var layerName = activeDocument.activeLayer.name.replace(/\....$/,'');
    As this way it doesn't arbitory remove the last four characters, only if it finds a fullstop.

  • How to lock WBS lement in a program or user to avoid double posting in FBS1

    Hi Experts,
    I have an issue, i need to lock WBS element to a report or user to avoid double posting if other user is also running the same report.
    Hope to hear answers.
    Thanks,

    workaround found.

  • How can avoid the  problem of Parameter Prompting when I submitting ?

    I am developing web application in visual studio 2008 in csharp.How can avoid the issue or problem of  Parameter Prompting when I send parameters programaticaly or dyanmicaly?  I am sending the values from .net web form to crystal report but it is still asking for parameters. so when i submit second time that is when the reports is being genereated. How can i solve this problem. Please help. The code Iam using is below.
       1. using System; 
       2. using System.Collections; 
       3. using System.Configuration; 
       4. using System.Data; 
       5. using System.Linq; 
       6. using System.Web; 
       7. using System.Web.Security; 
       8. using System.Web.UI; 
       9. using System.Web.UI.HtmlControls; 
      10. using System.Web.UI.WebControls; 
      11. using System.Web.UI.WebControls.WebParts; 
      12. using System.Xml.Linq; 
      13. using System.Data.OleDb; 
      14. using System.Data.OracleClient; 
      15. using CrystalDecisions.Shared; 
      16. using CrystalDecisions.CrystalReports.Engine; 
      17. using CrystalDecisions.Web; 
      18.  
      19.  
      20. public partial class OracleReport : System.Web.UI.Page 
      21. { 
      22.     CrystalReportViewer crViewer = new CrystalReportViewer(); 
      23.     //CrystalReportSource crsource = new CrystalReportSource(); 
      24.     int nItemId; 
      25.  
      26.     protected void Page_Load(object sender, EventArgs e) 
      27.     { 
      28.         //Database Connection 
      29.         ConnectionInfo ConnInfo = new ConnectionInfo(); 
      30.         { 
      31.             ConnInfo.ServerName = "127.0.0.1"; 
      32.             ConnInfo.DatabaseName = "Xcodf"; 
      33.             ConnInfo.UserID = "HR777"; 
      34.             ConnInfo.Password = "zghshshs"; 
      35.         } 
      36.         // For Each  Logon  parameters 
      37.         foreach (TableLogOnInfo cnInfo in this.CrystalReportViewer1.LogOnInfo) 
      38.         { 
      39.             cnInfo.ConnectionInfo = ConnInfo; 
      40.  
      41.         } 
      42.  
      43.  
      44.  
      45.  
      46.  
      47.  
      48.         //Declaring varibles 
      49.          nItemId = int.Parse(Request.QueryString.Get("ItemId")); 
      50.         //string strStartDate = Request.QueryString.Get("StartDate"); 
      51.         //int nItemId = 20; 
      52.         string strStartDate = "23-JUL-2010"; 
      53.  
      54.         // object declration 
      55.         CrystalDecisions.CrystalReports.Engine.Database crDatabase; 
      56.         CrystalDecisions.CrystalReports.Engine.Table crTable; 
      57.  
      58.  
      59.         TableLogOnInfo dbConn = new TableLogOnInfo(); 
      60.  
      61.         // new report document object 
      62.         ReportDocument oRpt = new ReportDocument(); 
      63.  
      64.         // loading the ItemReport in report document 
      65.         oRpt.Load("C:
    Inetpub
    wwwroot
    cryreport
    CrystalReport1.rpt"); 
      66.  
      67.         // getting the database, the table and the LogOnInfo object which holds login onformation 
      68.         crDatabase = oRpt.Database; 
      69.  
      70.         // getting the table in an object array of one item 
      71.         object[] arrTables = new object[1]; 
      72.         crDatabase.Tables.CopyTo(arrTables, 0); 
      73.  
      74.         // assigning the first item of array to crTable by downcasting the object to Table 
      75.         crTable = (CrystalDecisions.CrystalReports.Engine.Table)arrTables[0]; 
      76.  
      77.         dbConn = crTable.LogOnInfo; 
      78.  
      79.         // setting values 
      80.         dbConn.ConnectionInfo.DatabaseName = "Xcodf"; 
      81.         dbConn.ConnectionInfo.ServerName = "127.0.0.1"; 
      82.         dbConn.ConnectionInfo.UserID = "HR777"; 
      83.         dbConn.ConnectionInfo.Password = "zghshshs"; 
      84.  
      85.         // applying login info to the table object 
      86.         crTable.ApplyLogOnInfo(dbConn); 
      87.  
      88.  
      89.  
      90.  
      91.  
      92.  
      93.         crViewer.RefreshReport(); 
      94.          
      95.                 // defining report source 
      96.         crViewer.ReportSource = oRpt; 
      97.         //CrystalReportSource1.Report = oRpt; 
      98.          
      99.         // so uptill now we have created everything 
    100.         // what remains is to pass parameters to our report, so it 
    101.         // shows only selected records. so calling a method to set 
    102.         // those parameters. 
    103.      setReportParameters();  
    104.     } 
    105.  
    106.     private void setReportParameters() 
    107.     { 
    108.       
    109.         // all the parameter fields will be added to this collection 
    110.         ParameterFields paramFields = new ParameterFields(); 
    111.          //ParameterFieldDefinitions ParaLocationContainer = new ParameterFieldDefinitions(); 
    112.        //ParameterFieldDefinition ParaLocation = new ParameterFieldDefinition(); 
    113.         
    114.         // the parameter fields to be sent to the report 
    115.         ParameterField pfItemId = new ParameterField(); 
    116.         //ParameterField pfStartDate = new ParameterField(); 
    117.         //ParameterField pfEndDate = new ParameterField(); 
    118.  
    119.         // setting the name of parameter fields with wich they will be recieved in report 
    120.        
    121.         pfItemId.ParameterFieldName = "RegionID"; 
    122.  
    123.         //pfStartDate.ParameterFieldName = "StartDate"; 
    124.         //pfEndDate.ParameterFieldName = "EndDate"; 
    125.  
    126.         // the above declared parameter fields accept values as discrete objects 
    127.         // so declaring discrete objects 
    128.         ParameterDiscreteValue dcItemId = new ParameterDiscreteValue(); 
    129.         //ParameterDiscreteValue dcStartDate = new ParameterDiscreteValue(); 
    130.         //ParameterDiscreteValue dcEndDate = new ParameterDiscreteValue(); 
    131.  
    132.         // setting the values of discrete objects 
    133.          
    134.  
    135.           dcItemId.Value = nItemId; 
    136.          
    137.         //dcStartDate.Value = DateTime.Parse(strStartDate); 
    138.         //dcEndDate.Value = DateTime.Parse(strEndDate); 
    139.          
    140.         // now adding these discrete values to parameters 
    141.           //paramField.HasCurrentValue = true; 
    142.  
    143.        
    144.  
    145.           //pfItemId.CurrentValues.Clear(); 
    146.          int valueIDD = int.Parse(Request.QueryString.Get("ItemId").ToString()); 
    147.           pfItemId.Name = valueIDD.ToString();  
    148.            
    149.         pfItemId.CurrentValues.Add(dcItemId); 
    150.         //ParaLocation.ApplyCurrentValues; 
    151.         pfItemId.HasCurrentValue = true; 
    152.         
    153.         //pfStartDate.CurrentValues.Add(dcStartDate); 
    154.         //pfEndDate.CurrentValues.Add(dcEndDate); 
    155.  
    156.         // now adding all these parameter fields to the parameter collection 
    157.         paramFields.Add(pfItemId); 
    158.          
    159.         //paramFields.Add(pfStartDate); 
    160.         //paramFields.Add(pfEndDate); 
    161.         ///////////////////// 
    162.         //Formula from Crystal 
    163.        //crViewer.SelectionFormula = "{COUNTRIES.REGION_ID} = " + int.Parse(Request.QueryString.Get("ItemId")) + ""; 
    164.         crViewer.RefreshReport(); 
    165.         // finally add the parameter collection to the crystal report viewer 
    166.         crViewer.ParameterFieldInfo = paramFields; 
    167.         
    168.          
    169.      
    170.     } 
    171. }

    Keep your post to under 1200 characters, else you loose the formatting. (you can do two posts if need be).
    Re. parameters. First, make sure yo have SP 1 for CR 10.5:
    https://smpdl.sap-ag.de/~sapidp/012002523100009351512008E/crbasic2008sp1.exe
    Next, see the following:
    [Crystal Reports for Visual Studio 2005 Walkthroughs|https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/2081b4d9-6864-2b10-f49d-918baefc7a23]
    CR Dev help file:
    http://msdn2.microsoft.com/en-us/library/bb126227.aspx
    Samples:
    https://wiki.sdn.sap.com/wiki/display/BOBJ/CrystalReportsfor.NETSDK+Samples
    Ludek
    Follow us on Twitter http://twitter.com/SAPCRNetSup

  • How to avoid db file parallel read for nestloop?

    After upgraded to 11gr2, one job took more than twice as long as before on 10g and 11gr1 with compatibility being 10.2.0.
    Same hardware. (See AWR summary below). My analysis points to that Nestloop is doing index range scan for the inner table's index segment,
    and then use db file parallel read to read data from the table segment, and for reasons that I don't know, the parallel read is very slow.
    AVG wait is more than 300ms. How can I fluence optimier to choose db file sequential read to fetch data block from inner table by tweaking
    parameters? Thanks. YD
    Begin Snap: 13126 04-Mar-10 04:00:44 60 3.9
    End Snap: 13127 04-Mar-10 05:00:01 60 2.8
    Elapsed: 59.27 (mins)
    DB Time: 916.63 (mins)
    Report Summary
    Cache Sizes
    Begin End
    Buffer Cache: 4,112M 4,112M Std Block Size: 8K
    Shared Pool Size: 336M 336M Log Buffer: 37,808K
    Load Profile
    Per Second Per Transaction Per Exec Per Call
    DB Time(s): 15.5 13.1 0.01 0.01
    DB CPU(s): 3.8 3.2 0.00 0.00
    Redo size: 153,976.4 130,664.3
    Logical reads: 17,019.5 14,442.7
    Block changes: 848.6 720.1
    Physical reads: 4,149.0 3,520.9
    Physical writes: 16.0 13.6
    User calls: 1,544.7 1,310.9
    Parses: 386.2 327.7
    Hard parses: 0.1 0.1
    W/A MB processed: 1.8 1.5
    Logons: 0.0 0.0
    Executes: 1,110.9 942.7
    Rollbacks: 0.2 0.2
    Transactions: 1.2
    Instance Efficiency Percentages (Target 100%)
    Buffer Nowait %: 99.99 Redo NoWait %: 100.00
    Buffer Hit %: 75.62 In-memory Sort %: 100.00
    Library Hit %: 99.99 Soft Parse %: 99.96
    Execute to Parse %: 65.24 Latch Hit %: 99.95
    Parse CPU to Parse Elapsd %: 91.15 % Non-Parse CPU: 99.10
    Shared Pool Statistics
    Begin End
    Memory Usage %: 75.23 74.94
    % SQL with executions>1: 67.02 67.85
    % Memory for SQL w/exec>1: 71.13 72.64
    Top 5 Timed Foreground Events
    Event Waits Time(s) Avg wait (ms) % DB time Wait Class
    db file parallel read 106,008 34,368 324 62.49 User I/O
    DB CPU 13,558 24.65
    db file sequential read 1,474,891 9,468 6 17.21 User I/O
    log file sync 3,751 22 6 0.04 Commit
    SQL*Net message to client 4,170,572 18 0 0.03 Network

    Its not possible to say anything just by looking at the events.You must understand that statspacks and AWR actualy aggergate the data and than show the results.There may be a very well possibility that some other areas also need to be looked at rather than just focussin on one event.
    You have not mentioned any kind of other info about the wait event like their timings and all that.PLease provide that too.
    And if I understood your question corretly,you said,
    How to avoid these wait events?
    What may be the cause?
    I am afraid that its not possible to discuss each of these wait event here in complete details and also not about what to do when you see them.Please read teh Performance Tuning book which narrates these wait events and corresponding actions.
    Please read and follow this link,
    http://download.oracle.com/docs/cd/B19306_01/server.102/b14211/instance_tune.htm#i18202
    Aman....

  • How to avoid doubleclick event on a datagrid scrollbars?

    Hello.
    I've a datagrid.
    I need a doubleclick event cliccking on a data grid row.
    I've enabled the doubleclick event. It works fine, when the user doubleclicks on a row, an event happens! In my case I open a modal window. Great!
    Now the problem:
    The problem arises when the user clicks in a short time on a data grid scroll bar (both horizontal or vertical). In this case a double click event is dispatched.
    But his intenton is just to scroll the grid, no more.
    Please, notice that the dobule click on a scrollbar is a well-known action that can be performed in all the applications and operating systems.
    I neet the "double click" event just on a data grid rows and not on its scrollbars. Cliccking twice or more on the scrollbar I just want to scroll the grid. How can avoid to dispatch an event?
    Thank you
    Pbesi

    I was returning today to add something about custom item renderers but you beat me to it, Pbesi.   I have a custom gridItemRenderer which I now have to check for just as you demonstrated above.  What I don't understand is why I can't just do this:
    if( event.target is IGridItemRenderer )  //Should be true for both default and custom
    My custom renderer implements the IGridItemRenderer interface, but when I double click one in the grid, the event.target is not myCustomGridItemRenderer, it is GridLayer.  So what I have to do is this:
    if( (event.target is IGridItemRenderer) || (event.target is GridLayer) )
    I presume this would work for all custom gridItemRenderers, but I only have one, so I haven't tested this.  Any idea why GridLayer is the type of the event target?  My custom renderer is very simple.  It just renders Booleans as "Yes/No" rather than "True/False"
    <s:GridItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
          xmlns:s="library://ns.adobe.com/flex/spark"
          xmlns:mx="library://ns.adobe.com/flex/mx"
          clipAndEnableScrolling="true"
          implements="spark.components.gridClasses.IGridItemRenderer">
          <fx:Script>
               <![CDATA[
                    override public function prepare(hasBeenRecycled:Boolean):void {
                         lblData.text = (data[column.dataField] == true) ? "Yes" : "No" ;
                                  ]]>
         </fx:Script>
          <s:Label id="lblData" top="9" left="7"/>
    </s:GridItemRenderer>

  • How to create a logon ticket via Java?

    Hi all,
    I need to create a SAP logon ticket programmatically. Do you have some useful documntations or links?
    Thanks.
    Vito

    try this, may be it will help you.
    Example1.java - call the rfc module 'STFC_CONNECTION' with custom definition
    of function metadata. Please notice, the communication with static
    metadata interface definitions is dangerous. The inconsistencies in the
    interface definitions may cause corrupted data, errors while communication or
    even application crashes. In Example2 you can see, how to avoid these problems.
    Property of SAP AG, Walldorf
    (c) Copyright SAP AG, Walldorf, 2000-2003.
    All rights reserved.
    import com.sap.mw.jco.*;
    Example1 - start a simple call with static metadata definition
    @version 1.0
    @author  SAP AG, Walldorf
    public class Example1 {
      public static void main(String[] argv)
        JCO.Client client = null;
        try {
          // Print the version of the underlying JCO library
          System.out.println("\n\nVersion of the JCO-library:\n" +
    \n" + JCO.getMiddlewareVersion());
          // Create a client connection to a dedicated R/3 system
          client = JCO.createClient( "clientnum",       // SAP client
                                         "JOHN",   // userid
                                         "SMITH",     // password
                                         "EN",        // language
                                         "111.111.11.51", // host name
                                         "00" );      // system number
          // Open the connection
          client.connect();
          // Get the attributes of the connection and print them
          JCO.Attributes attributes = client.getAttributes();
          System.out.println("Connection attributes:\n" +
    \n" + attributes);
          boolean is_backend_unicode = attributes.getPartnerCodepage().equals("4102") ||
                                       attributes.getPartnerCodepage().equals("4103");
          // Create metadata definition of the input parameter list
          JCO.MetaData input_md = new JCO.MetaData("INPUT");
          input_md.addInfo("REQUTEXT", JCO.TYPE_CHAR, 255, 255 * (is_backend_unicode? 2 : 1 ),
                            -1, 0, null, null, 0, null, null);
          // Create the input parameter list from the metadata object
          JCO.ParameterList input = JCO.createParameterList(input_md);
          // Set the first (and only) input parameter
          input.setValue("This is my first JCo example.", "REQUTEXT");
          // Create metadata definition of the output parameter list
          JCO.MetaData output_md = new JCO.MetaData("OUTPUT");
          // Specify the parameters types of the function will be returned
          output_md.addInfo("ECHOTEXT", JCO.TYPE_CHAR, 255, 255 * (is_backend_unicode? 2 : 1 ),
                             -1, 0, null, null, 0, null, null);
          output_md.addInfo("RESPTEXT", JCO.TYPE_CHAR, 255, 255 * (is_backend_unicode? 2 : 1 ),
                             -1, 0, null, null, 0, null, null);
          // Create the output parameter list from the metadata object
          JCO.ParameterList output = JCO.createParameterList(output_md);
          // Call the function
          client.execute("STFC_CONNECTION", input, output);
          // Print the result
          System.out.println("The function 'STFC_CONNECTION' returned the following parameters:\n" +
          for (int i = 0; i < output.getFieldCount(); i++) {
              System.out.println("Name: " +  output.getName(i) + " Value: " + output.getString(i));
          }//for
          // All done
          System.out.println("\n\nCongratulations! It worked.");
        catch (Exception ex) {
          System.out.println("Caught an exception: \n" + ex);
        finally {
            // do not forget to close the client connection
            if (client != null) client.disconnect();

  • How to avoid multiple if else using design patterns.

    Hi,
    Which design patterns is used to avoid lot of if else in our code . Say for example if the user press 1 the out put should be one, if he press 2 it should be two like this upto 10. So we need to include lot of if-else part. How to avoid the multiple if else using design patter for this scenario. I can't find the solution for this problem can you guys help me?.

    I'm too lazy to read a whole text book, but the first google link provides a code sample which made me laugh.
    http://www.refactoring.com/catalog/replaceConditionalWithPolymorphism.html
      double getSpeed() {
        switch (_type) {
          case EUROPEAN:
            return getBaseSpeed();
          case AFRICAN:
            return getBaseSpeed() - getLoadFactor() * _numberOfCoconuts;
          case NORWEGIAN_BLUE:
            return (_isNailed) ? 0 : getBaseSpeed(_voltage);
        throw new RuntimeException ("Should be unreachable");
      }My implementation of The Bridge Over The Parrot Shop
    package forums;
    import java.util.Random;
    abstract class Bird {
      private static final Random random = new Random();
      abstract double getAirSpeed();
      public double getBaseSpeed() {
        return randomDouble(18.96);
      protected static double randomDouble(double max) {
        return random.nextDouble() * max;
      protected static int randomInt(int max) {
        return random.nextInt(max);
    class EuropeanSwallow extends Bird {
      double getAirSpeed() {
        return getBaseSpeed();
    class AfricanSwallow extends Bird {
      private int _numberOfCoconuts;
      public AfricanSwallow() {
        this(randomInt(4));
      public AfricanSwallow(int numberOfCoconuts) {
        _numberOfCoconuts = numberOfCoconuts;
      double getAirSpeed() {
        return getBaseSpeed() - getLoadFactor() * _numberOfCoconuts;
      public double getLoadFactor() {
        return randomDouble(3.12);
    class NorwegianBlue extends Bird {
      private boolean _isNailed;
      private double _voltage;
      public NorwegianBlue() {
        this(randomInt(10)<2, randomDouble(12.0));
      public NorwegianBlue(boolean isNailed, double voltage) {
        _isNailed = isNailed;
        _voltage = voltage;
      double getAirSpeed() {
        return _isNailed ? 0 : getBaseSpeed(_voltage);
      double getBaseSpeed(double voltage) {
        return getBaseSpeed() * (1+(voltage/Math.PI));
    public class AirSpeedTest
      public static void main(String[] args)
        System.out.println("EUROPEAN: "+new EuropeanSwallow().getAirSpeed());
        System.out.println("AFRICAN: "+new AfricanSwallow().getAirSpeed());
        System.out.println("NORWEGIAN_BLUE: "+new NorwegianBlue().getAirSpeed());
    }... and the requisite background for the uninitiated [NORWEGIAN_BLUE|http://www.youtube.com/watch?v=4vuW6tQ0218] and [EUROPEAN v AFRICAN|http://www.youtube.com/watch?v=4b4bGAoVR7g].
    You have to know these things when you're a King you know.
    Cheers. Keith.

  • How to avoid invalid data entering in LOV through code

    hi
    1)i have developed lov in table region, but user easily can enter invalid data and saved into the database tables.
    2)i created one formvalue and mapping into that return item , still its not working in table region LOV.
    3)how to avoid invalid data entering in LOV through code. i have tried this below code in EOimpl set value method. but some how its not wokring.
    if (value!=null)
    throw new OAAttrValException(OAAttrValException.TYP_ENTITY_OBJECT,
    getEntityDef().getFullName(),
    getPrimaryKey(),
    "ProcurementCategory",
    getProcurementCategory(),
    "FND",
    "FND_LOV_SELECT_VALUE");
    Thanks.
    krish.

    Thanks reetesh and gourav for your help.
    i followed below mapping details
    LOV Item Properties
    ID -PurcCommodity
    ViewInstance -VendorVO1
    ViewObject -PurcCommodity
    map1 properties
    LOV Region Item - segment1
    Return Item -PurcCommodity
    CriteriaItem -PurcCommodity
    Usefor Validation -Default
    map2 properties
    LOV Region Item - segment1
    Return Item -validation(formvalue)
    CriteriaItem -
    Usefor Validation -yes
    form value properties
    ID -validation
    ViewInstance -VendorVO1
    ViewObject -PurcCommodity
    Gourav- i double checked multiple rows it is not working, some times it is not working for single row too.
    Thanks
    krish.

Maybe you are looking for

  • Z Report with CRM R/3 data in R/3

    HI all,   We Prepared the Z report  based on the CRM in R/3 But I having issue like this  Contract no. XXXXXX-0 in CRM has payment terms of 100% N60, cut 30th after due date. However this is not being picked up correctly when we run the ZFIARAGINGN r

  • Is there any way to get in direct contact with apple about a problem I am having?

    When I create text boxes in Preview and then save and close the file, they will be rotated 90 degrees when I reopen the file. This makes them virtually unreadable. It happens with some pdfs but not others. I am sure it must be a bug with preview and

  • Logical standby error with export dump

    oracal 10g have a setup logical standby and when i am running export dump from logical i got this error. EXP-00008: ORACLE error 16224 encountered ORA-16224: Database Guard is enabled EXP-00000: Export terminated unsuccessfully can someone help me ou

  • Can I use canon eos40d for stop motion capture in premiere elements 9?

    I Want too do stop motion capture but when I click get media, the pop up dialog box proceeda as if to import still photos. How do I get the "capture panel" that is talked about where I can select stop motion?  Is premiere elements 9 supposed to work

  • ADF Table - Column Header Icon support

    Do we have icon support for column header for ADF Table? I am looking for image added to the column header as in http://img196.imageshack.us/img196/4562/tablesample.png Thanks in advance, Navaneeth