Find & Replace in PL/SQL crashing

This problem is getting incredibly irritating as forms is crashing so frequently that I'm losing hours in the day just recovering the forms I have open...
If anyone knows how I can stop this happening, I'd be really happy to know - is there a workaround? a patch? or a registry fix?
I can't upgrade to a new version as this is a company installation.
Find and Replace PL/SQL...
Search for something that has a couple of "pages" of results. Drag the button on the scroll bar down to the bottom then use the mouse wheel. Forms hangs and then crashes.
"Oracle Forms Designer has encountered a problem and needs to close. We are sorry for the inconvenience."
(I'm getting sick of seeing that!)
There's no real information
I can't copy the Error Report Contents, the text won't copy but there is a lot of it and it starts
Exception Information
Code: 0xc0000005 Flags: 0x00000000
Record: 0x0000000000000000 Address: 0x00000000000000b2
System Information
Windows NT 5.1 Build: 2600
etc.
Module 1
frmbld.exe
Image Base: 0x00400000 Image Size: 0x00000000
Checksum: 0x00000000 Time Stamp: 0x42d63632
Version Information
Signature: feef04bd
StrucVer: 00010000
FileVer: (10.1:2.0)
ProdVer: (10.1:2.0)
Similar information for 167 Modules.
Then dozens of pages of Thread 1 information.
If you need any of those details let me know...
There is no information
I have images and the crash log but I can't find out how to attach them to this question...
This is the start of the crash log:
<?xml version="1.0" encoding="UTF-16"?>
<DATABASE>
<EXE NAME="frmbld.exe" FILTER="GRABMI_FILTER_PRIVACY">
<MATCHING_FILE NAME="40COMUPD.EXE" SIZE="511424" CHECKSUM="0x60B737E3" BIN_FILE_VERSION="4.71.603.0" BIN_PRODUCT_VERSION="4.71.603.0" PRODUCT_VERSION="4.71.0603.0" FILE_DESCRIPTION="Win32 Cabinet Self-Extractor " COMPANY_NAME="Microsoft Corporation" PRODUCT_NAME="Microsoft(R) Windows NT(R) Operating System" FILE_VERSION="4.71.0603.0" ORIGINAL_FILENAME="WEXTRACT.EXE " INTERNAL_NAME="Wextract " LEGAL_COPYRIGHT="Copyright (C) Microsoft Corp. 1995" VERFILEDATEHI="0x0" VERFILEDATELO="0x0" VERFILEOS="0x40004" VERFILETYPE="0x1" MODULE_TYPE="WIN32" PE_CHECKSUM="0x817A7" LINKER_VERSION="0x40000" UPTO_BIN_FILE_VERSION="4.71.603.0" UPTO_BIN_PRODUCT_VERSION="4.71.603.0" LINK_DATE="03/03/1997 12:44:52" UPTO_LINK_DATE="03/03/1997 12:44:52" VER_LANGUAGE="English (United States) [0x409]" />
<snip>
Edited by: JA12 on Nov 21, 2008 2:01 AM
Edited by: JA12 on Nov 21, 2008 2:03 AM

Hi, Tina
I am from Oracle, and I could reproduce that behavior with the following:
Windows NT, Forms 6.0, doing that while connected.
It worked fine with Windows 95.
It worked fine if you disconnect prior to doing the Find and Replace...
I'm guessing that you still use version 6.0.
If so, you should upgrade to Forms 6i (the latest version), which has none of these issues:
You can Find and replace PL/SQL using Windows NT and while connected to the database.
Hope this helps,
Pedro

Similar Messages

  • MS Word crashes when I do find/replace with the OS X 10.5.6

    Does anyone know what I can do about MS Word crashing when I do a find and/or replace in a document? It happens constantly. The interesting thing is that is doesn't occur every single time I do find/replace but the SECOND time I use the feature. The only way I can manage to avoid the crash is to do find/replace, then exit out of the dialog box, and then open it up again. If I do a find/replace once and then continue using the same dialog box, Word crashes. Also, find/replace doesn't work most of the time.
    This never happened when I was using Word with my older OS.
    Help, please!!!
    Many thanks.

    Hmm...what about deleting the MS Word preferences? Does excel crash as well when doing the same function?
    To delete the preference put this in spotlight:
    com.microsoft.Word.plist
    Move it to the desktop, restart and see if the problem persists.
    It might be another preference that is the source of the problem.

  • SQL Developer find-replace in selection replaces everywhere when using scope Prompted

    SQL Developer version: 4.0.0.12
    I didn't test this in 3.x, might be interesting to do so.
    How to reproduce:
    - copy paste the the following example text to your SQL Developer worksheet
         test
         test
         test
    - Select the first line
    - open the find and replace dialog
         - Text to search for: "test"
         - Select replace with, and fill out "example"
         - select "Selected Text only"
         - select Scope "Prompted" <- this step is essential for this bug, Scope "All" and "single" work fine
         - Click OK
    - In the hover-dialog you will get an option to choose "yes" "no" or "all"
         - If you select "all", all three instances of "test" will be replaced, not just the one that was selected.
         - If you click "yes" multiple times, it will also go over the non-selected instances.
    How to fix:
    My guess is that once the find-replace dialog closes to show the hover-dialog, the selection is lost since the worksheet lost focus.
    So, store in memory what lines where selected, don't re-read that information from the worksheet.

    SQL Developer version: 4.0.0.12
    I didn't test this in 3.x, might be interesting to do so.
    How to reproduce:
    - copy paste the the following example text to your SQL Developer worksheet
         test
         test
         test
    - Select the first line
    - open the find and replace dialog
         - Text to search for: "test"
         - Select replace with, and fill out "example"
         - select "Selected Text only"
         - select Scope "Prompted" <- this step is essential for this bug, Scope "All" and "single" work fine
         - Click OK
    - In the hover-dialog you will get an option to choose "yes" "no" or "all"
         - If you select "all", all three instances of "test" will be replaced, not just the one that was selected.
         - If you click "yes" multiple times, it will also go over the non-selected instances.
    How to fix:
    My guess is that once the find-replace dialog closes to show the hover-dialog, the selection is lost since the worksheet lost focus.
    So, store in memory what lines where selected, don't re-read that information from the worksheet.

  • MS Word crashes when I do find/replace

    Does anyone know what I can do about MS Word crashing when I do a find and/or replace in a document? It happens constantly. The interesting thing is that is doesn't occur every single time I do find/replace but the SECOND time I use the feature. The only way I can manage to avoid the crash is to do find/replace, then exit out of the dialog box, and then open it up again. If I do a find/replace once and then continue using the same dialog box, Word crashes. Also, find/replace doesn't work most of the time.
    Help, please!!!
    Many thanks.

    You may want to consider post your question on Microsoft's own forums for their Mac products, as they're more focused on the issue you're having then an Apple forum, as Apple forums only provide support for Apple products. Plus there's Microsoft appointed "MVPs" there to assist:
    http://www.officeformac.com/productforums

  • Bulk find replace in plsql pakages

    Hi
    WE have large app in plsql
    the develper has put in debug statements that write to a logging table on the progression of the logic flow. however this line has been commented in produciton environment for perf issues.
    we want to have the debug statemetns on in test environment.
    for eg.
    test env
    pkgdebug.write "parameters that will be logged"
    prod
    --pkgdebug.write  "parameters that will be logged"
    every time we refresh our environment from produciton, Is there some way we can do a bulk find and replace of all the --pkgdebug.write with pkgdebug.write
    there are over 300 customised pl sql packages, so doing them manually will be a nightmare.
    pl help

    unfortunately we cannot change the design of thsi process now.
    we are forced to live with it. so if there is a way we can do a bulk
    find replace, it would be best served.So you cannot change the design decision to update 300 packages, which you are apparently unable to do, on a regular basis, to a design as suggested by Kamal where you add a single line, one time, to the pkgdebug.write procedure.
    if sys_context('my_app_ctx','debug') != 'TRUE' then return; end if;Which will effectively disable it until you write a little procedure, or trigger, in test to set it to TRUE, which will enable it. At that point you won't need to change a thing ever again.
    Alternately you can search google for bulk edit tools. Here is a windows one for example
    http://textpad.com/products/wildedit/index.html

  • Indesign CC failure in Find/Replace action!

    I have been suffering of Indesign crashes since 2011. Usually it is happening when I do some kind of Find Replace action. When I click the Search body to view smth (Find format), sometimes Indesign falls down.
    I thought mostly it is a bug of CS6, but now I'm on CC and good morning Eliahu - all these problems are still here.
    What should I do? It is imposiible to suffer such failures year after year. It happens on all kinds of OS and computers.

    thanks for reply
    1. again, both PC (7) and Mac (Maverick)
    2. 10.1.0.71
    3. very simple task - just what i have described above. i attach a screen of the one of such tasks.
    4. sometimes Indesign has been closed immediately, sometimes after several seconds of inactivity
    5. of course it just should open a new window, attached 

  • Mass find / replace

    I'm having a problem with mass find / replace : files with
    other extensions aren't reached by the very useful find/replace
    tool. I'm positive of this as if I rename the extension and simply
    add ".txt" at the end, it's searched.
    I'm using ".ini" files in my projects and I tried in "Edit"
    > "Preferences", section "File Types / Editors" both adding the
    extension in the bottom list adding the extension then assigning
    Dreamweaver as the editor AND, more simply, adding at the top "Open
    in code view".
    It seems to me an application that has been thoroughly made
    like Dreamweaver would be able to search unknown file types and I
    just didn't see the option for it, would someone please give me a
    lead on this ?

    I'm sorry; :-(
    "Murray *ACE*" <[email protected]> wrote
    in message
    news:gltau4$bfi$[email protected]..
    > Kowabonga. A brain!
    >
    > --
    > Murray --- ICQ 71997575
    > Adobe Community Expert
    > (If you *MUST* email me, don't LAUGH when you do so!)
    > ==================
    >
    http://www.projectseven.com/go
    - DW FAQs, Tutorials & Resources
    >
    http://www.dwfaq.com - DW FAQs,
    Tutorials & Resources
    > ==================
    >
    >
    > "Baxter" <baxter(RemoveThe :-)@gtlakes.com> wrote
    in message
    > news:glt9vj$ac3$[email protected]..
    > > If its a .ini file just rename it to .txt and do
    you replace and then
    > > rename
    > > it.
    > > Dave
    > > "Murray *ACE*"
    <[email protected]> wrote in message
    > > news:glt45r$3f8$[email protected]..
    > >> Yes, it works as expected in the *.sql format,
    but not in the *.ini
    > > format.
    > >>
    > >> --
    > >> Murray --- ICQ 71997575
    > >> Adobe Community Expert
    > >> (If you *MUST* email me, don't LAUGH when you
    do so!)
    > >> ==================
    > >>
    http://www.projectseven.com/go
    - DW FAQs, Tutorials & Resources
    > >>
    http://www.dwfaq.com - DW FAQs,
    Tutorials & Resources
    > >> ==================
    > >>
    > >>
    > >> "DynV" <[email protected]>
    wrote in message
    > >> news:glt0e4$s8s$[email protected]..
    > >> > Murray did you try the .ini or .sql format
    > >> >
    > >> >
    quote:
    Originally posted by:
    Newsgroup User
    > >> > I created a text only file. I selected it
    in the Files panel. I did
    a
    > >> > search in 'Source' of the selected file
    for a word. It found two
    > >> > instances.
    > >> >
    > >> >
    > >>
    > >
    > >
    >

  • Find & replace part of a string in Numbers using do shell script in AppleScript

    Hello,
    I would like to set a search-pattern with a wildcard in Applescript to find - for example - the pattern 'Table 1::$*$4' for use in a 'Search & Replace script'
    The dollar signs '$' seem to be a bit of problem (refers to fixed values in Numbers & to variables in Shell ...)
    Could anyone hand me a solution to this problem?
    The end-goal - for now - would be to change the reference to a row-number in a lot of cells (number '4' in the pattern above should finally be replaced by 5, 6, 7, ...)
    Thx.

    Hi,
    Here's how to do that:
    try
        tell application "Numbers" to tell front document to tell active sheet
            tell (first table whose selection range's class is range)
                set sr to selection range
                set f to text returned of (display dialog "Find this in selected cells in Numbers " default answer "" with title "Find-Replace Step 1" buttons {"Cancel", "Next"})
                if f = "" then return
                set r to text returned of (display dialog "Replace '" & f & "' with " default answer f with title "Find-Replace Step 2")
                set {f, r} to my escapeForSED(f, r) -- escape some chars, create back reference for sed
                set tc to count cells of sr
                tell sr to repeat with i from 1 to tc
                    tell (cell i) to try
                        set oVal to formula
                        if oVal is not missing value then set value to (my find_replace(oVal, f, r))
                    end try
                end repeat
            end tell
        end tell
    on error number n
        if n = -128 then return
        display dialog "Did you select cells?" buttons {"cancel"} with title "Oops!"
    end try
    on find_replace(t, f, r)
        do shell script "/usr/bin/sed 's~" & f & "~" & r & "~g' <<< " & (quoted form of t)
    end find_replace
    on escapeForSED(f, r)
        set tid to text item delimiters
        set text item delimiters to "*" -- the wildcard 
        set tc1 to count (text items of f)
        set tc2 to count (text items of r)
        set text item delimiters to tid
        if (tc1 - tc2) < 0 then
            display alert "The number of wildcard in the replacement string must be equal or less than the number of wildcard in the search string."
            error -128
        end if
        -- escape search string, and create back reference for each wildcard (the wildcard is a dot in sed) --> \\(.\\)
        set f to do shell script "/usr/bin/sed -e 's/[]~$.^|[]/\\\\&/g;s/\\*/\\\\(.\\\\)/g' <<<" & quoted form of f
        -- escape the replacement string, Perl replace wildcard by two backslash and an incremented integer, to get  the back reference --> \\1 \\2
        return {f, (do shell script "/usr/bin/sed -e 's/[]~$.^|[]/\\\\&/g' | /usr/bin/perl -pe '$n=1;s/\\*/\"\\\\\" . $n++/ge'<<<" & (quoted form of r))}
    end escapeForSED
    For what you want to do, you must have the wildcard in the same position in both string. --> find "Table 1::$*$3", replace "Table 1::$*$4"
    Important, you can use no wildcard in both (the search string and the replacement string) or you can use any wildcard in the search string with no wildcard in the replacement string).
    But, the number of wildcard in the replacement string must be equal or less than the number of wildcard in the search string.

  • Batch code for running a find/replace all on multiple files within a source floder/directory

    What I need is a Batch source code that will open all files in a folder/directory and run a find and replace_all query within them and then save all the files.  The files were created in Illustrator and saved using the Scene7 FXG format extension.    These files will be uploaded into Scene7 as a group after the find and replace macro/query is run on the code.  The same find and replace query will be the same for all the files.  Basically this function or batch process  will save time in setting the same parameters all at one time instead of having to set the parameters individually in scene7.
    a source code sample of the find/replace module macro might be              searchString:  s7:colorvalue="#FFFFFFFF" 
                                                                                                                          replaceString: s7:colorValue="#&txtclr;"
                                                                                                                          searchWhat   "FXG document"    
                                                                                                                             searchSource:  true,
                                                                                                                        useRegularExpressions:   true
    I have no problems creating batch files within Ai and PhotoShop but I have limited programming skills in how to create source code for manuipulating documents outside of those apps or in a OS invironment.
    I could probably come up witha simple program to do what i want for one document but i get lost when dealing with multiple documents in a source folder (prolbem is,  I will be dealing with thousands of documents not 100 or less)
    If anything which Adope cloud app would work best:  Dreamweaver or Edge code   (or just use my notepad)

    What I need is a Batch source code that will open all files in a folder/directory and run a find and replace_all query within them and then save all the files.  The files were created in Illustrator and saved using the Scene7 FXG format extension.    These files will be uploaded into Scene7 as a group after the find and replace macro/query is run on the code.  The same find and replace query will be the same for all the files.  Basically this function or batch process  will save time in setting the same parameters all at one time instead of having to set the parameters individually in scene7.
    a source code sample of the find/replace module macro might be              searchString:  s7:colorvalue="#FFFFFFFF" 
                                                                                                                          replaceString: s7:colorValue="#&txtclr;"
                                                                                                                          searchWhat   "FXG document"    
                                                                                                                             searchSource:  true,
                                                                                                                        useRegularExpressions:   true
    I have no problems creating batch files within Ai and PhotoShop but I have limited programming skills in how to create source code for manuipulating documents outside of those apps or in a OS invironment.
    I could probably come up witha simple program to do what i want for one document but i get lost when dealing with multiple documents in a source folder (prolbem is,  I will be dealing with thousands of documents not 100 or less)
    If anything which Adope cloud app would work best:  Dreamweaver or Edge code   (or just use my notepad)

  • Find & Replace

    I'm trying to get DW 8 to allow me to remove some of the
    "found" items before using the replace function to avoid having to
    open each file individually - but when I delete entries from the
    "found" list, on r-click I'm given 3 options:
    - Open File
    - Find & Replace
    - Clear Results
    The Find & Replace option takes me back to the original
    Find & Replace screen. With DW4 you have the option of deleting
    some of the "found" entries before pressing the "replace" button.
    Has DW really taken a backward step?

    I neevr used DW4, so I'm not certain how that worked. And it
    doesn't look like you can delete entries from the Search panel.
    You might use other techniques to limit your changes. Any
    folders or files that are cloaked will not be updated by the
    Replace. You can set cloaking for specific files or folders, or by
    file extension (on the Site panel). Or, you could select only the
    files you want to target and use the Selected Files in Site option
    of the Find In drop-down. Or, you could use the Replace button in
    the Find/Replace panel to go through the results one at a time,
    rather than using Replace All.
    If you are changing HTML tags or attributes, the Find/Replace
    options are very powerful.

  • I'm getting popup notices that Firefox has a problem, and Windows is looking for a solution; then it closes Firefox and says Windows will let me know if it finds a solution. No crash report window comes up.

    Firefox is my default browser on my new laptop, with OS Windows 7. I've now had several instances where a Windows popup comes up saying Firefox has developed a problem and may have to close. It also indicates Windows "is looking for a solution to the problem." No solution is found, however, and Firefox is forced to close, with the happy notice that Windows will let me know if it finds a solution to the problem. If there is any tech data on the crash, I'm not sure where to find it, and no Firefox crash report window comes up. I thought it was an anomaly the first time, but this has now occurred at least 4 times in the past several days.

    See:
    * https://support.mozilla.com/en-US/kb/Firefox%20crashes%20when%20you%20open%20it

  • Find & Replace text in html files

    This is my first real attempt at using Automator, and it has become increasingly frustrating for me. I love the idea of Automator, nice interface, and it appears to be so easy to use. But, I can't get it to actually DO anything and I don't understand why.
    Here is my goal:
    to batch process multiple html files to remove certain characters and words (or replace them with empty space).
    I currently open these files in Pages and do 6 separate Find & Replace commands for each file before I continue with my other processing tasks. This is very tedious and I believe the computer should be able to find & replace multiple items at one time. (I have used other utilities to do batch renaming and trimming file names before.)
    All I want to do is select a group of files (usually 25 at a time) and have Automator get rid of all the unwanted words and characters before I open each file for final processing in Pages. I found a set of Automator actions for TextEdit which includes a Find & Replace action, but I've wasted over an hour so far trying to get it to work.
    When I run the workflow, it acts like it's doing something, but the files remain unchanged. I have tried using actions such as Read Text File, Get Contents of TextEdit Document, Set Contents of TextEdit Document, along with 6 instances of Find & Replace, but I cannot get it to work.
    I'm at a point today where I cannot afford to mess around with this anymore. I have to do it the long way in Pages or else I'll never get it done, but I want to get these Automator workflows to work before I have to repeat this task. (I do this at least once a week right now.)
    Any ideas or suggestions? I've tried reading in the help menus and support pages, but perhaps I'm just not understanding something here.

    Any ideas or suggestions?
    You might be interested in using TextWrangler. It can perform batch find-and-replace changes across multiple selected files.
    Good luck!
    Andrew99

  • Find/Replace - multiple replace ... maybe with regex

    Hello Dreamweaver community ... I'm relatively new to using Dreamweaver as an editor and I'm working on a large migration project that I'm trying to make easier. Basically, I'm converting an entire site from English to Spanish ... almost literally tag by tag
    Something that would make my job a lot easier is if ... every time I open a new Spanish language content file I could ...
    replace ALL Spanish language grammar symbols, accents, tildes etc ... with their HTML equivalents ... for example ...
    á  = &aacute;
    é = &eacute;
    í = &iacute;
    And so on ... there's about 10-12 major changes ...
    What I need to figure out is how to save a find/replace query in Dreamweaver .dwr format that replaces all symbols at once instead of needing to do them one at a time ...
    Seems like this shoudl be possible but I haven't figured out the right syntax ... I used the (.+) and $1 but it only worked conditionally - in the order the replacements were written. I need it to find ALL instances of a spanish symbol and replace it with its corresponding html ...
    Can anyone help me with this ...?
    Thank you in advance ...

    This is in fact the only solution I found to this problem.
    Creating an extension is not that difficult once you have the right
    reference material.
    Have a look at:
    DW API function to find and replace
    http://livedocs.adobe.com/en_US/Dreamweaver/9.0_API/dwr_code_cd_013.html
    Sample extension file on your machine after installing DW
    C:\Program Files\Adobe\Adobe Extension
    Manager\Samples\Dreamweaver\
    Full specifications of the MXI (extension file) format
    http://download.macromedia.com/pub/exchange/mxi_file_format.pdf
    quote:
    Originally posted by:
    Newsgroup User
    > So, is it indeed possible to run more than one
    find/replace query at a
    > time?
    As far as i know, no it's not possible.
    There has been mentions in the past to this question that a
    series of
    find/replace queries could be built as a dw extension instead
    of a saved
    search query.
    Alan
    Adobe Community Expert, dreamweaver

  • Find Replace from Textfile with regex

    Hello.
    I'm wondering if anyone knows about an existing script that does a find/replace by list like the script "FindChangeByList.jsx" that comes with every InDesign installation.
    This consists of tow parts, the script itself with the functionality and a simple textfile where you have simple one-liners capable of find/replace with regex.
    the Textfile:
    //FindChangeList.txt
    //A support file for the InDesign CS4 JavaScript FindChangeByList.jsx
    //This data file is tab-delimited, with carriage returns separating records.
    //The format of each record in the file is:
    //findType<tab>findProperties<tab>changeProperties<tab>findChangeOptions<tab>description
    //Where:
    //<tab> is a tab character
    //findType is "text", "grep", or "glyph" (this sets the type of find/change operation to use).
    //findProperties is a properties record (as text) of the find preferences.
    //changeProperties is a properties record (as text) of the change preferences.
    //findChangeOptions is a properties record (as text) of the find/change options.
    //description is a description of the find/change operation
    //Very simple example:
    //text          {findWhat:"--"}          {changeTo:"^_"}          {includeFootnotes:true, includeMasterPages:true, includeHiddenLayers:true, wholeWord:false}          Find all double dashes and replace with an em dash.
    //More complex example:
    //text          {findWhat:"^9^9.^9^9"}          {appliedCharacterStyle:"price"}          {include footnotes:true, include master pages:true, include hidden layers:true, whole word:false}          Find $10.00 to $99.99 and apply the character style "price".
    //All InDesign search metacharacters are allowed in the "findWhat" and "changeTo" properties for findTextPreferences and changeTextPreferences.
    //If you enter backslashes in the findWhat property of the findGrepPreferences object, they must be "escaped"
    //as shown in the example below:
    //{findWhat:"\\s+"}
    grep          {findWhat:"  +"}          {changeTo:" "}          {includeFootnotes:true, includeMasterPages:true, includeHiddenLayers:true, wholeWord:false}          Find all double spaces and replace with single spaces.
    grep          {findWhat:"\r "}          {changeTo:"\r"}          {includeFootnotes:true, includeMasterPages:true, includeHiddenLayers:true, wholeWord:false}          Find all returns followed by a space And replace with single returns.
    grep          {findWhat:" \r"}          {changeTo:"\r"}          {includeFootnotes:true, includeMasterPages:true, includeHiddenLayers:true, wholeWord:false}          Find all returns followed by a space and replace with single returns.
    grep          {findWhat:"\t\t+"}          {changeTo:"\t"}          {includeFootnotes:true, includeMasterPages:true, includeHiddenLayers:true, wholeWord:false}          Find all double tab characters and replace with single tab characters.
    grep          {findWhat:"\r\t"}          {changeTo:"\r"}          {includeFootnotes:true, includeMasterPages:true, includeHiddenLayers:true, wholeWord:false}          Find all returns followed by a tab character and replace with single returns.
    grep          {findWhat:"\t\r"}          {changeTo:"\r"}          {includeFootnotes:true, includeMasterPages:true, includeHiddenLayers:true, wholeWord:false}          Find all returns followed by a tab character and replace with single returns.
    grep          {findWhat:"\r\r+"}          {changeTo:"\r"}          {includeFootnotes:true, includeMasterPages:true, includeHiddenLayers:true, wholeWord:false}          Find all double returns and replace with single returns.
    text          {findWhat:" - "}          {changeTo:"^="}          {includeFootnotes:true, includeMasterPages:true, includeHiddenLayers:true, wholeWord:false}          Find all space-dash-space and replace with an en dash.
    text          {findWhat:"--"}          {changeTo:"^_"}          {includeFootnotes:true, includeMasterPages:true, includeHiddenLayers:true, wholeWord:false}          Find all dash-dash and replace with an em dash.
    The script:
    //FindChangeByList.jsx
    //An InDesign CS5.5 JavaScript
    @@@BUILDINFO@@@ "FindChangeByList.jsx" 3.0.0 15 December 2009
    //Loads a series of tab-delimited strings from a text file, then performs a series
    //of find/change operations based on the strings read from the file.
    //The data file is tab-delimited, with carriage returns separating records.
    //The format of each record in the file is:
    //findType<tab>findProperties<tab>changeProperties<tab>findChangeOptions<tab>description
    //Where:
    //<tab> is a tab character
    //findType is "text", "grep", or "glyph" (this sets the type of find/change operation to use).
    //findProperties is a properties record (as text) of the find preferences.
    //changeProperties is a properties record (as text) of the change preferences.
    //findChangeOptions is a properties record (as text) of the find/change options.
    //description is a description of the find/change operation
    //Very simple example:
    //text          {findWhat:"--"}          {changeTo:"^_"}          {includeFootnotes:true, includeMasterPages:true, includeHiddenLayers:true, wholeWord:false}          Find all double dashes and replace with an em dash.
    //More complex example:
    //text          {findWhat:"^9^9.^9^9"}          {appliedCharacterStyle:"price"}          {include footnotes:true, include master pages:true, include hidden layers:true, whole word:false}          Find $10.00 to $99.99 and apply the character style "price".
    //All InDesign search metacharacters are allowed in the "findWhat" and "changeTo" properties for findTextPreferences and changeTextPreferences.
    //If you enter backslashes in the findWhat property of the findGrepPreferences object, they must be "escaped"
    //as shown in the example below:
    //{findWhat:"\\s+"}
    //For more on InDesign scripting, go to http://www.adobe.com/products/indesign/scripting/index.html
    //or visit the InDesign Scripting User to User forum at http://www.adobeforums.com
    main();
    function main(){
              var myObject;
              //Make certain that user interaction (display of dialogs, etc.) is turned on.
              app.scriptPreferences.userInteractionLevel = UserInteractionLevels.interactWithAll;
              if(app.documents.length > 0){
                        if(app.selection.length > 0){
                                  switch(app.selection[0].constructor.name){
                                            case "InsertionPoint":
                                            case "Character":
                                            case "Word":
                                            case "TextStyleRange":
                                            case "Line":
                                            case "Paragraph":
                                            case "TextColumn":
                                            case "Text":
                                            case "Cell":
                                            case "Column":
                                            case "Row":
                                            case "Table":
                                                      myDisplayDialog();
                                                      break;
                                            default:
                                                      //Something was selected, but it wasn't a text object, so search the document.
                                                      myFindChangeByList(app.documents.item(0));
                        else{
                                  //Nothing was selected, so simply search the document.
                                  myFindChangeByList(app.documents.item(0));
              else{
                        alert("No documents are open. Please open a document and try again.");
    function myDisplayDialog(){
              var myObject;
              var myDialog = app.dialogs.add({name:"FindChangeByList"});
              with(myDialog.dialogColumns.add()){
                        with(dialogRows.add()){
                                  with(dialogColumns.add()){
                                            staticTexts.add({staticLabel:"Search Range:"});
                                  var myRangeButtons = radiobuttonGroups.add();
                                  with(myRangeButtons){
                                            radiobuttonControls.add({staticLabel:"Document", checkedState:true});
                                            radiobuttonControls.add({staticLabel:"Selected Story"});
                                            if(app.selection[0].contents != ""){
                                                      radiobuttonControls.add({staticLabel:"Selection", checkedState:true});
              var myResult = myDialog.show();
              if(myResult == true){
                        switch(myRangeButtons.selectedButton){
                                  case 0:
                                            myObject = app.documents.item(0);
                                            break;
                                  case 1:
                                            myObject = app.selection[0].parentStory;
                                            break;
                                  case 2:
                                            myObject = app.selection[0];
                                            break;
                        myDialog.destroy();
                        myFindChangeByList(myObject);
              else{
                        myDialog.destroy();
    function myFindChangeByList(myObject){
              var myScriptFileName, myFindChangeFile, myFindChangeFileName, myScriptFile, myResult;
              var myFindChangeArray, myFindPreferences, myChangePreferences, myFindLimit, myStory;
              var myStartCharacter, myEndCharacter;
              var myFindChangeFile = myFindFile("/FindChangeSupport/FindChangeList.txt")
              if(myFindChangeFile != null){
                        myFindChangeFile = File(myFindChangeFile);
                        var myResult = myFindChangeFile.open("r", undefined, undefined);
                        if(myResult == true){
                                  //Loop through the find/change operations.
                                  do{
                                            myLine = myFindChangeFile.readln();
                                            //Ignore comment lines and blank lines.
                                            if((myLine.substring(0,4)=="text")||(myLine.substring(0,4)=="grep")|| (myLine.substring(0,5)=="glyph")){
                                                      myFindChangeArray = myLine.split("\t");
                                                      //The first field in the line is the findType string.
                                                      myFindType = myFindChangeArray[0];
                                                      //The second field in the line is the FindPreferences string.
                                                      myFindPreferences = myFindChangeArray[1];
                                                      //The second field in the line is the ChangePreferences string.
                                                      myChangePreferences = myFindChangeArray[2];
                                                      //The fourth field is the range--used only by text find/change.
                                                      myFindChangeOptions = myFindChangeArray[3];
                                                      switch(myFindType){
                                                                case "text":
                                                                          myFindText(myObject, myFindPreferences, myChangePreferences, myFindChangeOptions);
                                                                          break;
                                                                case "grep":
                                                                          myFindGrep(myObject, myFindPreferences, myChangePreferences, myFindChangeOptions);
                                                                          break;
                                                                case "glyph":
                                                                          myFindGlyph(myObject, myFindPreferences, myChangePreferences, myFindChangeOptions);
                                                                          break;
                                  } while(myFindChangeFile.eof == false);
                                  myFindChangeFile.close();
    function myFindText(myObject, myFindPreferences, myChangePreferences, myFindChangeOptions){
              //Reset the find/change preferences before each search.
              app.changeTextPreferences = NothingEnum.nothing;
              app.findTextPreferences = NothingEnum.nothing;
              var myString = "app.findTextPreferences.properties = "+ myFindPreferences + ";";
              myString += "app.changeTextPreferences.properties = " + myChangePreferences + ";";
              myString += "app.findChangeTextOptions.properties = " + myFindChangeOptions + ";";
              app.doScript(myString, ScriptLanguage.javascript);
              myFoundItems = myObject.changeText();
              //Reset the find/change preferences after each search.
              app.changeTextPreferences = NothingEnum.nothing;
              app.findTextPreferences = NothingEnum.nothing;
    function myFindGrep(myObject, myFindPreferences, myChangePreferences, myFindChangeOptions){
              //Reset the find/change grep preferences before each search.
              app.changeGrepPreferences = NothingEnum.nothing;
              app.findGrepPreferences = NothingEnum.nothing;
              var myString = "app.findGrepPreferences.properties = "+ myFindPreferences + ";";
              myString += "app.changeGrepPreferences.properties = " + myChangePreferences + ";";
              myString += "app.findChangeGrepOptions.properties = " + myFindChangeOptions + ";";
              app.doScript(myString, ScriptLanguage.javascript);
              var myFoundItems = myObject.changeGrep();
              //Reset the find/change grep preferences after each search.
              app.changeGrepPreferences = NothingEnum.nothing;
              app.findGrepPreferences = NothingEnum.nothing;
    function myFindGlyph(myObject, myFindPreferences, myChangePreferences, myFindChangeOptions){
              //Reset the find/change glyph preferences before each search.
              app.changeGlyphPreferences = NothingEnum.nothing;
              app.findGlyphPreferences = NothingEnum.nothing;
              var myString = "app.findGlyphPreferences.properties = "+ myFindPreferences + ";";
              myString += "app.changeGlyphPreferences.properties = " + myChangePreferences + ";";
              myString += "app.findChangeGlyphOptions.properties = " + myFindChangeOptions + ";";
              app.doScript(myString, ScriptLanguage.javascript);
              var myFoundItems = myObject.changeGlyph();
              //Reset the find/change glyph preferences after each search.
              app.changeGlyphPreferences = NothingEnum.nothing;
              app.findGlyphPreferences = NothingEnum.nothing;
    function myFindFile(myFilePath){
              var myScriptFile = myGetScriptPath();
              var myScriptFile = File(myScriptFile);
              var myScriptFolder = myScriptFile.path;
              myFilePath = myScriptFolder + myFilePath;
              if(File(myFilePath).exists == false){
                        //Display a dialog.
                        myFilePath = File.openDialog("Choose the file containing your find/change list");
              return myFilePath;
    function myGetScriptPath(){
              try{
                        myFile = app.activeScript;
              catch(myError){
                        myFile = myError.fileName;
              return myFile;
    This is a very useful and easy to maintain script which even people who cant write scripts (but know how to use regex) can do complex search replace mass replacements.
    Would love to find something like this for FrameMaker 12 (as i can't write scripts myself).
    regards
    daniel

    I have visited that site. The first item in the external link says: "You can also configure Firefox to automatically search for text when you type any characters outside of a text field. When typing in a text field these characters should show up in the text field and not trigger the Quick Find bar. "
    What I am looking for is the exact opposite. Once my first search is entered in the text box, and the info comes back, I want to start typing the next symbol, and have it automatically show up in the text box, not the Quick Find box. That is how it was working up until a couple of months ago.

  • How to find leap year in sql query

    How to find leap year in sql query

    Select
    CASE
      WHEN result = 0 THEN 'Leap_Year'
      WHEN result <> 0 THEN 'Not_A_Leap_Year'
    END
    From (Select mod((EXTRACT(YEAR FROM DATE '2013-08-24')), 4) result FROM DUAL);

Maybe you are looking for