Serial VISA 'Write' -why is it slow to return even with large buffer?

Hi,
I'm writing a serial data transfer code 'module' that will run 'in the background' on a cRIO-9014.  I'm a bit perplexed about how VISA write in particular seems to work.
What I'm seeing is that the VISA Write takes about 177ms to 'return' from a 4096 byte write, even though my write buffer has been set to >> 4096.
My expectation would be that the write completes near instantly as long as the VISA driver available buffer space is greater than the bytes waiting to be written, and that the write function would only 'slow down' up to the defined VISA timeout value if there was no room in the buffer.
As such, I thought it would be possible to 'pre-load' the transmit buffer at a high rate, then, by careful selection of the time-out value relative to the baud rate, it would self-throttle once the buffer fills up?
Based on my testing this is not the case, which leaves me wondering:
a) If you try to set the transmit buffer to an unsupported value, will you get an error?
b) Assuming 'yes' to a, what the heck is the purpose of the serial write buffer? I see no difference running with serial buffer size == data chunk size and serial buffer size >> data chunk size??
QFang
CLD LabVIEW 7.1 to 2013

Hi, I can quickly show the low-level part as a png. It's a sub-vi for transferring file segments.  Some things like the thin 'in-line' VI with (s) as the icon were added to help me look at were the hold-up is.  I cropped the image to make it more readable, the cut-off left and right side is just the input and output clusters.
In a nut-shell, the VISA Write takes as much time to 'return' as it would take to transfer x bytes over y baud rate.  In other words, even though there is suppused to be a (software or hardware) write and read buffer on the com port, the VISA write function seems to block until the message has physically left the port (OR it writes TO the buffer at the same speed the buffer writes out of the port).  This is very unexpected to me, and what prompted me to ask about what the point is of the write buffer in the first place?  -The observations are on a 9014 RT target built in serial port.  Not sure if the same is observed on other targets or other OS's.  [edit: and the observation holds even if transmitting block-sizes of say 4096 with a buffer size of 4096 or 2*4096 or 10 * 4096 etc. I also tried smaller block sizes and larger block sizes with larger still buffers.  I was able to verify that the buffer re-size function does error out if I give it an insane input buffer size request, so I'm taking that to mean that when I assign e.g. a 4MiB buffer space with no error, the write buffer actually IS 4MiB, but I have not found a property to read back what the HW buffer is, so all I have to base that on is the lack of an error during buffer size setting.) [\edit\]
The rest of the code is somewhat irrelelvant to this discussion, however, to better understand it, the idea is that the remote side of the connection will request various things, including a file.  The remote side can request a file as a stream of messages each of size 'Block Size (bytes)', or it can request a particular block (for handling e.g. re-transmission if file MD5 checksum does not match).   The other main reason for doing block transfers is that VISA Write hogs a substantial ammount of CPU, so if you were to attempt to write e.g. a 4MiB file out the serial port, assuming your VISA time-out is sufficiently long for that size transfer, the write would succeed, but you would see ~50% CPU from this one thread alone and (depending on baud rates) it could remain at that level for a verrry long time.   So, by transferring smaller segments at a time, I can arbitrarily insert delays between segments to let the CPU sleep (at the expense of longer transfer times).  The first inner case shown that opens the file only runs for new transfers, the open file ref is kept on a shift register in the calling VI.  The 'get file offset' function after the read was just something I was looking at during (continued) development, and not required for the functionality that I'm describing.
QFang
CLD LabVIEW 7.1 to 2013

Similar Messages

  • Macpro dual core xeon.  Why can I not download Lion even with snow leopard 10.6.8 already as sysyem?

    macpro dual core xeon January 2008  Why can I not download Lion even with snow leopard 10.6.8 already as sysyem?

    If you need to purchase Lion call 1-800-692-7753 or 1-800-676-2775. Ask for a Sales Representative. They will check your Apple ID, and email you a code and instructions.  The cost is $29.99 (as it was before) plus tax.  It's a download.

  • Why does my iMessage not work even with my apple ID signed in?

    Why does my iMessage not work even with my apple ID signed in?

    Using FaceTime http://support.apple.com/kb/ht4319
    Troubleshooting FaceTime http://support.apple.com/kb/TS3367
    The Complete Guide to FaceTime + iMessage: Setup, Use, and Troubleshooting
    http://tinyurl.com/a7odey8
    Troubleshooting FaceTime and iMessage activation
    http://support.apple.com/kb/TS4268
    iOS: FaceTime is 'Unable to verify email because it is in use'
    http://support.apple.com/kb/TS3510
    Using FaceTime and iMessage behind a firewall
    http://support.apple.com/kb/HT4245
    iOS: About Messages
    http://support.apple.com/kb/HT3529
    Set up iMessage
    http://www.apple.com/ca/ios/messages/
    iOS 6 and OS X Mountain Lion: Link your phone number and Apple ID for use with FaceTime and iMessage
    http://support.apple.com/kb/HT5538
    How to Set Up & Use iMessage on iPhone, iPad, & iPod touch with iOS
    http://osxdaily.com/2011/10/18/set-up-imessage-on-iphone-ipad-ipod-touch-with-io s-5/
    Troubleshooting Messages
    http://support.apple.com/kb/TS2755
    Troubleshooting iMessage Issues: Some Useful Tips You Should Try
    http://www.igeeksblog.com/troubleshooting-imessage-issues/
    Setting Up Multiple iOS Devices for iMessage and Facetime
    http://macmost.com/setting-up-multiple-ios-devices-for-messages-and-facetime.htm l
    FaceTime and iMessage not accepting Apple ID password
    http://www.ilounge.com/index.php/articles/comments/facetime-and-imessage-not-acc epting-apple-id-password/
    FaceTime, Game Center, Messages: Troubleshooting sign in issues
    http://support.apple.com/kb/TS3970
    Unable to use FaceTime and iMessage with my apple ID
    https://discussions.apple.com/thread/4649373?tstart=90
    How to Block Someone on FaceTime
    http://www.ehow.com/how_10033185_block-someone-facetime.html
    My Facetime Doesn't Ring
    https://discussions.apple.com/message/19087457
    Send an iMessage as a Text Message Instead with a Quick Tap & Hold
    http://osxdaily.com/2012/11/18/send-imessage-as-text-message/
    To send messages to non-Apple devices, check out the TextFree app https://itunes.apple.com/us/app/text-free-textfree-sms-real/id399355755?mt=8
    How to Send SMS from iPad
    http://www.iskysoft.com/apple-ipad/send-sms-from-ipad.html
    You can check the status of the FaceTime/iMessage servers at this link.
    http://www.apple.com/support/systemstatus/
     Cheers, Tom
    BTW- Your profile shows you have iOS 6.1.4 installed. The max iOS for an iPad is 6.1.3. iOS 6.1.4 is for iPhones only.

  • Slow render times even with more RAM...why?

    I have a Quad core Mac Pro that I just upgraded the RAM on from 3G to 7G and can't see any improvement in render speeds, any idea why that would be? As a test I added a simple text box over a single layer of video, added a drop shadow to it (which then requires a render to view) and it didn't take any less time than it did before, about 10 seconds. Shouldn't this have been improved with $225 worth of memory?

    If you're talking about editing speed, that's not "rendering." The goal is not to render at all. Really the best things you can do are: have all your material in the same codec, same size, same everything: then you'll have lot fewer of the timeline "bars" indicating rendering. Having a fast enough machine and drives means you can playback in realtime, or closer to it. Many of us are using one of the flavors of ProRes because it's tuned to the editing environment (as opposed to acquisition or distribution). The machines and processors can handle it. Having enough ram means the system does not have to swap out segments of memory to complete operations. As has been noted, FCP can't access all that much memory in the first place. But with too little memory, which doesn't appear to be your case, some of that memory is captured by the OS performing other duties.
    I can run ProRes on an older MBP with 4 gigs total using an old Firewire 400 drive without any significant timeline rendering popping up. Of course I'm editing documentary work. I'm not trying to turn it into a Flame for compositing.

  • Slow slow slow...even with low CPU and memory usage.

    Sometimes my Mac gets really slow, especially with applications, and even more especially when opening applications. What I don't understand is that when I check Activity Monitor during slow times, it shows plenty of CPU and memory still free, far from being maxed out. I try to keep a good chunk of my hard drive available for virtual memory too, so I'm unsure where its getting bogged down.
    Any ideas?

    You may just need a little maintenance:
    Kappy's Personal Suggestions for OS X Maintenance
    For disk repairs use Disk Utility. For situations DU cannot handle the best third-party utilities are: Disk Warrior; DW only fixes problems with the disk directory, but most disk problems are caused by directory corruption; Disk Warrior 4.x is now Intel Mac compatible. TechTool Pro provides additional repair options including file repair and recovery, system diagnostics, and disk defragmentation. TechTool Pro 4.5.1 or higher are Intel Mac compatible; Drive Genius is similar to TechTool Pro in terms of the various repair services provided. Versions 1.5.1 or later are Intel Mac compatible.
    OS X performs certain maintenance functions that are scheduled to occur on a daily, weekly, or monthly period. The maintenance scripts run in the early AM only if the computer is turned on 24/7 (no sleep.) If this isn't the case, then an excellent solution is to download and install a shareware utility such as Macaroni, JAW PseudoAnacron, or Anacron that will automate the maintenance activity regardless of whether the computer is turned off or asleep. Dependence upon third-party utilities to run the periodic maintenance scripts had been significantly reduced in Tiger and Leopard. These utilities have limited or no functionality with Snow Leopard and should not be installed.
    OS X automatically defrags files less than 20 MBs in size, so unless you have a disk full of very large files there's little need for defragmenting the hard drive. As for virus protection there are few if any such animals affecting OS X. You can protect the computer easily using the freeware Open Source virus protection software ClamXAV. Personally I would avoid most commercial anti-virus software because of their potential for causing problems.
    I would also recommend downloading the shareware utility TinkerTool System that you can use for periodic maintenance such as removing old logfiles and archives, clearing caches, etc. Other utilities are also available such as Onyx, Leopard or Snow Leopard Cache Cleaner, CockTail, and Xupport, for example.
    For emergency repairs install the freeware utility Applejack (not compatible with Snow Leopard.) If you cannot start up in OS X, you may be able to start in single-user mode from which you can run Applejack to do a whole set of repair and maintenance routines from the commandline. Note that AppleJack 1.5 is required for Leopard. AppleJack is not compatible with Snow Leopard.
    When you install any new system software or updates be sure to repair the hard drive and permissions beforehand. I also recommend booting into safe mode before doing system software updates.
    Get an external Firewire drive at least equal in size to the internal hard drive and make (and maintain) a bootable clone/backup. You can make a bootable clone using the Restore option of Disk Utility. You can also make and maintain clones with good backup software. My personal recommendations are (order is not significant):
    1. Retrospect Desktop (Commercial - not yet universal binary)
    2. Synchronize! Pro X (Commercial)
    3. Synk (Backup, Standard, or Pro)
    4. Deja Vu (Shareware)
    5. Carbon Copy Cloner (Donationware)
    6. SuperDuper! (Commercial)
    7. Intego Personal Backup (Commercial)
    8. Data Backup (Commercial)
    9. SilverKeeper 2.0 (Freeware)
    10. MimMac (Commercial)
    11. Tri-Backup (Commercial)
    Visit The XLab FAQs and read the FAQs on maintenance, optimization, virus protection, and backup and restore.
    Additional suggestions will be found in Mac Maintenance Quick Assist.
    Referenced software can be found at www.versiontracker.com and www.macupdate.com.

  • Why expdp table mode not work even with EXP_FULL_DATABASE

    Hi All,
    i want to move several tables from schema A to schema B using expdp/impdp at database KTBDB.
    ktbdba is the db admin account of KTBDB.
    here is the expdb command:
    C:\Windows\system32>expdp ktbdba/password@KTBDB_TNS directory=tmp_dir dumpfile
    *=tabledumptest.dmp logfile=tabledumptest.log tables=a.dept;*
    but i got the three errors:
    ORA-39165: Schema A was not found.
    ORA-39166: Object DEPT; was not found.
    ORA-31655: no data or metadata objects selected for job
    the schema name and table name are correct.
    i can do this
    select from a.dept;*
    ktbdbs has the following dba privileges: *(select * from DBA_ROLE_PRIVS where grantee = 'KTBDBA' ORDER BY GRANTED_ROLE;)*
    APEX_ADMINISTRATOR_ROLE
    CONNECT
    CTXAPP
    DBA
    EJBCLIENT
    EXECUTE_CATALOG_ROLE
    EXP_FULL_DATABASE
    GATHER_SYSTEM_STATISTICS
    IMP_FULL_DATABASE
    JAVADEBUGPRIV
    JAVAIDPRIV
    JAVASYSPRIV
    JAVAUSERPRIV
    JAVA_ADMIN
    JAVA_DEPLOY
    MGMT_USER
    OEM_ADVISOR
    OEM_MONITOR
    OLAP_DBA
    OLAP_USER
    RECOVERY_CATALOG_OWNER
    RESOURCE
    SCHEDULER_ADMIN
    SELECT_CATALOG_ROLE
    WM_ADMIN_ROLE
    XDBADMIN
    XDBWEBSERVICES
    Do you have any clues why the three error happened?
    Thanks
    Edited by: user10833860 on Nov 22, 2010 8:46 AM

    now the problem is fixed by placing tables clause right after the connection string like this:
    expdp ktbdba/password@KTBDB_TNS tables=a.tabl1, a.tabl2, a.tabl3, a.tabl4 directory=tmp_dir dumpfile
    =tabledumptest.dmp logfile=tabledumptest.log;
    but i when i import a.tabl1 2 3 4 into another schema B. I got another error
    ORA-39002: invalid operation
    ORA-39040: Schema expression " IN ('A')" must identify exactly one schema.
    here is the impdp command:
    impdp tbdba/password@KTBDB_TNS tables=b.tabl1,b.tabl2,b.tabl3,b.tabl4 directory=tmp_dir dumpfile=tisbnk_ktbv_tbls_export.dmp logfile=tisbnk_ktbv_tbls_import.log;
    why did this happen.
    thanks

  • Slow loading pages even with a fresh FF install and fresh Profile

    Hi, I been having this issues with FF for months now, had to switch to Google Chrome
    Pages takes a while to load, transferring data, waiting for website, connecting, while in Google Chrome and other browsers it connect to websites and load pages a lot faster
    for the past few months that I have had this issues I tried Resting or installing a fresh copy of FireFox (with new profile), tried to run it without any add-ons, reinstalled windows several times (win7, 8.1, and Win 10 Technical preview "all 64bit") and I even bought a new internet router during that time
    tried pipelining configuration in "about:config" nothing fixed the issues, and not certain websites but all the websites I visit, and I finally thought about finding help here because I prefer using FireFox, thank you in advance.

    ''ideato [[#answer-714003|said]]''
    <blockquote>
    Hi any change in behavior if you boot the computer in [http://support.microsoft.com/en-us/kb/2809468 Windows Safe Mode with network support] ?
    thank you
    </blockquote>
    Hey, I tried to restart in Safe mod with network but for some reason, the network is not working still, but I tried the Diagnostic Startup through the System Configuration "msconfig" and tested FF but still having the issues.

  • Why is Norton Toolbar still disabled even with updated Norton Identity Safe Toolbar in FF 19.0.2?

    I have FF 19.0.2 installed with Norton Internet Security 2013 at my office. Both the Norton Identity Safe Toolbar and Norton Toolbar are updated and working fine. At home, I am using the exact same FF 19.0.2 with the exact same Norton Internet Security 2013 but only the Norton Identity Safe Toolbar is enabled. The Norton Toolbar (shows older version of 1.0.32), however, is disabled. I have tried a Norton Live Update numerous times and have even uninstalled FF 19 and re-installed it. Nothing works. I cannot get the Norton Toolbar enabled. And until I get it enabled I cannot use Norton Identity Safe. This is very frustrating!
    Any help? Thanks in advance.

    That's the problem. I should be using Norton Toolbar version 2013.3.1.3 but it is 2013.1.0.32. I see no way I can manually update it. I do a Live Update but the version doesn't update. I tried re-starting the system, uninstalling and reinstalling Firefox 19.02 (latest version) but nothing works. Extremely frustrating. I even tried going back to FF 18 and even that says that the installed Norton Toolbar 2013.1.0.32 is not compatible. :(
    I do believe this IS a Firefox issue. The Toolbar is disabled and Norton support says I just need to click on Enable. Problem is, there is no Enable option. It's just disabled. VERY frustrating!

  • Why does VISA write vi get a clock symbol added?

    In an application, I was using the older serial I/O primitive vi's, and now that I've switched to LV 7.1, I wanted to change the older serial read and write (worked fine) vi's (not VISAs) to the VISA Read and Write. When I place a VISA write on the block diagram, it adds a little clock symbol at the upper right corner that was not on the templates.
    What is this clock symbol doing there, when it wasn't on the functions panel version of the VISA write vi?
    Having a lot of problems getting the VISA read and write vi's to work; they seem to be far more tricky than the old primitive serial read and write vi's.
    All my VISA read vi's are getting errors, and some of them cause a severe slowdown on execution with those er
    rors. Thoughts on debugging these problemsome VISA vi's. (These problems are why I used the primitive serial read and write vi's in the first place.. couldn't get the VISA vis to work.)
    Thx.

    The little clock symbol means to do I/O asynchronously. If you right click on the function, you'll see the option to do it synchronously. Select that and the clock will disappear.
    What exactly are the errors that you're getting? One thing to try is to disable termination character detection with VISA Configure Serial Port and use VISA Bytes at Serial Port to determine how many bytes to read. If you have enabled the termination character and specify too many bytes to read, you'll get an error because VISA Read will timeout waiting for the termination character to be detected.

  • Visa Write go slow

    I have a LabVIEW program which uses a duplicate session to write stuff to an Arduino and read stuff from an Arduino.  After running for some time, occasionally some of the VIs "freeze".  This was on an executable so I haven't investigated what's going on there.
    I put an EZ Tap Pro snooper on the Tx and Rx in the Arduino and found that the characters were being written with a delay between characters.  The Arduino reply is quick as normal.
    I am struggling to see how the  VISAWrite can decide to go slow.  The Visa session is set to have no handshaking. To me the whole string should be written into the PC write buffer and the UART should spit the thing out the serial port with no delays.  The PC is connected to the Arduino via USB but as far ask I know the PC thinks it's like a serial port.
    Can there be anything in VISA Write which drip feeds characters to the UART?
    This is early days in solving the problem.  The software runs well for hours and hours without crashing
    Thanks for any clues

    pgaastra wrote:
    I have a LabVIEW program which uses a duplicate session to write stuff to an Arduino and read stuff from an Arduino.  After running for some time, occasionally some of the VIs "freeze".  This was on an executable so I haven't investigated what's going on there.
    I put an EZ Tap Pro snooper on the Tx and Rx in the Arduino and found that the characters were being written with a delay between characters.  The Arduino reply is quick as normal.
    I am struggling to see how the  VISAWrite can decide to go slow.  The Visa session is set to have no handshaking. To me the whole string should be written into the PC write buffer and the UART should spit the thing out the serial port with no delays.  The PC is connected to the Arduino via USB but as far ask I know the PC thinks it's like a serial port.
    Can there be anything in VISA Write which drip feeds characters to the UART?
    This is early days in solving the problem.  The software runs well for hours and hours without crashing
    Thanks for any clues
    clues?
    how about posting your VI ?

  • Why do I receive error -1073807339 VISA Write

    I have a LV app built using LV2010 SP1 on a WinXP 32-bit machine.  The app uses VISA to communicate serially through a RS232 to USB adpater to a pump.  I can run the compiled app (exe) on another Win XP 32-bit machine without error.  But the app generates "error -1073807339" with a VISA Write VI (timeout before completion) when run on Win7 64-bit machine.  I have verified that both WinXP machines and the Win7 machine all have the NI device drivers installed (NI VISA 5.0.3), the LV2010 Run-Time engine, and the RS232-USB device drivers.
    I have investigated sources of the timeout error and tried increasing the timeout with no success.  I have also verified port settings, although the app is
    identical between all machines.
    I have verified that the installation on the Win7 64-bit machine was done using admin rights and files were installed correctly.
    I feel like I must be missing something, so I'd appreciate some suggesitons.
    Thanks
    Dan 

    Can you communicate to the device on the Win 7 machine using hyperterminal or some some other communication program? Make sure that you have basic communication and it isn't some strange Win 7 thing. Are you runnign Win 7 64-bit? If so make sure you use the correct drivers.
    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

  • Serial control with VISA write

    Hi,
    I'm trying to write a vi that will control a stepper motor that moves a
    linear stage, and use a linear transducer (potentiometer) as feedback
    to get precise placement of the stage.  I'm having difficulty using
    VISA write to send commands to the stepper motor.  I can use the
    HyperTerminal to send commands, for example /2P0R to start the motor
    moving.  But when I try to get VISA write to write the same command to
    the serial port, nothing happens.  My code is attached.  Can anyone
    tell me what I'm doing wrong?
    Thanks in advance.
    Attachments:
    Untitled2.vi ‏27 KB

    VISA will indeed throw an error if the COM resource is tied up. But the OP's program does not use any error I/O wiring
    ~~~~~~~~~~~~~~~~~~~~~~~~~~
    "It’s the questions that drive us.”
    ~~~~~~~~~~~~~~~~~~~~~~~~~~

  • What's the difference between visa write serial and visa write visa

    Is there any difference, the blocks look the same?
    Eric
    Solved!
    Go to Solution.

    VISA write is located in the VISA pallet and in the serial pallet. This is for convenience but they are the same node.
    =====================
    LabVIEW 2012

  • Why does visa write hang with Labview 2009 instrument drivers.

    I'm having an issue with a code package that I'm running. The pacakge is very complex and was written by someone other than me. It runs fine while using the labview 8.5 drivers, however, when the 2009 instrument drivers are install there is a visa write call to an instrument where the software will hang up at the VISA write VI. I tried setting the timeout attribute but that makes no difference. I would expect that if the visa write did not work, that it would time out with an error instead of hanging up.
    Some additional information. The instrument is an EPM which is on a GPIB bus with other instruments. When I place the EPM2000 on a serparate bus this problem goes away, but I want to be able to operate on the same GPIB bus.
    Has anyone experienced a similar problem? What can I try to help troubleshoot the problem. I tried opening NI Spy but that shows no activity going on.

    Hi Steve,
    My apologies, when you said instrument drivers I assumed you were refering to the individual drivers for your instrument.  Were you refering to the VISA drivers?  If so, the latest version of these is 5.1.1 which can be downloaded here: http://joule.ni.com/nidu/cds/view/p/id/2659/lang/en.
    Also are you able to communicate with this device using the test panels in Measurement & Automation Explorer?  There is also a tool called NI IO Trace (or it may still be called NI-SPY in 2009) that can be opened from MAX that monitors all GPIB commands sent and received on the machine.  Getting a log of the commands when the hang occurs may help to diagnose it.
    It is possible this issue could be caused by opening and closing the VISA reference frequently in the code such as in a loop iteration.  Is this is case in your code?
    Justin D
    Applications Engineer
    National Instruments
    http://www.ni.com/support/

  • How can i write a sign string in VISA Write?

    Hello everybody.
    I would like someone to help me. I have an
    array, which is transformed (by Byte Array to String) in a string that
    reaches the VISA Write Serial Port. My problem is that when making the
    transformation with Byte Array to String, i  lose all the bytes with sign
    (negative).
    What can I do? I don't want to  lose the sign bytes and be able to send them to VISA Write Serial Port.
    Thank you very much.

    It sounds like you have a typecasting problem.  First, why do some of your bytes have a sign?  I assume they are I8.  Strings are based on U8 because they are just a series of ASCII characters vs. values.  The ASCII character table goes from 0 to 255.
    What happens on the other end of the VISA communication string?
    One thing you could do is to typecast your bytes to a U8.  Though I think the coercion dot of an I8 byte array going into the byte array to string is doing this automatically.

Maybe you are looking for

  • How to change  in NOTIF_CREATE - Create Support Notification

    Hi I want to add  the following thing in the NOTIF_CREATE 1. Person Responsible-when i use to create message in notif_create my name is not appeared in the F4(I have tried in IMG-Service desk-BP ,but my name is not appeared there) 2.How to create new

  • Itune library.itl cannot be read because it was created by a newer verson of itunes

    I cannot open my i-tunes account.  It says "The File itunes Library.itl cannot be read because it was created by a newer verson".......I restored by computer to a previous date when it was working.  I've uninstalled and reinstalled i-tunes twice.  HE

  • What is kernel task?

    I'm on the verge of buying a MBA and trying to get a good overview of the possible problems. Excuse my ignorance.... the only thing I can't get to grips with is 'kernel task' and 'kernel panic'. Could someone explain what these terms mean so I can ge

  • Create Calendar showing events

    When I create a calendar using Photoshop 4 I want to have all of my events show on it. I have entered all of my events in the calendar view in the organizer but they don't show up on the finished calendar. When I create a calendar I cant figure out h

  • Having 2 forms in 1 jsp in struts

    Dear All, I m using struts 1.2.9 framework in 1 of my JSPs i need to use 2 froms so actions are seperate shall i use seperate action form beans and seperate action classes for each action? I know this is very newbee question kindly revert back thanks