Set party number sequence with a specific value

Hi all,
I have a requirement to start the customer party number sequence from a specific number, so whenever a new customer is created the party number will be above a certain value. Any suggestions on how I can do that?
Thanks, Mike.

Thanks for the feedback. I got it with following SQL statements to start from 700000.
alter sequence ar.HZ_PARTY_NUMBER_S increment by 700000 ;
select HZ_PARTY_NUMBER_S.nextval from dual ;
alter sequence ar.HZ_PARTY_NUMBER_S increment by 1 ;

Similar Messages

  • How to export image sequence with a specific number

    Hello
    I'm looking how, like in after, I can export an image sequence with a starting specific number. I spend hours to rename images with Renamer, boring, stupid!
    Thank you for helping
    Alex

    Use Bridge.  You can do them all at once with Batch Rename.

  • Checking a number sequence with regular expressions

    Hello,
    Suppose I have a text in the pattern:
    A1=ha,A2=bla,A3=cha,...
    I don't know how many sections of "A#=$" (# denotes number, $ denotes text) will be in the text, but I want to verify that the numbers of the A's form the natural ascending number sequence (i.e 1,2,3,...). I prefer to use regular expressions to do this, but if there's another way, I will be glad to hear it too.
    Therefore my question is: How can I use regular expressions to check for a sequence of numbers? I know I can search for groups I've caught previously in the expression, but how can I compute the next number in the sequence from the group and search for the result?
    Thank you very much!

    What I'd do--and I'm not saying this is optimal, just what pops immediately to mind--is have a regex that matches "A(\\d+)=" (assuming the ha, bla, cha can never be "A1" etc.--if they can, you can still do it, but it's more complicated), then you iterate with the Matcher, and each time, you get the Integer.valueOf what you matched. You keep track of the last value, and compare the current to the last. If current is < last (or <= last, depending on your requirements), fail.
    Something like this. I don't recall Matcher's methods off the top of my head, so you'll have to fix the details.
    Matcher m = Pattern.matcher("A(\\d+)=");
    int maxSoFar = Integer.MIN_VALUE;
    while (m.matches(input)) {
        int current = Integer.parseInt(m.getMatchedField("$1"));
        if (current <= maxSoFar) {
            // fail
        else {
            maxSoFar = current;
    } maxSoFar =

  • Override web.xml With Server Specific Values

    Not sure if here or the OC4J/J2EE forum is most appropriate place for this question:
    We're currently working on migrating from the old jserv setup to 9.0.4 app server with OC4J. We have the infrastructure installed and are managing the application through Enterprise Manager. In my web.xml file I provide initialization parameters to one of my servlets using something similar to the following:
    <servlet>
    <servlet-name>util.GlobalPropertyManager</servlet-name>
    <servlet-class>util.GlobalPropertyManager</servlet-class>
    <init-param>
    <param-name>mhris.batch.outputdir</param-name>
    <param-value>d:/dev/java/mhris/defaultroot/batch/</param-value>
    </init-param>
    </servlet>
    Now, this directory path I've provided is only good on my local workstation. When I deploy to my UNIX production servers, I need to override this with a valid path depending on the server being deployed to (no, they don't all have the same directory setup, yeah it's a pain). These servers include our production boxes, development server, test, training, etc.
    Currently under JSERV, I provide server specific values in the Global Init Parameters section of my property file (don't remember why we didn't use the Servlet Init Parameters property instead). This works very well since this file is not touched when we land updates, so the values are set once for each server.
    Under OC4J, I understand that I can override the values in web.xml by using an orion-web.xml file BUT it appears that this file resides in the WAR I deploy, so each server will get the same orion-web.xml rather than maintaining its own set of values.
    Is there another .xml file I can use to provide these initalization parameters? global-web-applications.xml looked promising but I wasn't completely sure I could put values for my application in it or where exactly they should go (ie. inside the existing <web-app> section or if I should create a second one specifically for my app).
    Any ideas or will I have to reploy a different orion-web.xml file to each of my servers?
    Appreciate the assistance,
    Michael

    Michael,
    First, I would just modify the web.xml during each deployment.
    Second, I would recommend using the same relative path with the web-app context. Then, you can use the Servlet API to retrive the real path of the web-app context.
    I don't think it is necessary to use orion-web.xml or other properties files.

  • How to count ONLY fields with a specific value

    I modified the code below from the API reference to count combobox fields with a value of "MT" so I could total the number of a specific choice the form user input.
    var count = 0;
    for (var i=0; i<this.numFields; i++)
    var fname = this.getNthFieldName(i);
    if ( this.getField(fname).type == "combobox" && this.getField(fname).value == "MT" ) count++;
    this.getField("mTurb").value = count.value;
    Here's the problem: I tried to use a similar script, modified only slightly from this form, in another total field to tally a different choice made with comboboxes and the script continues to tally the first choice. An example of one of the modified versions of the script is below.
    var gcount = 0;
    for (var i=0; i<this.numFields; i++)
    var gname = this.getNthFieldName(i);
    if ( this.getField(gname).type == "combobox" && this.getField(gname).value == "MT" ) gcount++;
    this.getField("gPack").value = gcount.value;
    I suspect I'm just missing something painfully obvious to seasoned scripters, but I can't seem to figure it out and I need this script to be able to count the number of 9 different options in the comboboxes.

    OK, you can use a script like the following as the custom calculate script for the text fields that perform the counts:
    // Custom calculate script for text field
    (function () {
        // Declare and initialize variables
        var fn, s = "MT", count = 0;
        // Loop through the combo boxes
        for (var i = 1; i < 25; i++) {
            // Determine the current field name
            fn = "M" + util.printf("%02d", i));
            // See if the field value matches
            if (getField(fn).valueAsString === s) count++
        // Set this field value to the count
        event.value = count;
    Change the value of the "s" variable to match the item that you want to count. The first and last lines prevent the unnecessary creatio of global variables, which is good. It also makes it easy to transfer to a more general document-level routine, which would be event better, something like:
    // Custom calculate script for text field
    function getCBCount(s) {
        var fn, count = 0;
        // Loop through the combo boxes
        for (var i = 1; i < 25; i++) {
            // Determine the current field name
            fn = "M" + util.printf("%02d", i));
            // See if the field value matches
            if (getField(fn).valueAsString === s) count++
        // Set this field value to the count
        event.value = count;
    You would then call this function from the individual text boxes with the following custom calculate script:
    getCBCount("MT");
    and replace "MT" with the vlaue you want to count.

  • Invalid number error - with comma separated values

    FUNCTION fn_check_value(
    p_ids_in IN VARCHAR2
    RETURN NUMBER
    IS
    v_nCheckValue NUMBER;
    CURSOR vCur
    IS
    SELECT COUNT(*)
    FROM t1
    WHERE col_id IN (p_ids_in); -- col_id is number field
    BEGIN
    OPEN vCur;
    FETCH vCur INTO v_nCheckValue;
    CLOSE vCur;
    Return v_nCheckValue;
    END fn_check_value;
    I get following error when the input is 3,4. Works fine with single value
    Execution failed: ORA-01722: invalid number

    If you have more than one number in the list being passed in through p_ids_in then you could try the following
    CURSOR vCur
    IS
    SELECT COUNT(*)
    FROM t1
    where
    INSTR(chr(44) || p_ids_in || chr(44), chr(44) || col_id || chr(44) ) > 0;
    This will do pattern matching and will return a true if the pattern matches.
    For example, if p_ids_in = '3,4'
    then INSTR (',3,4' , ',3,') > 0 will return a true.
    This approach is useful if you have more than one value inside a string.
    Shakti
    (http://www.impact-sol.com)
    (Developers of Guggi Oracle - Tool for DBAs and Developers)

  • Distribute Layers with a Specific Value

    I found this old post where Paul Riggot created this wonderful and very useful script, something I was looking for, but just wondering if I can request for some few updates to it.
    1) Seems like this does not work properly with CC version, works with my cs4. Is it possible to support CC? The spacing distances are really off...
    2) The distances between layers are not exactly the same as specified in the dialog, is it possible to make it more accurate. So for example, if I specified 23px for the horizontal gaps, when i measure it gives me 25px.
    3) On first time, is it possible to make the horizontal and vertical input fields have zero? Right now it defaults to 10px for each.
    Here's the original binary code, which you have to copy and paste into a text file and change the file type to be "filename.jsx" to work.
    @JSXBIN@ES@[email protected]UjBj
    MhAiTjQjBjDjJjOjHhAiFjOjUjFjSjFjEACzChdhdBXzEjUjFjYjUCXzKjIjPjSjJjajPjOjUjBjMDX
    jMhAiTjQjBjDjJjOjHhAiFjOjUjFjSjFjEACBXCXzIjWjFjSjUjJjDjBjMHXEXFjGnneAnZhUnAFct0
    zGjQjBjOjFjMhREXzGjQjBjOjFjMhQFjzDjXjJjOGnneAnOyhTZhTnAFegbiOjPhAiWjFjSjUjJjDjB DzIjWjBjMjJiEjBjUjFIAhVJJBnASzDjEjMjHJAne2meDjEjJjBjMjPjHjbjUjFjYjUhahHiTjDjSjJ
    jYjUhahHhHhAhMjQjSjPjQjFjSjUjJjFjThajbjCjPjSjEjFjSiTjUjZjMjFhahHjFjUjDjIjFjEhHh
    jQjUhAiJjOjUjFjSjGjBjDjFhHhMjCjPjVjOjEjThaibhRhQhQhMhRhQhQhMhVhQhQhMhThQhQidhMj QjBjOjFjMhQhaiQjBjOjFjMjbjCjPjVjOjEjThaibhRhQhMhRhQhMhThZhQhMhRhZhQidhAhMhAjUjF MjTjVhRiQjBjOjFjMiDjPjPjSjEjJjOjBjUjFjThajUjSjVjFjdhMjUjJjUjMjFhaiTjUjBjUjJjDiU
    VjOjEjThaibhRhQhMhVhQhMhThXhQhMhRhUhQidhAhMhAjUjFjYjUhahHhHhAhMjQjSjPjQjFjSjUjJ
    jFjYjUjbjCjPjVjOjEjThaibhVhQhMhRhQhMhThVhQhMhUhQidhAhMhAjUjFjYjUhahHiQjBjVjMjTh AiTjQjBjDjFjShHhAhMjQjSjPjQjFjSjUjJjFjThajbjTjDjSjPjMjMjJjOjHhajVjOjEjFjGjJjOjF jEhMjNjVjMjUjJjMjJjOjFhajVjOjEjFjGjJjOjFjEjdjdhMjQjBjOjFjMhRhaiQjBjOjFjMjbjCjPj jFjThajbjCjPjSjEjFjSiTjUjZjMjFhahHjFjUjDjIjFjEhHhMjTjVhRiQjBjOjFjMiDjPjPjSjEjJj
    EjJjUiUjFjYjUjbjCjPjVjOjEjThaibhShYhQhMhShQhMhThVhRhMhUhQidhAhMhAjUjFjYjUhahHhR
    OjBjUjFjThajUjSjVjFjdhMjTjUjBjUjJjDjUjFjYjUhRhaiTjUjBjUjJjDiUjFjYjUjbjCjPjVjOjE jThaibhRhQhMhShQhMhShVhQhMhUhQidhAhMhAjUjFjYjUhahHiQjJjYjFjMhAiTjQjBjDjJjOjHhAi IjPjSjJjajPjOjUjBjMhHhAhMjQjSjPjQjFjSjUjJjFjThajbjTjDjSjPjMjMjJjOjHhajVjOjEjFjG jJjOjFjEhMjNjVjMjUjJjMjJjOjFhajVjOjEjFjGjJjOjFjEjdjdhMjIjPjSjJjajPjOjUjBjMhaiFj hQhHhAhMjQjSjPjQjFjSjUjJjFjThajbjNjVjMjUjJjMjJjOjFhajGjBjMjTjFhMjOjPjFjDjIjPhaj
    jUjFjYjUhahHhRhQhHhAhMjQjSjPjQjFjSjUjJjFjThajbjNjVjMjUjJjMjJjOjFhajGjBjMjTjFhMj
    GjBjMjTjFhMjSjFjBjEjPjOjMjZhajGjBjMjTjFjdjdhMjTjUjBjUjJjDjUjFjYjUhShaiTjUjBjUjJ jDiUjFjYjUjbjCjPjVjOjEjThaibhRhQhMhVhQhMhShWhQhMhXhQidhAhMhAjUjFjYjUhahHiQjJjYj FjMhAiTjQjBjDjJjOjHhAiWjFjSjUjJjDjBjMhHhAhMjQjSjPjQjFjSjUjJjFjThajbjTjDjSjPjMjM jJjOjHhajVjOjEjFjGjJjOjFjEhMjNjVjMjUjJjMjJjOjFhajVjOjEjFjGjJjOjFjEjdjdhMjWjFjSj UjJjDjBjMhaiFjEjJjUiUjFjYjUjbjCjPjVjOjEjThaibhShYhQhMhVhQhMhThVhQhMhXhQidhAhMhA OjPjFjDjIjPhajGjBjMjTjFhMjSjFjBjEjPjOjMjZhajGjBjMjTjFjdjdjdhMjCjVjUjUjPjOhQhaiC
    jSjTjJjPjOORCFdAEXzHjJjOjEjFjYiPjGPjORBFeBhOffffnndKnORbySn0ABJSnABXzEjGjPjOjUQ
    jVjUjUjPjOjbjCjPjVjOjEjThaibhRhQhMhRhVhQhMhRhYhQhMhRhXhRidhAhMhAjUjFjYjUhahHiPj LhHhAjdhMjCjVjUjUjPjOhRhaiCjVjUjUjPjOjbjCjPjVjOjEjThaibhShQhQhMhRhVhQhMhThXhQhM hRhXhRidhAhMhAjUjFjYjUhahHiDjBjOjDjFjMhHhAjdjdjdhbftJMnASGBEjzGiXjJjOjEjPjXKRCV JAFeTiDjPjNjQjMjJjNjFjOjUjThAjPjGhAiQjBjVjMftnftONbOn0ACJOnAEjzFjBjMjFjSjULRBFe hbiTjPjSjSjZhAjUjIjJjThAjTjDjSjJjQjUhAjJjThAjPjOjMjZhAjWjBjMjJjEhAjGjPjShAiQjIj PjUjPjTjIjPjQhAiDiThThAjPjShAjIjJjHjIjFjSffZPnAnACzBhcMEXzGjTjVjCjTjUjSNjzHjWjF XzIjHjSjBjQjIjJjDjTRXzFjUjJjUjMjFSXFVGBEXzHjOjFjXiGjPjOjUTjzIiTjDjSjJjQjUiViJUR
    hEnASgcCnctffAUzCjcjchACBVgdDnndACBVgdDnndCnnOhFbhGn0ADJhGnASgcCnctffJhHnASzGjS
    DFeHiHjFjPjSjHjJjBFeKiCiPiMiEiJiUiBiMiJiDFdgaffnfACzBheVEXNjORCFdAEXPjORBFeBhOf fffnndJnJUnABXzKjPjOiDjIjBjOjHjJjOjHWXDXEXFVGBNyBnAMUbyBn0ABOVbyWn0ABJWnABXCezE jUjIjJjTXEXzHjSjFjQjMjBjDjFYXCeXRCYJibieichNichOicjEidBjHFeAffnfAEXzFjNjBjUjDjI ZXCeXRBYJibieichNichOicjEidAffn0DzAgaCYnfJZnABXWXHXEXFVGBNyBnAMZbyBn0ABOgabygbn 0ABJgbnABXCeXEXYXCeXRCYJibieichNichOicjEidBjHFeAffnfAEXZXCeXRBYJibieichNichOicj EidAffn0DgaCgdnfJgenAEXzGjDjFjOjUjFjSgbVGBnfJgfnASzEjEjPjOjFgcCncfftlhAbhBn0ACJ hBnASzBjYgdDEXzEjTjIjPjXgeVGBnfnftOhCbhDn0ACJhDnABXzIjDjBjOjDjFjMjFjEgfVGBnctfJ jFjTjVjMjUhBEEjInfnftOhIbhJn0ACJhJnAEjLRBVhBEffZhKnAnACzChBhdhCVhBEnnctbyhNn0AB
    VzBjJhVEffAVhVEAXzGjMjFjOjHjUjIhWVhOCByBMJiBnAEjzNjFjYjFjDjVjUjFiBjDjUjJjPjOhXR
    JhNnAEjzKjTjQjBjDjFiNjBjTjLjThDRCEjzIjQjBjSjTjFiJjOjUhERBXCXDXEXFVGBffEjhERBXCX HXEXFVGBffffACBVgdDnndBnAhzBhBhFVgcCAFgd4D0AiAJ40BiAgc4C0AiAhB4E0AiAG4B0AiAAFAz EjNjBjJjOhGAhWMhXbyBn0AhKJhYnASzPjTjUjBjSjUiSjVjMjFjSiVjOjJjUjThHAXzKjSjVjMjFjS iVjOjJjUjThIXzLjQjSjFjGjFjSjFjOjDjFjThJjzDjBjQjQhKnftJhZnABXhIXhJjhKXzGiQiJiYiF iMiThLjzFiVjOjJjUjThMnfJhanAShBBEjzTjHjSjPjVjQiTjFjMjFjDjUjFjEiMjBjZjFjSjThNnfn ftOyhbZhbnAnAhhFVhBBnJhcnASzLjHjSjPjVjQiMjBjZjFjSjThOCXzGjMjBjZjFjSjThPXzLjBjDj UjJjWjFiMjBjZjFjShQjzOjBjDjUjJjWjFiEjPjDjVjNjFjOjUhRnftJhdnASzOjTjFjMjFjDjUjFjE iMjBjZjFjSjThSDEjzFiBjSjSjBjZhTntnftahebyhfn0ABJhfnAEXzEjQjVjTjIhUVhSDRBQgaVhOC DEjzOjDjIjBjSiJiEiUjPiUjZjQjFiJiEhYRBFeEjVjOjEjPffjzJjVjOjEjFjGjJjOjFjEhZXzCiOi
    TiTjhRRBXzEjOjBjNjFiUQgaVhSDVzBjBiVgbffnfJiKnASzCiMiCiWgcXzGjCjPjVjOjEjTiXXhQjh
    PhajzLiEjJjBjMjPjHiNjPjEjFjThbffOyiCZiCnAnACMXhWVhSDnndCnJiDnASzKjCjPjVjOjEjTiM jJjTjUhcFAnnftJyiDnASzIjUjFjNjQjCjOjEjThdGAnnftJiEnASzEjSjPjXhRheHAnnftJyiEnASz EjSjPjXhShfIAnnftJyiEnASzEjSjPjXhTiAJAnnftJyiEnASzEjSjPjXhUiBKAnnftJyiEnASzEjSj PjXhViCLAnnftJiFnASzEjSjPjXhWiDMAnnftJyiFnASzEjSjPjXhXiENAnnftJyiFnASzEjSjPjXhY iFOAnnftJyiFnASzEjSjPjXhZiGPAnnftJyiFnASzFjSjPjXhRhQiHQAnnftJiGnASzFjSjPjXhRhRi IRAnnftJyiGnASzFjSjPjXhRhSiJSAnnftJyiGnASzFjSjPjXhRhTiKTAnnftJyiGnASzFjSjPjXhRh UiLUAnnftJyiGnASzFjSjPjXhRhViMVAnnftJiHnASzFjSjPjXhRhWiNWAnnftJyiHnASzFjSjPjXhR hXiOXAnnftJyiHnASzFjSjPjXhRhYiPYAnnftJyiHnASzFjSjPjXhRhZiQZAnnftJyiHnASzFjSjPjX hShQiRgaAnnftaiIbiJn0AJJiJnABXhQjhREXzJjHjFjUiCjZiOjBjNjFiSXzJjBjSjUiMjBjZjFjSj RnftJiLnABXzBhQiYVhdGXiUXhQjhRnfJiMnABXzBhRiZVhdGXzFjWjBjMjVjFiaXiYViWgcnfJyiMn
    hAiJhAjIjBjWjFhAjOjPhAjJjEjFjBhAjXjIjBjUhAjUjPhAjEjPhBffJjCnABXhIXhJjhKVhHAnfZj
    ABXzBhSibVhdGXiaXiZViWgcnfJiNnABXzBhTicVhdGXiaXibViWgcnfJyiNnABXzBhUidVhdGXiaXi cViWgcnfJiOnAEXhUVhcFRBVhdGffJiPnAShdGAnnffAViVgbAXhWVhSDByBMJiRnAShcFEXzEjTjPj SjUieVhcFnfnffJyiSnAEXieVhcFRBNyBnAMiSbyBn0ABZiSnACzBhNifXibViVAXibVzBjCjABnnAC iV40BhAjA4B0AhAC0AgaCiSffJiTnASzLjBjSjSjBjZiOjVjNjCjFjSjBgdndBftJiUnAEXhUVheHRB XiYVhcFffaiVbyiWn0ABOiWbyiXn0ABJiXnAEXhUEjzEjFjWjBjMjCRBCzBhLjDnVjBgdeDjSjPjXnf fRBQgaVhcFVzBjGjEgeffAUzChGhGjFCVXibQgaVhcFVjEgeCifXibQgaVhcFCifVjEgenndBnndhSn nCMXibQgaVhcFVjEgeCjDXibQgaVhcFCifVjEgenndBnndhSnnnnbiZn0ACJiZnATjBgdBtJianAEXh UEjjCRBCjDnVjBgdeDjSjPjXnffRBQgaVhcFVjEgeffAVjEgeBXhWVhcFByBMaidbyien0ABJyienAE XieEjjCRBCjDnCjDVzBjEjGgfnndBeDjSjPjXnffRBNyBnAMiebyBn0ABZienACifXiZViVAXiZVjAB nnACiV40BhAjA4B0AhAC0AgaCieffAVjGgfAVjBgdByBMOjAbjBn0ADJjBnAEjLRBFehAiTjPjSjSjZ DnAnAChCCzBhKjHXhWVheHVjBgdnnXhWVhcFnnnajFbjGn0ACJjGnASzKjMjFjGjUiBjOjDjIjPjSjI
    hHnnEjhERBXibQgaEjjCRBCjDnCjDViVgbnndBeDjSjPjXnffVjJhAffnnnftJjVnAEXjNXhQjhRRCF
    hBEjhERBXicXiYEjjCRBCjDnCjDVzBjMjJhAnndBeDjSjPjXnffffnftajHbjIn0AFJjInABXhQjhRE XiSXiTjhRRBXiYQgaEjjCRBCjDnCjDVjJhAnndBeDjSjPjXnffViVgbffnfJjJnASzFiXjJjEjUjIjK hCCifEjhERBXicQgaEjjCRBCjDnCjDVjJhAnndBeDjSjPjXnffViVgbffEjhERBXiZQgaEjjCRBCjDn CjDVjJhAnndBeDjSjPjXnffViVgbffnnnftJjKnASzLjTjIjJjGjUiQjJjYjFjMjTjLhDCifCjDVjIh BVzIjTjQjBjDjJjOjHiBjMhGnnEjhERBXiZQgaEjjCRBCjDnCjDVjJhAnndBeDjSjPjXnffViVgbffn nnftJjLnAEXzJjUjSjBjOjTjMjBjUjFjNXhQjhRRCVjLhDFdAffJjMnASjIhBCjDnCjDVjKhCVjMhGn nnnntfAViVgbBXhWEjjCRBCjDnCjDVjJhAnndBeDjSjPjXnffByBMAVjJhAAVjBgdByBMajPbjQn0AC JjQnASzJjUjPjQiBjOjDjIjPjSjOhEEjhERBXidQgaVheHVjJhAffnftajRbjSn0AFJjSnABXhQjhRE XiSXiTjhRRBXiYQgaEjjCRBCjDnCjDViVgbnndBeDjSjPjXnffVjJhAffnfJjTnASzGiIjFjJjHjIjU jPhFCifEjhERBXidQgaEjjCRBCjDnCjDViVgbnndBeDjSjPjXnffVjJhAffEjhERBXibQgaEjjCRBCj DnCjDViVgbnndBeDjSjPjXnffVjJhAffnnnftJjUnASjLhDCifCjDVjOhEVzIjTjQjBjDjJjOjHiEjQ dAVjLhDffJjWnASjOhECjDnCjDVjPhFVjQhHnnnnntfAViVgbBVjBgdByBMAVjJhAAXhWVheHByBMJj
    IBJjbnAEjhGnf0DgaByB
    ZnABXhIXhJjhKVhHAnfAhIiC4L0AiAiD4M0AiAiE4N0AiAiF4O0AiAhV4E0AiAiG4P0AiAiH4Q0AiAi V4gb0AiAiI4R0AiAiJ4S0AiAiK4T0AiAiL4U0AiAiM4V0AiAiN4W0AiAiO4X0AiAiP4Y0AiAiQ4Z0Ai AiR4ga0AiAiW4gc0AiAjB4gd0AiAjJ4hA0AiAjI4hB0AiAjK4hC0AiAjL4hD0AiAjO4hE0AiAjP4hF0 AiAjE4ge0AiAhB4B0AiAjM40BhAjQ4B0AhAhH40BiAjG4gf0AiAhO4C0AiAhS4D0AiAhc4F0AiAhd4G 0AiAhe4H0AiAhf4I0AiAiA4J0AiAiB4K0AiAChGAhDAjaMjcbyBn0AIJjdnASzEjEjFjTjDjRAEjzQi BjDjUjJjPjOiEjFjTjDjSjJjQjUjPjSjSntnftJjenASzDjSjFjGjTBEjzPiBjDjUjJjPjOiSjFjGjF jSjFjOjDjFjUntnftJjfnAEXzIjQjVjUiDjMjBjTjTjVVjTBRBEjzQjTjUjSjJjOjHiJiEiUjPiUjZj QjFiJiEjWRBFeMjMjBjZjFjSiTjFjDjUjJjPjOffffJkAnAEXzMjQjVjUiSjFjGjFjSjFjOjDjFjXVj RARCEjhYRBFeEjOjVjMjMffVjTBffJkBnASzEjSjFjGhSjYCEjjUntnftJkCnAEXzNjQjVjUiFjOjVj NjFjSjBjUjFjEjZVjYCRDEjhYRBFeEiMjZjShAffEjhYRBFeEiPjSjEjOffEjhYRBFeEiUjSjHjUfff fJkDnAEXjXVjRARCEjhYRBFeEiGjSjPjNffVjYCffgkEbyBn0ACJkFnAEjhXRDEjhYRBFeEiNjLhAhA
    ffVjRAXhajhbffZkGnAFctABnzBjFjanbyBn0ABZkHnAFcfADjY4C0AiAjR40BiAjT4B0AiAADAhNAk
    Thx.

    Thanks, I've read in the forums that Paul has stopped being active anymore which is a big shame. I did find his site with the source file for this distribute script. I just hope maybe someone here can help to support CC version, work properly and make it more accurate. It's a great script but its very important to make exact spacing values. Other wise, this is no better than the built in distribute tools of Photoshop.
    here's the script code:
    function main(){
    if(!documents.length) return;
    var win = new Window('dialog','Space Layers');
    g = win.graphics;
    var myBrush = g.newBrush(g.BrushType.SOLID_COLOR, [0.99, 0.99, 0.99, 1]);
    g.backgroundColor = myBrush;
    win.p1= win.add("panel", undefined, undefined, {borderStyle:"black"});
    win.g1 = win.p1.add('group');
    win.g1.orientation = "row";
    win.title = win.g1.add('statictext',undefined,'Space Layers');
    win.title.alignment="fill";
    var g = win.title.graphics;
    g.font = ScriptUI.newFont("Georgia","BOLDITALIC",22);
    win.g5 =win.p1.add('group');
    win.g5.orientation = "row";
    win.g5.alignment='fill';
    win.g5.spacing=3;
    win.g5.st1 = win.g5.add('statictext',undefined,'Horizontal');
    win.g5.et1 = win.g5.add('edittext',undefined,'20');
    win.g5.et1.preferredSize=[50,20];
    win.g5.st1a = win.g5.add('statictext',undefined,'px');
    win.g5.st10 = win.g5.add('statictext',undefined,'');
    win.g5.st10.preferredSize=[55,20];
    win.g5.st2 = win.g5.add('statictext',undefined,'Vertical');
    win.g5.et2 = win.g5.add('edittext',undefined,'20');
    win.g5.et2.preferredSize=[50,20];
    win.g5.st2a = win.g5.add('statictext',undefined,'px');
    win.g10 =win.p1.add('group');
    win.g10.orientation = "row";
    win.g10.alignment='fill';
    win.g10.spacing=10;
    win.g10.st1 = win.g10.add('statictext',undefined,'Plus ~ Minus Pixels ,Top of Layers');
    win.g10.et1 = win.g10.add('edittext',undefined,'50');
    win.g10.et1.helpTip="This is the amount of top pixels can differ\nFor a low res document use a lower number\rFor a high res document use a higher number"
    win.g10.et1.preferredSize=[50,20];
    win.g10.et1.onChanging = function() {
      if (this.text.match(/[^\-\.\d]/)) {
        this.text = this.text.replace(/[^\-\.\d]/g, '');
    win.g15 =win.p1.add('group');
    win.g15.orientation = "row";
    win.g15.alignment='fill';
    win.g15.spacing=10;
    win.g15.bu1 = win.g15.add('button',undefined,'Space Layers');
    win.g15.bu1.preferredSize=[150,30];
    win.g15.bu2 = win.g15.add('button',undefined,'Cancel');
    win.g15.bu2.preferredSize=[150,30];
    if(version.substr(0,version.indexOf('.'))<10){
        alert("Sorry this script is only valid for Photoshop CS3 or higher");
        return;
    win.g5.et1.onChanging = function() {
      if (this.text.match(/[^\-\.\d]/)) {
        this.text = this.text.replace(/[^\-\.\d]/g, '');
    win.g5.et2.onChanging = function() {
      if (this.text.match(/[^\-\.\d]/)) {
        this.text = this.text.replace(/[^\-\.\d]/g, '');
    win.g15.bu1.onClick=function(){
    if(win.g5.et1.text== ''){
        alert("No horizontal pixels entered");
        return;
    if(win.g5.et2.text== ''){
        alert("No vertical pixels entered");
        return;
    var plusMinus =0;
    if(Number(win.g10.et1.text) < 1) {
        plusMinus=2;
        }else{
            plusMinus=Number(win.g10.et1.text);
    win.close(1);
    spaceMasks(Number(win.g5.et1.text),Number(win.g5.et2.text),plusMinus)
    win.center();
    win.show()
    function spaceMasks(spacingA,spacingD,plusMinus){
    var startRulerUnits = app.preferences.rulerUnits;
    app.preferences.rulerUnits = Units.PIXELS;
    var selectedLayers = getSelectedLayersIdx();
    if(selectedLayers.length <2){
        alert("Not enough layers selected!");
        return;
    var boundsList=[];
    var tempbnds=[];
    showFX(false);
    for(var a=0;a<selectedLayers.length;a++){
        var LB =getLayerBoundsByIndex(selectedLayers[a] );
        boundsList.push([[selectedLayers[a]],[LB[0]],[LB[1]],[LB[2]],[LB[3]]]);
        tempbnds=[];
    showFX(true);
    boundsList.sort(function(a,b){return a[2]-b[2];});
    var row1=[]; var row2=[]; var row3=[]; var row4=[]; var row5=[];
    var row6=[]; var row7=[]; var row8=[]; var row9=[]; var row10=[];
    var row11=[]; var row12=[]; var row13=[]; var row14=[]; var row15=[];
    var row16=[]; var row17=[]; var row18=[]; var row19=[]; var row20=[];
    var row21=[]; var row22=[]; var row23=[]; var row24=[]; var row25=[];
    var row26=[]; var row27=[]; var row28=[]; var row29=[]; var row30=[];
    var row31=[]; var row32=[]; var row33=[]; var row34=[]; var row35=[];
    var row36=[]; var row37=[]; var row38=[]; var row39=[]; var row40=[];
    var row41=[]; var row42=[]; var row43=[]; var row44=[]; var row45=[];
    var row46=[]; var row47=[]; var row48=[]; var row49=[]; var row50=[];
    var row51=[]; var row52=[]; var row53=[]; var row54=[]; var row55=[];
    var row56=[]; var row57=[]; var row58=[]; var row59=[]; var row60=[];
    var row61=[]; var row62=[]; var row63=[]; var row64=[]; var row65=[];
    var row66=[]; var row67=[]; var row68=[]; var row69=[]; var row70=[];
    var row71=[]; var row72=[]; var row73=[]; var row74=[]; var row75=[];
    var row76=[]; var row77=[]; var row78=[]; var row79=[]; var row80=[];
    var row81=[]; var row82=[]; var row83=[]; var row84=[]; var row85=[];
    var row86=[]; var row87=[]; var row88=[]; var row89=[]; var row90=[];
    var row91=[]; var row92=[]; var row93=[]; var row94=[]; var row95=[];
    var row96=[]; var row97=[]; var row98=[]; var row99=[]; var row100=[];
    var row101=[]; var row102=[]; var row103=[]; var row104=[]; var row105=[];
    var row106=[]; var row107=[]; var row108=[]; var row109=[]; var row110=[];
    var row111=[]; var row112=[]; var row113=[]; var row114=[]; var row115=[];
    var row116=[]; var row117=[]; var row118=[]; var row119=[]; var row120=[];
    var arrayNumber =1;
    var TOP =Number(boundsList[0][2]);
    for(var f =0;f<boundsList.length;f++){
        if(TOP > (boundsList[f][2]-plusMinus) && boundsList[f][2] < (boundsList[f][2]+plusMinus)){
            eval("row" +arrayNumber).push(boundsList[f]);
            }else{
                TOP =Number(boundsList[f][2]);
                arrayNumber++;
                eval("row" +arrayNumber).push(boundsList[f]);
    for(var d=0;d<arrayNumber;d++){
        eval("row" +(d+1)).sort(function(a,b){return a[1]-b[1];});
    if((row1.length*arrayNumber) != boundsList.length){
        alert("Unable to distribute this selection of layers!");
        return;
    for(var l=0;l<arrayNumber;l++){
    var leftAnchor =Number(eval("row"+(l+1))[0][3]);
    for(var a = 1;a<eval("row"+(l+1)).length;a++){
    makeActiveByIndex(Number(eval("row"+(l+1))[a][0]),false);
    var Width = Number(eval("row"+(l+1))[a][3]) - Number(eval("row"+(l+1))[a][1]);
    var shiftPixels = (leftAnchor+spacingA) - Number(eval("row"+(l+1))[a][1]);
    activeDocument.activeLayer.translate(shiftPixels,0);
    leftAnchor +=(Width+spacingA);
    for(var l=0;l<row1.length;l++){
    var topAnchor =Number(row1[l][4]);
    for(var a = 1;a<arrayNumber;a++){
    makeActiveByIndex(Number(eval("row"+(a+1))[l][0]),false);
    var Height = Number(eval("row"+(a+1))[l][4]) - Number(eval("row"+(a+1))[l][2]);
    var shiftPixels = (topAnchor+spacingD) - Number(eval("row"+(a+1))[l][2]);
    activeDocument.activeLayer.translate(0,shiftPixels);
    topAnchor +=(Height+spacingD);
    for(var a in selectedLayers){
        makeActiveByIndex(Number(selectedLayers[a]),false,true);
    app.preferences.rulerUnits = startRulerUnits;
    main();
    function selectLayerByIdx(idx, add) {
        var ref = new ActionReference();
        ref.putIndex(charIDToTypeID('Lyr '), idx);
        var desc = new ActionDescriptor();
        desc.putReference(charIDToTypeID('null'), ref);
        if(add) desc.putEnumerated(stringIDToTypeID('selectionModifier'), stringIDToTypeID('selectionModifierType'), stringIDToTypeID('addToSelection'));
        desc.putBoolean(charIDToTypeID('MkVs'), false);
        executeAction(charIDToTypeID('slct'), desc, DialogModes.NO);
    function makeActiveByIndex( idx, visible,add ){
        if(add == undefined) add=false;
        var desc = new ActionDescriptor();
          var ref = new ActionReference();
          ref.putIndex(charIDToTypeID( "Lyr " ), idx)
          desc.putReference( charIDToTypeID( "null" ), ref );
          if(add) desc.putEnumerated(stringIDToTypeID('selectionModifier'), stringIDToTypeID('selectionModifierType'), stringIDToTypeID('addToSelection'));
          desc.putBoolean( charIDToTypeID( "MkVs" ), visible );
       executeAction( charIDToTypeID( "slct" ), desc, DialogModes.NO );
    function getSelectedLayersIdx(){
          var selectedLayers = new Array;
          var ref = new ActionReference();
          ref.putEnumerated( charIDToTypeID("Dcmn"), charIDToTypeID("Ordn"), charIDToTypeID("Trgt") );
          var desc = executeActionGet(ref);
          if( desc.hasKey( stringIDToTypeID( 'targetLayers' ) ) ){
             desc = desc.getList( stringIDToTypeID( 'targetLayers' ));
              var c = desc.count
              var selectedLayers = new Array();
              for(var i=0;i<c;i++){
                try{
                   activeDocument.backgroundLayer;
                   selectedLayers.push(  desc.getReference( i ).getIndex() );
                }catch(e){
                   selectedLayers.push(  desc.getReference( i ).getIndex()+1 );
           }else{
             var ref = new ActionReference();
             ref.putProperty( charIDToTypeID("Prpr") , charIDToTypeID( "ItmI" ));
             ref.putEnumerated( charIDToTypeID("Lyr "), charIDToTypeID("Ordn"), charIDToTypeID("Trgt") );
             try{
                activeDocument.backgroundLayer;
                selectedLayers.push( executeActionGet(ref).getInteger(charIDToTypeID( "ItmI" ))-1);
             }catch(e){
                selectedLayers.push( executeActionGet(ref).getInteger(charIDToTypeID( "ItmI" )));
          return selectedLayers;
    function getLayerBoundsByIndex( idx ) {
        var ref = new ActionReference();
        ref.putProperty( charIDToTypeID("Prpr") , stringIDToTypeID( "bounds" ));
        ref.putIndex( charIDToTypeID( "Lyr " ), idx );
        var desc = executeActionGet(ref).getObjectValue(stringIDToTypeID( "bounds" ));
        var bounds = [];
        bounds.push(desc.getUnitDoubleValue(stringIDToTypeID('left')));
        bounds.push(desc.getUnitDoubleValue(stringIDToTypeID('top')));
        bounds.push(desc.getUnitDoubleValue(stringIDToTypeID('right')));
        bounds.push(desc.getUnitDoubleValue(stringIDToTypeID('bottom')));
        return bounds;
    function showFX(FX) {
        var desc48 = new ActionDescriptor();
            var ref34 = new ActionReference();
            ref34.putProperty( charIDToTypeID('Prpr'), charIDToTypeID('lfxv') );
            ref34.putEnumerated( charIDToTypeID('Dcmn'), charIDToTypeID('Ordn'), charIDToTypeID('Trgt') );
        desc48.putReference( charIDToTypeID('null'), ref34 );
            var desc49 = new ActionDescriptor();
            desc49.putBoolean( charIDToTypeID('lfxv'), FX );
        desc48.putObject( charIDToTypeID('T   '), charIDToTypeID('lfxv'), desc49 );
        try{
        executeAction( charIDToTypeID('setd'), desc48, DialogModes.NO );
        }catch(e){}

  • Same Sequence# with different applied value in v$archived_log

    Hi everyone,
    I have an issue with one of the dataguard servers here.
    Basically, looking at the v$managed_standby, it is still applying the latest archived log sequence.
    However when I checked for unapplied archived log from v$archived_log, I found at least 1 sequence# which was quite old (around a few days old) not applied.
    my query to check this is:
    SELECT sequence# from v$archived_log where applied = 'NO';result:
    SEQUENCE#
        40154
        40546with a different query I found an interesting result
    select sequence#, recid, stamp, status, applied from v$archived_log where sequence# in (40154, 40546);result:
    SEQUENCE#      RECID      STAMP S APP
        40154       8093  777156019 D NO
        40154       8095  777156053 D YES
        40546       8486  777673729 D NO
        40546       8487  777673734 D YESAt the time I ran this query, the v$managed_standby are as follow:
    select process, status, sequence# from v$managed_standby;result:
    PROCESS   STATUS        SEQUENCE#
    ARCH      CLOSING           40562
    ARCH      CLOSING           40557
    MRP0      APPLYING_LOG      40563
    RFS       IDLE                  0
    RFS       IDLE              40563A simple solution to get those un-applied archived log to be applied is to restart the standby database instance.
    Another finding from the production database:
    select recid, stamp, sequence#, creator, registrar, standby_dest from v$archived_log where sequence# in (40154, 40546);result:
    RECID      STAMP  SEQUENCE# CREATOR REGISTR STA
    45446  777156011      40154 ARCH    ARCH    NO
    45447  777156017      40154 LGWR    LGWR    YES
    45450  777156051      40154 ARCH    ARCH    YES
    46231  777673709      40546 ARCH    ARCH    NO
    46232  777673728      40546 LGWR    LGWR    YES
    46233  777673733      40546 ARCH    ARCH    YESThe question is of course, why is this happening?
    Can this be prevented?
    Thank you,
    Adhika

    CKPT wrote:
    I have an issue with one of the dataguard servers here.
    Basically, looking at the v$managed_standby, it is still applying the latest archived log sequence.
    However when I checked for unapplied archived log from v$archived_log, I found at least 1 sequence# which was quite old (around a few days old) not applied.
    my query to check this is:
    SELECT sequence# from v$archived_log where applied = 'NO';result:
    SEQUENCE#
    40154
    40546
    Even if old archives applied or not, it will keep transfer the archivelogs from primary. Please confirm that you been executed above query in standby.. is it?Yes I ran it from the standby database
    CKPT wrote:
    with a different query I found an interesting result
    select sequence#, recid, stamp, status, applied from v$archived_log where sequence# in (40154, 40546);result:
    SEQUENCE#      RECID      STAMP S APP
    40154       8093  777156019 D NO
    40154       8095  777156053 D YES
    40546       8486  777673729 D NO
    40546       8487  777673734 D YES
    How many remote/standby destinations you have in your DR setup?
    Might this query you have executed in primary, You should always use DEST_ID when executing from primary (or) do check in standby database, Because the applied column you have to check in standby , If you see above the same sequence showing applied in one destination & not applied on other instance, so please do select for dest_2 or in standby.I have only 1 standby destination.
    The query above was executed in the standby database server as well as to show that the same sequence# has different result in the applied column.
    CKPT wrote:
    The question is of course, why is this happening?
    Can this be prevented?What is your Online redo log file size (or) how much average archive log file size?
    This issue happens when Network glitch while transferring archives from primary to standby RFS , So when is big enough in such conditions it will be in status can be WAIT_FOR_LOG.
    BTW, which redo transport you are using? -- recommended to use LGWR
    Is there any network problem?
    check for exact problem either from primary alert log file or from below query,
    SQL> select severity,error_code,message,to_char(timestamp,'DD-MON-YYYY HH24:MI:SS') from v$dataguard_status;
    SQL> select sequence#, to_char(completion_time,'DD-MON-YYYY HH24:MI:SS') from v$archived_log where sequence# in (40154, 40546);
    HTH.The redolog file size is 100MB and so does the archive log file size.
    I'm using LGWR ASYNC
    these are the result of the query which I modified slightly:
    query:
    select severity,error_code,message,to_char(timestamp,'DD-MON-YYYY HH24:MI:SS') from v$dataguard_status where message like '%40154%' or message like '%40546%';result:
    SEVERITY ERROR_CODE MESSAGE                                                                                              TIMESTAMP
    Warning           0 LNS: Standby redo logfile selected for thread 1 sequence 40546 for destination LOG_ARCHIVE_DEST_2    11-MAR-2012 20:28:44
    Warning           0 ARC1: Standby redo logfile selected for thread 1 sequence 40546 for destination LOG_ARCHIVE_DEST_2   11-MAR-2012 20:28:49The message for the 40154 must have been purged.
    It appeared to me that sequence 40546 has been sent twice, by LNS and ARC1.
    query:
    select sequence#, registrar, creator, standby_dest, dest_id, to_char(completion_time,'DD-MON-YYYY HH24:MI:SS') completion_time from v$archived_log where sequence# in (40154, 40546);result:
    SEQUENCE# REGISTR CREATOR STA    DEST_ID COMPLETION_TIME
        40154 ARCH    ARCH    NO           1 05-MAR-2012 20:40:11
        40154 LGWR    LGWR    YES          2 05-MAR-2012 20:40:17
        40154 ARCH    ARCH    YES          2 05-MAR-2012 20:40:51
        40546 ARCH    ARCH    NO           1 11-MAR-2012 20:28:29
        40546 LGWR    LGWR    YES          2 11-MAR-2012 20:28:48
        40546 ARCH    ARCH    YES          2 11-MAR-2012 20:28:53This query proved that the primary database is actually trying to send twice with a different completion time.
    Why does the primary database has to send twice?
    Thanks for replying,
    Adhika

  • ORDER BY with a Specific value first

    I am creating an Employee Contact page in ASP that populates a table with a SQL query (command).  I want to sort the employees by last name (which is obviously an easy SORT BY property), but I need to show the Managers first.  How can I display
    employees that have 'Managers' in their 'Job Title' first, then the rest of the employees by last name.

    create table #t (id int, title char(1))
    insert into #t values (4,'A')
    insert into #t values (2,'M')
    insert into #t values (3,'D')
    insert into #t values (1,'M')
    insert into #t values (5,'M')
    insert into #t values (6,'e')
    insert into #t values (7,'X')
    select * from #t order by
    case when title ='m' then 1 end desc, title 
    Best Regards,Uri Dimant SQL Server MVP,
    http://sqlblog.com/blogs/uri_dimant/
    MS SQL optimization: MS SQL Development and Optimization
    MS SQL Consulting:
    Large scale of database and data cleansing
    Remote DBA Services:
    Improves MS SQL Database Performance
    SQL Server Integration Services:
    Business Intelligence

  • Compare column to another column with a specific value?

    What i need to do is compare a column that holds the SiteNames of holidays to another column with the DifficultyDescription of holidays.
    I want to show that sites that are not included in boldANY*bold* holiday with an “easy” or “moderate” rating.
    Some of my SiteNames have holidays with different difficulty ratings....
    e.g Yellowstone National Park(SiteName) - H2 - Moderate(DifficultyDescrip)
    Yellowstone National Park(SiteName - H3 - Strenuous(DifficultyDescrip)
    In this example i would want Yellowstone not to be in the results of my query as one of its results is 'moderate'.
    I want to show holidays that are not in boldANY*bold* holiday with 'easy' or 'moderate'
    Here is my attempt so far...
    select it220_holdet.holcode.holcode as holcode
             it220_holdet.diffdetails.diffdescrip as diffdescrip
             it220_sitedetails.sitename as sitename
    from it220_holidaydetails it220_holidaydetails,
    etc....
    where it220_sitedetails.sitename != it220_diffdetails.diffdescrip = 'Easy' <<<< where the sitename is not equal to a difficulty description of 'Easy'
    and     it220_sitedetails.sitename != it220_diffdetails.diffdescrip = 'Moderate' <<<< where the sitename is not equal to a difficulty description of 'Moderate'
    Is the logic of this correct? The error message i am getting is SQL command not properly ended.
    Is this more of a syntax problem than logic. Any help would be great.
    Thanks in advance!
    Edited by: Jay on 19-Nov-2010 02:47
    Edited by: Jay on 19-Nov-2010 02:47

    Hi,
    Ok,
    Problem is in this part of query
    where   "IT220_HOLIDAYDETAILS"."DIFFRATING"="IT220_DIFFDETAILS"."DIFFCODE"
    and      "IT220_HOLIDAYDETAILS"."HOLCODE"="IT220_LOOKUP_SITEHOLIDAY"."HOLCODE"
    and      "IT220_LOOKUP_SITEHOLIDAY"."SITECODE"="IT220_SITEDETAILS"."SITECODE"
    and "IT220_SITEDETAILS"."SITENAME" = "IT220_DIFFDETAILS"."DIFFDESCRIP"
    and "IT220_SITEDETAILS"."SITENAME" =  "IT220_DIFFDETAILS"."DIFFDESCRIP"
    Check are you joining correct columns.
    And remove possibility that tables values are in different cases
    SELECT "IT220_HOLIDAYDETAILS"."HOLCODE" AS "HOLCODE",
      "IT220_HOLIDAYDETAILS"."COUNTRYVIS"   AS "COUNTRYVIS",
      "IT220_DIFFDETAILS"."DIFFDESCRIP"     AS "DIFFDESCRIP",
      "IT220_SITEDETAILS"."SITENAME"        AS "SITENAME"
    FROM "IT220_SITEDETAILS" "IT220_SITEDETAILS",
      "IT220_LOOKUP_SITEHOLIDAY" "IT220_LOOKUP_SITEHOLIDAY",
      "IT220_DIFFDETAILS" "IT220_DIFFDETAILS",
      "IT220_HOLIDAYDETAILS" "IT220_HOLIDAYDETAILS"
    WHERE UPPER("IT220_HOLIDAYDETAILS"."DIFFRATING")  = UPPER("IT220_DIFFDETAILS"."DIFFCODE")
    AND UPPER("IT220_HOLIDAYDETAILS"."HOLCODE")       = UPPER("IT220_LOOKUP_SITEHOLIDAY"."HOLCODE")
    AND UPPER("IT220_LOOKUP_SITEHOLIDAY"."SITECODE")  = UPPER("IT220_SITEDETAILS"."SITECODE")
    AND UPPER("IT220_SITEDETAILS"."SITENAME")         = UPPER("IT220_DIFFDETAILS"."DIFFDESCRIP")
    AND UPPER("IT220_DIFFDETAILS"."DIFFDESCRIP") NOT IN('EASY','MODERATE')Regards,
    Jari

  • Setting the Previous row with New row value

    Dear All,
    I have a af:showDetailItem in which i have a af:table where i can add the Warranty details of Products in which i have:
    eg:
    Product | WEF | ValidUntil
    ================================================
    Prod1 | 01-05-11 | 01-06-11
    Prod2 | 02-06-11 |
    Here i want to enter the "Valid Until" only when i create an entry for new Warrenty details and enter the WEF.ie Valid Until will be WEF-1 of the next row.
    so any idea of how to solve this problem.?
    Regards,
    Soya.

    Hi,
    Aren't effective-dated entities used to create a new column based on some existing column in the same row.
    But my need is to set the value of the previous row when the new row is inserted.
    Product | WEF | ValidUntil
    ================================================
    Prod1 | 01-05-11 | *01-06-11*
    Prod2 | *02-06-11* |
    rgds
    Soya

  • Setting gaps to specific values

    I want to set gaps between object (rectangles) to specific values. I want to be able to enter a value rather than use gap tool, Ctrl+drag.
    I'd also like to be able to lock this gap if that is in any way possible.
    How do I do this?

    Ok, yes, thank you Rob, that worked wonderfully. Do you know how it decides it anchoring point when it distributes? Right now it just moves the lower object down and the more right object to the right, while the objects in the upper left always stay put.

  • How can I replace column value with a particular value in SQL

    Hi All,
    Can anyone please tell me how can I format my output with replacing a column value with a specific value which actually depends on the present value of the column
    I am executing the following SQL statement
    select state,count(id) from <table_name> where composite_dn= <composite_dn_name> group by state;
    My Present output is:
    State No.Of Instance
    1 3
    3 28
    I want to replace the value in the column state as follows
    State No.OfInstances
    Completed 3
    Faulted 28
    I want "1" to be reppaced by "Completed" and "3" to be replaced by "Faulted"
    Is is possible with SQL or PL/SQL , if it is then how can I achieve this required result. Please help!!
    Thanks in Advance!!
    Edited by: Roshni Shankar on Oct 27, 2012 12:38 AM

    Hi Roshni,
    I guess this CASE clause can be simulated by a DECODE and also it is very easy to use.
    Refer -- http://www.techonthenet.com/oracle/functions/decode.php
    select decode(t1.state,t2.state_id,t2.state_name), t1.count_id
    from <table_2> t2, (select state,count(id) count_id
    from <table_name>
    where composite_dn= <composite_dn_name>
    group by state) t1
    where t1.state = t2.state_id;HTH
    Ranit B.
    Edited by: ranit B on Oct 27, 2012 2:02 PM
    -- link added
    Edited by: ranit B on Oct 27, 2012 2:19 PM
    -- sample code added

  • .Specific.Value syntax no longer works in 8.81????

    ".Specific.Value" syntax no longer works in 8.81????
    We are upgrading an addon for version 8.81 that currently works well in 8.8 and have noticed the following;
            Dim oEdit As SAPbouiCOM.EditText
            Dim oItem As SAPbouiCOM.Item, sValue As String
         'This line worked in previous versions but fails in 8.8.1
         sValue = oForm.Items.Item("cEditText").Specific.Value
         'This works in 8.81 as well as previous versions.
                         oItem = oForm.Items.Item("cEditText")
                         oEdit = oItem.Specific
                         sValue = oEdit.Value
    Has anyone else encountered this? Have I got something set up wrong or is the ".Specific.Value" syntax no longer supported.
    Thanks for any comments on this.
    Mel

    Siva,
    Yes the code you provided also works. Thanks.
    I don't see why SAP made a change that causes working code to now fail. We are supporting a large app that has used the syntax in many different places and it will be a pain to go through and make the changes.
    Does anyone know if this was intentional? Will it possibly be restored in a future release?

  • Check number sequence - previous record variable

    Post Author: rmhogan
    CA Forum: Formula
    I am trying to highlight a record that is out of number sequence with the previous record.  I am guessing that I need to create 2 variables (one for the current number and one for the previous number).  I cannot seem to get this to work.
    Any help would be appriciated.
    Example ....
    Check Number
    016000123
    016000124
    016000126 <--- out of sequence (I want to highlight this detail line)
    016000127

    Post Author: rmhogan
    CA Forum: Formula
    Thanks so much.  However, I am getting a error saying  ... "The formula result must be a number".  The fields are strings in the database, however I have converted the to numbers in a formula  &#91;tonumber() function&#93;.
    Any ideas.

Maybe you are looking for

  • Booting older OSX versions via external HDD

    I am running OSX 10.8.4. Can I install and boot some of the previous versions of OSX via external HDD?

  • No sound for .AVI vidoes

    My digital camera records videos as .avi files, which never play with sound. Quicktime opens them and tells me that I need to install something, so I click "continue" and it takes me to the Quicktime page but I don't know what to install. When the vi

  • How to create command line java client

    I have a java servlet FileClient.java and am invoking it thru POST method from the html file. How can I create command line java client so that I can execute this class file from windows command prompt. e.g. java FileClient <argument> TIA

  • How do I access vertical mirror attribute for a firewire camera (imaqdx)

    We have a camera which looks at an actual physical mirror but the image from the camera feeding into the application needs to be properly oriented as if the camera were looking at the object directly. I was hoping to use the vertical mirror attribute

  • Question Re: Clear Recent History Options

    Navigating to: Clear Recent History > Details > Form & Search History Question: I deselected all other boxes under details except Form & Search History Time range was set to: Everything My original objective for doing so was achieved However, when I