My solution for boiler example -for CLD

Hi all,
I am currently preapring for the CLD and so attempting the sample examples. I have given a try for the boiler example.
I request all the champs here to provide me the comments on the coding. As coding was done in working time documentation is not done in very good way. But i would like to know the overall comments on it.
Thanks in advance!!!
Attachments:
Boiler.zip ‏70 KB

I hate to be the bearer of bad news but I doubt this would pass. There are lots of things that need improvement. Below is a quick list of things you need to look at.
Document all controls, indicators and VIs.
DO NOT leave the front panels and block diagrams maximized. You should try to fit things on a single screen. Also, the main front panel must look like the requirements including the basic size.
Keep your wires straight. Avoid unnecessary bends. Something that is definitely not done in your code.
Label wires that pass through your state machine. This adds to the documentation and readability of the code.
Don't place items on top of each other.
Make better use of subVIs.
Document your code better. Referring to block diagram comments.
You have an issue with your state machine. You effectively queue things up in an array but it is possible that you will not execute all the states.
I didn't try running it so I can't comment on the functionality. As soon as I opened it I knew you had more to concentrate and practice than the basic functionality at this point.
Mark Yedinak
"Does anyone know where the love of God goes when the waves turn the minutes to hours?"
Wreck of the Edmund Fitzgerald - Gordon Lightfoot

Similar Messages

  • My Solution for CLD Sample Exam (Traffic Light)

    Hi there folks,
    I was just preparing for my CLD exam and was going through the sample exam provided on ni.com.
    I wanted to get any feedback for my solution. I looked at the solution and it seemed way to complex
    to achieve a simple task! Then again, I am still learning.
    ThanX in advance.
    Attachments:
    Traffic Light1.zip ‏81 KB
    Traffic Light2.zip ‏81 KB

    About queues vs shift registers.  Queues allow you the ability to insert elements into either end of the queue.  You can also write code to insert several elements at one time.  With shift registers, only one new element can be carried over to the next loop at one time.
    Lets say you have a state machine that always executes in the same order, no matter what the outcome, like State1 then State 2 then State 3.  A shift register works fine for this simple example.  However with queues, you can use a loop to insert the 3 states before the main state machine loop, then dequeue in the state machine.  This is really a matter of preference.
    Next example.  Lets say you had a situation where you want to run 3 states, but if the second one fails, you want to run 2 other states before going to the third one.  You could use a shift register, and you would have to look at each state to see which is next.  A queue would allow you to insert the 2 extra states in between states 2 and 3.  Of if you want to exit on some failure during a state.  You can use the queue to insert the exit state at the opposite end so that it is the next to be dequeued.
    Another situation is if you allow the user to call certain actions that require running several states.  When the user presses button A, you enqueue states 1,2,3.  If the user presses button C you enqueue states 7,8,9.  So now you have a state machine in which states are defined by some user action.  This would be more difficult to do with a shift register. 
    There are many other situations where a queued state machine is better than just a simple shift register.  For the simplest of situations, I might use a shift register only.  But I like to make it a habit to always use queues because of their versatility, and for the fact that I can go back and upgrade a simple state machine to a more complex one easily if it is done with queues.  Be sure to use shift registers on the queue error in and error out so that errors can be propogated from one state to the next.  On each state, check the error status.  If one occures, enqueue a state at the other end to jump to your error handling state (or exit).
    - tbob
    Inventor of the WORM Global

  • Sprinkler Controller-Solution for CLD

    Hi all,
    I have solved the sprinkler controller sample problem of CLD.
    Request you all to provide the valuable comments on it.
    Attachments:
    Sprinkler.zip ‏88 KB

    Looks pretty clean, but I have not looked at it in detail.
    Here are a few notes:
    Isn't this supposed to be inside a project?
    I hate it when diagrams are maximized to the screen (main VI and file I/O vi)
    You have an existing log file and if I run the VI, new data gets appended. The problem is that the existing entries have a comma as decimal seperators, while the new entries (run in the US) have a decimal point. This could confuse a program that later might analyze the logs. You should decide on a wordwide format.
    To blink the pilot, you can create a direct property node for the button inside the cluster (right-click button on the front panel...create....property node. see image below). No need to get all control references and index out one. (even if you get all the boiler control references, that only needs to be done once outside the loop and not every time it is needed.
    As has been said by jeff above, terminals of subVIs should be on the toplevel diagram, and not buried inside case structures.
    In the file I/O subVI (open file case), you only handle error 7. Shouldn't you handle all errors somehow? For example if the file is "read only", you would get error 8.
    It would seem more easy to format "event" and "event data" into a single string in the main VI. Now you only need one feedback node to see if anything changed. The combination of strings and numerics can easily be done with single formatting statements.
    LabVIEW Champion . Do more with less code and in less time .
    Attachments:
    pilotproperty.png ‏5 KB

  • CLD Solution for Review

    Kindly Evaluate My CLD solution for Sample Exam Sprinkler Controller... 
    Thanks & Regards
    Varaprasath M
    Certified LabVIEW Developer
    Certified TestStand Developer
    Attachments:
    Sprinkler - Kopie.zip ‏332 KB

    Looks pretty clean, but I have not looked at it in detail.
    Here are a few notes:
    Isn't this supposed to be inside a project?
    I hate it when diagrams are maximized to the screen (main VI and file I/O vi)
    You have an existing log file and if I run the VI, new data gets appended. The problem is that the existing entries have a comma as decimal seperators, while the new entries (run in the US) have a decimal point. This could confuse a program that later might analyze the logs. You should decide on a wordwide format.
    To blink the pilot, you can create a direct property node for the button inside the cluster (right-click button on the front panel...create....property node. see image below). No need to get all control references and index out one. (even if you get all the boiler control references, that only needs to be done once outside the loop and not every time it is needed.
    As has been said by jeff above, terminals of subVIs should be on the toplevel diagram, and not buried inside case structures.
    In the file I/O subVI (open file case), you only handle error 7. Shouldn't you handle all errors somehow? For example if the file is "read only", you would get error 8.
    It would seem more easy to format "event" and "event data" into a single string in the main VI. Now you only need one feedback node to see if anything changed. The combination of strings and numerics can easily be done with single formatting statements.
    LabVIEW Champion . Do more with less code and in less time .
    Attachments:
    pilotproperty.png ‏5 KB

  • My solution for ATM machine-Fo​r CLD

    HI all,
    I have solved the ATM machine example for CLD. i request you all to review it and provide mr the valuable comments on it . So that i can improve on it.
    Attachments:
    ATM machine.zip ‏149 KB

    Why do you have an array of strings for the states? You never have more than one element in the array and no mechanism for handling more than one if you had them.
    You have some wires hidden behind other objects, particularly in several of the value changed event cases.  This makes it more difficult to tell what those wires do.
    The indicators for ATM Messages and Left and Right Menus do not have their labels showing on the BD.  Although all the wires leading to them are labeled, I found it distracting to not have the indicator labels visible.  I was double clicking them to see what they were.
    If you enter alpha characters in a deposit transaction, you get the dialog warning about disallowed characters, .... and then it processes the transaction anyway.  Try depositing "500.e" and check balances before and after.
    You do not document why some shift registers are initialized and others are not.
    Interesting that you only read the Account info file during init.  This probably would not work on a real ATM system where multiple accesses to an account (from multiple machines) could occur while the transaction is taking place.  I worked on ATM hardware design back in the early days of the devices and your approach would never have occurred to me.
    I have not taken the exam yet, but I suspect that this might pass.
    Lynn

  • Solution for intermittent use of a single Adobe product?

    I may be a unique case, because I do not want or really need all of the products that Adobe provides my for $30/month. Here is my dilemma:
    I use Adobe illustrator infrequently, sometimes intensively for a month or so, but then I will not use it for the better part of a year. This is how I use the application.
    So, I'm feel that being financially penalized for continuing to use Illustrator, since I pay for it every single month of my life, but use it infrequently. For example, if I use the program 20 times in 10 years (which is about how I do use it), then I am paying (according to the current student deal which I am sure will change in the coming 10 years time), $3600.00 over the course of 10 years to use the program 20 times. That works out to $180.00 per use.
    Obviously I am not in good conscience able to renew my subscription with Adobe, and would have ended it earlier were it not for the severe financial penalty Adobe imposes on users for breaking a subscription contract before its official expiration.
    Before I go, I just wonder if Adobe has any care for users such as myself. I know one unsatisfactory response already: I can by the full version, not get incremental updates, and will need to pay full price for each major upgrade. That's a bad deal too. How can a infrequent user of a single Adobe product (Illustrator) use the application for a reasonable amount of money? I don't need every Adobe product under the sun nor do I like the fact that somewhere in Adobe's hierarchy they think that is some kind of advantage to users. To me, that is product bloat, bordering on spam marketing.If I want a sip of water, I have to drink from the fire hydrant. This is so bone-headed.
    I suppose, overall, I will advise my students to use what software the company they work for uses. But as far as a personal graphics package for independent work, I cannot recommend Adobe products anymore because of this pricing scheme, which really does penalize people who only use a product one in a while. But before I go, am I missing something? Is my assessment of this dilemma on target? I know I can no longer afford Adobe products, but I also want to advise my students in a way that is fair to them. Currently I am working on a module that shows all of the vector mapping graphics programs and breaks them down according to their feature set and cost for the user.
    I've been using Adobe Illustrator for over two decades, and I will be sad to not have it available to me in the future, but this new business model and pricing structure no longer makes sense for me. Yes, considering the time and energy I've put into the program this is an emotional decision, but ending my relationship with Adobe is the healthy choice. It's like walking away from an abusive relationship of the passive-agressive variety. Adobe, what a drag!

    On the face of it, the $30 for every monthly use seems like it might be a good solution for intermittent users. But, as a designers, I think many of us might like to take a brief look at an idea (sometimes just for the fun of it.) And so, if during one month I want to take a peek at some of my work with no real intention of doing any work, I would need to pay $30 to look at my own work. This kind of situation creates a kind of "double bind" for me. It's an uneasy feeling, having a kind of oppressive effect on the creative flow of ideas. Consider this case scenario: "I think I can improve that logo I did last summer. I wonder what this change would look like?" Well, to find out that will be $30.00. For me, that's an uncomfortable position. Again, thanks for the thoughtful reply.

  • Is RoboHelp Server the solution for us?

    Hi all,
    I'm trying to figure out whether RH Server is the solution for us. I've seen a few similar posts in the forums, but none that really answer my specific questions. I'm hoping for feedback from someone with experience in RH Server, who is perhaps in a similar situation to us.
    We are a software development company, creating desktop software for PCs. We have three main applications, and approximately 20,000 users. I am the company's (only) Tech Writer.
    Currently I provide documentation (user guides) to our clients in the form of the good ol' CHM file. I develop these in RH8. Each of our applications is bundled with an installed CHM file which users access by pressing F1. I'm sure you're all familiar with this process. Our users run our software on their own systems, completely independent of us - there's no connection to us whatsoever. However, they all have Internet access, as it's a requirement for them to be able to use certain functionality within our applications. Hold that thought.
    I also write Knowledge Base Articles in MS Word, as PDFs, which users access via our web site. Internal to our organisation, I provide KBAs and other such material for our Technical Support staff. These aren't available/accessible to the public. I write these in Word because they need to be sent around to a team of reviewers from time-to-time, and whilstI'm the only person with RH installed, everyone has Word.
    What I'm hoping to achieve with RH Server is this:
    Do away with the old CHM files that our users have. They're just awful. I'm hoping that in future, when our users press F1 from within our applications, they will be taken to a corresponding page on a web site or AIR page similar to what the Adobe Help looks like when we access it from RoboHelp. Forgive my ignorance if I've used incorrect terminology. That way they'll always be reading the latest Help content, live, online, instead of what I wrote last time we sent a product update out. I imagine our programmers will have to edit the functionality behind the action of our users pressing F1 in our applications. Has anyone done this? Are there any issues we should be aware of? What happens if our users don't currently have Internet access, for example - is it possible to call a local version of the Help instead, if this is detected? Has anyone done this with a similar number of users to us? We could well have 100s of users trying to access the system simultaneously.
    Gather feedback from users. From what I understand, we'll be able to use RH Server to see which Help topic/content is being viewed, and also receive feedback from users. Can anyone give me feedback on their experiences with this? Any tips/hints/issues I need to be aware of? Is it possible for us to determine which users accessed which content? Remember, the idea is that users should be able to access this content by pressing F1 - I don't want them to have to sign in every time they need to access our Help system - it should be seamless to them. So, I'm wondering how it would be possible to track user usage without making them sign in. This is important to us because some of our content is region-specific, and it would be handy to know if users from those regions are actually accessing the Help content that relates to them.
    Host our internal documentation on the same server as our public documentation. Is it possible to host all of our internal, private documentation on the same RH Server, making it available to our Tech Support team (and other internal teams) only? I imagine we could do this by password-protecting it, but I want to ensure that the public don't even know it exists. ...and our Tech Support people would not be impressed with having to sign in every time they wanted to access their Knowledge Base. Any tips here regarding locking down / restricting access to content?
    A quick note about collaboration:
    Currently, although the Help menus are developed in RH, the KBAs and other PDF documents are written in MS Word. I send them around to a team of reviewers who add their comments/edits and send them back to me. From what I understand, this is something I can do with RH10 - export PDFs and send them around for review, combining the results later, at which time I give them a final review before publishing. Have I understood this correctly? Does RH Server play a part in this process? Can I use RH Server's feedback capabilities as a mechanism for my review team to make edits/comments? I guess I'm trying to get an understanding of how sophisticated the RH Server feedback system is. If I can use RH Server to have the team read/review documents, it'll save me having to manage a bunch of Word documents that I email them. It'll also minimise the chance that a redundant document gets distributed by mistake - something that can occur because people use their locally-saved documents I emailed them earlier, instead of the finals.
    Thank you.

    Hi, symmetricalMan
    Let's see if I can tackle some of these "inline". There are a lot of moving parts to your system (you're a busy guy!)
    I only have time for a few of these. Perhaps Colum McAndrew and others will chime it with their experiences.
    >>they will be taken to a corresponding page on a web site or AIR page similar to what the Adobe Help looks like when we access it from RoboHelp.
    It would be WebHelp Pro in the scenario you mention (not AIR Help).
    By "taken to a corresponding page" you are referring to Context Sensitive Help which RoboHelp Server does support (including your F1 scenario).
    >>What happens if our users don't currently have Internet access, for example - is it possible to call a local version of the Help instead, if this is detected?
    Hmm. You could either package a plain WebHelp (not Pro) output and distribute for access on a share drive. The detection thing would be up to your developers. Come to think of it, AIR Help does have a potential alternative here which might be worth looking into. Obviously, there would be two systems to maintain. I'm not up to date on it, but you'll find info here in the online help: http://help.adobe.com/en_US/robohelp/robohtml/WS81F63111-6ACF-4a02-B2B2-461FEBFA8093.html
    >>.we'll be able to use RH Server to see which Help topic/content is being viewed, and also receive feedback from users.
    Actually, the "feedback" is anonymous (no names are collected.) You can however, create "Areas" and analyze the traffic on topics according to sub-sets of your users.
    The feedback is not direct from the users. In other words, RoboHelp Server (at least for now) does not support Commenting (as AIR Help does). So Feedback Reports are derived from the end-users "surfing" your site and collecting their search terms verbatim to get an idea of what they are searching for in order to improve your content.
    >>So, I'm wondering how it would be possible to track user usage without making them sign in.
    RH Server Sites do not have to be "Protected" by authentication. It is your choice. You can have some sites (called Areas) that are authenticated and some sites that are not authenticated, all on the same RH Server. RoboHelp Server uses a database and can authenticate users (by setting up protected "Areas".) However, my networking knowledge is limited and you would have to ask someone else about "persistent logins" etc.
    >>content is region-specific, and it would be handy to know if users from those regions are actually accessing the Help content that relates to them.
    Yes, you can do this. This is where RoboHelp Server can be used to create "Areas" for different content to be delivered to different audiences.
    >>Is it possible to host all of our internal, private documentation on the same RH Server,
    Yes you can. However the Tech Support sign in scenario question would have to be answered by someone else. It's hard to know from where I sit.
    >>RH10 - export PDFs and send them around for review, combining the results later, at which time I give them a final review before publishing
    Yes, this workflow would seem to work for you. However, RoboHelp Server plays no role in this review one way or the other. There are many alternatives for sharing the PDF which is described in the documentation.
    See #6 on this page:
    http://help.adobe.com/en_US/robohelp/robohtml/WS1b49059a33f77726-2db1c75912bc47baaf8-7ffb. html
    You should also download the Adobe RoboHelp Server Reviewer's Guide which also has videos embedded.
    http://www.adobe.com/support/documentation/en/robohelp/9/AdobeRoboHelpServer9_ReviewersGui de.pdf
    Hope this helps
    John Daigle
    Adobe Certified RoboHelp and Captivate Instructor
    Evergreen, Colorado
    www.showmethedemo.com
    Twitter: @hypertexas

  • Make your own Fax Server with Automator! (Pagesender solution for Mavericks)

    I have been scouring these discussion boards for some time now looking for a suitable substitute to PageSender, an awesome fax solution for the Mac from SmileOnMyMac LLC, which for some inexplicable reason stopped development and updates after OS 10.6.8. The result is that many small business office users who still rely on fax (and yes...no matter what they tell you, most of the business world DOES still use fax because it's legally binding and more secure than email for the transmission of legal documents or healthcare records, and does not rely on database integration accross different systems, which is sadly but very realistically still a long ways off), and no longer have a way to integrate faxes into a paperless or digital workflow office system.
    I suspect like many folks who receive faxes, those who used PageSender, used a very powerful feature to forward faxes by email, thereby turning your Mac into a Fax server that could distribute your faxes to other workstations and staff throughout the business via email. Presumably, if you have your own email server (Exchange, Kerio, AppleMail server, PostFix enabler etc.) you could distribute faxes on your own internal network, securely behind a firewall, and effectively create a digitial/paperless workflow for your faxes.
    Even if you have a USB modem or multifunction printer that allows you to recieve a Fax to your desktop (Apple's internal fax via printer preferences, and some HP models like the HP MFP 127fw) for example will allow you to recieve a Fax to a desktop folder or forward to a single email address. But the former is of limited functionaliy and the later only lets you send to an email address out over the internet with a registered public domain, which means you give up all control of privacy and means you can't process it through a private mail server to create a digital workflow for your office...
    ...Until now!!!
    I am happy to report that I have finally discovered a very easy and useable feature that will save a lot of time, money, and headaches for those looking to create a digital workflow and fax server system for a small office system. (I don't think there is any limit to scale here, but I suspect offices with more than 10 employees probably have a BizHub, or HP MFP/digital sender that can create the same process directly from the printer, but of course these come with a price tag of $2000 and up...).
    To accomplish this however, you will need some basic requirements which are as follows:
    1) A USB modem from either US Robotics or Zoom Modem. These are readily available from Amazon, MacMall or any number of other online vendors and work very well and seemlessly with all Macs running OSX right up through Mavericks
    OR
    A Multifunction printer that is capable of receiving faxes to a desktop Mac like the HP 127 fw. Other models exist from other manufacturers as well, but you will have to do a bit of research and probably check with the vendor or user manual directly to confirm that Fax to desktop is supported for Mac and OS 10.9.
    2) A dedicated Mail Server (MSFT Exchange, Kerio, MacOSX server with mail server enabled, or PostFix enalber or MailServe from Cutedge Systems)
    You will need to set up an email account on your server that is the parent for all incoming faxes from which the faxes will be sent out as part of your digital workflow. This is beyond the scope of this discussion but if you've come this far and you're still reading, you probably know  how to do this already. I recommend setting this up as a POP account, not IMAP. This way, the attatchments (your faxes) will always remain on your server as a back up, until you delete them from the server.
    3) Now simply go to System preferences and select "Printers and Scanners". Select either the Fax printer for your multifunction printer, or add a fax printer/reviever using the + button and select "Fax" if you are using a USB modem. You must have the USB modem attatched to the computer in order to use the built-in Apple Fax feature for the latter option.
    4) Now click on the receive options. Select "Recieve faxes to this computer" and set your ring answer settings. Check "Save to" and select the designated folder (either Faxes or Shared Faxes on your computer) or create a new folder. Depending on the volume of faxes, and your back up systems, you may want to designate a separate folder on a separate drive, exclusively for your Faxes. This is where all your faxes will be stored.
    5) Now launch "Automator" in your applications folder and create a new workflow. You will be presented with several options. Select "Folder Action".
    6) At the top right of the window space you will see "Folder Action receives files and folders added to" . Select the Fax folder you created in step 4.
    7)On the left hand side of the "Actions" menu select "Mail"
    8) From the list of actions select "New Mail Message" this will take the latest Fax added to your Fax folder and attach it as a PDF to a new outgoing mail. In the "TO" address put the email address that belongs to the parent account your created for the Faxes on your mail server eg. [email protected].  In the subject field you can put "Fax Workflow" or any other generic subject that will identify to all reciptients that this is an email that contains a Fax/PDF attatchment.
    Under "account" use the SMTP account you set up on your mail server to handle the routing of internal emails. In most cases, this will be the same as the parent account created above. (Effectively, this account is sending and receiving emails to itself).
    9) From the list of actions, select "Send outgoing messages".
    10) Save the Automator workflow with a name like "FaxDistribution" or "FaxFlow".
    11) Go back to the Fax folder you created in step 4. Right click or option click on the folder and scroll down the options menu and select "Folder Actions Setup". You will see a list of scripts including the Automator workflow you just created. Choose it.
    That's it!! From now on, when you get a fax, it will get dumped into the designated fax folder, and this will automatically trigger the workflow to atttach and send it as an email to anyone in your office that is set up to receive emails with the "faxserver" address. You now have a paperless fax digital workflow server system for distributing your faxes digitally to anyone in your office who needs to review your faxes. Good luck!

    Thank you for this interesting posting.

  • Enterprise Solution for communication??

    Hi,
    We need to transfer pdf files between various environments(AS/400, WIN2K, AIX etc) with detail information about pdf files. Reciever will recieve the pdf file along with the details and populate that information into their database. reciever will have their own APIs to handle this. But we are looking for enterprise solution for communicating between these environments.
    Please give pros and cons in various technologies like JMS, SOAP, HTTP, etc..
    Thank you,

    You dont need to 'send' your report to the other environments, you are merely accessing the report from a shared file system.
    NFS allows you to share a common file system which might be located on one your existing systems. Or you can purchase an additional file server.
    NFS is quite open, and I believe supports all the systems you have. Finding NFS client software should be easy, with Windows probably the most complex. Several vendors (Hummingbird is the most notable with NFS Maestro) provides Windows based NFS clients.
    Once finished with the server and client architecture, design a file tree that supports staging and releasing the docs.
    for example
    /var/pdfdocs
    /release
    /staging
    NFS is very quick, and allows you to use standard file commands.
    The meta-data is stored in a standard relational db, which each system can update as sees fit.
    Read the following:
    NFS in general
    http://www.networkcomputing.com/912/912buyers2.html
    NFS on AS/400
    http://publib-b.boulder.ibm.com/Redbooks.nsf/RedbookAbstracts/sg242158.html?Open
    Windows NFS
    http://www.hummingbird.com/products/nc/nfs/index.html
    http://www.frontiertech.com/supernfs/product/prodguid.htm

  • Oracle Installation or Uninstallation Solutions For Windows 95/98/2000/ME/NT/XP

    You must read carefully the following steps here. If you previously installed any Oracle's products on your machine, I strongly recommend you to clean up thoroughly before install the new products.
    ================================================================
    Uninstallation
    The easiest way to remove ALL traces of Oracle software, for an 8i installation, is:
    (1) Using regedit, remove the key \\HKEY_LOCAL_MACHINE\\SOFTWARE\ORACLE.
    (2) Remove all the Oracle services (usually called Ora-something) from \\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services.
    (3) Go to the ORACLE_HOME directory (usually C:\Oracle\Ora81). Go to the BIN directory beneath this. Rename the file OCIW32.DLL to something like OCIW32.OLD.
    (4) Reboot your box.
    (5) Once you have logged on again, delete the directories C:\Program Files\Oracle and C:\Oracle.
    (6) Right-click on My Computer, select Properties->Environment. Edit the environmental variable PATH to remove all refernces to files in the two directories you have just deleted.
    (7) Remove the Oracle folders from your Start menu.
    *** Obviously, using regedit on your machine always entails risks, and I won't be held responsible if you end up trashing your system. However, the above procedure is one I have used many times with complete success. You have been warned! ;) ***
    As to logging on, the "standard" Oracle accounts are:
    SYS/change_on_install (SYSDBA - database owner)
    SYSTEM/manager (Owns various VIEWs and utility PACKAGEs)
    and (optionally):
    SCOTT/tiger (Training account containing some sample tables)
    If you're using PO8i on the local machine, you shouldn't need to worry about setting up NET*8 (Oracle's networking protocols)
    =================================================================
    Windows 95 and 98
    This will remove all Oracle products, Oracle services, and Oracle registry entries from your computer.
    Complete the following steps to create a Clean Machine. Backup any relevant databases before proceeding!
    On Windows 95 and Windows 98:
    1. Ensure you shutdown your Oracle. Right click on the Oracle Icon in the toolbar and click on the shutdown option.
    2. Un-install all your Oracle products if possible. Use universal installer to do that. Ignore this step if you dont have universal installer on your machine.
    3. In regedit, go to HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE.
    4. Delete the ORACLE key.
    5. Edit your AUTOEXEC.BAT file and remove your %ORACLE_HOME%\bin and JRE paths from the path setting.
    6. From the Windows Explorer (or from the command prompt), delete the Oracle directory (Oracle Base).
    7. Delete <system_drive>:\Program Files\Oracle (from the Windows NT Explorer or from the command prompt).
    8. Delete Icons from <system_drive>: \Windows\Start Menu\Programs\Oracle - <HOME> and <system_drive>:\Windows\StartMenu\Programs\Oracle Installation Products. Where <HOME> is the previous HOME name.
    9. Reboot your computer.
    On Windows NT:
    1. Ensure you are logged in as a user with Administrator privileges.
    2. Stop all Oracle Services through Control Panel Services. Use universal installer to un-install your Oracle products. Ignore un-install if you dont have universal installer on your machine.
    3. Using regedit (at the command prompt, type regedit), go to HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE and delete the ORACLE key.
    4. Open HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services, and remove all keys under HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services that begin with ORACLE.
    5. Open HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\Application, and remove all keys under HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\Application that begin with ORACLE.
    6. Close regedit.
    7. From the Control Panel, open System.
    8. If JRE was installed by Oracle, remove the %ORACLE_HOME%\BIN path and the JRE path. For example, you may see a path similar to this one: C:\ORACLE\ORAxx\BIN;G: \Program Files\Oracle\jre\1.1.7\bin. Go to Start > Control Panel > System > Environment tab. Click on the system variable path and modify the path.
    9. Delete Icons from <system_drive>:\Winnt\Profiles\All Users\Start Menu\Programs\Oracle - <HOME> and <system_drive>:\Winnt\Profiles\All Users\Start Menu\Programs\Oracle Installation Products. Where <HOME> is the previous HOME name.
    10. Delete <system_drive>:\Program Files\Oracle (from the Windows NT Explorer or from the command prompt).
    11. Reboot your computer.
    12. Delete all ORACLE_BASE directories (You can find the Oracle homes listed in HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\ORACLE_HOMES).
    ================================================================
    Doc ID:
    Note:131299.1
    Subject:
    Oracle Installer 8.1.X Hangs on Machines with Pentium 4
    Processors
    Type:
    ALERT
    Status:
    PUBLISHED
    Content
    Type:
    TEXT/PLAIN
    Creation
    Date:
    02-JAN-2001
    Last
    Revision Date:
    18-APR-2001
    This alert was modified 16-January-2001 by specifying specific
    Oracle Universal
    Installer Versions in the the Versions Affected section.
    Oracle Universal Installer (OUI) for 8.1.x Hangs on Machines
    with Pentium 4
    Processors
    ~~~~~~~~~~~~~~~~~~
    Versions Affected
    ~~~~~~~~~~~~~~~~~
    Oracle 8.1.5
    ============
    Oracle Universal Installer 1.6.0.9.0
    Oracle 8.1.6
    =============
    Oracle Universal Installer 1.7.0.19.0
    Oracle 8.1.7
    ==============
    Oracle Universal Installer 1.7.1.9.0
    Platforms Affected
    ~~~~~~~~~~~~~~~~~~
    Any platform that uses the Intel Pentium 4 processor, with the
    Sun JRE
    and Symmantec JIT will encounter this problem. Windows NT,
    Windows 2000
    and NetWare platforms are confirmed to be affected.
    Description
    ~~~~~~~~~~~
    When installing Oracle Products with the Oracle Universal
    Installer (8.1.x)
    on machines that use the Sun JRE and Symmantec JIT, the
    installer hangs.
    Specifically for the Windows platform, the following version
    of the Symmantec
    JIT or earlier will encounter the failure:
    Symantec Java! JustInTime Compiler Version 3.10.107 for JDK
    1.2.
    Details regarding this issue can be found at:
    http://developer.intel.com/design/processor/future/manuals/knowni ssue.htm
    How to determine if you have Symmantec Java for JDK 1.2:
    1. Select the file "symcjit.dll" and right click on it.
    2. Select Properties, then the Version tab.
    3. Under Microsoft Windows*, the properties of the DLL are:
    "Symantec Java! JustInTime Compiler Version 3.10.107 for
    JDK 1.2 Copyright (C)
    1996-99 Symantec Corporation Dynamic Link Library file".
    DLLs older than this will also not work. "
    Likelihood of Occurrence
    ~~~~~~~~~~~~~~~~~~~~~~~~
    Any platform that uses the Intel Pentium 4 processor, with the
    Sun JRE
    and Symmantec JIT will encounter this problem. Windows NT,
    Windows 2000 and NetWare platforms are confirmed to be
    affected.
    Possible Symptoms
    ~~~~~~~~~~~~~~~~~
    The failure typically is that the affected application simply
    terminates.
    Workaround
    ~~~~~~~~~~
    Not only will OUI be affected by this bug, most of the
    post-install
    configuration tools will also be affected. Running these
    tools with "-nojit"
    specified will avoid the hang, but it is not simple to specify
    "-nojit" for
    some of the products.
    The following workaround works for the Windows operating
    system:
    a. Copy only the install directory from the CD to the hard
    disk ,say, e:\temp.
    b. Open oraparam.ini and make the following modifications
    (Assuming CD
    drive is f:)
    * Change the "SOURCE=" line to use the full path to the CD
    instead of a
    relative path. (i.e., SOURCE=f:\stage\products.jar)
    * Change the "JRE_LOCATION" line to use the full path to the
    CD instead of a
    relative path. (i.e.,
    JRE_LOCATION=f:\stage\Components\oracle\swd\jre\1.1.7\1\DataFiles
    \Expanded)
    * Change the "OUI_LOCATION" line to use the full path to the
    CD instead of a
    relative path. (i.e.,
    OUI_LOCATION=f:\stage\Components\oracle\swd\oui\1.6.0.9.0\1\DataF
    iles\Expanded
    * Change the "JRE_MEMORY_OPTIONS" line to add "-nojit" as the
    first argument.
    (i.e., JRE_MEMORY_OPTIONS=-nojit -ms16m -mx32m)
    ^^^^^^
    * Other entries should remain the same
    c. Launch setup.exe from the temporary location on your hard
    drive (i.e.
    e:\temp\install\win32\setup.exe). This will use the
    modified
    oraparam.ini and pick up the information from the CD since
    the absolute
    locations are specified.
    Choose a Custom install and choose not to create a database
    during the
    install. This way, the Database Configuration Assistant will
    not be launched
    during installation.
    The Net8 Configuration Assistant will still be launched, and
    there is no way
    to suppress it. You will need to kill the Net8 Configuration
    Assistant if it
    hangs due to the bug. The installation still will have been
    successful, and
    you can run the DBCA and NetCA after installation.
    To kill NetCA if it hangs during installation:
    In the "Configuration Tools" window, highlight the "Net8
    Configuration
    Assistant" and click "Stop". If that does not work, look for
    the most recent
    JRE process using the Task Manager, and kill it manually.
    NOTE: the OUI
    itself will also have a jre process. Be sure to kill the one
    with the most
    recent date, which should be the jre process being used for
    Net8CA, not the
    one for OUI itself.
    After killing the configuration tools and continuing through
    the installation
    to the "End of Installation" screen, you should modify the
    configuration tools
    to use "-nojit", then call the appropriate tools from the
    Start Menu.
    Once installation is complete, each of the following files in
    the ORACLE_HOME
    needs to be modified:
    assistants\dbca\dbassist.cl
    assistants\dbma\dbmig.cl
    assistants\ifa\ifa.cl
    bin\elogin.cl
    bin\owm.cl
    ldap\oidamdin\oidadmin.cl
    network\tools\netasst.cl
    network\tools\netca.cl
    owm\install\instelogin.cl
    owm\install\instowm.cl
    Edit the contents of the above files to add "-nojit" as shown
    below:
    Command=("C:\Program Files\Oracle\jre\1.1.7\BIN\JREW" -nojit
    -classpath ....
    this is the only thing you need to add --> ^^^^^^
    Then, launch the necessary tools, like Net8CA and DBCA from
    the Start Menu.
    Patches
    ~~~~~~~
    Currently there is not a patched installer available to deal
    with this
    problem, the workaround listed above must be used.
    References
    ~~~~~~~~~~
    [BUG:1507768] INSTALLER FAILS WHEN RUNNING ON NEW PENTIUM 4
    (IV) PROCESSORS
    [BUG:1507946] INSTALLER FAILS WHEN RUNNING ON NEW INTEL
    PENTIUM 4 (IV) PROCESSORS
    @[BUG:1518935] SYMCJIT.DLL DOESN'T WORK WITH THE NEW P4
    PROCESSORS
    Oracle
    Support Services.
    Copyright (c) 1995,2000 Oracle Corporation. All Rights
    Reserved. Legal Notices and Terms of Use.
    ================================================================
    The solution of making a local copy of the installation CD on
    the hard disk and renameing symcjit.dll to symcjit.old does
    work to allow installation of Oracle Client 8.1.7 on a Pentium 4
    This function is useful and you can find two file to rename
    ===============================================================
    Windows ME
    Solution to the installation of Oraclei8.1.7 PE in Windows Millennium
    Oracle does not support installing version 8.1.7 PE into
    Windows Millennium.
    As an unsupported workaround, you may add the following line
    to the [compatibility95] section of win.ini prior to
    installation:
    Jrew=0x00080000
    After setup is complete, Oracle will recommend a reboot.
    There is one additional step necessary prior to reboot;
    Oracle may add a non-standard path statement to the
    autoexec.bat file. Please modify this SET PATH
    statement to use short-filenames if you find a quoted
    LFN string represented as part of the path. You can
    confirm that the path was merged successfully into the
    registry after reboot by examining the PATH variable
    in the registry at
    HKLM\System\CurrentControlSet\Control\SessionManager\Environment
    Symptoms of a missing Oracle path statement in the registry are that Net8 Easy Config will not launch.
    Please note that Oracle does not support the use of this
    product in Windows ME, but have authorized these workarounds
    for testing purposes only.
    ===============================================================
    Windows XP Home Edition
    Oracle 8i is not certified on windows XP. Even if yes, it must be Windows XP Professional.
    You can install Oracle8i on windows XP Home Edition, try like this:
    1 - Copy your Oracle CD into hard disk in your
    machine. For example Copy from oracle8i CD into C:\Oracle\ ...
    2 - Search the two files named Symcjit.dll on the D drive (where you have copied Oracle8i. You can found them in (example):
    C:\Oracle\stage\Components\oracle.swd.jre\1.1.7.30\1
    \DataFiles\Expanded\jre\win32\bin\symcjit.dll
    3 - Rename this file (Example): symcjit_back.dll (make sure to find two files and rename them)
    4 - Execute the Oracle setup.exe from C:\Oracle\setup.exe
    ===============================================================
    When Oracle 8i dies on the install or the installer hangs, here is the fix for this, make sure that you have Service Pack 2 installed.
    1. \JRE\1.3.1\ From Sun. (You can download java program at http://java.sun.com/products/jdk/1.1/jre/download-jre-windows.html)
    2. Install the java file.
    There is also a problem in the installation disk.
    3. Make a copy of the Oracle 8i disk on the local hard disk.
    4. Do a search for the two files called symcjit.dll and rename them for example: symcjit.old.
    5. Install Oracle from the win32 directory.
    ================================================================
    PLEASE NOTE THAT ORACLE DOESN'T SUPPORT THE USE OF THOSE PRODUCTS IN WINDOWS ME, BUT HAVE AUTHORIZED THESE WORKAROUNDS FOR TESTING PURPOSES ONLY
    Best Regards,
    Beau Leo

    Hi,Beau Leo, I am having problem installing Oracle9i Database Rel.2 on my pc.
    I read the suggestion and solution you posted for fixing Oracle 8.1.x installation
    probblem, and since my pc also hung at 48% while installing Oracle 9i software,
    I wonder if the same problem in the Oracle8 Vs.Pentium4 also exists for Oracle9i.
    I have Windows2000,256RAM, Pentium3 1Ghz, and 13.8 free diskspace. But the installation always
    hangs at 48%, my computer will just shut down and restart automatically without
    even showing an error message. I have tried installing the Enterprise edition for 3
    times already but everytime encountered the same problem. I've also tried custom installation
    by selecting not to create database, but it also hung.
    Before I started each installation, I always made sure that my registry and environment
    path are cleared and that all the partially-installed Oracle files are deleted.
    I hope that you or anyone who has a solution for this problem could be so kindly to help me out.
    Thank you in advance.
    ailee

  • Is ColdFusion the solution for me?

    I've recently started working with Air for a client and I've been having somewhat of a hard time converting.  I'm normally a .net developer so I'm trying to overcome my learning curve.  I'd like to know if ColdFusion would be a good solution for the problem I'm facing.
    I have an Air application that needs access to a simple xml file that sits on an external server.  This file can't be exposed for security reasons.  The security can be simple, I just don't want any random person being able to view it via a link.  I noticed ColdFusion could help here.  It seems as though I may be able to use the URLLoader with a URLVariable and call a ColdFusion application that's on the server that has access to the document.  Is this the case or am I oversimplifying this.  I got the idea from an example http://help.adobe.com/en_US/as3/dev/WS5b3ccc516d4fbf351e63e3d118a9b90204-7cfd.html#WS5b3cc c516d4fbf351e63e3d118666ade46-7cb2.  If this is the case, I'll get CF and all will be well in the world.
    My other solution was to write a .Net web service and try to access it with AS3 but that seems fairly messy to me.  I also considered a PHP script that could give it to me but that as well seems messy.
    So I ask, is CF for me?
    I appreciate any help.  This is a new concept and a new development environment so I apologize in advance.

    Price aside, would CF work for my solution?  Here is what I'm thinking.  I'm sure this isn't correct but should give an understanding.  If I use the following code(I'd add in some variables later):
    <cfset myXML= XMLParse(ExpandPath("xmlDoc.xml"))>
    <cfoutput>outputXML=myXML</cfoutput>
    And make a simple call to it like this:
    var request:URLRequest = new URLRequest();
    request.url = "myaddress.com/xmlReader.cfm;
    request.method = URLRequestMethod.POST;
    var loader:URLLoader = new URLLoader().
    //add the rest of the code here
    Am I oversimplifying this or would it reabe this simple?  If it is this simple, I don't mind making this investment.  I could use this kind of functionality on a few other applications I intend on making and I'm sure I can find new uses once I dig into CF.
    As far as price, it looks like the standard edition is in my price range if I'm correct.  I was pricing the enterprise edition previously.

  • How to find all solutions for reordering of vector

    hello everyone
    -I have problem in finding all possible solutions for reordering of vector.
    -I have vector named (vect_temp) and I want to find all possible reordering of this vector.
    -I have function named Min_diff(vect_temp,next_point) works as follows : I should gave it an element (next_point) in the vector (vect_temp) and it must generate the vector (vect_diff) that contains all possible elements next elements.
    -The function nex_min(vect_temp,next_point) works as follows : I should gave it an element (next_point) in the vector (vect_temp) and it must generate the vector (vect_min) that contains all possible elements next elements.
    -reordering critriea:
    -Min_diff(vect_temp,next_point) and nex_min(vect_temp,next_point) and (next_point) in this first iteration is equal to any selected element in the (vect_temp). after calling the functions, if element in the (vect_diff) is equal to the element in ( vect_min) then add this element into the ordered set [ vec_ordering] and call functions Min_diff(vect_temp,next_point) and nex_min(vect_temp,next_point) again , next_point now is the equal to the element that we have been added in the previous step into the ordered set [ vec_ordering] and repeat this process until all elements in (vect_temp) are ordered according to this criteria.
    - I'm able to do reordering according to the cirtira above and find one solution. but the problem is that if (vect_diff) contains many elements that equal to many elements in ( vect_min), in this case I need to do reordering for the first equal element and this will be one solution and then find reordering for the next equal element and so on.
    let's consider this example:
    - let (vect_temp) contains element [5,9,7,3,1]
    - for the firs iteration let the next_point equal to 7
    - after calling function Min_diff(vect_temp,next_point), then (vect_diff) will contain [ 5,9,3]
    - after calling function nex_min(vect_temp,next_point), then ( vect_min) will contain [ 5,9]
    so for now (vect_diff) and ( vect_min) will have two equal elements.
    - the first solution must be that fist take the first equal element and do reordering such that ordered set [ vec_ordering] will equal to [7,5] then call functions Min_diff(vect_temp,next_point), and nex_min(vect_temp,next_point) again. the( next_point) in this iteration is qual to 5, these funtions will find next elements, let's consider that (vect_diff) and ( vect_min) will have equal element [3] then add this element to the ordered set [ vec_ordering] and repeat calling functions util all elments in (vect_temp) are added to the ordered set [ vec_ordering]. This will be one solution. now the second solution will be is to take second equal elment [9] instead of [5] and continue calling functions and finding ordered list.
    so that each time vect_diff and vect_min will have many equal elements, then do reordering for first equal element this is one solution and then do reordering for the second equal element and so on.
    -my code that can only find one solution that takes only first equal element in (vect_diff) and ( vect_min) and continue ordering is below
    for (int y = 0; y < vect_temp.size(); y++) {
         Min_diff(vect_temp);
         nex_min(vect_temp, next_point);
        for (int i = 0; i < vect_diff.size(); i++) {
         String element_min = vect_diff.get(i).toString();
         if (vect_min.contains(element_min)) {
           vec_ordering.add(element_min);
         _2nd_min_element = element_min;
          vec_temp.removeElement(next_point);
          next_point = _2nd_min_element;
          i = vect_diff.size();
         }// end if condition
        } // end for (i)loop
    }// end for (y) loop
    I hope that someone can answer me how to find all posssible reordering set it is urgent pleasssssse

    DarrylBurke wrote:
    Two months on and you still haven't done your own homework?
    [http://forums.sun.com/thread.jspa?threadID=5423090]
    dbWell, nobody has given the answer yet, so how can (s)he?

  • Need solution for this query

    i want solution for shape & append query as run in access for oracle
    RS.Open "SHAPE {select ID,MAX(Module_Name) AS MainMenu from USER_MODULE GROUP BY ID} APPEND ({select ID,NAME,USER_module.srno,iif(right(param_str,1)='P','ü','') as Allow,iif(left(param_str,1)='A','ü','') as Ins,iif(MID(param_str,2,1)='E','ü','') as Edit,iif(MID(param_str,3,1) = 'D','ü','') as Del,flag,CODE,NAME from USER_MODULE left join user1 on user1.srno=USER_module.srno where user_name='" & Master_Rst!USER_NAME & "' or user_name is null} RELATE ID TO ID) AS AA", G_CompCn, adOpenDynamic, adLockOptimistic

    If you are in migration from one DB to other - you should not go with one to one convertion.
    First understand the business requirment - whats working and how is it working and whats expected out of your new code etc.
    Then decide what to place and how using your new DB.
    There might not be one to one exact match in all DBs.
    Simple example if you find any connect by prior in oracle - can you replace it with simple SQL command in ACCESS / SQL SERVER as it is without any functions?

  • Looking for a nice solution for different cases with nearly same operations

    Hi everybody:
    I'm looking for a nice solution for the following problem:
    I'm measuring different data at the same time (with different devices).
    I would like to save these data all in one array (or cluster?), but I
    don't know exactly the way to do this. All values have corresponding
    time values. So for one data type it would result in a 2d array,
    wouldn't it? But how can I save different data types with their time
    values in one array? Or should I take a cluster? And how can I get only
    a certain type of data out of this array or cluster again? E.g. if I
    only need data type "3" with its time stamps for evaluation? I would
    really appreciate an example, I work with LV 7. Thanks!
    Then - for evaluation - I only need one data type of these different
    data. Which one I would like to choose via the frontpanel (it changes
    from test to test). So, I thought of a case structure (where I can
    choose which data type and correspondingly which evaluation way). The
    evaluation steps for the different data types are quite the same, but
    can vary in order of execution. I could write for every case the
    (nearly) same evaluation steps, but this would take a lot of time, plus
    if I need to change one step I need to change it in every case.
    Does anybody know a better way?
    Thank you very much in advance,
    Steffi

    steffi.kono wrote:
    In this example I have four arrays, which I would like to save alltogether in one file. First column should consists of time stamps, second column of value type 1, third column of value type 2, ... How can I solve this?
    Built the 4 1D arrays into a 2D array, the use write to spreadsheet file.
    steffi.kono wrote:
    And, after that, how can I display only the second coulmn (e.g.) and time stamps in a waveform chart from this file? Or how can I say in LabVIEW: "display the last 30 values of column three over the time in a waveform chart"?
    There is "array subset", which allows you to get any desired subset from an array. If yoyu want entire rows or colums, use "index array".
    To display the last 30 values in a chart, just feed the data to a chart with the history size set to 30 elements. The rest will fall into place.
    LabVIEW Champion . Do more with less code and in less time .

  • What are solutions for a way-too-big database?

    Hi guys!
    I'm a software developer and not very good in database designing. One day, I was asked something like this :
    "For example, there is a company with a web application. One day, the database for that application is way too big, caused performance issues and others, what is the solution for that application database?"
    At first, I thought that was about using multiple database with single app. But I don't know if I was right.
    I want to ask that what are the solutions? If it's "multiple database" then what should I do? Using two connection to 2 database simutaneously?
    I appreciate any replies. Thanks!

    847617 wrote:
    Thanks Lubiez Jean-Val... for your links.
    I've got some more advices like :
    - "transferring workload to another database using different techniques to copy the data from original db"
    - "redesign of the database"
    So that means we use 2 different databases?Sometimes it is deemed desirable to keep only fairly recent data on the OLTP database, where the normal transaction activity happens, and replicate the data to another database that also contains historical data. This second database is used for heavy reporting tasks.
    And "redesign"?As in, design it from scratch and do it right this time. Make sure all data relations are properly defined to Third Normal Form; make sure all data is typed properly (use DATE columns for dates, NUMBER columns for numbers, etc); make sure you have designed effective indexing; make sure you use the capabilities of the rdbms and do NOT just use it as a data dump.
    See http://www.amazon.com/Effective-Oracle-Design-Osborne-ORACLE/dp/0072230657/ref=sr_1_3?s=books&ie=UTF8&qid=1301257486&sr=1-3
    are they really good solutions?Like most everything else, "It depends"
    It depends on if the proposed solutions are implemented properly and address the root problem. The root problem (or even perceived problem) hasn't yet been defined. You've just assumed that at some undefined point the database becomes "way-too-big" and will cause some sort of problem.
    It's assumed that we don't have or can't use partitioning.
    And why is that assumed? Yes, you have to have a version of Oracle that supports it, and it is an extra cost license. But like everything else, you and your management have to do a hard-nosed cost/benefit analysis. You may think you can't afford the cost of implementing partitioning, but it may be that you can't afford the expenses derived from NOT implementing it. I don't know what the case is for you, but you and your management should consider the factors instead of just rejecting in out of hand.
    :):)...You are making me - a student so excited about the history. From slides rule to the moon....
    Edited by: 847617 on Mar 27, 2011 10:01 AMEdited by: EdStevensTN on Mar 27, 2011 3:24 PM

Maybe you are looking for