Need to write a script...

Hello all,
I don't have any idea about scripting. But I want to write a shell script which will give me the output of the following query as an attachment in a mail
SELECT /*+ parallel(a,4)*/ban, subscriber_no, business_id, price_plan_code, call_action_code, special_seq_no, toll_soc, toll_feature_code, toll_free_code,toll_num_mins_to_rate,toll_charge_amt, toll_type,toll_class,toll_dur_round_min,
channel_seizure_dt,sys_update_date,CALL_TO_CITY_DESC,at_call_start_period,at_call_end_period
FROM us1412 a WHERE TOLL_NUM_MINS_TO_RATE IS NOT NULL and toll_soc is not null
AND toll_type NOT IN (1,5,4) AND toll_class NOT IN ( 00,01,15 ) and INCOL_TOLL_RERATE_IND'R'
AND toll_type 2 and toll_free_code in (0,4) and rownum<51
Plz Help
Thanks in advance

sqlplus /nolog ... start sqlplus don't login
2&gt;&1 ... stderr to stdout so it gets appended
&gt;/tmp/$0.$$ ... output to file named /tmp/{script name}.{processID}
EOF ... that's the begin of the here-doc, could use any series of characters. As long as there is a match at the beginning of a line after the SQL.
connect / ... connect <user identified externally>
i.e. create user ops$joe identified externally ... if your OS login is 'joe' and parameter os_authent_prefix = 'ops$'
grant connect to ops$joe;
grant select on ... to ops$joel
Could put passwords in environment variables, but then if a script does sqlplus user/${passwd} ... the substitution value for $passwd can be seen with just a `ps -ef`
Edited by: clcarter on Jul 13, 2011 2:58 PM
fix html char codes

Similar Messages

  • Need OS X Server Script help

    Hi All,
    We have an issue with one of our servers ( 10.4.11 ), and I would like to restart it every day. I do not see that option in System Prefs anymore so I think I need to write a script to do it? I am using Lingon.
    Any help appreciated.
    TIA - Vijay

    The option to schedule a restart is available in 10.4.11
    System Preferences -> Energy Saver -> Schedule

  • Write xmp sidecar files without need to export masters - script

    I've written a script to write xmp sidecar files for referenced and online images (the 2 conditions in the script) of the selected images. I looked for a while at system events and other stuff to be able to write the xmp file, but i'm not a programmer, so in the end i chose the long and dirty way to do it.
    This script will export all iptc expanded fields as aperture does (creating basically the same file). It can be easily adjusted to include other tags, even custom ones. I don't know how to get at the adjustments for images, otherwise those could be included as well.
    If anyone has the energy to clean this up and make it faster, feel free to do so. Next, I'm going to try to write a script to do the opposite, import xmp sidecars for imported online and referenced files.
    Here it goes (thanks to Brett Gross for the database part to find the master filename):
    --script to create sidecar xmp files for referenced files without having to export masters. parts of the script (finding the file name) are by brett gross
    property p_sql : "/usr/bin/sqlite3 "
    global g_libPath
    on run
    my getLibPath()
    --counter for processed images, reset, just in case
    set mastercount to 0
    tell application "Aperture"
    if not (exists selection) then
    display dialog "You have to select at least one image" buttons {"OK"} default button 1
    return
    else
    display dialog "You have selected " & (count of selection) & " images." & return & "Continue?" default button 1
    end if
    set theSel to selection
    --run through the selected images
    repeat with currentpic from 1 to count of theSel
    tell item currentpic of theSel
    -- only apply to referenced and online images
    if referenced and online then
    set mastercount to mastercount + 1
    set curID to id
    --find the master file path and name - this part by brett gross, thanks
    set libPOSIX to POSIX path of g_libPath
    set libDBPOSIX to (libPOSIX & "/Aperture.aplib/Library.apdb") as string
    set theScript to p_sql & (quoted form of libDBPOSIX) & " \"select ZFILEUUID from ZRKVERSION where ZUUID='" & curID & "'\""
    set ZFILEUUID to do shell script theScript
    # ---------- Get the master's path
    set theScript to p_sql & (quoted form of libDBPOSIX) & " \"select ZIMAGEPATH from ZRKFILE where ZUUID='" & ZFILEUUID & "'\""
    set ZIMAGEPATH to do shell script theScript
    # ---------- Get the master's disk name
    set theScript to p_sql & (quoted form of libDBPOSIX) & " \"select ZFILEVOLUMEUUID from ZRKFILE where ZUUID='" & ZFILEUUID & "'\""
    set ZFILEVOLUMEUUID to do shell script theScript
    set theScript to p_sql & (quoted form of libDBPOSIX) & " \"select ZNAME from ZRKVOLUME where ZUUID='" & ZFILEVOLUMEUUID & "'\""
    set diskName to do shell script theScript
    set imgPath to (diskName & "/" & ZIMAGEPATH)
    --end brett gross part
    --strips extension, seems to work for files and paths with more than one period
    set oldlim to AppleScript's text item delimiters
    set AppleScript's text item delimiters to "."
    try --remove last extension only
    set contador to text item -1 of imgPath
    set noExtension to Unicode text 1 thru -((count of contador) + 2) of imgPath
    on error --handle files with no extensions
    set noExtension to imgPath
    end try
    set AppleScript's text item delimiters to oldlim
    --create the file and path name with the .xmp extension for writing
    set xmpPath to "/Volumes/" & noExtension & ".xmp" as Unicode text
    --convert posix path to alias for easier write and read handling
    set xmpPath to POSIX file xmpPath as file specification
    -- header for xmp file
    set xmpheader to ("<?xpacket begin='' id=''?>
    <x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9-9, framework 1.6'>
    <rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>") & return
    -- footer for xmp file
    set xmpfooter to ("</rdf:RDF>
    </x:xmpmeta>
    <?xpacket end='w'?>") & return
    --xmp content, part 1
    --check for existence of iptc tags, create content or empty string depending on existance of tags
    if (exists IPTC tag "Contact") or (exists IPTC tag "Country/PrimaryLocationCode") then
    set xmpcontentpartone to ("<rdf:Description rdf:about='' xmlns:Iptc4xmpCore='http://iptc.org/std/Iptc4xmpCore/1.0/xmlns/'>") & return
    try
    set CountryCode to value of IPTC tag "Country/PrimaryLocationCode"
    set xmpcontentpartone to xmpcontentpartone & tab & "<Iptc4xmpCore:CountryCode>" & CountryCode & "</Iptc4xmpCore:CountryCode>" & return
    end try
    try
    set CreatorContactInfo to value of IPTC tag "Contact"
    set xmpcontentpartone to xmpcontentpartone & tab & "<Iptc4xmpCore:CreatorContactInfo>" & CreatorContactInfo & "</Iptc4xmpCore:CreatorContactInfo>" & return
    end try
    set xmpcontentpartone to xmpcontentpartone & ("</rdf:Description>") & return
    else
    set xmpcontentpartone to ""
    end if
    --xmp content, part 2
    --check for existence of iptc tags, create content or empty string depending on existance of tags
    if (exists IPTC tag "Category") or (exists IPTC tag "City") or (exists IPTC tag "Country/PrimaryLocationName") or (exists IPTC tag "Credit") or (exists IPTC tag "DateCreated") or (exists IPTC tag "Headline") or (exists IPTC tag "Province/State") or (exists IPTC tag "Source") or (exists IPTC tag "SpecialInstructions") or (exists IPTC tag "SupplementalCategory") or (exists IPTC tag "Writer/Editor") then
    set xmpcontentparttwo to ("<rdf:Description rdf:about='' xmlns:photoshop='http://ns.adobe.com/photoshop/1.0/'>") & return
    try
    set Category to value of IPTC tag "Category"
    set xmpcontentparttwo to xmpcontentparttwo & tab & "<photoshop:Category>" & Category & "</photoshop:Category>" & return
    end try
    try
    set City to value of IPTC tag "City"
    set xmpcontentparttwo to xmpcontentparttwo & tab & "<photoshop:City>" & City & "</photoshop:City>" & return
    end try
    try
    set Country to value of IPTC tag "Country/PrimaryLocationName"
    set xmpcontentparttwo to xmpcontentparttwo & tab & "<photoshop:Country>" & Country & "</photoshop:Country>" & return
    end try
    try
    set Credit to value of IPTC tag "Credit"
    set xmpcontentparttwo to xmpcontentparttwo & tab & "<photoshop:Credit>" & Credit & "</photoshop:Credit>" & return
    end try
    try
    set DateCreated to value of IPTC tag "DateCreated"
    set xmpcontentparttwo to xmpcontentparttwo & tab & "<photoshop:DateCreated>" & DateCreated & "</photoshop:DateCreated>" & return
    end try
    try
    set Headline to value of IPTC tag "Headline"
    set xmpcontentparttwo to xmpcontentparttwo & tab & "<photoshop:Headline>" & Headline & "</photoshop:Headline>" & return
    end try
    try
    set State to value of IPTC tag "Province/State"
    set xmpcontentparttwo to xmpcontentparttwo & tab & "<photoshop:State>" & State & "</photoshop:State>" & return
    end try
    try
    set Source to value of IPTC tag "Source"
    set xmpcontentparttwo to xmpcontentparttwo & tab & "<photoshop:Source>" & Source & "</photoshop:Source>" & return
    end try
    try
    set Instructions to value of IPTC tag "SpecialInstructions"
    set xmpcontentparttwo to xmpcontentparttwo & tab & "<photoshop:Instructions>" & Instructions & "</photoshop:Instructions>" & return
    end try
    try
    set SupplementalCategory to value of IPTC tag "SupplementalCategory"
    set xmpcontentparttwo to xmpcontentparttwo & tab & "<photoshop:SupplementalCategory>" & SupplementalCategory & "</photoshop:SupplementalCategory>" & return
    end try
    try
    set CaptionWriter to value of IPTC tag "Writer/Editor"
    set xmpcontentparttwo to xmpcontentparttwo & tab & "<photoshop:CaptionWriter>" & CaptionWriter & "</photoshop:CaptionWriter>" & return
    end try
    set xmpcontentparttwo to xmpcontentparttwo & ("</rdf:Description>") & return
    else
    set xmpcontentparttwo to ""
    end if
    --xmp content, part 3
    --check for existence of iptc tags, create content or empty string depending on existance of tags
    if (exists IPTC tag "Byline") or (exists IPTC tag "Caption/Abstract") or (exists IPTC tag "CopyrightNotice") or (exists IPTC tag "Keywords") or (exists IPTC tag "ObjectName") then
    set xmpcontentpartthree to ("<rdf:Description rdf:about='' xmlns:dc='http://purl.org/dc/elements/1.1/'>") & return
    try
    set creator to value of IPTC tag "Byline"
    set xmpcontentpartthree to xmpcontentpartthree & tab & "<dc:creator><rdf:Seq><rdf:li>" & creator & "</rdf:li></rdf:Seq></dc:creator>" & return
    end try
    try
    set description to value of IPTC tag "Caption/Abstract"
    set xmpcontentpartthree to xmpcontentpartthree & tab & "<dc:description><rdf:Alt><rdf:li xml:lang='x-default'>" & description & "</rdf:li></rdf:Alt></dc:description>" & return
    end try
    try
    set rights to value of IPTC tag "CopyrightNotice"
    set xmpcontentpartthree to xmpcontentpartthree & tab & "<dc:rights><rdf:Alt><rdf:li xml:lang='x-default'>" & rights & "</rdf:li></rdf:Alt></dc:rights>" & return
    end try
    --keywords, slightly different, as they need to be written as a list and not as a string
    --i don't think it's a problem if we create an empty list if there are no keywords present.
    set xmpcontentpartthree to xmpcontentpartthree & tab & "<dc:subject><rdf:Bag>" & return
    --make list item for every keyword
    try
    repeat with n from 1 to count of keywords
    set cursubject to name of (keyword n)
    set xmpcontentpartthree to xmpcontentpartthree & tab & tab & "<rdf:li>" & cursubject & "</rdf:li>" & return
    end repeat
    end try
    set xmpcontentpartthree to xmpcontentpartthree & tab & "</rdf:Bag></dc:subject>" & return
    try
    set title to value of IPTC tag "ObjectName"
    set xmpcontentpartthree to xmpcontentpartthree & tab & "<dc:title><rdf:Alt><rdf:li xml:lang='x-default'>" & title & "</rdf:li></rdf:Alt></dc:title>" & return
    end try
    set xmpcontentpartthree to xmpcontentpartthree & ("</rdf:Description>") & return
    else
    set xmpcontentpartthree to ""
    end if
    --part four. aperture doesn't seem to export anything there
    set xmpcontentpartfour to "<rdf:Description rdf:about='' xmlns:photomechanic='http://ns.camerabits.com/photomechanic/1.0/'>
    </rdf:Description>" & return
    --part five. rating
    set xmpcontentpartfive to "<rdf:Description rdf:about='' xmlns:xap='http://ns.adobe.com/xap/1.0/'>" & return
    try
    set Rating to main rating
    set xmpcontentpartfive to xmpcontentpartfive & tab & "<xap:Rating>" & Rating & "</xap:Rating>" & return
    end try
    set xmpcontentpartfive to xmpcontentpartfive & "</rdf:Description>" & return
    --join everything
    set xmptext to xmpheader & xmpcontentpartone & xmpcontentparttwo & xmpcontentpartthree & xmpcontentpartfour & xmpcontentpartfive & xmpfooter
    --write file
    my writexmpFile(xmptext, xmpPath)
    end if
    end tell
    end repeat
    display dialog "Processed " & mastercount & " referenced and online image(s)." buttons {"OK"} default button 1
    end tell
    end run
    -- write xmp sidecar file routine
    on writexmpFile(theContents, xmpFileName)
    --tell application "Finder"
    try
    open for access xmpFileName with write permission
    set eof of xmpFileName to 0
    write (theContents) to xmpFileName starting at eof
    close access xmpFileName
    on error
    try
    display dialog xmpFileName
    close access xmpFileName
    end try
    end try
    --end tell
    end writexmpFile
    --this part copied from Brett Gross-------------------------------------------------------------------------- --------------------------------
    on getLibPath()
    tell application "System Events" to set p_libPath to value of property list item "LibraryPath" of property list file ((path to preferences as Unicode text) & "com.apple.aperture.plist")
    if ((offset of "~" in p_libPath) is not 0) then
    -- set p_posix to POSIX file p_libPath
    set p_script to "/bin/echo $HOME"
    set p_homePath to (do shell script p_script)
    set p_offset to offset of "~" in p_libPath
    set p_path to text (p_offset + 1) thru -1 of p_libPath
    set g_libPath to p_homePath & p_path
    else
    set g_libPath to p_libPath
    end if
    end getLibPath
    --end brett gross part

    imigra wrote:
    I've written a script to write xmp sidecar files for referenced and online images (the 2 conditions in the script) of the selected images. I looked for a while at system events and other stuff to be able to write the xmp file, but i'm not a programmer, so in the end i chose the long and dirty way to do it.
    This script will export all iptc expanded fields as aperture does (creating basically the same file). It can be easily adjusted to include other tags, even custom ones.
    Excellent stuff!
    I don't know how to get at the adjustments for images, otherwise those could be included as well.
    They are stored as binary data in the Version XML files at the bottom level of the Library package. You can also have a look around in the ZRKIMAGEADJUSTMENT table, but again the actual settings for each adjustment are in binary form.
    If anyone has the energy to clean this up and make it faster, feel free to do so.
    As far as I can remember, Aperture uses the 'proper' IPTC tag names when accessing them via AppleScript, so you may be able to do a loop through all the IPTC tags for each image, rather than picking out each specific one. But that would need checking. The EXIFTools site is a good place to find out about the different ways that IPTC data can be described.
    Next, I'm going to try to write a script to do the opposite, import xmp sidecars for imported online and referenced files.
    Don't rush unless you feel like it - I've already started planning out a free (as in beer and speech) XMP importer with a GUI so that you can choose how to map the XMP CORE tags that don't exist in Aperture. You've given me an extra idea, though - if we can decide on a set of custom tags, my importer could map the XMP CORE tags to them and your exporter could export those tags.
    Thanks for the work!
    Ian
    P.S. I'll check through your script tomorrow, some of the database tables changed between 1.5.6 and 2.0, so you might need to add in a version check to be really thorough.

  • Applescript: Need help to write a script that inputs an excel formula into multiple workbooks.

    Don't know if I can do this with automator or if I need to write a scipt I have a folder which contains probably 20 excel workbooks and each workbook needs the formula "=CONCATENATE(E17, " ",TEXT(N11, "mm-dd-yy"))" into cell T18 in every sheet of each workbook. Any ideas?

    well, the operative line is this:
                                  set formula of cell "T18" to "=CONCATENATE(E17, \" \",TEXT(N11, \"mm-dd-yy\"))"
    you just need to loop through the workbooks and worksheets and apply it to each.  I think you can figure that out.

  • Can anyone help me write a script that would click "get info" and then "enter" on each movie in my itunes library? I am asking because my itunes 11 repeatedly loses the artwork to my movies in my itunes library.

    Can anyone help me write a script that would click "get info" and then "enter" on each movie in my itunes library? I am asking because my itunes 11 repeatedly loses the artwork to my movies in my itunes library. I can restore the artwork (and make my apple tv see the movie exists as well) by going into the movie library and clicking on each movie by hand, slecting get info, and then selecting enter. Now doing this 10 times in 20 days was fun and all BUT I would really like to automate the process so everytime itunes screws it up I can fix it easier.
    I saw this example of an itunes script that restores artwork for music
    tell application "iTunes" set theSelection to selection repeat with i from 1 to count of theSelection tell (item i of theSelection) set artworkCount to count of artwork repeat artworkCount times set theArtwork to data of artwork 1 delete artwork 1 set data of artwork artworkCount to theArtwork end repeat end tell end repeat end tell
    but I need to tweak this to fit my needs for simply clicking the "get info" button and "enter" in the movie library rather than all the stuff this guy has listed. Any ideas or help on writing this? Thanks.

    Try assigning Queen as the Album Artist on the compilations in iTunes on your computer.

  • Can you point me to FrameScript samples that do some or all of the following?  Or maybe even write the script for me for $$$? :-)

    Hi,
    I'm brand new to writing FrameScript.  I'm looking for example scripts that I can piece together or perhaps you can give me a quote for your cost to write the script for me.  Here is a description of basically what needs doing.  We have .book files than contain say a cover.fm, multiple  chapter.fms, and possibly multiple appendix.fms.  (They actually contain more  types, but I can expand the script for that.)  I don't think here is a  consistent way to automatically determine which .fms are of which type, so I was  thinking of popping up a dialog box that showed the files in the book and asked  the user to identify which files were of which type.  This asking could be done  all at once, or it could iteratively ask for the first type then run all the  processing then ask for the second type, etc, etc.
    The processing of each file goes like  this:
    1) Delete the paragraph and character catalog  contents
    2) Import all formats, including the new paragraph and  character catalogs from correct template file (chapter.fm, appendix.fm,  etc)
    3) Remap the old paragraph and character tags to the  new ones, preferably based on an internal predefined, hard-coded table, but  possibly using the "use a remapping table that is in another .fm file" method.   It's just that the latter method requires the user to open two more .fms in  addition to the several other template files they'll already (correct?) have to  have open.
    4) Report to the user all tags that are in their file  that are not in the new catalogs
    Can you point me to pieces?  Write the whole thing?  Recommend someone who can?
    Thanks,
    Dave

    Dave, if you haven't yet check it out, do visit the Framescript users group, here:
        http://groups.yahoo.com/group/framescript-users/
    There are several folks who do contract FS work who post their contact info as part of that group (I believe there's a webring also). Also,  Rick Quatro has a good e-book "Crash Course" about learning FrameScript (although the book refers to an earlier version, almost all of the concepts are still applicable to the current versions of FS and FM) , check it out at
    http://www.frameexpert.com
    Sheila

  • Need help writing a script to delete a folder to run at startup

    I have no experience with this and need full assistance to set this up.
    I am hoping to write a script which can be run at startup on a single client machine which is giving me font trouble. Our client machines are network controlled by our server and have multiple users all in the Server user database.
    The fonts are behaving badly until we trash this folder HD>Library>Caches>com.apple.ATS
    On restart the fonts behave as expected.
    Can someone help me write a script or give me a command I can insert in a crontab with Cronnix to delete this folder at startup?
    Thanks

    They both work fine (read that as: it can be added into either place) While that message in crontab seems to intimate that Apple will do something drastic like disable or make it hard to run cron I cannot see how, cron has been in all *nix's since the beginning so to remove it would anger quite a few people...
    Having said that, If you want to make a launchd item you would put the below into /Library/LaunchDaemons/ create a file (call it someting memorable like 'Delete_com.apple.ATS') put this into it:
    Code:
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
    <key>Label</key>
    <string>Delete com.apple.ATS</string>
    <key>ProgramArguments</key>
    <array>
    <string>rm</string>
    <string>-rf</string>
    <string>/Library/Caches/com.apple.ATS</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
    </dict>
    </plist>
    and finally load it...
    PowerMac G5 DP 2.5Ghz   Mac OS X (10.4.3)  

  • Need help on a Script in Solaris

    I am using solaris 10.
    How do I check if all passwords are shadowed, using a shell script, in bash in terminal? Also, if they are all shadowed, it needs to print "Exception: No", if not all are shadowed, it needs to print "Exception: Yes".
    Also,
    How do i check if anonymous ftp is not allowed, also using a shell script, in bash in terminal? if they are not allowed, print "exception: no", if they are allowed, print "exception:yes"?
    Thank you.

    969362 wrote:
    How do I ...The way it works in these forums is that you write the script and then paste is here.
    (You will need to paste it inside of formatting code tags as is described in the forum site FAQ that you have already read when you joined.)
    You then get assistance with that script.
    No one does your work for you.

  • Need help in Shell Scripts

    Hi,
    I have a requirement need a help.
    Requirement states like this:
    I need to write a shell script through which I need to search a huge lines code and to find out following information :
    1. Total No of lines of the code
    2. No of DML statements (select,update,insert, delete) used like how many SELECT, How many UPDATE etc used in it.
    3. No of base apps tables referenced like How many tables starting with "CMF_" is present.
    4. No of procedure calls like how many procedures starting with "PROC_" used.
    Can anyone help me in this ? I need to script.
    My Unix version is :
    $ uname -a
    SunOS appsnet 5.6 Generic_105181-21 sun4u sparc SUNW,Ultra-4
    Thanks in advance
    [email protected]

    What you need here is a AWK script. This script will read the input as the source file (as command line
    argument or as standard input), and process each like of the file read to look for the different patterns
    in that line (looking for example if the line contans "SELECT " or "INSERT " etc...) and increment its
    corresponding count. At the end of the script in the END section you can get the number of lines with the
    NR awk inbuilt variable.
    Hope this helps.
    Hi,
    I have a requirement need a help.
    Requirement states like this:
    I need to write a shell script through which I need to search a huge lines code and to find out following information :
    1. Total No of lines of the code
    2. No of DML statements (select,update,insert, delete) used like how many SELECT, How many UPDATE etc used in it.
    3. No of base apps tables referenced like How many tables starting with "CMF_" is present.
    4. No of procedure calls like how many procedures starting with "PROC_" used.
    Can anyone help me in this ? I need to script.
    My Unix version is :
    $ uname -a
    SunOS appsnet 5.6 Generic_105181-21 sun4u sparc SUNW,Ultra-4
    Thanks in advance
    [email protected]

  • How do I write a script to prepopulate a date

    I have a two page form.  The first page has a current date at the top of the form.  On the second page there is a date object that I would like to prepopulate 21 days from the current date on top of page one.  How do I write a script?  I am very new at this and have only a couple days to figure this out.  Thank you

    Hi,
    in the exit:Event of the 1st date field add this FormCalc script:
    DateField2 = Num2Date(Date2Num($.formattedValue, "DD.MM.YYYY") + 21, "DD.MM.YYYY")
    You may have to change th date pattern  "DD.MM.YYYY" in the way you need it.

  • Ability to write workflow scripts

    Hi,
    as a DAM, one of the very few things that I find very frustrating about Lightroom, is that I have to do a lot of repetative work manually. For example: I photography a wedding and in the arrive at 8-12 chapters (represented as collections in lightroom, all with a custom sort order). I now want to export each chapter into it's own folder with a given preset and need to set the folder name and the custom filename part.
    It would be great if I could write lua (or any other scripting language) scripts to automate things like this. What would be needed are things like access to metadata, possibility to filter and iterate over photos, trigger certain actions (like exports, creation of virtual copies or collections), simple file i/o (at least of text files) and the ability to modify the selection (e.g. to select all files whose filenames are given in a text file).
    This would make my work in lightroom a lot quicker and lightroom a much more flexible tool. I realise, that this is an advanced feature, but for professionals who need to work as quickly as possible, this would make a huge difference!
    Thanks in advance for considering this feature!

    You can write lua scripts to automate things like this - SDK3.0.

  • Easiest way to write transformation scripts

    Hey,
    I need to write quite a lot of transformation scripts. As I'm not a expert in javascript and java, I was wondering what's the easiest and quickest way to start creating those scripts. I found it quite annoying in Oracle SQL Modeler to switch between the library and the execution of the scripts. For some scripts I need interaction with the database and for other ones I need to ask the user for some parameter values.
    I've already tried the following with no real success:
    - Creating a project in JDeveloper
    - In Rhino command line, but I'm missing the Oracle SQL Modeler libraries
    - Opening 2 times Oracle SQL Modeler with the libray editing window and the transformation running window, the transformation running window does not see the changes in the other one.
    I've searched the internet, but I did not found any usefulle information about this subject.
    Any help would be appreciated.
    Thanks.
    Dominique

    Hi Dominique,
    I write my scripts in "Custom transformations scripts" dialog - "Tools>Design rules>Transformations".
    Opening 2 times Oracle SQL Modeler with the libray editing window and the transformation running window, the transformation running window does not see the changes in the other one.
    In "Custom transformations scripts" dialog you can write helper functions and execution code that do something and utilize those helper functions. Well if you want to reuse those helper functions in another
    transformation you need to copy them in new transformation. Libraries are here to help to overcome that limitations. Normally you write and  test your helper functions in "Custom transformations scripts" dialog
    and then put them in library. Also you put there a function that corresponds to the code you have in single transformation script and that can be invoked as single transformation. Data Modeler doesn't parse the library, you need to define
    functions that can be executed directly - that in "Functions/Methods" list of "Custom libraries" dialog. Functions exposed in that list are available for selection in "Custom transformations scripts" dialog. So what you expose is what you can use.
    Quick example - DM comes with script called "Tables to lower case - Rhino "
    tables = model.getTableSet().toArray();
    for (var t = 0; t<tables.length;t++){
    table = tables[t];
    name = table.getName().toLowerCase();
    table.setName(name);
    columns = table.getElements();
    size = table.getElementsCollection().size();
    for (var i = 0; i < size; i++) {
        column = columns[i];
        cname = column.getName().toLowerCase();
        column.setName(cname);
    table.setDirty(true);
    keys = table.getKeys();
    for (var i = 0; i < keys.length; i++) {
      key = keys[i];
        if(!key.isFK()){
         kname = key.getName().toLowerCase();
         key.setName(kname);
       }else{
         kname = key.getFKAssociation().getName().toLowerCase();
         key.getFKAssociation().setName(kname);
         key.getFKAssociation().setDirty(true);
    here is the same script put in library:
    function lower_case(){
    tables = model.getTableSet().toArray();
    for (var t = 0; t<tables.length;t++){
    table = tables[t];
    name = table.getName().toLowerCase();
    table.setName(name);
    columns = table.getElements();
    size = table.getElementsCollection().size();
    for (var i = 0; i < size; i++) {
        column = columns[i];
        cname = column.getName().toLowerCase();
        column.setName(cname);
    table.setDirty(true);
    keys = table.getKeys();
    for (var i = 0; i < keys.length; i++) {
      key = keys[i];
        if(!key.isFK()){
         kname = key.getName().toLowerCase();
         key.setName(kname);
       }else{
         kname = key.getFKAssociation().getName().toLowerCase();
         key.getFKAssociation().setName(kname);
         key.getFKAssociation().setDirty(true);
    And lower_case is exposed as function in "Function/methods" list
    Philip

  • Need help in Indesign scripting - Javascript

    Hi
    I have few questions during the indesign scripting.
    Please help me to answer those
    1. Targetting two engines.
    How to target Illustrator engine when the javascripts is running in indesign engine.
    2. Creating text in textframe
    How to create a text in textframe and uniquely identifying it for further updation of content of text.
    3. Creating form fields in Indesign
    How to create form fields in indesign through javascript so that after exporting to PDF it can be modified.
    4. Access method
    How to access methods defined in start up script from the our own cript folder.
    Thanks
    Karthik B

    1. I have No Idea what you mean. Do you want an InDesign script "target" illustrator? Try Brigdetalk.
    2. Described in the Javascript Tools guide.
    3. No amount of scripting will make #3 possible. [*] If you "desperately" need this, write a plugin for it.
    4. I'm not sure, but as far as I know nothing special is needed for that. At least, not if your own script shares the same engine. If it doesn't, then there is no way because that's how it is supposed to work, and no amount of scripting can work around that.
    [*] Apart from writing a complete PDF engine in Javascript, that is. Based on your other questions, it's a fair bet that's not going to happen any time soon.

  • I need help writing a script that finds the first instance of a paragraph style and then changes it

    I need help writing a script that finds the first instance of a paragraph style and then changes it to another paragraph style.  I don't necessarily need someone to write the whole thing, by biggest problem is figuring how to find just the first instance of the paragraph style.  Any help would be greatly appreciated, thanks!

    Hi,
    Do you mean first instance of the paragraph style
    - in a chosen story;
    - on some chosen page in every text frames, looking from its top to the bottom;
    - in a entire document, looking from its beginning to the end, including hidden layers, master pages, footnotes etc...?
    If story...
    You could set app.findTextPreferences.appliedParagraphStyle to your "Style".
    Story.findText() gives an array of matches. 1st array's element is a 1st occurence.
    so:
    Story.findText()[0].appliedParagraphStyle = Style_1;
    //==> this will change a paraStyle of 1st occurence of story to "Style_1".
    If other cases...
    You would need to be more accurate.
    rgds

  • I want to write a script or Automator workflow/app that emails a random shortcut of the day to three recipients. The source is from an Excel spreadsheet. One column is the shortcut, and the second column is the definition. Anyone have experience?

    I want to write a script or Automator workflow/app that automatically emails a random shortcut of the day to three recipients. The source is from an Excel spreadsheet. One column is the shortcut, and the second column is the definition. Anyone have similar experience and know that this would work?

    I have had a first stab at the script, below.  It uses a file to store the shortcuts and command [descriptions].  You should be able to see from the script annotations how to add a new one.  (I populated 1-4 with real data, but got lazy after that, so you have a few placeholders to work with first.
    As I have noted, once you are happy that you have all the data in the file, you can comment out part of the script for ongoing use.  (BTW, my reluctance to use Excel is that I don't currently have it installed and I don't want to offer wrong advice.  If you have Numbers, I do have that and could probably modify to work with a spreadsheet from there.  This might be especially useful if you have the data already sitting in Excel.)
    A few things came-up whilist I was writing the script:
    1.     Currently, all recipients will not only get the same tip at the same time, but they will see the names and email addresses of the others who receive them.  It is possible to modify this.
    2.     I have added a property gRandomCheck which keeps track of which shortcut has already been used (since the last time the script was compiled.  This will prevent the same tip being sent more than once.    When all tips have been sent once, the script will alert you and not send anything until reset.  It does not check on a per-addressee basis (which would be a refinement).  (If you add a new addressee at this stage, the whole process will start again, and you may not really want this to be the behaviour.)
    3.     The way that I have built the list, commandList, is deliberately cumbersome - it's for the sake of clarity.  If you prefer, you can construct the whole list as {{shortcut:"X", command:"X"}, {shortcut:"Y", command:"Y"}}
    Have a look - I am sure you will have questions!
    SCRIPT STARTS HERE  Paste the following lines (thru the end) into a new AppleScript Editor document and press RUN
    --The property gRandomCheck persists between runs and is used to stop sending the same hint twice.
    property gRandomCheck : {}
    --I am defining a file on the desktop.  It doesn't have to be in this location
    set theFolder to path to desktop
    set commandFile to (theFolder as text) & "CommandFile.csv"
    --(* Unless you need to change the file contents you do not need to write to it each time.  Remove the "--" on this line and before the asterisk about 18 lines below
    --Follow this format and enter as many records as you like on a new line - each with a unique name
    set record1 to {shortcut:"Z", command:"Undo"}
    set record2 to {shortcut:"R", command:"Record"}
    set record3 to {shortcut:"⇧R", command:"Record Toggle"}
    set record4 to {shortcut:"⌘.", command:"Discard Recording & Return to Last Play Position"}
    set record5 to {shortcut:"X", command:"x"}
    set record6 to {shortcut:"X", command:"x"}
    set record7 to {shortcut:"X", command:"x"}
    set record8 to {shortcut:"X", command:"x"}
    set record9 to {shortcut:"X", command:"x"}
    set record10 to {shortcut:"X", command:"x"}
    set record11 to {shortcut:"X", command:"x"}
    set record12 to {shortcut:"X", command:"x"}
    set record13 to {shortcut:"X", command:"x"}
    --Make sure you add the record name before randomCheck:
    set commandList to {record1, record2, record3, record4, record5, record6, record7, record8, record9, record10, record11, record12, record13}
    --This part writes the above records to the file each time.
    set fileRef to open for access commandFile with write permission
    set eof of fileRef to 0
    write commandList to fileRef starting at eof as list
    close access fileRef
    --remove "--" here to stop writing (see above)*)
    --This reads from the file
    set fileRef to open for access commandFile with write permission
    set commandList to read fileRef as list
    close access fileRef
    --Here's where the random record is chosen
    set selected to 0
    if (count of gRandomCheck) is not (count of commandList) then
              repeat
                        set selected to (random number from 1 to (count of commandList))
                        if selected is not in gRandomCheck then
                                  set gRandomCheck to gRandomCheck & selected
                                  exit repeat
                        end if
              end repeat
    else
              display dialog "You have sent all shortcuts to all recipients once.  Recompile to reset"
              return
    end if
    --This is setting-up the format of the mail contents
    set messageText to ("Shortcut: " & shortcut of record selected of commandList & return & "Command: " & command of record selected of commandList)
    tell application "Mail"
      --When you're ready to use, you probably will not want Mail popping to the front, so add "--" before activate
      activate
      --You can change the subject of the message here.  You can also set visible:true to visible:false when you are happy all is working OK
              set theMessage to (make new outgoing message with properties {visible:true, subject:"Today's Logic Pro Shortcut", content:messageText})
              tell theMessage
      --You can add new recipients here.  Just add a new line.  Modify the names and addresses here to real ones
                        make new to recipient with properties {name:"Fred Smith", address:"[email protected]"}
                        make new to recipient with properties {name:"John Smith", address:"[email protected]"}
      --When you are ready to start sending, remove the dashes before "send" below
      --send
              end tell
    end tell

Maybe you are looking for

  • Iphone 2.0 update no longer working with Chrysler Uconnect Hands Free

    Hello. I recently downloaded the 2.0 update for my original iphone and it will no longer work with the my Uconnect hands free setup in my 2008 Dodge Ram. I am a Chrysler Dealer Parts Manager and have installed and shown many people how to set these u

  • Drobo not working after 10.5.8 update

    My drobo stopped working after 10.5.8 update. Now I lost all my data on the drobo. this doesn't make me happy.

  • Sign with a smartcard

    hello, Following the migration of the acrobat reader version with the 11.0.9 release, we have seen a regression on the ability to sign a pdf document with an integrated smart card certificate. The 11.0.8 version allowed to do this. Are you aware of t

  • Nokia 5130 7.97 OTA update

    My nokia 5130 current version is 6.93. Nokia suite shows that 7.97 is available, but I cant install it because usb port of mobile does not works. OTA update of mobile says no update available. Please make it available. Solved! Go to Solution.

  • How can we access the cookie set by cfheader in the same request?

    I've set a cookie in my application.cfm using cfheader and in the same request i need to access the cookie. How can i do this?