KeyListener efficiency (runtime question)

I have a JTextArea in which the user can type. I basically wish to record the most recent text that the user has typed ( this is everytime they type a character, delete, etc...). From what I know so far, it is possible to do this two ways:
1. Use a KeyListener (I am assuming an interface like this exists), and whenever it picks up a key that would alter the text (all letters, punctuation, backspace, etc...) it uses the JTextArea's getText() method to get the text.
2. Have a thread which has the String returned by JTextArea's getText() saved. Every n milliseconds (a good number would be 100, perhaps?) , the thread would invoke the JTextArea's getText(), compare it to the String previously saved, , check for a difference, and then if there is a difference, save the new text to the String.
Which one is more runtime-efficient?

I have a JTextArea in which the user can type. I
basically wish to record the most recent text that
the user has typedWouldn't you also want to know if the user pasted in some code from the clipboard?
If you want to keep track of all changes to the JTextArea no matter what caused them, then get its Document and attach a DocumentListener to it.

Similar Messages

  • Air runtime questions

    Hi all,
    We're eyeing Air suspiciously and thinking about trying to use it for distributing various apps.
    Our main concerns are all about the runtime licence model.
    1) The Runtime distiribution licence agreement says:
    Licensee may not distribute the Adobe AIR installer or installer files for purposes of bypassing installation of the Adobe AIR Runtime, an Adobe AIR application, or the EULA.
    Does this mean if we bundled the runtime distribution installer on a CD and tried ot install it as part of our installer using the -silent install method we would actually be breaking the licence agreement?
    2)Say we install the runtime this way and then our app. A new version of air comes out, the user is then quizzed by Air whether they want to upgrade.
    There is no way to avoid this?
    3) And when if they do upgrade I've heard a lot of stories about apps suddenly becoming unuseable. Can someone confirm it doesn't just break the app beacuse it wasn't written for that version, it is simply that runtimes are not backward compatible?
    I think I know the answers to these questions but I need to ask to get total clarity as basicaly it seems ludicrous if you want Air to be taken up by the raft of developers who, like me, are desperate to walk away from mdm Zinc.
    ta...

    1. There is a redistribution agreement you can sign to bundle an AIR Runtime with your app. installer.
    2. Setting Manager can set to stop update.
    3. We have made great effort to make sure new releases are  backward combatible.

  • LV Version/Runtime Question (working with LV 8.2.1 -- problems with a VI that was original build with LV 7.1)

    Hi there,
    currently i have a strange problem and i hope some of you can help me.
    Ok first i explain my situation:
    My task is to expand a old testsystem that was written with LV 7.1.
    During the time they began to work with LV 8.2.1 and saved the testsystem-VI with the new LV version.
    Ok now my problem:
    I have added some SubVIs (build with LV 8.2.1) to the testsystem which open a connection to a DUT (device under test) via fbus, usb or bluetooth (the drivers are designed for .net). But i always get a strange error message when the subVIs try to open the connection ("...Please check your connection string..").
    First i checked the handover of the variables in the testsystem but found no mistakes. I also tested all SubVIs seperatly with TestVIs and they worked perfectly!!!
    My question:
    The main VI was original build with LV 7.1. Could it be possible that LV uses an old or several runtime engines to execute my testsystem which causes such strange problems (For me its the only logical explanation why it works with my Test-VIs but not with the testsystem)?  
    But maybe you know more about such problems
    Greetings, wonx

    Hi wonx,
    it's really hard to say what might be the problem without knowing your project.
    Have you already performed a mass compile in LV8.2? If not, I would suggest to do so. Please see following link for an explanation of how the mass compile option in LabVIIEW works.

  • Easy runtime question

    So I bind a variable in an ActionScript and store a value at
    compile time. Now I want to update that var at runtime, say
    calculate a meal.

    I had the following Java versions listed on one computer and one of them would not uninstall, so I am wondering how much of a problem that might be for the end user.
    Java 2 Runtime Environment, SE v1.4.2_03
    Java(TM) 6 Update 3
    J2SE Runtime Environment 5.0 Update 6
    Java 2 Runtime Environment Standard Edition v1.3.1_15 (this one is "stuck" within "Add/Remove Programs" listing)
    After removing all of the above Programs and rebooting the computer I installed "jre-6u7-windows-i586-p.exe" which translates as "Java(TM) 6 Update 7" (137.00 MB) for us simple humans to read.
    Suggestions:
    It would be great if the naming conventions of these programs made a little more sense or if the Downloads area of the Java web site had a Frequently Asked Question (FAQ) prominently featured at the top of the page explaining the history of these versions. I have been supporting the installation of these Plug-ins or Programs for several years and feel it has not gotten any easier with regards to names.
    It might even be nice to see a Timeline of versions showing:
    Java(TM) 6 Update 3, Released January 2008
    Java(TM) 6 Update 7, Released October 2008
    This would allow people using specific pieces of older software, as mentioned above, to have some idea of whether the version of Java they find on their machine is the appropriate version for some in-house application that was written and released in December 2007 (for example).
    If a web-based office application I use was written in February of 2008 then I might feel confident "Java(TM) 6 Update 3" is the right version for me!
    If this is confusing for me as an I.T. support professional, I can only imagine how the End Users view these cryptic file names!
    ~
    Edited by: Klaatu01 on Mar 9, 2009 9:49 AM
    Edited by: Klaatu01 on Mar 9, 2009 9:53 AM

  • Basic runtime questions

    Just curious, why is the Adobe Air runtime called a runtime and not a plugin? Is the Flash Player no longer called a plugin but instead also called a runtime? What is the difference between a runtime and plugin?
    Thanks.

    Flash Player and AIR they're like the Java virtual machine and they run the swf or air files, in the case of Flash Player, there is a plugin for browsers, but swf files are not running on the browser, running on the Flash Player, which is a independent program, is the same case with skype plugin, you can have the icon in your browser, but the program runs outside the browser.

  • Gw803hp1 - oes11 32bit runtime question

    Hi,
    I've got another post in the oes-l install forum but figured I could supplement any answer there with one here. I've got an oes11 machine giving me trouble with it's software patterns. I would like to install the "32bit runtime environment" in order to run gw803hp1 on the server. The reason I want to do this is because as I understand it the GroupWise agents are still 32bit (gw2012 too) and in the documentation is says that, "32-bit/x86 processor or 64-bit/x86 processor running in 32-bit mode" is a requirement. I assume this means that I have to have the "32bit runtime environment" installed on my oes11 machine in order to run gw803hp1? Is that correct? Do I need the "32bit runtime environment" in order to run gw on oes11 (64bit)? The server will be upgraded next week to gw2012.
    Thanks for any help and Info you can supply.

    In article <[email protected]>, Pvaiq6167 wrote:
    > I've got another post in the oes-l install forum but figured I
    > could supplement any answer there with one here. I've got an oes11
    > machine giving me trouble with it's software patterns. I would like to
    > install the "32bit runtime environment" in order to run gw803hp1 on the
    > server. The reason I want to do this is because as I understand it the
    > GroupWise agents are still 32bit (gw2012 too) and in the documentation
    > is says that, "32-bit/x86 processor or 64-bit/x86 processor running in
    > 32-bit mode" is a requirement. I assume this means that I have to have
    > the "32bit runtime environment" installed on my oes11 machine in order
    > to run gw803hp1? Is that correct? Do I need the "32bit runtime
    > environment" in order to run gw on oes11 (64bit)? The server will be
    > upgraded next week to gw2012.
    >
    I've installed GW8 on a number of OES2&11 64-bit systems without needing
    to do any such thing. So you can safely skip this worry and get on with
    your GroupWise install. SLES in 64-bit mode handles these apps just nice
    and transparent to us.
    Andy Konecny
    Knowledge Partner (voluntary SysOp)
    KonecnyConsulting.ca in Toronto
    Andy's Profile: http://forums.novell.com/member.php?userid=75037

  • Efficiency/Design questions

    Hey,
    If I have three classes, one which uses threads to run the other two classes (say a and b), but b cannot run until a has finished, is it better to have the first thread call the second thread and then terminate, or to simply have the first thread finish with a, and then go straight into b without using another thread?
    Secondly, if I have a method in a class that receives an ArrayList from one class, and then calls another class, passing this ArrayList as a parameter (without modifying it), is it better to import java.util.ArrayList simply for this purpose, or to have it receive objects and then cast them back to ArrayLists where necessary (preventing the import)?
    Thanks for any advice.

    ArrayLists where necessary (preventing the import)?What DrClap said. In addition, importing has ZERO effect at runtime. It does not make the class file bigger. It does not make the code run slower. You could import every single class you can see, or nothing at all, and the generated bytecode would be the same.
    Importing does not affect the class file or the runtime at all. All it does is let you use shorter class identifiers, saving typing and keeping your code less cluttered. It just tells the compiler that, for instance, when you say "List" you actually mean "java.util.List."

  • Question about very big arrays

    if i want to make a 2dimentional aray that maybe very
    large it may get up to 1000 elements or even more and its size
    may vary at runtime
    question
    1)what do i need to use[b] ?
    2)does anyone have a example code they could post[b] ?
    3)if their isnt a way to do a 2darray at runtime
    how would i do i 1dimentional array that will vary in size at runtime[b] ?
    my goal at this time (for example) is to make a 2dimentional array
    called say RTarray [] []
    during runtime it will increment the size of the array
    from [1 to 1000] ,[2] then decrement it back down to 1
    ...(each of the array elements might be set to 1 or)
    ...(anything thats not really whats important )
    thanks in advance lightwave

    You can try using a variable to set the array at runtime,
    one that varies depending on incoming data:
    protected int DATA_FIELD = IncomingData.length();
    protected int[][] array = new array[DATA_FIELD ][2];Don't know if that's what your looking for?

  • What is the most efficient way to pass LV data to a dll?

    For efficiency, this question primarily becomes important when passing large arrays, structures containing large arrays, or generally, any large block of data to a dll.
    The way the dll setup appears and the .c file it create for the dll call, it appears that labVIEW directly passes data in whatever native passing format LV requires without copying the actual data if you select the "Adapt to Type" as the "Type" option. If I pass an array, for example, the .c file contains the type definition of a labVIEW array, i.e., (size,data), and depending whether I select handle or handle pointer, the data passed is either a handle or handle pointer to the array. Likewise, if I pass a LV structure, the .c file will con
    tain the typedef to the structure and the data passed is either a pointer, or pointer to a pointer. These are, I believe, labVIEW native types and do not require copying.
    On the other hand if an array is passed as an array type, then it is converted to a C array that requires LV to copy the array on both sides of the call.
    I further assume all structures can be passed to the memory manager to be manipulated, although I'm actually not sure that you could resize an array pointer in the dll. That seems a bit dubious, but then I guess upon return LV could query the memory manager to determine the array pointer size.
    That�s how I would think things work. If not, could someone please correct me?
    Kind regards,
    Eric

    Eric,
    Let me tell you something about me too...
    I've been working with LabVIEW for (just) 4 years. That is, 40 hours a week
    professionally, 10 hours a week privatelly. I've started with LV4, and went
    through all versions and revisions until 6.0.2 (6.1 will come soon, but
    first I have to finish some major projects.
    During this time I've been working on lots of interfaces with the windows
    OS. Some 'dll' things I've worked on: OpenGL interface, MSXML driver,
    keyboard hooks, mouse hooks, GDI interfacing, calling LV dll's from
    assembler, calling assembler dll's from LV, creating threads, using serial
    interrupts, etc. I'm now (also) working on a way to automatically generate
    documentation (much more then the 'export VI stings') from a VI. This
    requires 'under the hood' knowledge about how VI's work.
    When I had to make a fast routine for a project one time, I choose
    assembler, because I had this knowledge. Also, I wanted to use pure SIMD
    opperations. The operation had to modify an array of DBL's. The SIMD uses
    the same format (IEEE 754, I think), so it was easy. But when it came to
    testing, it appeard that the routine only paid off if the routine was 'long'
    enough. The routine was n*O^2, where n was a parameter. When the array was
    large, and n small, the overhead of copiing the array to modifiable memory
    was relativelly large, and the LV routine was faster.
    When I get a pointer to a LV array, I can use this pointer to modify the
    data in the array. This can (I think) only be done if LV copied this data,
    just like LV is doing when a wire is split to be modified.
    It might be that this copiing can be prevented, e.g. by using other data
    types, or fiddling with threads and reentrance... If you want to optimally
    benefit from dll's I'd look for a way to keep the data in the dll space, or
    pass it once at initialisation. You could use CreateHeap, HeapAlloc,
    AllocGlobal, and other functions. You can use these functions in LV, or in
    the dll. Once you have a pointer to the (one and only) data space, you can
    use this to pass to the dll functions.
    I think LV does not show the memory in question in the profiler, but I'm not
    sure.
    Using the "Adapt to type" option might just result in a internal convertion
    during 'compile' time, and might be exactly the same as doing it yourself.
    Perhaps you can share a bit about the application you are making, or at
    least why you need the speed you are seeking?
    Regards,
    Wiebe.
    "Eric6756" wrote in message
    news:50650000000500000025C60000-1042324653000@exch​ange.ni.com...
    Greg,
    There are two relevant documents which are distributed with labVIEW,
    in labVIEW 6i, (hey, I'll get around to upgrading), the first is
    titled, "Using External Code in LabVIEW", the second is application
    note 154, "LabVIEW Data Formats".
    Actually, a statement Wiebe@air made on my previous question regarding
    dll calls, "Do dll calls monopolize the calling thead?" provoked this
    line of questions. Based on other things he has said, I gather he is
    also using dlls. So as long as we're here let me ask the next
    question...
    If labVIEW must make a copy of the passed data, does it show up as
    additional memory blocks in the vi profiler? In other words, can you
    use the profiler to infer what labVIEW is doing, or as you put it,
    infer whether there is a clever passing method available?
    As a personal note Greg:
    First, as a one time engineering student and teaching assistant, I
    don't recall hearing or using the terms "magical", or "clever". Nor I
    might add, do I find them in print elsewhere in technical journals.
    While I don't mind NI marketing in their marketing documents, used
    here in this mostly educational forum, they strike me as arrogant,
    and/or pompous.
    I like NI's products because they work and are reliable. I doubt it
    has anything to do with magic, has somewhat more to do with being
    clever, but is mostly due to the dogmatic persistence of your
    engineers. I rather doubt any of them adjoin the term "magical" or
    even "clever" to their solutions. I believe the term "best" is
    generally accepted with the qualifier "I've or we've found". At
    least, that has been my engineering experience.
    Second, many of my questions I can sort out on my own, but I figure as
    long as your willing to answer the questions, then your answers are
    generally available to others. The problem is that one question seems
    to lead to another and specific information gets buried in a rather
    lengthy discourse. When I come here with a specific question, it
    would be nice to find it asked and answered specifically rather than
    buried in the obscurity of some other question. As such, at some
    point in these discussions it might be appropriate to reframe a
    question and put at the top. In my opinion, that decision is
    primarily yours as you have a better feel for the redundancy of
    questions asked and/or your answers.
    Anyway, the next question I'm posting at the top is, "Do the handles
    passed to a dll have to be locked down to insure other threads don't
    move the data?"
    Thanks,
    Kind Regards,
    Eric

  • Static and final keyword questions

    Brief summary: I want to make the JButtons, JLabels, and JPanels public static final. Is that bad, and why? And what the heck is the Java system doing when it compiles and runs a program that does this? Is the code more efficient?
    More questions below.....
    I'm new to making GUI designs with Java. I am going to school and my teacher is making us do GUI interfaces in JAVA.
    Early on, I learned that constants are identifiers similar to variables except that they holda particular value for the duration of their existence. QUESTION ONE: what happens during run-time, how does JAVA handle this constant?
    I also learned that some methods may be invariant, as with a simple extension. These methods should be marked final. The subclass inherits both a madatory interface and a mandatory implementation. So I guess you use a final method when you want to model to a stric subtype relatinoship between two classes. All methods not marked final are fair game for re-implementation.
    Well, that's good and well. So then I started thinking about static. That's a keyword in Java and when used with a variable, it's shared among all instances of a class. There is only one copy of a static variable for all objects of a class. So then again, I noticed that the programs in my book that used final usually threw in the word static before it. Memory space for a static variable is established when the class that contains it is referenced for the first time in a program.
    Well, that too is great? Question 2: In my GUI programs, can I declare all the buttons (JButtons), labels (JLabels), panels (JPanels) as being final constant static?
    In the program I don't intend to change the type of button, or JPanel so why not make it a constant? As long as I'm doing it, why not make it static? WHAT IS ACTUALLY GOING ON THEN IN MY PROGRAM WHEN I DO THIS?
    Question 3: What goes on in JAVA when I make a method or function public static final. Is that what the Math class does? How is that handled during run-time? Is the code faster? Is it more efficient?
    Question 4: If I make a class final, that means a subclass cannot extend it? Or does it mean that a subclasss cannot change it? I know that if the function or method in the parent class was final, then the subclass inherits both a madatory interface and a mandatory implementation....So if the class is final, then what?

    You have a lot of questions..
    You make a method final if it should not be allowed for subclasses to override it.
    If you make a class final, you will not be able to subclass that class.
    A static method is a class method, i.e. you don't need to create an instance of the class to call the method.
    You can make any object and primitive final, but for objects, you are still able to modify what is inside the object (if there is anything you can and are allowed to modify), you just can't change the final reference to point to another object.
    When you make a variable final, you sometimes make them static as well if they should work like constants. Because there is no reason that every instance of the class has their own copy of constants.
    If you make everything static, why even bother to work with object-oriented programming. It gives you no reason to make instances of your classes. You should try not to make static variables and methods when there is no need for it. Just because you start from a static main method, it doesn't mean it is necessary to make all variables and methods static.
    Don't think so much about performance issues as long as you are still learning java. When you make a method final, it is possible for a compiler to inline that method from where you call the method, but you will hardly gain much in performance with that. In most cases it's better to optimize the code you have created yourself, e.g. look at the code you run inside loops and see if you can optimize that.

  • Crystal Reports 2008 - Blank page on server only

    Crystal Reports 2008 - Blank page on server only
    My report is developed in the Crystal Reports 2008 Report Designer 12.0.0.683.
    I have a .NET application that takes the report file, an ODBC connection and exports the resulting report to PDF. This application is deployed as an MSI and includes the Crystal Reports .msm merge module. The report uses multiple views and tables from a single database to create invoices in PDF format.
    Problem: For one particular invoice, a blank page is being added to the end of the invoice. This blank page contains the report's standard page header. There is no missing data and no missing sections on the invoice. This is only occurring when the pdf is generated on a Windows Server 2008 x64 server where the application is deployed using the merge modules.
    I have installed the application locally on my Windows Vista Business x86 system and the generated PDF does NOT contain the blank page at the end.
    The blank page is not generated when previewing the report in Report Designer. For the particular invoice this is occurring on, footer F and footer G are blank and therefore suppressed.
    Please bear in mind that this happens only for one particular invoice that uses this report file and does not happen from my local system using the same .rpt file.
    The report is constructed of the following sections:
    -Page Header (suppressed on page 1)
    -Grp1 header A (watermark conditionally suppressed based upon a parameter)
    -Grp1 header B (Keep together - always fits onto a single page)
    -Details
    -Grp1 footer A (Keep together)
    -Grp1 footer B (Conditionally suppressed based upon data)
    -Grp1 footer C (Keep together)
    -Grp1 footer D (Contains sub report(suppressed when blank). Keep together. Suppress blank section. New page before but (Not OnLastRecord))
    -Grp1 footer E (Contains sub report(suppressed when blank). Keep together. Suppress blank section.)
    -Grp1 footer F (Contains sub report(suppressed when blank). Keep together. Suppress blank section.)
    -Grp1 footer G (Contains sub report(suppressed when blank). Keep together. Suppress blank section.)
    -Report footer (Always blank. Suppress blank section)
    -Page footer (Fixed static content, displayed on every page.)
    Edited by: alibaabaa on Oct 12, 2009 12:41 PM
    Edited by: alibaabaa on Oct 12, 2009 12:45 PM

    Thanks for responding, Jonathan.
    Is the same runtime installed on the 64 bit system? I notice from your version number that you do not have any service packs installed on the dev system. SP 2 is out and may help.
    I have installed SP1 and SP2 this morning, resaved the report file and tried again but the same problem remains.
    I'm not sure how to answer your runtime question. I am using the same application built with the same merge modules on both the dev machine and the production server. Of course, the dev machine has the additional complication of having Crystal Reports 2008 installed. Perhaps this is causing the difference?
    Compare the printer settings between the two systems. Try installing the same printer driver on the 64 bit system.
    Perhaps I am misinterpreting your suggestion, but I am not printing the invoices. I am only exporting them to PDF. It is the PDF that has the extra page. Is there a 'print to PDF' driver of some sort that I need?
    Also, was the .NET application compiled as 32 bit, or Any CPU? Whichever it was, try switching it then recompiling to see if that helps.
    I tried switching to Any CPU but this caused the Crystal Reports module not to load at all on the 64bit Windows server.
    Thank you for your suggestions, but my problem remains. Is it worth trying with the redistributable msi rather than using the merge modules? If so, could you recommend which one I should use? I am using Visual Studio 2008 Professional.

  • ClamXav detecting phishing email (can't get rid of them)

    I received an email from my wife that she did not send me. It was an email that made no sense. It just had a bunch of words in a very long document. I assumed that her email program (Mac Mail) must have become infected with something that sent this email out to everyone in her address book. I deleted the email and downloaded ClamXav to check my system and make sure everything is ok.
    Whenever I run ClamXav, it detects 8 files with the following infection name: (Heuristics.Phishing.Email.SpoofedDomain)
    I ask ClamXav to quarantine the files, then I go into that folder and delete them. But if I run a check later, those 8 files are back. I can't get rid of them.
    I'm wondering if they are reinfecting my Mac Mail program via Apple's mail servers. I'm not sure if all my mail messages are kept on Apple's server, and them somehow these malware files get re-downloaded to my computer. I tried to figure out if there is a setting in my mail program that allows me to uncheck a box that says, "save mail files on server".....but I can't find any such setting. I thought I remember seeing something like that in the past.
    Does anyone have any idea what is causing my computer to be continuously reinfected and what I should do about it? I don't notice any problems with my computer, but obviously these files that I can't permanently delete has me worried.

    Randall Olson1 wrote:
    Whenever I run ClamXav, it detects 8 files with the following infection name: (Heuristics.Phishing.Email.SpoofedDomain)
    I ask ClamXav to quarantine the files, then I go into that folder and delete them. But if I run a check later, those 8 files are back. I can't get rid of them.
    First, I would encourage you to come to the ClamXav Forum to more quickly and efficiently answer questions such as this.
    My standard guidance for handling reported e-mail infection is as follows (pay particular attention to #6):
    Never use ClamXav (or any other A-V software) to move (quarantine) or delete e-mail. It will corrupt the mailbox index which could cause loss of other e-mail and other issues with functions such as searching. It may also leave the original e-mail on your ISP's e-mail server and will be re-downloaded to your hard drive the next time you check for new mail.
    So, if you choose to "Scan e-mail content for malware and phishing" in the General Preferences, make sure you do not elect to either Quarantine or Delete infected files.
    When possibly infected e-mail files are found:
    Right-click/Control-click on either the infection or file name in the ClamXav window.
    Select "Reveal In Finder" from the pop-up menu.
    When the window opens, double-click on the file to open the message in your e-mail client application.
    Read the message and if you agree that it is junk/spam/phishing then use the e-mail client's delete button to delete it (this is especially important when the word "Heuristics" appears in the infection name).
    If you disagree and choose to retain the message, return to ClamXav and choose "Exclude From Future Scans" from the pop-up menu.
    If this is a g-mail account and those messages continue to show up after you have deleted them in the above manner, you may need to log in to webmail using your browser, go to the "All Mail" folder, find the message(s) and use the delete button there to permanently delete them from the server.
    To fix corrupted mailbox index(es), highlight each one that was corrupted and choose Rebuild from the appropriate menu.

  • PE10 & Dazzle.

    A while ago I read a lot of suggestions for downloading/copying old VHS tapes into PE10 using Dazzle. From my point of view none of them worked electronicaly. So I reverted to a practical way and used dazzle to download into my copy of Pinnacle Studio HD, rendering to an AVI file and then uploading into PE10. Works perfectly but not very efficient. QUESTION: Could anybody tell me of a  Dazzle like 'machine' that will capture old VHS tapes and/or anything else directly into PE10?  robo_col 

    Unfortunately, the Dazzle devices seem to be problematic, and even with Pinnacle Studio. Few users were ever able to get them to properly Capture from analog sources. It has been many years, since I was last on the Pinnacle Studio forum, but back then, there were tons of problems mentioned. Do not recall anyone ever getting any real solutions - some times they worked, but all too often, they did not.
    This article is a general tip-sheet for doing A-D Capture: http://forums.adobe.com/message/2727627#2727627
    If you can get the Dazzle to work with Pinnacle Studio, that is probably as good as it will get, and count yourself fortunate, that it is working for you.
    Good luck,
    Hunt

  • Blank page in report designer

    In my report designer, I have two sections. In the last row of section 1, I have a "page break after" checked. And in section 2 first row, I have "page break before" checked. Due to this I am getting a blank page between section 1 and 2. However, if I remove the "page break before" from section 2, it tries to print both sections on the same page. How can I remove the blank page without messing the report?

    Thanks for responding, Jonathan.
    Is the same runtime installed on the 64 bit system? I notice from your version number that you do not have any service packs installed on the dev system. SP 2 is out and may help.
    I have installed SP1 and SP2 this morning, resaved the report file and tried again but the same problem remains.
    I'm not sure how to answer your runtime question. I am using the same application built with the same merge modules on both the dev machine and the production server. Of course, the dev machine has the additional complication of having Crystal Reports 2008 installed. Perhaps this is causing the difference?
    Compare the printer settings between the two systems. Try installing the same printer driver on the 64 bit system.
    Perhaps I am misinterpreting your suggestion, but I am not printing the invoices. I am only exporting them to PDF. It is the PDF that has the extra page. Is there a 'print to PDF' driver of some sort that I need?
    Also, was the .NET application compiled as 32 bit, or Any CPU? Whichever it was, try switching it then recompiling to see if that helps.
    I tried switching to Any CPU but this caused the Crystal Reports module not to load at all on the 64bit Windows server.
    Thank you for your suggestions, but my problem remains. Is it worth trying with the redistributable msi rather than using the merge modules? If so, could you recommend which one I should use? I am using Visual Studio 2008 Professional.

  • Copy all subform data and paste into another subform

    Need: I would like to have a button within a subform that allows you to copy all the data (many fields) and then paste it into an empty copy of the subform. Of course the info pasted would fill in all the fields etc.
    Reason: We routinely need to move subform data from page 3 in the document to page 11 (example). Currently we insert a new subform and copy/paste each field from 3 to 11 and then delete 3. It would be great to press a copy button in 3 and insert a new subform and paste.into 11.
    Is this possible?

    Steve's advice is good if this is a runtime question - how a user, filling out a form, can copy data from one section of the form to another.
    If this is a buildtime question - how a developer can duplicate a subform to be used elsewhere in the same form or in a different form, you have the following options:
    Duplicate and move. For one off tasks, select the subform in the Hierarchy pallet, and click Ctrl-D. This creates a copy of the subform, with all its contents, which can then be dragged in the hierarchy to its new position.
    Cut and paste. For one off tasks, select the subform in the Hierarchy pallet, and click Ctrl-C. Select the new position in the Hierarchy and then in the Design View (it seems odd to select the same object twice in different pallets, but this is required for the copied subform to be pasted into the right place). Click Ctrl-V
    Fragment. When the exact same subform is going to be used several times in the same and different forms, create a fragment by selecting the subform in the Deisgn View and drag to the Fragment Library pallet. This creates a fragment XDP file. By dragging the fragment onto forms, you are creating links back to the fragment XDP file. Change the fragment and next time you open a form in Designer it will inherit the changes. Fragments cannot be customised for a specific form.
    Common Object. Similar to fragments, you create a common object by selecting the subform in the Deisgn View and drag to the Object Library pallet. The difference is that when you drag a common object onto a form, it is inserting a copy of the subform. The inserted subform is not linked to the common object and so it can be customised for that form and will not inherit changes to the common object.
    Ben Walsh
    www.avoka.com

Maybe you are looking for

  • JAVA mapping error

    Hi All, I am getting the below error while executing a JAVA mapping. <SAP:Category>Application</SAP:Category>   <SAP:Code area="MAPPING">LINKAGE_ERROR</SAP:Code>   <SAP:P1>XMLNSTagCreate1/XMLNSTagCreate1</SAP:P1>   <SAP:P2>java.lang.NoClassDefFoundEr

  • Stocks app disappeared

    The stocks app on my iPhone 4 Home Screen disappeared. How can I get it back? I've tried using Settings>General>Reset>Reset Home Screen Layout with no success.

  • Window Maker and xorg 7.0

    Can you run Window Maker with new xorg? Each time I try to run it I see just window with information that Window Maker segfaulted. I deleted GNUstep in my home, then called wmaker.conf, but that didn't help. Yesterday I updated Window Maker, because

  • Lightroom CC Crashes when selecting 1:1 crop

    Anyone else having this issue?  As soon as I select a square 1:1 crop the app crashes.

  • Two fields in a page got overlaped

    i have 2 fields which r overlaps how to get rid of this problem.