What are your future component database plans?

I have been a longtime user of Multisim, Ultiboard, (and Ultiroute) power pro edition.  This includes the PartMiner days before NI bought EWB.  While component manufacturers commonly have component databases for use in the suites of your competitors, there never seem to be any available for your products.  Now, access to these databases would save a lot of time.  I don't use simulation a lot because you don't provide behavioral simulators, and my designs mostly include processors or controllers.  Even Analog Devices' database, which advertises a Multisim and Ultiroute subset, won't load on my platform.  Can you explain why you don't either digest the ORCAD datasets or pursuade Analog Devices, Microchip, TI, et al to provide multisim versions of their data?
I have long been a supporter, and am just seeking to make my life simpler.

Hi Thomas.
When you say "MDM as Catalogue", which means utilizing the features available in SAP-MDM(Like Portal iViews) and use it as functionality provided for catalog solutions instead of going for SRM-MDM Catalog - correct me if my understanding is wrong.
If this is the case, then you can simply fetch the records available in the repository and showcase it using portal iviews and
use it for procurement solutions(for SRM-Shopping cart etc) using check out functionality.
But SRM-MDM Catalog is designed specifically for certain functionalities like showing different prices like Contract, Purchase Info records, List price etc which is not possible in portal iviews, Service Catalog for showing hierarchies, showing various types of item types(BOM, SK1, SK2, Components etc). Similarly there are some more features which is available in SRM-MDM Catalog which lacks when we use "MDM as Catalogue"
But still SAP can come up with more features if they have plans to bring up a common catalog solution for various solutions.
Hope this helps.
Regards
Bala

Similar Messages

  • What are structures of logical database.

    hi
    what are structures of logical database.

    Dear Chaitanya,
    The structure of LDB can be divided into three sections:
    >Structure
    >Selection
    >Database Program
    STRUCTURE:
    The structure defines the data view of the logical database. It adopts the hierarchy of the database tables defined by their foreign key relationships. This also controls the sequence in which the tables are accessed. It determines the structure of the other components and the behavior of the logical database at runtime.
    The structure of a logical database is usually based on the foreign key relationships between hierarchical tables in the SAP System. Logical databases have a tree-like structure, which can be defined as follows:
    · There is a single node at the highest level. This is known as the root node.
    · Each node can have one or several branches.
    · Each node is derived from one other node.
    The nodes must be structures defined in the ABAP Dictionary or data types from a type group. Normally, these are the structures of database tables which the logical database reads and passes to the user for further evaluation. However, it is also possible, and sometimes useful, to use ABAP Dictionary structures without an underlying database. For technical reasons, the maximum number of nodes allowed in the structure of a logical database is 300.
    Any executable ABAP program that has a logical database linked to it can contain a GET statement for each node of the structure. When you run the program, the corresponding event blocks are processed in the sequence prescribed by the hierarchical structure of the logical database. If a program does not contain a GET statement for every node of a logical database, the processing passes through all the nodes that lie in the path from the root to the nodes specified by GET statements.
    If you call a logical database using the function module LDB_PROCESS, the depth to which the system reads is controlled by an interface parameter.
    SELECTIONS:
    The selections define a selection screen, which forms the user interface of the executable programs that use the logical database. Its layout is usually determined by the structure. You can adapt the selections to your own requirements and also add new ones. When you link a logical database to an executable program, the selections of the logical database become part of the standard selection screen of the program (screen number 1000). If you call a logical database using the function module LDB_PROCESS, the selections are filled using interface parameters.
    The selections in a logical database are defined using the normal statements for defining selection screens, that is, PARAMETERS, SELECT-OPTIONS and SELECTION-SCREEN. In a logical database, you can also use the additions VALUE-REQUEST and HELP-REQUEST to define specific input and value help. You define the selection screen in a special include program known as the selection include.
    When you write programs using a logical database, you can also add your own program specific selections. The standard selection screen then contains the database-specific selections, followed by the program-specific selections that you have defined.
    When the system generates the selection screen for an executable program, database-specific selection criteria and parameters are only displayed if you have declared an interface work area for them in your program using the NODES or TABLES statement.
    Suppose you have a selection include containing the following lines:
    SELECT-OPTIONS slifnr FOR lfa1-lifnr.
    PARAMETERS pbukrs LIKE lfb1-bukrs FOR TABLE lfb1.
    The selection criterion SLIFNR is linked to table LFA1, the parameter PBUKRS to table LFB1. If the TABLES statement in an executable program (report) declares LFA1 but not LFB1, SLIFNR is displayed on the selection screen, but PBUKRS does not appear.
    The selection screen of a logical database can contain dynamic selections as well as static ones. Dynamic selections are extra, user-defined selections that the user can make as well as using the static selections defined in the selection include. To improve performance, you should always use this option instead of reading more data than you need and then sorting it out in the application program.
    To make dynamic selections available for the node nodeof a logical database, the selection include must contain the following statement:
    SELECTION-SCREEN DYNAMIC SELECTIONS FOR NODE|TABLE node.
    If the node node is requested by the user of the logical databases, the dynamic selections are included in the selection screen. A user can then choose Dynamic selections to enter extra selections for the corresponding fields. If you call the logical database using the function module LDB_PROCESS, you can pass a corresponding parameter. You can use these selections in dynamic statements in the logical database program to read data. The values of the program-specific selection criteria that you defined for a node for which dynamic selections were available are also passed to the logical database. The user can also define the fields for dynamic selections as a selection view for the logical database.
    The selection screen of a logical database is part of the standard selection screen (number 1000) of the executable program to which the logical database is attached. It has a standardized layout - the selection criteria and parameters appear on separate lines in the order in which they were declared. You can change the layout using the SELECTION-SCREENstatement.
    The runtime environment generates the selection screen with number 1000 for every program in which the attributes do not contain a different selection screen version. You can prevent certain input fields from the selection screen of a logical database from appearing on the selection screen by defining selection screen versions with a screen number lower than 1000 in the selection include, and entering this version number in the program attributes. By pressing F4 there, you can get an overview of the selection screen versions defined in the logical database concerned. To define a selection screen version, use the statements SELECTION-SCREEN BEGIN|END OF VERSION. Within these statements you can use SELECTION-SCREEN EXCLUDEto specify fields that you do not want to appear on the selection screen.
    If the attributes of an executable program contain the number of a selection screen version, the version is used in the standard selection screen. Although the input fields that you excluded from the selection screen are not displayed, the corresponding selections still exist, and you can still edit them in the program or by calling the function module LDB_PROCESS.
    DATABASE PROGRAM:
    The database program contains the ABAP statements used to read the data and pass it to the user of the logical database. There is a container for special subroutines into which, amongst other things, the data from the database tables is read. These subroutines are called by the reporting processor in the runtime environment in a sequence that has been predefined by the structure. The database program is determined by the structure and selections and can be adapted or expanded to meet your requirements.
    The name of the database program of a logical database ldbconforms to the naming convention SAPDBldb. It serves as a container for subroutines, which the ABAP runtime environment calls when a logical database is processed. The sequence of the calls and their interaction with the events in executable programs or the function module LDB_PROCESS depends on the structure of the logical database.
    A logical database program usually contains the following subroutines:
    · FORM LDB_PROCESS_INIT
    Called once only before the logical database is processed. It prepares it to be called more than once by the function module LDB_PROCESS.
    · FORM INIT
    Called once only before the selection screen is processed.
    · FORM PBO
    Called before the selection screen is displayed, each time it is displayed. Consequently, it is only called when you use the logical database with an executable program, not with the function module LDB_PROCESS.
    · FORM PAI
    Called when the user interacts with the selection screen. Consequently, it is only called when you use the logical database with an executable program, not with the function module LDB_PROCESS. The interface parameters FNAME and MARK are passed to the subroutine.
    FNAME contains the name of a selection criterion or parameter on the selection screen.
    MARK describes the selection made by the user: MARK = space means that the user has entered a simple single value or range selection. MARK = '*' means that the user has also made entries on the Multiple Selection screen.
    · FORM LDB_PROCESS_CHECK_SELECTIONS
    Called instead of the subroutine PAI if the logical database is called using the function module LDB_PROCESS without a selection screen. This subroutine can check the selections passed in the function module interface.
    · FORM PUT_node
    Called in the sequence defined in the structure. Reads the data from the node nodeand uses the
    PUT node.
    statement to trigger a corresponding GETevent in the ABAP runtime environment. The PUT statement is the central statement in this subroutine: It can only be used within a subroutine of a logical database. The logical database must contain the node node, and the subroutine name must begin with PUT_node. The PUT statement directs the program flow according to the structure of the logical database. The depth to which the logical database is read is determined by the GET statements in the application program or the interface parameter CALLBACK of the function module LDB_PROCESS.
    First, the subroutine PUT_root is executed for the root node. The PUT statement then directs the program flow as follows:
    i. If the database program contains the subroutine AUTHORITY_CHECK_node, the first thing the PUT_node statement does is to call it.
    ii. Next, the PUT statement triggers a GET event in the runtime environment. If there is a corresponding GET nodestatement in the executable program to which the logical database is linked, the associated event block is processed. If the CALLBACK parameter of the function module LDB_PROCESS is filled accordingly, the corresponding callback routine is called.
    iii. The PUT statement directs the program flow
    (a) To the next subroutine of a node that follows directly, if a lower-level node (not necessarily the very next) in the same subtree is requested by GET in the executable program or in the function module.
    (b) To the subroutine of a node at the same level, if the preceding node branches to such a node and if a GET statement exists for such a node in the executable program or the function module.
    The PUT statement in that subroutine starts again at step (i). In the subroutine of the lowest node in a subtree to be processed using GET, the program control does not branch further. Instead, the current subroutine is processed further. When a subroutine PUT_node has been executed in its entirety, the program flow returns to the PUTstatement from which it branched to the subroutine PUT_node.
    iv. When control has returned from a lower-level subroutine PUT_node, the PUTstatement triggers the event GET node LATEin the runtime environment.
    · FORM AUTHORITY_CHECK_node
    Called automatically by the PUT node statement. In this subroutine, you can specify authorization checks for the appropriate node node from the structure of the logical database.
    · FORM PUT_ldb_SP
    Called when the user makes a selection using a search help to process the key chosen in the search help. ldb is the name of the logical database. From this subroutine, you can use the entries in the search help tables to read the relevant entries from the root node root. The processing in the program can then be triggered using PUT root. The subroutine PUT_root is then not called automatically.
    · FORM BEFORE_EVENT
    Called before an event, the name of which is passed in the parameter EVENT. Currently, the EVENT field can only contain the value START-OF-SELECTION, to call a subroutine before this event.
    · FORM AFTER_EVENT
    Called after an event, the name of which is passed in the parameter EVENT. Currently, the EVENT field can only contain the value END-OF-SELECTION, to call a subroutine after this event.
    · FORM par_VAL, selop_VAL, selop-LOW_VAL, selop-HIGH_VAL
    Called when the user calls possible values help for the parameter par or the selection criterion selop. These must belong to the selections in the logical database.
    · FORM par_HLP, selop_HLP, selop-LOW_HLP, selop-HIGH_HLP
    Called when the user calls possible values help for the parameter par or the selection criterion selop. These must belong to the selections in the logical database.
    Example
    Suppose that in the logical database structure, LFB1 is a branch of LFA1.
    and that the following selection criteria are defined in the selection include:
    SELECT-OPTIONS: slifnr FOR lfa1-lifnr,
    sbukrs FOR lfb1-bukrs.
    A section of the database program would then read:
    FORM put_lfa1.
    SELECT * FROM lfa1
    WHERE lifnr IN slifnr.
    PUT lfa1.
    ENDSELECT.
    ENDFORM.
    FORM put_lfb1.
    SELECT * FROM lfb1
    WHERE lifnr = lfa1-lifnr.
    AND bukrs IN sbukrs.
    PUT lfb1.
    ENDSELECT.
    ENDFORM.
    An executable program (report) linked to the logical database could contain the lines:
    GET lfa1.
    WRITE lfa1-lifnr.
    GET lfb1.
    WRITE lfb1-bukrs.
    In this example, the runtime environment calls the routine put_lfa1 after the event START-OF-SELECTION. The event GET lfa1 is triggered by the statement PUT lfa1.
    Once the corresponding event block in the program is complete, PUT lfa1 branches to the subroutine put_lfb1.
    From this subroutine, the event GET lfb1 is triggered in the application program. If LFB1 is the last node to be read, processing resumes with the SELECTloop in put_lfb1. Otherwise, the program flow moves to the subroutine put_node of the next node. At the end of the SELECT loop of the last node, processing resumes in the SELECTloop of the node at the next level up. The example of programming using nested SELECT loops is only used to make the program flow clearer. In a real logical database, you would avoid doing this in order to minimize the number of database accesses.
    Regards,
    Rajesh K Soman
    Please reward points if helpful.

  • What are your impressions of "multi-tasking"?

    If you have iOS4 and a capable device, you should have multi-tasking and opened apps appearing in the task bar. Newer app versions are able to run in the background. In my opinion, when I close most apps (by pressing the home button), I want them to close completely, not run in the background. Aside from being a privacy issue, apps in the task bar may use battery power or if truly in a suspended mode, they still take up memory or process capability. In order to really shut them down, two additional home button clicks and then two more screen strokes are required. Not very efficient and probably leading to an earlier home button failure. Why not have some kind of screen command (tap or swipe combination?) to simultaneously shut down all apps in the task bar? The bar itself is useless if you have used many apps in the course of a day. To find what you're looking for, you have to scroll through a long parade of icons. It's a lot easier to just tap the icon where you know it is sitting in the nice folder you created. I don't get it. I realize the bar can be used for switching open apps, but this is really not that big of a deal for the vast majority of apps. Furthermore, there should be an option to enable or disable multi-tasking globally as well as for individual apps. Now that would be an improvement.
    What are your thoughts?

    I havent done any kind of multitasking on my ipod touch, im waiting to upgrade my software to the newer one. However, I couldnt agree more with that of pressing the home button many times to perform basic function to switch apps or enable the multitasking ability. I think palm adapted a better design of software than apple ever did with their IOS 4. Palm's webOS can handle full multitasking--something the iPhone can't do. Palm uses what it calls "a deck of cards model" for managing multitasking: You can view each of your open applications at once, shuffle them any way you choose, and then discard the ones you want to close. All of this is done with intuitive gestures that mimic handling a physical deck of cards. Apps remains live, even when minimized into the card view, so changes can continue to happen in real-time, even if you've moved on to another activity.
    I had the time to experience a bit of a palm web os software on an AT&T store and my impression on that software is done more elegantly than apple multitasking home pressing button system.
    P.S to NYtroutbum: you should definitely present that idea to apple by its feedback product page. Let's hope it listens.

  • What are your top 3 favorite AIR Native Extensions? (any OS)

    What are your top 3 favorite AIR Native Extensions?
    OS is irrelevant.

    From looking at most of the threads posted in these forums, people generally come here seeking help with issues they are having while developing an AIR application, hence the name of this community, "Adobe AIR Development". If your question isnt answered within 3 days that doesn't appear to be seeking help with an issue or potential bug, doesn't mean that AIR is dead. People are using this forum everyday as indicated by there being new or active threads everyday. Most questions that people answer or have interest in, are related to iOS and Android development.

  • G10 Aperture RAW conversion: what are your impressions?

    the wait is over!
    2.4 RAW Compatibility update includes Canon G10.
    what are your impressions?
    what Aperture settings yield best results?
    how do they compare to Camera RAW and DPP?

    When you compare photos that were photographed at ISO 100 they all do a good job. When you stat going up in the ISO is where I think Aperture does a great job. I've attached a screen capture of the same photos processed with 3 different applications. No adjustments were added to the photos. The default settings were used then the photo was passed on to photoshop as a Tiff. I think it's clear why I don't like ACR. Aperture and DPP are much closer. DPP has some noise reduction on by default so the photo looks like it has less noise then Aperture. I feel that the default noise reduction just makes the photo look a little soft and out of focus. If I turn off the default noise reduction in DPP the photo looks noisy. So I like Aperture better because of the way the noise looks, the sharpness and detail of the photo. Another area to look at is the neck and chest area. Aperture holds the most amount of detail before blowing out. I know that all 3 programs have adjustments that will help fix the problems in the photo. Even after doing that to the photo in all 3 programs I still felt that Aperture was clearly better. As the previous poster said it is subjective to each persons taste.
    I've never used this way of posting a screen grab so if it doesn't work forgive me. Make sure to click on the photo to view the large file.

  • What are your favorite U.S. cities to travel to?

    Can't speak for Chicago, but my favourite city to either live in or visit since I've been in the US is Seattle - by far. Always something going on, great food. And football (Sounders!)

    I am heading to Chicago tomorrow to visit friends and the countdown is in full swing...I've only been to Chicago when it was freeeeezing, so I am very much looking forward to spending time on the water this time around!My mom is a flight attendant, so I've grown up traveling around the U.S., and so far, I'd say my two favorite cities (aside from Austin, where I live) are Chicago (even in the snow it was absolutely amazing) and San Diego. Nothing like the energy of a metropolitan city or the calmness of the beach.What are your favorite U.S. cities to travel to?PS. If you have any "must-do" recommendations while I'm in Chi-Town, I'm all ears! =)
    This topic first appeared in the Spiceworks Community

  • What are your options when you run out of hard drive space?

    What are your options when you run out of hard drive space? 

    I 110% agree, it is a disaster but it saves your mac until you recieve an external HD.
    Csound1 wrote:
    XcodeDeveloper wrote:
    I know but he just wanted options so I gave him one that helped me. If he filled up his HD a Gigabyte is sometimes a small miracle, exaggeration on small .
    OSX with 1G of free space is a disaster waiting to happen.
    Read this:

  • Error Msg, What are your thoughts

    I have not done any upgrades. The error follows below. I was just running safari and other small programs. Nothing I would consider unstable or taxing. What are your thoughts to the error?
    panic(cpu 0 caller 0x00350082): mbuf address out of range 0x954208
    Backtrace, Format - Frame : Return Address (4 potential args on stack)
    0xbcc3b04 : 0x128b5e (0x3bc46c 0xbcc3b28 0x131bbc 0x0)
    0xbcc3b44 : 0x350082 (0x3dbeb8 0x954208 0x0 0x13f5f5)
    0xbcc3b64 : 0x22e7e7 (0x1 0x2 0xbcc3b74 0xbcc3b74)
    0xbcc3c44 : 0x22bc65 (0x33cc858 0x1dbd0800 0x1 0x46000a0a)
    0xbcc3e14 : 0x22217b (0x1dbd0800 0x14 0xbcc3f14 0x20bf29d3)
    0xbcc3e54 : 0x223bff (0x1dbd0800 0x14 0x6 0x0)
    0xbcc3f64 : 0x21125d (0x1dbd0800 0x1dbd0800 0x42db5c 0x135798)
    0xbcc3fa4 : 0x1f7871 (0x2d52404 0x1dbd0800 0x1da5e816 0x1)
    0xbcc3fd4 : 0x197b19 (0x0 0x0 0x2653920 0x4a2000) Backtrace terminated-invalid frame pointer 0x0
    Kernel version:
    Darwin Kernel Version 8.7.1: Wed Jun 7 16:19:56 PDT 2006; root:xnu-792.9.72.obj~2/RELEASE_I386
    Model: MacBookPro1,1, BootROM MBP11.0055.B03, 2 processors, Intel Core Duo, 2 GHz, 512 MB
    Graphics: ATI Radeon X1600, ATY,RadeonX1600, PCIe, 128 MB
    Memory Module: DIMM1/BANK 1, 512 MB, DDR2 SDRAM, 667 MHz
    AirPort: spairportwireless_card_type_airportextreme (0x168C, 0x86), 0.1.24
    Bluetooth: Version 1.7.5f10, 2 service, 1 devices, 1 incoming serial ports
    Network Service: Built-in Ethernet, Ethernet, en0
    Network Service: AirPort, AirPort, en1
    Serial ATA Device: ST98823AS, 74.53 GB
    Parallel ATA Device: MATSHITADVD-R UJ-857
    USB Device: Hub, Up to 480 Mb/sec, 500 mA
    USB Device: Hub in Apple Pro Keyboard, Mitsumi Electric, Up to 12 Mb/sec, 500 mA
    USB Device: Apple Pro Keyboard, Mitsumi Electric, Up to 12 Mb/sec, 250 mA
    USB Device: USB Gaming Mouse, Logitech, Up to 12 Mb/sec, 500 mA
    USB Device: Built-in iSight, Micron, Up to 480 Mb/sec, 500 mA
    USB Device: IR Receiver, Apple Computer, Inc., Up to 12 Mb/sec, 500 mA
    USB Device: Apple Internal Keyboard / Trackpad, Apple Computer, Up to 12 Mb/sec, 500 mA
    USB Device: Bluetooth HCI, Up to 12 Mb/sec, 500 mA

    It sounds like it might be the Airport-related kernel panics that I and some others have had. Mine were fixed completely by a logic board replacement.
    To narrow the problem down, I found that I could test by downloading large files, many at a time, and get a kernel panic while on Airport, usually within a few minutes, always within an hour. Downloading the same large files while connected via Ethernet wouldn't result in a kernel panic. I could stay online for 24 hours on Ethernet, keeping the computer active by loading pages with webcams (that automatically refresh periodically) without ever getting a kernel panic, while I couldn't connect via Airport for anywhere near that length of time without getting a kernel panic. So I was as certain as one can be that the problem was caused by Airport.
    After doing some basic troubleshooting (resetting the PMU, repairing permissions) and even an erase and reinstall of Mac OS X, I called AppleCare with this information and described what I had tested. I would recommend doing the same to narrow down the problem and, if it's the same Airport-related kernel panic issue I had, arrange for a repair.

  • Better battery comparison - what are your thoughts.

    Most people are judging their battery usage by times of day. I want comparisons by usage. Go to settings/general/usage and it will tell you the usage since "time since last full charge". What are your times....Mine are for today since I charged overnight.
    Usage 3:12 hours
    Standby 7:59 hours
    Batter percent 46%
    Most of my usage has been twitter or email. A little bit of game usage.
    (yes I realize there are other threads of battery comparison but they are all comparing how much batter they have during times of day but that is dumb because there is no telling what you have been doing with your phone.)

    Hi there, i have recently bought a new iphone 3GS and i'm seeing the same resaults for my battery and i own a 3G as well which my wife now uses and ive noticed that after upgrading to 3.0 its battery was depleting a bit faster then when it was on 2.2.1.
    I logged my 3GS and i got in one day
    Usage : 6 hourr/ using wifi most of the day, internet use, mail, ipod, SMS, and watched about 40 minutes of video.
    Standby: 12 hours
    after all that it died and shut off.
    I've tried draining the battery twice now to condtition my battery and i saw about a 7 percent jump each time so maybe that is working. I was getting about 4 and half hours hours before i conditioned and then about 5:45 mins and then about 6 hours.
    I do remember last year when 2.0 came out my 3G had terrible battery life, very similar to what i'm seeing with my 3GS, and 2.0 was fixed with a firmware, so i only hope that the first firmwre will address this issue.
    Or apple could just tell us the truth that the new phone has worse battery life then last yeasr model.
    I did a percentage stat of life i was getting by 1 percent and i found that for each percent that depleted i got about 3 minutes and 45 seconds. If i was on 3G and surfing or checking email, i was getting about 2 minutes and 34 seconds, i literally could watch my battery depleted like i was driving a hemi and watching the gas gauge go down. So if apple claims that your supposed to get about 9 hours of regular usage on wifi or just playing movies and music and games, and 5 hours of usage on 3G, there must have some sorda super model we all dont have!!!!?????

  • Your What are Your Recommended TextPad Embellishments

    As a long-time TextPad user I've been quite impressed with the editor's amazing and powerful features and is why I have been feeling lately that the ESTK is coming up a little on the short end as I begin this journey into writing attempting to write ExtendScript /JavaScript for InDesign.
    With Theunis's compiled CHM help file as an added tool available from TextPad, I may try scripting away from the ESTK, but will miss ESTK's visual enhancement of the code.
    There are so many add-ons available to the TextPad user to use, and as many of you have traveled this road already; what are your recommended clip libraries, macros and syntax definitions that would be worthwhile to the aspiring InDesign script writer?
    Thanks in advance for any suggestions.
    Kelly
    PS. Thanks to Theunis (aka Jongware) for making the CHM available to this community!

    You're welcome, Kelly!
    Personally, I use TextPad "as is", as it already does a great job on syntax highlighting Javascript. Actually I cannot remember if it did this natively, or if I had to download it somewhere -- have been using it for years like this. The only thing I added was a hotkey to the CHM help file (instructions to do so are in TextPad's Help on running external files).
    But I'm as curious as you: does anyone else have suggestions to further enhance TextPad?
    On the same: on my Mac I use TextWrangler to code. Are there any useful additions for that as well?

  • What are your top 10 issues to upgrade E-Business Suite

    Hi everyone,
    My name is Max Arderius, Product Manager for Life Cycle Management products in Oracle. We are doing a big effort to help customers to simplify their E-Business Suite upgrade. We are trying to collect all the information we can to identify the top issues that customers are facing before, during or after E-Business Suite upgrades. We are really committed to address all possible issues and so we can prevent usual problems, showstoppers, inconveniences, lack of documentation and other technical difficulties.
    What would you say are your top 10 issues that faced to upgrade to R12? Or what would you like Oracle to address in the near future to make your life easier?
    I am looking forward for your postings! Thanks!
    Max

    Hi Max ! Hope you are well :-)
    One thing that I assume most folks would find useful is a pre-upgrade script that can do some basic checks to identify any potential issues that need to be addressed before the upgrade starts.
    A simple example is documented in MOS Doc 802515.1 (R12 Upgrade: Workers Fail In Apstca01.Sql) - the profile option in our system was set to NULL (the default) and the apstca01.sql failed in the middle of the first test upgrade - not a big issue, but would have been nice to have this corrected before the upgrade.
    I am sure that are hundreds of such "gotchas" from all the various modules :-)
    This script is almost analogous to the database pre-upgrade script/tool (http://download.oracle.com/docs/cd/E11882_01/server.112/e17222/upgrade.htm#UPGRD12395) that performs some checks and makes recommendations.
    Thanks
    Srini

  • What are your experiences in integrating Windows AD and Linux

    I got into a job with a domain of about 70 Windows PCs and about 100 Linux machines.
    The domains are quite old, and I mean Samba 4 and NIS old. Obviously one wants something newer, as in AD on the Windows side and Kerberos/LDAP on the Linux side. Preferably with a single user-database.
    Question to the more experienced members:
    Should I go
    - Windows based and use something like an OpenLDAP Proxy for the Linux-LDAP
    or
    - Samba 4 based AD with the same
    or
    - Any of the above with Linux attributes added to the user entries in LDAP
    What are thoughts and experiences on this? Especially is Samba 4 stable enough to be used in a production environment? What experiences with having Linux machines running in AD directly or via LDAP Proxy/Kerberos Proxy?

    1. Thsi contribution is not discussion, it is question. So better category is needed.
    2. Samba forum is better platform for topics llike Samba stability. Your infrastructure is much closer to Linux one.
    3. As you has landed in Windows Server forum, I would recommend using Windows Server 2012 R2. This is stable and reliable. Homogeneous infrastructure brings less headaches that hybrid one.
    Regards
    Milos

  • Forms and validations - here's some of my ideas, what are yours?

    One of the big things still missing from the JFX space (especially where JEE is concerned) is forms and form validations. Maybe you guys have been luckier but at least 80% of the screens I've had to build in my career have been boring old forms - enter data in the fields, validate them and hit submit.
    So, I've been hacking around on this to try and get a pattern and hopefully some reusable classes for doing this in JavaFX. I have something that works but the code is verbose and less than elegant. I'm hoping some of you guys might want to kick around some ideas on this with me here. If we can come up with something that works, I'd like to either include it in [url http://www.zenjava.com/jfx-flow/]JFX Flow, or put it out as a separate open source project (whichever makes more sense).
    What I think needs to be supported:
    * Map between a normal Java bean and the fields on a form
    * Validate the data, i.e. specifying the constraints on a field and then checking those constraints
    * Show a validation summary at the top of the form
    * Highlight individual fields if they have validation errors
    * Support auto-validation, i.e. the validation highlights and messages will instantly update as the user types
    Some extra restrictions:
    * The data input will ideally be a normal bean and so it won't have observable values on it. In most projects I use, the beans are coming from the server and sometimes may be shared between desktop client and a jsp/web client, or even be a third party API so they can't be changed. End result: we don't want any JFX complexities or dependencies in our server code (design leak). This rule could be bent but only as a last resort.
    * The validations must be defined relative to the normal data bean not a JFX model or controller, etc. This is so the bean can be validated on the server as well as the client. The server must do validation to prevent dodgy data getting in (never trust a client). Ideally we don't want to be specifying the validations in two places (i.e. once for the client and once for the server) as this creates maintenance problems and weakens the integrity of the system over time.
    * Ideally the validation mechanism will be based on [url http://java.dzone.com/articles/bean-validation-and-jsr-303]JSR 303 - Bean Validations as this is quite nice. This is flexible however if there is a suitable alternative that integrates better.
    To give us something to reference in conversation, I've created a small working sample. This is only meant to be a rough starting point (at best) and I'd really like to get feedback on both the code (i.e. should we have a 'presentation model', how could bindings be better used, etc) and the general way I'm representing errors (i.e. should we use tooltips to show errors, or actually show the errors next to the field, should we use border colours or put a little exclamation mark over the field, should the fields be auto-validated or only validated on submit, etc).
    The example is a single form for editing a person. It has three fields, first name, last name and gender. When the form is blank, auto-editing is off. When the user submits the form it is validated and from that point on auto-validating is on. Error fields are highlighted with a style change, and a tooltip is added with details (I think we can do better - what's your ideas?).
    I have used all plain Java to keep thngs simple, but I'd be looking for the end result to translate to FXML as well. I've also coded everything into the one class but the eventual goal would be to have the common stuff moved out to reusable base classes, etc.
    Here's a workspace with some example code in it: http://code.google.com/p/jfxee/source/browse/trunk/jfxforms/
    Here's a running deploy of that code: http://zenjava.com/demo/form/forms.html
    (edit: I've moved the code to its own project and changed the url for the launch - the values above are the new, correct ones)
    Looking forward to hearing some thoughts on this topic.
    Edited by: zonski on 01-Dec-2011 13:41

    At Devoxx I did some straw man prototype that you might find useful (or hopeless, I'm not sure which, I did it in a hurry :-)). I followed some principles that I was influenced by years back by JGoodies, but I haven't looked at the JGoodies stuff in forever and know it isn't all the same. But anyway, like I said, I'm not sure it is actually useful but maybe there is something genius hidden in there.
    I have a Validator, which is just a simple SAM:
    import javafx.scene.control.Control;
    * @author Richard
    public interface Validator<C extends Control> {
        public ValidationResult validate(C control);
    }The idea is that it is given a Control, it will validate that control, and then return a ValidationResult. ValidationResult is actually only needed in cases of errors, since returning null indicates success, so the following is somewhat of a crock but you could rename it ValidationError or something and remove the "SUCCESS" type and there you are.
    public class ValidationResult {
        public enum Type { ERROR, WARNING, SUCCESS }
        private final String message;
        private final Type type;
        public ValidationResult(String message, Type type) {
            this.message = message;
            this.type = type;
        public final String getMessage() {
            return message;
        public final Type getType() {
            return type;
        }For good measure I threw in a ValidationEvent.
    import javafx.event.Event;
    import javafx.event.EventType;
    * @author Richard
    public class ValidationEvent extends Event {
        public static final EventType<ValidationEvent> ANY =
                new EventType<ValidationEvent>(Event.ANY, "VALIDATION");
        private final ValidationResult result;
        public ValidationEvent(ValidationResult result) {
            super(ANY);
            this.result = result;
        public final ValidationResult getResult() { return result; }
    }Because Control's don't presently have the notion of validation built in, I created a ValidationPane which is like a specialized StackPane, where there is a bottom layer, the control, and a glass pane layer. And from CSS you can style it however you like. The ValidationPane has a CSS style class set in case of errors / warnings. So without augmenting controls, the idea is that a ValidationPane subclass would exist to wrap each type of control you needed to validate. It did this because somebody has to wire up the listeners to the control to react on text input etc, and so I thought I'd like that encapsulated in something reusable, and there it was.
    import javafx.beans.DefaultProperty;
    import javafx.beans.property.ObjectProperty;
    import javafx.beans.property.ReadOnlyObjectProperty;
    import javafx.beans.property.ReadOnlyObjectWrapper;
    import javafx.beans.property.SimpleObjectProperty;
    import javafx.beans.value.ChangeListener;
    import javafx.beans.value.ObservableValue;
    import javafx.event.EventHandler;
    import javafx.scene.control.Control;
    import javafx.scene.layout.Region;
    * @author Richard
    @DefaultProperty("content")
    public abstract class ValidatorPane<C extends Control> extends Region {
         * The content for the validator pane is the control it should work with.
        private ObjectProperty<C> content = new SimpleObjectProperty<C>(this, "content", null);
        public final C getContent() { return content.get(); }
        public final void setContent(C value) { content.set(value); }
        public final ObjectProperty<C> contentProperty() { return content; }
         * The validator
        private ObjectProperty<Validator<C>> validator = new SimpleObjectProperty<Validator<C>>(this, "validator");
        public final Validator<C> getValidator() { return validator.get(); }
        public final void setValidator(Validator<C> value) { validator.set(value); }
        public final ObjectProperty<Validator<C>> validatorProperty() { return validator; }
         * The validation result
        private ReadOnlyObjectWrapper<ValidationResult> validationResult = new ReadOnlyObjectWrapper<ValidationResult>(this, "validationResult");
        public final ValidationResult getValidationResult() { return validationResult.get(); }
        public final ReadOnlyObjectProperty<ValidationResult> validationResultProperty() { return validationResult.getReadOnlyProperty(); }
         *  The event handler
        private ObjectProperty<EventHandler<ValidationEvent>> onValidation =
                new SimpleObjectProperty<EventHandler<ValidationEvent>>(this, "onValidation");
        public final EventHandler<ValidationEvent> getOnValidation() { return onValidation.get(); }
        public final void setOnValidation(EventHandler<ValidationEvent> value) { onValidation.set(value); }
        public final ObjectProperty<EventHandler<ValidationEvent>> onValidationProperty() { return onValidation; }
        public ValidatorPane() {
            content.addListener(new ChangeListener<Control>() {
                public void changed(ObservableValue<? extends Control> ov, Control oldValue, Control newValue) {
                    if (oldValue != null) getChildren().remove(oldValue);
                    if (newValue != null) getChildren().add(0, newValue);
        protected void handleValidationResult(ValidationResult result) {
            getStyleClass().removeAll("validation-error", "validation-warning");
            if (result != null) {
                if (result.getType() == ValidationResult.Type.ERROR) {
                    getStyleClass().add("validation-error");
                } else if (result.getType() == ValidationResult.Type.WARNING) {
                    getStyleClass().add("validation-warning");
            validationResult.set(result);
            fireEvent(new ValidationEvent(result));
        @Override
        protected void layoutChildren() {
            Control c = content.get();
            if (c != null) {
                c.resizeRelocate(0, 0, getWidth(), getHeight());
        @Override
        protected double computeMaxHeight(double d) {
            Control c = content.get();
            return c == null ? super.computeMaxHeight(d) : c.maxHeight(d);
        @Override
        protected double computeMinHeight(double d) {
            Control c = content.get();
            return c == null ? super.computeMinHeight(d) : c.minHeight(d);
        @Override
        protected double computePrefHeight(double d) {
            Control c = content.get();
            return c == null ? super.computePrefHeight(d) : c.prefHeight(d);
        @Override
        protected double computePrefWidth(double d) {
            Control c = content.get();
            return c == null ? super.computePrefWidth(d) : c.prefWidth(d);
        @Override
        protected double computeMaxWidth(double d) {
            Control c = content.get();
            return c == null ? super.computeMaxWidth(d) : c.maxWidth(d);
        @Override
        protected double computeMinWidth(double d) {
            Control c = content.get();
            return c == null ? super.computeMinWidth(d) : c.minWidth(d);
    }And finally the TextInputValidatorPane instance good for any TextInputControl. I think.
    import javafx.beans.InvalidationListener;
    import javafx.beans.Observable;
    import javafx.beans.value.ChangeListener;
    import javafx.beans.value.ObservableValue;
    import javafx.scene.control.TextInputControl;
    * @author Richard
    public class TextInputValidatorPane<C extends TextInputControl> extends ValidatorPane<C> {
        private InvalidationListener textListener = new InvalidationListener() {
            public void invalidated(Observable o) {
                final Validator v = getValidator();
                final ValidationResult result = v != null ?
                    v.validate(getContent()) :
                    new ValidationResult("", ValidationResult.Type.SUCCESS);
                handleValidationResult(result);
        public TextInputValidatorPane() {
            contentProperty().addListener(new ChangeListener<C>() {
                public void changed(ObservableValue<? extends C> ov, C oldValue, C newValue) {
                    if (oldValue != null) oldValue.textProperty().removeListener(textListener);
                    if (newValue != null) newValue.textProperty().addListener(textListener);
        public TextInputValidatorPane(C field) {
            this();
            setContent(field);
    }This should also be usable as is from FXML since you can easily wrap a TextInputValidatorPane around a TextField, and CSS does all the styling, so I think it all just works. You probably need to have some library of sophisticated Validators which know how to read text from a TextField and compare against the validation annotations, but otherwise it should work well enough. Anyway, in the actual implementation I think I would omit the ValidationPane stuff completely and just build that part into the controls / skins. Like I said, this was a quick hack but seemed to get the "how do I visualize validation errors" part of the problem solved.
    Richard

  • PT880----Possible cold boot issue-----What are YOUR boot times??

    I may have an issue with this board that I hadn't really noticed since I've been so heavy into the max overclock I could get.
    My post and then boot time is strange and annoying-----and sometimes I have to just shut off and turn on-----to actually complete the process.  It just seems WAY too long!  But maybe this is normal for the chipset.
    Turn on>>>>>to POST beep = 40 seconds----D-Bracket shows code of "Memory Detection" during this time.....(----This is the time that seems way out of whack)----most boards I've ever had go from turn on>>>>to Post beep VERY quickly.
    From POST beep>>>>>to "Welcome" screen in BOOT = another 20 seconds
    Completion of BOOT = another 10 seconds-----not so much worried about this one as I would think it would be Windows dependent and what additional software was loaded.
    This total process seems remarkably slow----and again----sometimes-----I NEVER get the post beep (The D-Bracket code is stuck in Memory Detection) and I have to turn the machine off and start again.
    What are you guys' times with your PT880????  I tried two different types of RAM---no difference----changing RAM DIMM slots-----no difference----changing RAM timings and voltages----no difference-----I also ran Memtest on both sets of RAM (passed), reflashed Bios----cleared CMOS, and reset NVRAM----no change.
    Any ideas???  Beta Bios 1.53 issue??
    John

    Quote
    Originally posted by markt435
    Well I finally got my system fixed.  Hmmm I have about a 20 sec start up.  My proc is overclocked to 3.4Ghz as well.  I would try reseating memory or clearing the BIOS.  Or putting different sticks of memory in if you have any laying around.
    Already done-----See last paragraph of my post....

  • What are your top 3 tasks in Creator? We'll document them...

    The Creator Content Team is looking to document the most popular tasks you do (or want to do) in Creator in a quick, easy, accessible way...step-by-step instructions with screen shots. Let us know, and we'll start working on it, now.
    Thanks,
    Carla King
    Managing Editor
    http://developers.sun.com/jscreator/

    I prefer a worked example which demonstrates how to submit a multi page form which updates multiple tables in a database.
    At the end of every page there will be a [b]Continue button to load the next page. At the top of every page you should state how many pages are there in this form submition process and what are they about and what is the current page.
    The database update should only be done after the last page of the form is submitted.
    This is really a very common task (possibly the most common task). Giving an example on this you can show how efficiently and easily this can be done by JSC. We also can make the most of the JSC.
    Thank you very much.

Maybe you are looking for

  • Image in Web Dynpro ABAP

    Hi Experts,                   I 've converted the image as RAW STRING and stored in Database.i need to display from Database.is this possible to Display a image without using MIME object ?

  • Table with n foreign key vs n tables or n foreign key vs 1 table?

    Hi, we have a scenario with n tables containing some attributes one table for one category of attribute (es: color, role, type, etc..) of a principal entity and 1 table for the principal entity with n foreign keys vs every attribute table. Some propo

  • How to have lossless music on the PC and MP3 on the ipod

    I have an ipod for the first time - and am hoping there is a way to do what I want - can anyone help? I have all my music ripped to my PC harddrive through itunes into Apple Lossess format. The itunes music libabry folder is then accessed by my Sonos

  • Using iChat to communicate with Pidgin users on a Citrix Presentation Serve

    We have been using iChat on OS X and Pidgin on Windows XP in our environment for several months now. We use Bonjour as the protocol so it makes for a very lightweight easy, inexpensive IM solution on our network (no server component needed). I hadn't

  • No Signal Loss When Plugged In

    Like many, I have suffered from the dropped bars while holding my phone the way most people do. I tried something last night and for some reason when I pick up my phone with my left hand when it's plugged into the power outlet not one bar drops. Mayb