Sorting in forms 6i

hello all,
i have a two tables called item and order, and i have a form on order.
the table item is having itemid & itemname
the table order is having orderid, itemid & qty
in the order form when the user executes the query the data has to be displayed in asc. order of Itemname, not on itemid
the order forms is having database fields orderid,itemid,qty and non database field itemname
how to do this....?
thanks in adv
Kris

You can use Query From clause to base your block on instead of a table based block, or even create a view and base your table on the view.
This way you can include your column in the block and do the sort, or do the sort in the query itself.
Regards,
Tony

Similar Messages

  • Ni9263 : 2 sorties de forme différentes

    Binjour, j'uitlise  le Ni cDAQ 9174  avec un module 9263. Je souhaiterais faire sortir 2 signaux différents. C'est à dire un sortie continue 5V et une sinusoidale 0-10V en pilotant la frequence..Tout ça en meme temps.
    Est ce possible? je n'y arrive pas. Mais je pense que ça doit etre tout bete.
    Merci beaucoup
    Mathieu

    Bonjour,
    Le module 9263 possède un convertisseur « digital vers analogique » pour chacune de ses 4 sorties analogiques, avec, en outre, un rafraîchissement des voies simultané. Il est donc possible de produire 2 signaux simultanés sur 2 sorties analogiques différentes.  En outre, la technologie du Compact DAQ 9174 est également adaptée à ce type de besoin. Vous pouvez donc piloter plusieurs sorties analogiques en même temps. Si vous souhaitez plus d’informations sur le Compact DAQ en question ainsi que sur la technologie de synchronisation et de cadencement qu’il contient, vous pouvez consulter les liens suivants :
    User Guide and Specifications NI cDAQ-9178/9174
    NI-STC3 Timing and Synchronization Technology
    Si vous souhaitez obtenir deux signaux en sortie d’une façon simple, vous pouvez générer vos signaux à l’intérieur d’une même tâche.
    Voici un petit exemple basé sur 2 waveformes (qui sont paramétrables, bien sûr) afin de vous aider dans la conception de votre VI.
    Le formalisme pour indiquer qu’on travaille sur deux voies physiques (par exemple sur la carte « Dev1 » en ao0 et ao1), mais dans la même tâche est le suivant :
    On déclare dans la commande Physical Channel Dev1/ao0 :n (pour utiliser toutes les vois de 0 à n) ou Dev1/ao0, Dev1/ao1 (pour utiliser les voies ao0 et ao1 seulement).
    Vous trouverez également plus d’exemples pour vous aider dans la recherche d’exemples LabVIEW, aux rubriques « E/S matérielles/DAQmx/Génération analogique/Tension ».
    J’espère que ces quelques éléments vous permettront de progresser dans la résolution de votre problème.
    Cordialement,
    Guillaume H.
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    >> NIDays 2011, le mardi 8 février au CNIT de Paris La Défense
    Pièces jointes :
    Support 2 sorties de forme différentes.png ‏39 KB

  • Sorting at Form Level

    Dear All,
    thanx for my earliar queries, tahnx a lot.
    i am working on Forms 6i / Oracle 8i.Actaully, i need to sort some records on form level, which i got populated in the form one-by-one by the primary key.
    pls, suggest me how to proceed.
    Inderjeet Singh

    It's not Forms that does the sorting, but the database. That's why you modify the ORDER BY clause of the block; Forms passes it to the database which modifies the query accordingly.
    So one option is to base your block on a view, which can include your derived field. This is useful for sorting on things like foreign key lookups.
    If the thing you want to sort is not in the database, then you can implement your sort using PL/SQL and manipulating the blocks using the block and record built-ins.
    Regards,
    Robin Zimmermann
    Forms Product Management

  • Can't add row to sorted tabular form

    I have a very basic tabular form created using the wizard. The only significant change I made was to the sort order. When I click on the add row button, the new blank row is created at the top of the table. When the number of rows in the table grew beyond the page size (10), the blank row seems to be created at the top, but the form goes to the last page of data so the blank row is never displayed.
    If I remove the ordering then the blank row is added at the bottom and the automatic navigation to the last page shows the blank row.
    How can I modify this behaviour - either add the blank row at the end, or display the first page when adding rows.
    Table Structure
    dt_id (populated by trigger)
    dt_date
    dt_meal_type varchar2
    dt_food varchar2
    Sort order is (dt_date desc, dt_meal_type)
    Apex 2.1.0.00.39 on XE

    Vikas,
    I've had a look at your javascript idea. It took a little bit of figuring out but I think I understand it. I had to modify it a bit so that it cleared the values (I'm not trying to clone anything - I just want a blank record).
    After spending a whole morning on this I still have 2 fairly serious outstanding issues:
    a) When I enter some values into my new blank record and hit Submit nothing seems to be saved and the record just seems to get lost (I suspect I have cleared out some important hidden fields or something)
    b) It doesn't work if the table is blank and I am trying to enter the very first record.
    I'm sure it's possible to fix these issues but I am no javascript expert and I have come to the conclusion that it just isn't worth investing any more time.
    The benefit of Application Express to me is that it is a simple declarative development environment. There are many things I need to be concerned about and javascript just isn't one of them.
    Whilst I wait for the tabular forms functionality to mature, I think I will go back to the good old report + Edit button style.
    Thanks,
    Alastair
    PS. Here is the script I added to the region header (I removed everything I didn't understand and added it back in as and when I needed it):
    <script>
    function addRow()
    var col = html_GetElement('NAME'); // NAME is just an arbitrary column in my table
    var tab = html_CascadeUpTill(col,'TABLE');
    var row1 = tab.rows[1];
    var clone = row1.cloneNode(true);
    var elements = clone.getElementsByTagName('input');
    for (var j=0;j<elements.length;j++) elements[j].value="";
    myNewRow = tab.insertRow(tab.rows.length);
    myNewClone = myNewRow.replaceNode(clone);
    </script>

  • Syntax Similar to Sorting in form not in Print Program

    I want to Print the sales document(s) in the descending order and to achieve this in the print program i don't want to use the SORT statement or logic to achieve the same.Is there any way i can do it in the Form itself.

    hi,
    in smart forms we can create program line , in that we can sort out our  table. but in script we cant do that sortening.
    thanq,
    rajesh.k

  • How can I sort multiple forms in Acrobat X (Mac)?

    Okay, I am working on a form that has over 300 (336 to be exact) forms in it, so dragging and dropping one at a time is really time consuming. I was wondering if there was a way to drag multiple forms (Shift Click or Cmd Click several, then arrange them in the forms field) in the Forms Field. I have tried everything I could think of and even did several searches. There doesn't seem to be a way to do this. Any help would be greatly appreciated.
    I'm working on Fillable Pathfinder Character Sheets, in case you were wondering.

    Or perhaps the text is jumbled. You can check whether the text is correct (and hence, searchable) by copy/pasting a bit of text out of the PDF and into Word (or whatever). If what comes out is nonsense, there is no hope of searching.

  • Sorting HR forms

    Hi,
    I have a requirement where the client wants the Payslip (generated using HR Forms) to be created not based on the personel number but based on the address field. So i need to create the payslip based on that address feild and not employee number.
    This way payslips for all the employees with same address will be created together.
    How do go about this??
    Regards,
    Naba
    Edited by: Naba Kumar Saha on Aug 6, 2009 11:21 AM

    HI,
    You can refer to the following link.
    http://help.sap.com/saphelp_47x200/helpdata/en/a5/0431b6ae76f84786c355cb353d5c92/frameset.htm.
    Hope this will clear your doubt.
    Regards,
    Dhanalakshmi L

  • V11.1.2.1 Sorting Data Form - Honor Hierarchy

    Could someone please tell me how does Honor Hierarchy work?
    I understand the user guide but it doesn't seem to be doing what it explains.
    I am expecting the data sorting to be within each hierarchy, but it works across data anyways.
    Regards
    Abhi

    Would really appreciate if someone can help with this.
    Help file says that -
    Honor Hierarchy: Sort within the hierarchy. If this option is not selected, sort works across data.
    But as if I understand it correctly, it doesn't work. Would appreciate if someone can share some detailed reference around it.
    Regards
    Abhi

  • Form won't submit, newbie, probably being an idiot

    Probbally being an absolute idiot as completely new to web design, but really stuck, all help hugely appreciated...
    form on http://www.refuseboredom.com/EasterHolidays.html, form is validating itself but doesnt post??
    its supposed to be going to a FormMail.pl which is in the base directory, hosting with godaddy who accept perl scripts and say the script can be put anywhere on the server,
    Don't know what i'm missing!!
    Form Code:
    <div id ="form" >
          <form action="FormMail.pl" method="post" name="form1" target="_top" id="bookingform">
         <input type=hidden name="redirect" value="http://www.refuseboredom.com/thankyou.html" />
         <h2>BOOK HERE</h2>
         <input type=hidden name="recipient" value="[email protected]">
           <div>
            <span id="sprytextfield1">
            <label for="FirstName">Parent/Guardian First Name:</label>
            <input type="text" name="FirstName" id="FirstName" tabindex="1" />
            <span class="textfieldRequiredMsg">A value is required.</span></span>
            </div>
    <span id="sprytextfield2">
    <label for="LastName">Parent/Guardian Surname:</label>
    <input type="text" name="LastName" id="LastName" tabindex="2" />
    <span class="textfieldRequiredMsg">A value is required.</span></span>
         <div>
          <span id="sprytextfield3">
          <label for="Address1">Address 1st line:</label>
          <input type="text" name="Address1" id="Address1" tabindex="3" />
          <span class="textfieldRequiredMsg">A value is required.</span></span>
          </div>
          <div>
          <span id="sprytextfield4">
          <label for="Address2">Address 2nd Line:</label>
          <input type="text" name="Address2" id="Address2" tabindex="4" />
          <span class="textfieldRequiredMsg">A value is required.</span></span>
          </div>
          <div>
          <span id="sprytextfield5">
          <label for="City">City: </label>
          <input type="text" name="City" id="City" tabindex="5" />
          <span class="textfieldRequiredMsg">A value is required.</span></span>
          </div>
          <div>
          <span id="sprytextfield6">
          <label for="Postcode">Postcode:</label>
          <input type="text" name="Postcode" id="Postcode" tabindex="6" />
          <span class="textfieldRequiredMsg">A value is required.</span></span>
          </div>
          <div>
          <span id="sprytextfield7">
          <label for="Phone">Prefered Contact number:</label>
          <input type="text" name="Phone" id="Phone" tabindex="7" />
          <span class="textfieldRequiredMsg">A value is required.</span></span>
          </div>
          <div>
          <span id="sprytextfield8">
          <label for="Email">Email Address</label>
          <input type="text" name="Email" id="Email" tabindex="8" />
          <span class="textfieldRequiredMsg"></span><span class="textfieldInvalidFormatMsg">Not a Valid E-mail Address</span></span>
          </div>
          <div id="select1">
          <label for="Quantity"> Number of children you would like to book for:</label>
          <select name="Quantity" id="Quantity" tabindex="9" class="Quantity" >
            <option>1</option>
            <option>2</option>
            <option>3</option>
          </select>
          </div>
          <div id="Child1Div">
          <span id="sprytextfield9">
          <label for="Child1">Child's Name:</label>
          <input type="text" name="Child1" id="Child1" tabindex="10" />
          <span class="textfieldRequiredMsg">A value is required.</span></span>
          <span id="spryselect2">
          <label for="Child1Age">Child's Age:</label>
          <select name="Child1Age" id="Child1Age" tabindex="11">
            <option value="10">10</option>
            <option value="11">11</option>
            <option value="12">12</option>
            <option value="13">13</option>
            <option value="14">14</option>
            <option value="15">15</option>
          </select>
          <span class="selectRequiredMsg">Please select an item.</span></span>
          </div>
      <div id="Child2Div">
        <span id="sprytextfield10">
          <label for="child2">Child's name:</label>
          <input type="text" name="child2" id="child2" />
          <span class="textfieldRequiredMsg">A value is required.</span></span>
          <span id="spryselect3">
          <label for="Child2Age">Child's Age:</label>
          <select name="Child2Age" id="Child2Age">
          <option>10</option>
            <option value="10">10</option>
            <option value="11">11</option>
            <option value="12">12</option>
            <option value="13">13</option>
            <option value="14">14</option>
            <option value="15">15</option>
          </select>
          <span class="selectRequiredMsg">Please select an item.</span></span>
    </div>
       <div id="Child3Div">
          <span id="sprytextfield11">
          <label for="Child3">Child's Name:</label>
          <input type="text" name="Child3" id="Child3" />
          <span class="textfieldRequiredMsg">A value is required.</span></span>
          <span id="spryselect4">
          <label for="Child3Age">Child's Age:</label>
          <select name="Child3Age" id="Child3Age">
            <option value="10">10</option>
            <option value="11">11</option>
            <option value="12">12</option>
            <option value="13">13</option>
            <option value="14">14</option>
            <option value="15">15</option>
          </select>
          <span class="selectRequiredMsg">Please select an item.</span></span>
        </div>
        <div>
          <span id="spryselect5">
          <label for="Type">Holiday Dates:</label>
          <select name="Type" id="Type" tabindex="12">
            <option value="Easter2week">2 Week Easter Holiday: April 2nd -  April 13th</option>
            <option value="April2nd1week">First Week: April 2nd - April 6th</option>
            <option value="April9th1week">Second Week: April 9th - April 13th</option>
            <option value="Easterspecial">Easter Special: 2 weeks</option>
          </select>
          <span class="selectRequiredMsg">Please select an item.</span></span>
              </div>
          <div id="Notes">
          <label for="Notes">Please use this area to let us know of any special requirements including medical and dietary needs that we may need to be aware of, if your child is applying with a friend please let us know here as well so we can try and make sure their on the same team: </label><br />
          <textarea name="Notes" id="Notes" cols="45" rows="5" tabindex="13"></textarea>
          </div>
          <input name="submit"  type="submit" id="submit" tabindex="14" value="Book Now" />
          </form>
          </div>
    FormMail.pl Code:
    #!/usr/bin/perl
    # FormMail                        Version 1.93                               #
    # Copyright 1995-2009 Matt Wright [email protected]                    #
    # Created 1995-06-09              Last Modified 2009-07-14                   #
    # Matt's Script Archive, Inc.:    http://www.scriptarchive.com/              #
    # COPYRIGHT NOTICE                                                           #
    # Copyright 1995-2009 Matthew M. Wright  All Rights Reserved.                #
    # FormMail may be used and modified free of charge by anyone so long as this #
    # copyright notice and the comments above remain intact.  By using this      #
    # code you agree to indemnify Matthew M. Wright from any liability that      #
    # might arise from its use.                                                  #
    # Selling the code for this program without prior written consent is         #
    # expressly forbidden.  In other words, please ask first before you try and  #
    # make money off of my program.                                              #
    # Obtain permission before redistributing this software over the Internet or #
    # in any other medium. In all cases copyright and header must remain intact. #
    # ACCESS CONTROL FIX: Peter D. Thompson Yezek                                #
    # XSS + REDIRECT FIX: Francesco Ongaro, Giovanni Pellerano & Antonio Parata  #
    #   v1.93             http://www.ush.it/team/ush/hack-formmail_192/adv.txt   #
    # Define Variables                                                           #
    #      Detailed Information Found In README File.                            #
    # $mailprog defines the location of your sendmail program on your unix       #
    # system. The flags -i and -t should be passed to sendmail in order to       #
    # have it ignore single dots on a line and to read message for recipients    #
    $mailprog = 'smtp.europe.secureserver.net -i -t';
    # @referers allows forms to be located only on servers which are defined     #
    # in this field.  This is a security fix to prevent others from using your   #
    # FormMail script on their web site.                                         #
    @referers = ('refuseboredom.com');
    # @recipients defines the e-mail addresses or domain names that e-mail can   #
    # be sent to.  This must be filled in correctly to prevent SPAM and allow    #
    # valid addresses to receive e-mail.  Read the documentation to find out how #
    # this variable works!!!  It is EXTREMELY IMPORTANT.                         #
    @recipients = ('^admin\@refuseboredom\.com');
    # ACCESS CONTROL FIX: Peter D. Thompson Yezek                                #
    # @valid_ENV allows the sysadmin to define what environment variables can    #
    # be reported via the env_report directive.  This was implemented to fix     #
    # the problem reported at http://www.securityfocus.com/bid/1187              #
    @valid_ENV = ('REMOTE_HOST','REMOTE_ADDR','REMOTE_USER','HTTP_USER_AGENT');
    # Done                                                                       #
    # Check Referring URL
    &check_url;
    # Retrieve Date
    &get_date;
    # Parse Form Contents
    &parse_form;
    # Check Required Fields
    &check_required;
    # Send E-Mail
    &send_mail;
    # Return HTML Page or Redirect User
    &return_html;
    # NOTE rev1.91: This function is no longer intended to stop abuse, that      #
    #    functionality is now embedded in the checks made on @recipients and the #
    #    recipient form field.                                                   #
    sub check_url {
        # Localize the check_referer flag which determines if user is valid.     #
        local($check_referer) = 0;
        # If a referring URL was specified, for each valid referer, make sure    #
        # that a valid referring URL was passed to FormMail.                     #
        if ($ENV{'HTTP_REFERER'}) {
            foreach $referer (@referers) {
                if ($ENV{'HTTP_REFERER'} =~ m|https?://([^/]*)$referer|i) {
                    $check_referer = 1;
                    last;
        else {
            $check_referer = 1;
        # If the HTTP_REFERER was invalid, send back an error.                   #
        if ($check_referer != 1) { &error('bad_referer') }
    sub get_date {
        # Define arrays for the day of the week and month of the year.           #
        @days   = ('Sunday','Monday','Tuesday','Wednesday',
                   'Thursday','Friday','Saturday');
        @months = ('January','February','March','April','May','June','July',
                   'August','September','October','November','December');
        # Get the current time and format the hour, minutes and seconds.  Add    #
        # 1900 to the year to get the full 4 digit year.                         #
        ($sec,$min,$hour,$mday,$mon,$year,$wday) = (localtime(time))[0,1,2,3,4,5,6];
        $time = sprintf("%02d:%02d:%02d",$hour,$min,$sec);
        $year += 1900;
        # Format the date.                                                       #
        $date = "$days[$wday], $months[$mon] $mday, $year at $time";
    sub parse_form {
        # Define the configuration associative array.                            #
        %Config = ('recipient','',          'subject','',
                   'email','',              'realname','',
                   'redirect','',           'bgcolor','',
                   'background','',         'link_color','',
                   'vlink_color','',        'text_color','',
                   'alink_color','',        'title','',
                   'sort','',               'print_config','',
                   'required','',           'env_report','',
                   'return_link_title','',  'return_link_url','',
                   'print_blank_fields','', 'missing_fields_redirect','');
        # Determine the form's REQUEST_METHOD (GET or POST) and split the form   #
        # fields up into their name-value pairs.  If the REQUEST_METHOD was      #
        # not GET or POST, send an error.                                        #
        if ($ENV{'REQUEST_METHOD'} eq 'GET') {
            # Split the name-value pairs
            @pairs = split(/&/, $ENV{'QUERY_STRING'});
        elsif ($ENV{'REQUEST_METHOD'} eq 'POST') {
            # Get the input
            read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
            # Split the name-value pairs
            @pairs = split(/&/, $buffer);
        else {
            &error('request_method');
        # For each name-value pair:                                              #
        foreach $pair (@pairs) {
            # Split the pair up into individual variables.                       #
            local($name, $value) = split(/=/, $pair);
            # Decode the form encoding on the name and value variables.          #
            # v1.92: remove null bytes                                           #
            $name =~ tr/+/ /;
            $name =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
            $name =~ tr/\0//d;
            $value =~ tr/+/ /;
            $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
            $value =~ tr/\0//d;
            # If the field name has been specified in the %Config array, it will #
            # return a 1 for defined($Config{$name}}) and we should associate    #
            # this value with the appropriate configuration variable.  If this   #
            # is not a configuration form field, put it into the associative     #
            # array %Form, appending the value with a ', ' if there is already a #
            # value present.  We also save the order of the form fields in the   #
            # @Field_Order array so we can use this order for the generic sort.  #
            if (defined($Config{$name})) {
                $Config{$name} = $value;
            else {
                if ($Form{$name} ne '') {
                    $Form{$name} = "$Form{$name}, $value";
                else {
                    push(@Field_Order,$name);
                    $Form{$name} = $value;
        # The next six lines remove any extra spaces or new lines from the       #
        # configuration variables, which may have been caused if your editor     #
        # wraps lines after a certain length or if you used spaces between field #
        # names or environment variables.                                        #
        $Config{'required'} =~ s/(\s+|\n)?,(\s+|\n)?/,/g;
        $Config{'required'} =~ s/(\s+)?\n+(\s+)?//g;
        $Config{'env_report'} =~ s/(\s+|\n)?,(\s+|\n)?/,/g;
        $Config{'env_report'} =~ s/(\s+)?\n+(\s+)?//g;
        $Config{'print_config'} =~ s/(\s+|\n)?,(\s+|\n)?/,/g;
        $Config{'print_config'} =~ s/(\s+)?\n+(\s+)?//g;
        # Split the configuration variables into individual field names.         #
        @Required = split(/,/,$Config{'required'});
        @Env_Report = split(/,/,$Config{'env_report'});
        @Print_Config = split(/,/,$Config{'print_config'});
        # ACCESS CONTROL FIX: Only allow ENV variables in @valid_ENV in          #
        # @Env_Report for security reasons.                                      #
        foreach $env_item (@Env_Report) {
            foreach $valid_item (@valid_ENV) {
                if ( $env_item eq $valid_item ) { push(@temp_array, $env_item) }
        @Env_Report = @temp_array;
    sub check_required {
        # Localize the variables used in this subroutine.                        #
        local($require, @error);
        # The following insures that there were no newlines in any fields which  #
        # will be used in the header.                                            #
        if ($Config{'subject'} =~ /(\n|\r)/m || $Config{'email'} =~ /(\n|\r)/m ||
            $Config{'realname'} =~ /(\n|\r)/m || $Config{'recipient'} =~ /(\n|\r)/m) {
            &error('invalid_headers');
        # Fix XSS + HTTP Header Injection for v1.93
        foreach $lfield ('redirect', 'return_link_url') {
            # Strip new lines
            $Config{$lfield} =~ s/(\n|\r)//mg;
            # Only allow certain handlers to avoid javascript:/data: tricks
            if ($Config{$lfield} !~ /^\s*\// &&
                $Config{$lfield} !~ /^\s*(http|https|ftp):\/\//) {
                $Config{$lfield} = '';
        if (!$Config{'recipient'}) {
            if (!defined(%Form)) { &error('bad_referer') }
            else                 { &error('no_recipient') }
        else {
            # This block of code requires that the recipient address end with    #
            # a valid domain or e-mail address as defined in @recipients.        #
            foreach $send_to (split(/,/,$Config{'recipient'})) {
                foreach $recipient (@recipients) {
                    if ($send_to =~ /$recipient$/i) {
                        push(@send_to,$send_to); last;
            if ($#send_to < 0) { &error('no_recipient') }
            $Config{'recipient'} = join(',',@send_to);
        # For each require field defined in the form:                            #
        foreach $require (@Required) {
            # If the required field is the email field, the syntax of the email  #
            # address if checked to make sure it passes a valid syntax.          #
            if ($require eq 'email' && !&check_email($Config{$require})) {
                push(@error,$require);
            # Otherwise, if the required field is a configuration field and it   #
            # has no value or has been filled in with a space, send an error.    #
            elsif (defined($Config{$require})) {
                if ($Config{$require} eq '') { push(@error,$require); }
            # If it is a regular form field which has not been filled in or      #
            # filled in with a space, flag it as an error field.                 #
            elsif (!defined($Form{$require}) || $Form{$require} eq '') {
                push(@error,$require);
        # If any error fields have been found, send error message to the user.   #
        if (@error) { &error('missing_fields', @error) }
    sub return_html {
        # Local variables used in this subroutine initialized.                   #
        local($key,$sort_order,$sorted_field);
        # Now that we have finished using form values for any e-mail related     #
        # reasons, we will convert all of the form fields and config values      #
        # to remove any cross-site scripting security holes.                     #
        local($field);
        foreach $field (keys %Config) {
            $safeConfig{$field} = &clean_html($Config{$field});
        foreach $field (keys %Form) {
            $Form{$field} = &clean_html($Form{$field});
        # If redirect option is used, print the redirectional location header.   #
        if ($Config{'redirect'}) {
            print "Location: $safeConfig{'redirect'}\n\n";
        # Otherwise, begin printing the response page.                           #
        else {
            # Print HTTP header and opening HTML tags.                           #
            print "Content-type: text/html\n\n";
            print "<html>\n <head>\n";
            # Print out title of page                                            #
            if ($Config{'title'}) { print "<title>$safeConfig{'title'}</title>\n" }
            else                  { print "<title>Thank You</title>\n"        }
            print " </head>\n <body";
            # Get Body Tag Attributes                                            #
            &body_attributes;
            # Close Body Tag                                                     #
            print ">\n  <center>\n";
            # Print custom or generic title.                                     #
            if ($Config{'title'}) { print "<h1>$safeConfig{'title'}</h1>\n" }
            else { print "<h1>Thank You For Filling Out This Form</h1>\n" }
            print "</center>\n";
            print "Below is what you submitted to $safeConfig{'recipient'} on ";
            print "$date<p><hr size=1 width=75\%><p>\n";
            # If a sort order is specified, sort the form fields based on that.  #
            if ($Config{'sort'} =~ /^order:.*,.*/) {
                # Set the temporary $sort_order variable to the sorting order,   #
                # remove extraneous line breaks and spaces, remove the order:    #
                # directive and split the sort fields into an array.             #
                $sort_order = $Config{'sort'};
                $sort_order =~ s/(\s+|\n)?,(\s+|\n)?/,/g;
                $sort_order =~ s/(\s+)?\n+(\s+)?//g;
                $sort_order =~ s/order://;
                @sorted_fields = split(/,/, $sort_order);
                # For each sorted field, if it has a value or the print blank    #
                # fields option is turned on print the form field and value.     #
                foreach $sorted_field (@sorted_fields) {
                    local $sfname = &clean_html($sorted_field);
                    if ($Config{'print_blank_fields'} || $Form{$sorted_field} ne '') {
                        print "<b>$sfname:</b> $Form{$sorted_field}<p>\n";
            # Otherwise, use the order the fields were sent, or alphabetic.      #
            else {
                # Sort alphabetically if requested.
                if ($Config{'sort'} eq 'alphabetic') {
                    @Field_Order = sort @Field_Order;
                # For each form field, if it has a value or the print blank      #
                # fields option is turned on print the form field and value.     #
                foreach $field (@Field_Order) {
                    local $fname = &clean_html($field);
                    if ($Config{'print_blank_fields'} || $Form{$field} ne '') {
                        print "<b>$fname:</b> $Form{$field}<p>\n";
            print "<p><hr size=1 width=75%><p>\n";
            # Check for a Return Link and print one if found.                    #
            if ($Config{'return_link_url'} && $Config{'return_link_title'}) {
                print "<ul>\n";
                print "<li><a href=\"$safeConfig{'return_link_url'}\">$safeConfig{'return_link_title'}</a>\n";
                print "</ul>\n";
            # Print the page footer.                                             #
            print <<"(END HTML FOOTER)";
            <hr size=1 width=75%><p>
            <center><font size=-1><a href="http://www.scriptarchive.com/formmail.html">FormMail</a> V1.93 &copy; 1995 - 2009  Matt Wright<br>
    A Free Product of <a href="http://www.scriptarchive.com/">Matt's Script Archive, Inc.</a></font></center>
            </body>
           </html>
    (END HTML FOOTER)
    sub send_mail {
        # Localize variables used in this subroutine.                            #
        local($print_config,$key,$sort_order,$sorted_field,$env_report);
        # Open The Mail Program
        open(MAIL,"|$mailprog");
        print MAIL "To: $Config{'recipient'}\n";
        print MAIL "From: $Config{'email'} ($Config{'realname'})\n";
        # Check for Message Subject
        if ($Config{'subject'}) { print MAIL "Subject: $Config{'subject'}\n\n" }
        else                    { print MAIL "Subject: WWW Form Submission\n\n" }
        print MAIL "Below is the result of your feedback form.  It was submitted by\n";
        print MAIL "$Config{'realname'} ($Config{'email'}) on $date\n";
        print MAIL "-" x 75 . "\n\n";
        if (@Print_Config) {
            foreach $print_config (@Print_Config) {
                if ($Config{$print_config}) {
                    print MAIL "$print_config: $Config{$print_config}\n\n";
        # If a sort order is specified, sort the form fields based on that.      #
        if ($Config{'sort'} =~ /^order:.*,.*/) {
            # Remove extraneous line breaks and spaces, remove the order:        #
            # directive and split the sort fields into an array.                 #
            local $sort_order = $Config{'sort'};
            $sort_order =~ s/(\s+|\n)?,(\s+|\n)?/,/g;
            $sort_order =~ s/(\s+)?\n+(\s+)?//g;
            $sort_order =~ s/order://;
            @sorted_fields = split(/,/, $sort_order);
            # For each sorted field, if it has a value or the print blank        #
            # fields option is turned on print the form field and value.         #
            foreach $sorted_field (@sorted_fields) {
                if ($Config{'print_blank_fields'} || $Form{$sorted_field} ne '') {
                    print MAIL "$sorted_field: $Form{$sorted_field}\n\n";
        # Otherwise, print fields in order they were sent or alphabetically.     #
        else {
            # Sort alphabetically if specified:                                  #
            if ($Config{'sort'} eq 'alphabetic') {
                @Field_Order = sort @Field_Order;
            # For each form field, if it has a value or the print blank          #
            # fields option is turned on print the form field and value.         #
            foreach $field (@Field_Order) {
                if ($Config{'print_blank_fields'} || $Form{$field} ne '') {
                    print MAIL "$field: $Form{$field}\n\n";
        print MAIL "-" x 75 . "\n\n";
        # Send any specified Environment Variables to recipient.                 #
        foreach $env_report (@Env_Report) {
            if ($ENV{$env_report}) {
                print MAIL "$env_report: $ENV{$env_report}\n";
        close (MAIL);
    sub check_email {
        # Initialize local email variable with input to subroutine.              #
        $email = $_[0];
        # If the e-mail address contains:                                        #
        if ($email =~ /(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/ ||
            # the e-mail address contains an invalid syntax.  Or, if the         #
            # syntax does not match the following regular expression pattern     #
            # it fails basic syntax verification.                                #
            $email !~ /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z0-9]+)(\]?)$/) {
            # Basic syntax requires:  one or more characters before the @ sign,  #
            # followed by an optional '[', then any number of letters, numbers,  #
            # dashes or periods (valid domain/IP characters) ending in a period  #
            # and then 2 or 3 letters (for domain suffixes) or 1 to 3 numbers    #
            # (for IP addresses).  An ending bracket is also allowed as it is    #
            # valid syntax to have an email address like: user@[255.255.255.0]   #
            # Return a false value, since the e-mail address did not pass valid  #
            # syntax.                                                            #
            return 0;
        else {
            # Return a true value, e-mail verification passed.                   #
            return 1;
    # This was added into v1.91 to further secure the recipients array.  Now, by #
    # default it will assume that valid recipients include only users with       #
    # usernames A-Z, a-z, 0-9, _ and - that match your domain exactly.  If this  #
    # is not what you want, you should read more detailed instructions regarding #
    # the configuration of the @recipients variable in the documentation.        #
    sub fill_recipients {
        local(@domains) = @_;
        local($domain,@return_recips);
        foreach $domain (@domains) {
            if ($domain =~ /^\d+\.\d+\.\d+\.\d+$/) {
                $domain =~ s/\./\\\./g;
                push(@return_recips,'^[\w\-\.]+\@\[' . $domain . '\]');
            else {
                $domain =~ s/\./\\\./g;
                $domain =~ s/\-/\\\-/g;
                push(@return_recips,'^[\w\-\.]+\@' . $domain);
        return @return_recips;
    # This function will convert <, >, & and " to their HTML equivalents.        #
    sub clean_html {
        local $value = $_[0];
        $value =~ s/\&/\&amp;/g;
        $value =~ s/</\&lt;/g;
        $value =~ s/>/\&gt;/g;
        $value =~ s/"/\&quot;/g;
        return $value;
    sub body_attributes {
        # Check for Background Color
        if ($Config{'bgcolor'}) { print " bgcolor=\"$safeConfig{'bgcolor'}\"" }
        # Check for Background Image
        if ($Config{'background'}) { print " background=\"$safeConfig{'background'}\"" }
        # Check for Link Color
        if ($Config{'link_color'}) { print " link=\"$safeConfig{'link_color'}\"" }
        # Check for Visited Link Color
        if ($Config{'vlink_color'}) { print " vlink=\"$safeConfig{'vlink_color'}\"" }
        # Check for Active Link Color
        if ($Config{'alink_color'}) { print " alink=\"$safeConfig{'alink_color'}\"" }
        # Check for Body Text Color
        if ($Config{'text_color'}) { print " text=\"$safeConfig{'text_color'}\"" }
    sub error {
        # Localize variables and assign subroutine input.                        #
        local($error,@error_fields) = @_;
        local($host,$missing_field,$missing_field_list);
        if ($error eq 'bad_referer') {
            if ($ENV{'HTTP_REFERER'} =~ m|^https?://([\w\.]+)|i) {
                $host = $1;
                my $referer = &clean_html($ENV{'HTTP_REFERER'});
                print <<"(END ERROR HTML)";
    Content-type: text/html
    <html>
    <head>
      <title>Bad Referrer - Access Denied</title>
    </head>
    <body bgcolor=#FFFFFF text=#000000>
      <center>
       <table border=0 width=600 bgcolor=#9C9C9C>
        <tr><th><font size=+2>Bad Referrer - Access Denied</font></th></tr>
       </table>
       <table border=0 width=600 bgcolor=#CFCFCF>
        <tr><td>The form attempting to use
         <a href="http://www.scriptarchive.com/formmail.html">FormMail</a>
         resides at <tt>$referer</tt>, which is not allowed to access
         this cgi script.<p>
         If you are attempting to configure FormMail to run with this form, you need
         to add the following to \@referers, explained in detail in the
         <a href="http://www.scriptarchive.com/readme/formmail.html">README</a> file.<p>
         Add <tt>'$host'</tt> to your <tt><b>\@referers</b></tt> array.<hr size=1>
         <center><font size=-1>
          <a href="http://www.scriptarchive.com/formmail.html">FormMail</a> V1.93 &copy; 1995 - 2009  Matt Wright<br>
          A Free Product of <a href="http://www.scriptarchive.com/">Matt's Script Archive, Inc.</a>
         </font></center>
        </td></tr>
       </table>
      </center>
    </body>
    </html>
    (END ERROR HTML)
            else {
                print <<"(END ERROR HTML)";
    Content-type: text/html
    <html>
    <head>
      <title>FormMail v1.93</title>
    </head>
    <body bgcolor=#FFFFFF text=#000000>
      <center>
       <table border=0 width=600 bgcolor=#9C9C9C>
        <tr><th><font size=+2>FormMail</font></th></tr>
       </table>
       <table border=0 width=600 bgcolor=#CFCFCF>
        <tr><th><tt><font size=+1>Copyright 1995 - 2009 Matt Wright<br>
            Version 1.93 - Released June 25, 2009<br>
            A Free Product of <a href="http://www.scriptarchive.com/">Matt's Script Archive,
            Inc.</a></font></tt></th></tr>
       </table>
      </center>
    </body>
    </html>
    (END ERROR HTML)
        elsif ($error eq 'request_method') {
                print <<"(END ERROR HTML)";
    Content-type: text/html
    <html>
    <head>
      <title>Error: Request Method</title>
    </head>
    <body bgcolor=#FFFFFF text=#000000>
      <center>
       <table border=0 width=600 bgcolor=#9C9C9C>
        <tr><th><font size=+2>Error: Request Method</font></th></tr>
       </table>
       <table border=0 width=600 bgcolor=#CFCFCF>
        <tr><td>The Request Method of the Form you submitted did not match
         either <tt>GET</tt> or <tt>POST</tt>.  Please check the form and make sure the
         <tt>method=</tt> statement is in upper case and matches <tt>GET</tt> or <tt>POST</tt>.<p>
         <center><font size=-1>
          <a href="http://www.scriptarchive.com/formmail.html">FormMail</a> V1.93 &copy; 1995 - 2009  Matt Wright<br>
          A Free Product of <a href="http://www.scriptarchive.com/">Matt's Script Archive, Inc.</a>
         </font></center>
        </td></tr>
       </table>
      </center>
    </body>
    </html>
    (END ERROR HTML)
        elsif ($error eq 'no_recipient') {
                print <<"(END ERROR HTML)";
    Content-type: text/html
    <html>
    <head>
      <title>Error: Bad/No Recipient</title>
    </head>
    <body bgcolor=#FFFFFF text=#000000>
      <center>
       <table border=0 width=600 bgcolor=#9C9C9C>
        <tr><th><font size=+2>Error: Bad/No Recipient</font></th></tr>
       </table>
       <table border=0 width=600 bgcolor=#CFCFCF>
        <tr><td>There was no recipient or an invalid recipient specified in the data sent to FormMail.  Please
         make sure you have filled in the <tt>recipient</tt> form field with an e-mail
         address that has been configured in <tt>\@recipients</tt>.  More information on filling in <tt>recipient</tt> form fields and variables can be
         found in the <a href="http://www.scriptarchive.com/readme/formmail.html">README</a> file.<hr size=1>
         <center><font size=-1>
          <a href="http://www.scriptarchive.com/formmail.html">FormMail</a> V1.93 &copy; 1995 - 2009  Matt Wright<br>
          A Free Product of <a href="http://www.scriptarchive.com/">Matt's Script Archive, Inc.</a>
         </font></center>
        </td></tr>
       </table>
      </center>
    </body>
    </html>
    (END ERROR HTML)
        elsif ($error eq 'invalid_headers') {
                print <<"(END ERROR HTML)";
    Content-type: text/html
    <html>
    <head>
      <title>Error: Bad Header Fields</title>
    </head>
    <body bgcolor=#FFFFFF text=#000000>
      <center>
       <table border=0 width=600 bgcolor=#9C9C9C>
        <tr><th><font size=+2>Error: Bad Header Fields</font></th></tr>
       </table>
       <table border=0 width=600 bgcolor=#CFCFCF>
        <tr><td>The header fields, which include <tt>recipient</tt>, <tt>email</tt>, <tt>realname</tt> and <tt>subject</tt> were
         filled in with invalid values. You may not include any newline characters in these parameters.
         More information on filling in these form fields and variables can be
         found in the <a href="http://www.scriptarchive.com/readme/formmail.html">README</a> file.<hr size=1>
         <center><font size=-1>
          <a href="http://www.scriptarchive.com/formmail.html">FormMail</a> V1.93 &copy; 1995 - 2009  Matt Wright<br>
          A Free Product of <a href="http://www.scriptarchive.com/">Matt's Script Archive, Inc.</a>
         </font></center>
        </td></tr>
       </table>
      </center>
    </body>
    </html>
    (END ERROR HTML)
        elsif ($error eq 'missing_fields') {
            if ($Config{'missing_fields_redirect'}) {
                print "Location: " . &clean_html($Config{'missing_fields_redirect'}) . "\n\n";
            else {
                foreach $missing_field (@error_fields) {
                    $missing_field_list .= "<li>" . &clean_html($missing_field) . "\n";
                print <<"(END ERROR HTML)";
    Content-type: text/html
    <html>
    <head>
      <title>Error: Blank Fields</title>
    </head>
      <center>
       <table border=0 width=600 bgcolor=#9C9C9C>
        <tr><th><font size=+2>Error: Blank Fields</font></th></tr>
       </table>
       <table border=0 width=600 bgcolor=#CFCFCF>
        <tr><td>The following fields were left blank in your submission form:<p>
         <ul>
    $missing_field_list
         </ul><br>
         These fields must be filled in before you can successfully submit the form.<p>
         Please use your browser's back button to return to the form and try again.<hr size=1>
         <center><font size=-1>
          <a href="http://www.scriptarchive.com/formmail.html">FormMail</a> V1.93 &copy; 1995 - 2009  Matt Wright<br>
          A Free Product of <a href="http://www.scriptarchive.com/">Matt's Script Archive, Inc.</a>
         </font></center>
        </td></tr>
       </table>
      </center>
    </body>
    </html>
    (END ERROR HTML)
        exit;

    I haven't used  Matt Wright's scripts in this century, but I'm pretty sure that Perl still needs to go into your CGI bin and the permissions level (chmod) must be set to 755 or possibly 777 for the script to read, write & execute.
    Nancy O.
    Alt-Web Design & Publishing
    Web | Graphics | Print | Media  Specialists 
    http://alt-web.com/
    http://twitter.com/altweb

  • How to sort the alv

    what is the process to sort in alvs report  the output is in  decending and accending order without using standard buttenens in the output list .
             i am asking how to sort bydefault when we are executing the report ,
             output list  will automatically in sort order.
    could u plz explalin clearly with comments
    and code

    Hi
    Add this to your alv reporting
    Add Default Sorting to ALVgrid report  
    In order to display an ALV report with specific columns already sorted by default you will need to build a
    sort catalogue. This is fairly straight forward and is done in the following way:
            Step 1. Add data declaration for sort catalogue
            Step 2. Add code to build sort catalogue table 
            Step 3. Update 'REUSE_ALV_GRID_DISPLAY' FM call to include parameter 'it_sort'
    ALV data declarations
      data: it_sortcat   type slis_sortinfo_alv occurs 1,
            wa_sort like line of it_sortcat.
    perform build_sortcat.
    *&      Form  build_sortcat
          Build Sort catalog
    FORM build_sortcat .
      wa_sort-spos      = 1.
      wa_sort-fieldname = 'EBELN'.
    gd_sortcat-tabname
      APPEND wa_sort TO it_sortcat.
      wa_sort-spos      = 2.
      wa_sort-fieldname = 'EBELP'.
    gd_sortcat-tabname
      APPEND wa_sort TO it_sortcat.
    ENDFORM.                    " build_sortcat
    call function 'REUSE_ALV_GRID_DISPLAY'
           exporting
                i_callback_program      = gd_repid
                i_callback_top_of_page   = 'TOP-OF-PAGE' 
                is_layout               = gd_layout
                it_fieldcat             = fieldcatalog[]
                it_sort                 = it_sortcat
                i_save                  = 'X'
           tables
                t_outtab                = it_ekko
           exceptions
                program_error           = 1
                others                  = 2.
    Thanks
    Shiva

  • How to CORRECTLY do a form Login and get a cookie in return???

    Hi,
    I am a relatively new developer and this is actualy my first post ever. I ussually find everything i need in other posts but for some reason this time i have been miserably unsuccessful and am close to pulling my hair out.
    I am trying to login to a website using some sort of form login so that it returns a cookie that i can than use to download files or access pages.
    Now here is the actual html of the website:
    <form name="login" action="https://www.website.com.au/login/login_action.cfm" method="post">
    <div class="username">
    <input name="contact_username" type="text" size="16" maxlength="60" />
    </div>
    <div class="password">
    <input name="contact_password" type="password" size="16" maxlength="60" />
    </div>
    <div class="login">
    <img id="li" src="/corporate/images/login_up.gif" alt="Login Button" onMouseOut="MM_swapImgRestore();"
    onMouseOver="MM_swapImage('li','','/corporate/images/login_over.gif',1);" onclick="check_submit();" />
    </div>
    </form>
    Could some one PLEEEEEASE let me know the code that i could use to successfuly login and return a cookie.
    I have already created the code the uses the cookie to access pages. (I got the cookie from login normally using web browser).
    So now i just need to know how i can login and get a cookie returned to the above form????
    PLEASE PLEASE HELP.
    Thanks in advanced :)

    1) I'm wondering how this all applies to Java. What Java code have you tried and has failed here? Are you talking about Java or Javascript? JSP?
    2) Please don't cross-post this in multiple forums. That only pisses us off and will guarantee you less help than if you didn't do this. Imagine a volunteer giving of his free time to help someone, spending say an hour or more trying to come up with a solution, then finding after posting that the solution was already given in a cross-post, and you'll know why this is very much frowned upon in these forums. Choose one thread to be the active thread, and then put a note in the other thread directing posters to the active thread (if you really want help that is).

  • Creating tabular form using SQL query

    Hi,
    I need to create a tabular form using an SQL query so that multiple rows of a table are displayed on screen and are editable to the user.
    I have created this sort of form before using the Tabular Form wizard however for this form I need to enter SQL to produce it.
    The steps I take are:
    1. Create Page
    2. Page with Component
    3. Form
    4. Fow on a SQL query
    5. For the query I have: 'select * from depot_master_customer'
    However when I view the page, it just displays one blank field with the title '*' !!
    I am doing something completely wrong here? It seems like it should be a simple thing to do.
    Any help appreciated, this one is driving me mad.
    Thanks
    Simon

    Simon,
    You will need to manually create the tabular form and DML process. This is covered in detail in the How To document shown below:
    http://www.oracle.com/technology/products/database/htmldb/howtos/tabular_form.html
    Have you tried this yet?
    Good luck!
    Emilio.

  • Form verification

    Is there a way to install some sort of form verifictaion to prevent spam?

    Hi Jamie,
    If you are hosting with Business Catalyst all you have to do is in your form settings check the box that say BC Capcha. See image ...

  • Unable to open PDF form using latest reader

    Unable to open this PDF: http://www.uscis.gov/files/form/i-130.pdf

    It is something we consider, but the cost to implement is pretty large and many more users encounter the forms that we do support. However, we do see a number of users request being able to fill this sort of form in the forums and that feedback is appreciated. Bottom line, this isn't something we have immediate plans to implement, but it's a request we hear and will continue to consider.

  • Submitting InfoPath form twice

    Here's my problem:
    I have an InfoPath form created. A user fills out the form, then selects the "Approver". They then hit submit and the form is sent via e-mail to the "Approver". Once the "Approver" reviews the form, they then hit submit - I want
    it to then go to ANOTHER user (well - its a DL, but same thing). The way it is currently set up is once the "Approver" hits submit, it sends it back to him/herself. 
    Does anyone know some simple instructions / steps to get this accomplished?

    You'll need to create some sort of form status and when the approver submits, switch that form status to the next stage.
    This book walks through the entire process:
    http://www.amazon.com/Using-Microsoft-InfoPath-2010-SharePoint/dp/0735662061/ref=sr_1_1?ie=UTF8&qid=1398104590&sr=8-1&keywords=infopath+2010
    And I believe this video may help too:
    https://www.youtube.com/watch?v=ADc-0VoS4ZA
    Andy Wessendorf SharePoint Developer II | Rackspace [email protected]

Maybe you are looking for

  • How to track the Distributor in SAP

    Hi all One of our client has a particular requirement, let me explain.... Let's  say my client sold  100 qty. to the Distributor, again the distributor lets say have  five Sub-Distributor and suppose to distribute the  100 Qty. among  the five Sub-Di

  • CX_SY_OPEN_SQL_DB:ORA-00060: deadlock detected

    Hi All, I am runtime error DBIF_RSQL_SQL_ERROR abd Exception CX_SY_OPEN_SQL_DB in the following code. I am pasting Error Analysis from ST22. An exception occurred. This exception is dealt with in more detail below . The exception, which is assigned t

  • PO Auto closure

    Is there any Standard Program available to close the PO progamatically, where Del complete indicator = yes Final Invoice Indicator = Yes Thanks in advance

  • InDesign CS 4 Crashing When Trying To Print.

    my Mac iOS is Yosemite. I Have The Crash Report Is You Need It. Basically After updating my iOS, whenever i try to print within Adobe InDesign CS4 , it crashes. I didn't have this issue with Mac iOS Mavericks. This Just Happens with InDesign CS, I Ca

  • The software update cannot be verified. Please try again later. (15)

    Hello, I upgraded my Playbook yesterday as the software was released and today I decided to do a security wipe and start fresh. The device rebooted and I followed the prompts, entered a valid WiFi SSID, connected to the WiFi network and when it tries