Optimizations broken for inline code - Mars

I have a problem with a piece of code and wanted to check if it was a known issue or not and if there is a workaround for it.
I have a small piece of code that uses SunStudio inlines running on -xtarget=opteron - xarch=amd64
#include <sys/types.h>
#include <stdio.h>
#include <stdlib.h>
#ifdef __GNUC__
static uint64_t
mul64hi(uint64_t a, uint64_t b)
uint64_t lo, hi;
__asm__(
"mulq %3\n\t"
: "=a" (lo), "=d" (hi)
: "0" (a), "rm" (b)
: "cc"
return (hi);
#else
extern uint64_t mul64hi(uint64_t, uint64_t);
#endif /* __GNUC__ */
int
main(void)
uint64_t a = 12535862302449814170ull, b = 12535862302449814170ull;
uint64_t hi;
hi = mul64hi(a, b);
printf("A,B = 0x%016lx, 0x%016lx\n", a, b);
printf("Hi = 0x%016lx\n", hi);
if (hi != 8519001675203524399ull) {
fprintf(stderr, "HI value is incorrect\n");
exit(1);
return (0);
with the associated inline
.inline mul64hi, 8
movq %rdi,%rax
mulq %rsi
movq %rdx,%rax
.end
The problem is that this code works fine when there are no optimizations used at compile time (resulting in the correct calculation). However, if I try to use -xO1 or greater the compiler breaks the code.
Studio, seems to be busted. Let's see why:
main: 55 pushq %rbp
main+0x1: 48 8b ec movq %rsp,%rbp
main+0x4: 48 83 ec 08 subq $0x8,%rsp
main+0x8: 41 54 pushq %r12
main+0xa: 48 be 9a 4a bb a2 movq $0xadf85458a2bb4a9a,%rsi
58 54 f8 ad
main+0x14: 8b c6 movl %esi,%eax
main+0x16: 48 f7 e6 mulq %rsi
main+0x19: 48 8b c2 movq %rdx,%rax
main+0x1c: 4c 8b e0 movq %rax,%r12
main+0x1f: 48 8d 3d d2 00 00 leaq +0xd2(%rip),%rdi <0x400b98>
00
main+0x26: 48 8b d6 movq %rsi,%rdx
main+0x29: 33 c0 xorl %eax,%eax
main+0x2b: e8 00 fe ff ff call -0x200 <printf>
Everything up to offset 0xa is fine. The instruction at offset 0x14 is wrong.
The optimiser (I assume) is being clever - instead of another movq of the constant, it's copying the value into rax from rsi (since we're squaring the number anyway). The problem is it's only moving the low 32 bits using movl not the full 64bits using movq. Then we multiply and movq out, which is ok.
I guessing this has to be a SunStudio bug.
This is part of a much larger program that definitely needs to be heavily optimized as it's performance unoptimized is about 1/6th of what I expect it to be.
Any advice on workarounds or if this is a known bug would be appreciated. I haven't logged it as a bug yet.
BTW this same problem occurs on a fully patched SunStudio 11 as well as the SunStudio 12 EA.
Message was edited by:
RobGiltrap

Done... Your Report (Review ID: 949821) - 64bit code with inline breaks when optimized.
For my main piece of code it didn't like the GCC part. Still looking into it.

Similar Messages

  • My iPod 4th gen has been broken for at least 2 years, the screen is broken so it won't spence me touching it but it still turns on, I have heaps of photos and vidios I would like to look at but my laptop is inked it to broke, I also have a pass code on it

    My iPod 4th gen has been broken for at least 2 years, the screen is broken so it won't sense me touching it but it still turns on, I have heaps of photos and vidios I would like to look at but my laptop that it was synced to is broke, I also have a pass code on my ipod. Is there anything I can do!

    Photos
    - If they are in an iPod backup then restore another iPod, iPhne or iPad from that backup. See the restore topic of:
    iOS: How to back up
    - Maybe from the restored iPod via
    How to perform iPad recovery for photos, videos
    Wondershare Dr.Fone for iOS: iPhone Data Recovery - Wondershare Official     
    http://www.amacsoft.com/ipod-data-recovery.html
    iPod recovery software to restore lost music files      
    -iPod touch Deleted Photo Recovery Tips You Should Know
    To restore the iPod:
    Place the iOS device in Recovery Mode and then connect to your computer and restore via iTunes. The iPod will be erased.
    iOS: Wrong passcode results in red disabled screen                         
    If recovery mode does not work try DFU mode.                        
    How to put iPod touch / iPhone into DFU mode « Karthik's scribblings        
    For how to restore:
    iTunes: Restoring iOS software
    You can also contact a Data Recovery Company

  • [svn:osmf:] 12659: A few code cleanup and optimization tasks for the Manifest.

    Revision: 12659
    Revision: 12659
    Author:   [email protected]
    Date:     2009-12-08 10:56:56 -0800 (Tue, 08 Dec 2009)
    Log Message:
    A few code cleanup and optimization tasks for the Manifest.
    Modified Paths:
        osmf/trunk/framework/MediaFramework/org/osmf/net/F4MLoader.as
        osmf/trunk/framework/MediaFramework/org/osmf/net/ManifestParser.as

    Many thanks for the fast reply.
    I've got a follow up question.
    What will happen if I modify the reconnect Code in the OSMF Netloader Class as recommended and then load multiple third party OSMF plugins,
    which may have included the origin OSMF version of the Netloader class.
    Which one will be used at runtime?
    Thanks in advance!

  • Set anchor yoffset value for inline frame

    Hi everyone!,
    In my document having the one story and it contains the two inline frames.
    then set the anchor yoffset value for inline frame to -5 mm.
    my coding is given by below, what's wrong in my code.
    Please tell me.
    tell application "Adobe InDesign CC 2014"
        set ofset to -5
        tell active document
               tell story 1
            set anchor yoffset of anchored object settings of parent of item 1 of inline frame 1 to ofset
               end tell
          end tell
    end tell

    Hi
    This snippet works ...
    tell application "Adobe InDesign CC 2014"
        set ofset to -5
        tell active document
            tell story 1
                tell text frame 1
                    set anchor yoffset of anchored object settings to ofset
                end tell
            end tell
        end tell
    end tell

  • [svn] 3203: Add support for inline two-way data binding (syntax is @{expr}) .

    Revision: 3203<br />Author:   [email protected]<br />Date:     2008-09-14 05:11:47 -0700 (Sun, 14 Sep 2008)<br /><br />Log Message:<br />-----------<br />Add support for inline two-way data binding (syntax is @{expr}).  Also add support for two-way data binding via the <mx:Binding> tag and the new property twoWay=boolean (default is false).<br /><br />Code Reviewer: Paul<br />QA: tests for this feature need to be added to the regression test suite<br />Doc: new feature which needs to be documented<br /><br />Modified Paths:<br />--------------<br />    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/InterfaceCompiler.java<br />    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/analyzer/SyntaxAnalyzer.java <br />    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/builder/AbstractBuilder.java <br />    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/builder/AnonymousObjectGraph Builder.java<br />    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/builder/DocumentBuilder.java <br />    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/builder/ModelBuilder.java<br />    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/builder/ServiceRequestBuilde r.java<br />    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/builder/XMLBuilder.java<br />    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/builder/XMLListBuilder.java< br />    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/dom/BindingNode.java<br />    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/lang/TextParser.java<br />    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/rep/BindingExpression.java<b r />    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/rep/MxmlDocument.java<br />    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler_en.properties

    EvilDave UK wrote:
    Surely there's a more practical way around this without having to reboot?
    Before you go to the trouble of going through all those steps, be warned that attempting to use Dreamweaver CS4 with SVN could even cause Dreamweaver to crash after updating to SVN 1.6.2. I, too, have abandoned SVN integration with Dreamweaver until the problems are sorted out. I reported this problem to Adobe a couple of weeks ago, and spent a long time working with an Adobe engineer, who was able to reproduce the problem, but not offer a solution. Hopefully, the next version of Dreamweaver will have more robust support for Subversion.

  • [svn] 759: 30x: The build has been broken for three days? Kicking before investigating.

    Revision: 759
    Author: [email protected]
    Date: 2008-03-07 11:01:32 -0800 (Fri, 07 Mar 2008)
    Log Message:
    30x: The build has been broken for three days? Kicking before investigating.
    Modified Paths:
    flex/sdk/branches/3.0.x/kick-build.txt

    You might need to stop the restore process and try restoring your backup again.  To do this, go to Settings>iCloud>Storage & Backup and tap Stop Restoring... at the bottom.  Then restore your backup again as explained here: https://support.apple.com/kb/ph12521.  When you're not using it, be sure your phone is connected to wifi and your charger while it is restoring the backup.

  • SP7 tcp and 681j tcp broken for me.

    Hello all,
    I have this very long and storied journey that I hope you will read, as TCP is broken for me.
    Facts:
    Netware OES 6.5 sp7 and TCP681J domestic and Null.
    TCP680b (working)
    Dell 2650 server with Broadcom NiC, b57.lan version 10.41 (newest from dell and came with sp7)
    PIX 515 code 8.0.2 performing dynamic and static NAT, with a DMZ
    Novell DNS/DHCP
    eDir 8.8 sp2
    Okay here we go.
    I was in a long battle with the Bordermanger people telling them that TCP was broken. Today I took my BM server out of the tree and rebuilt it from ground up. The problems I am having have nothing to do with BM as when I built this computer from scratch and just did routing, DNS doesn't work.
    Okay, so I have a BRAND NEW server that I just built. I have two network interfaces, internal and external. The external is connect directly to the PIX 515 and the internal is connected directly to our internal network.
    So, I turn on routing on this new server with SP7 on it, and I can not do a DNS lookup from the server. None of my DNS servers can do lookups, and none of my workstations pointing to my internal DNS servers can do lookups. My DNS servers have pointers to external DNS servers which are running. I can not even see my PIX firewall from inside my network, yet the BM can ping it just fine.
    I patched to 681J and tried both Domestic and Null and got the same result.
    Then I took the TCP 680b (TCP.NLM, TCPIP.NLM, BSDSOCK.NLM) and put it on the server. WOW, I CAN RESOLVE AGAIN! I can even browse the internet and get to my pix and DMZ.
    So why don't I just stay this way? Because the connection to the PIX randomly drops. Again, I do not even have BM installed on this server. If I did, I would have 3.8 sp5 ir1.
    Now, if I do the same thing with a POS workstation, build a Netware OES 6.5 sp7 server, everything works fine. Server hardware you ask. Maybe, but it must be specific to Dell 2650 and Broadcom NIC's because I built another server using the EXACT same hardware and got the same result. I also built this on a test Dell 830 server and it worked just fine.
    I have proved this over and over and over again with my colleagues and we still don't get it; that we would be the only people with this problem.
    Can someone help?
    Tom

    Ignore this previous post, it is late and I didn't read your post thoroughly.
    Sorry
    "Karim C Kronfli" <[email protected]> wrote in message news:[email protected]. ..
    Tom I would seriously check your filtering configs and similar as I am running SP7 OK on 2 BM servers here.
    1: Are DNS Queries allowed out through
    a: Your PIX IP Filters (plug a machine direcly into your PIX and see if if you can query an external DNS Source)
    if a: works
    b: Your Netware IP Filters (Test drop your filters and see if you can ping an external host using its dns name
    What is yor DNS Configuration?
    Are your DNS Servers doing route lookups? or checking your ISP's DNS.
    Agreed with Massimo. a quick bit of Wireshark on your DNS Servers might prove extremely helpful.
    Hope this helps
    Karim C Kronlfi
    CNE 6
    "Tom Hafemann" <[email protected]> wrote in message news:[email protected]...
    Hello all,
    I have this very long and storied journey that I hope you will read, as TCP is broken for me.
    Facts:
    Netware OES 6.5 sp7 and TCP681J domestic and Null.
    TCP680b (working)
    Dell 2650 server with Broadcom NiC, b57.lan version 10.41 (newest from dell and came with sp7)
    PIX 515 code 8.0.2 performing dynamic and static NAT, with a DMZ
    Novell DNS/DHCP
    eDir 8.8 sp2
    Okay here we go.
    I was in a long battle with the Bordermanger people telling them that TCP was broken. Today I took my BM server out of the tree and rebuilt it from ground up. The problems I am having have nothing to do with BM as when I built this computer from scratch and just did routing, DNS doesn't work.
    Okay, so I have a BRAND NEW server that I just built. I have two network interfaces, internal and external. The external is connect directly to the PIX 515 and the internal is connected directly to our internal network.
    So, I turn on routing on this new server with SP7 on it, and I can not do a DNS lookup from the server. None of my DNS servers can do lookups, and none of my workstations pointing to my internal DNS servers can do lookups. My DNS servers have pointers to external DNS servers which are running. I can not even see my PIX firewall from inside my network, yet the BM can ping it just fine.
    I patched to 681J and tried both Domestic and Null and got the same result.
    Then I took the TCP 680b (TCP.NLM, TCPIP.NLM, BSDSOCK.NLM) and put it on the server. WOW, I CAN RESOLVE AGAIN! I can even browse the internet and get to my pix and DMZ.
    So why don't I just stay this way? Because the connection to the PIX randomly drops. Again, I do not even have BM installed on this server. If I did, I would have 3.8 sp5 ir1.
    Now, if I do the same thing with a POS workstation, build a Netware OES 6.5 sp7 server, everything works fine. Server hardware you ask. Maybe, but it must be specific to Dell 2650 and Broadcom NIC's because I built another server using the EXACT same hardware and got the same result. I also built this on a test Dell 830 server and it worked just fine.
    I have proved this over and over and over again with my colleagues and we still don't get it; that we would be the only people with this problem.
    Can someone help?
    Tom

  • Field for packaging code

    Hi all,
    i am searching for packaging code field.my packaging code data is comming in the table THM073-pacod or THM074-pacod.
    but how to relate this table with packaging material which is present in mara table.
    i am writing a report for delivery order.here we are using packaging material like carton & pallet.we have created this packaging materials in material master.for this packaging material, i have to refer a packaging code which is present in THM073 table.
    plz suggest me how i can extract that data from that table.it is very very urgent.
    any help is highly appreaciated.
    Regards
    pabitra

    Hi Pabitra,
           You can find the relationship between Dangerous Goods Regulation and Material in table DGTMD. Using this relationship you can link Material and PACOD using table THM073.
           Hope this will solve your problem.
    Regards,
    Sathish
    Note : Reward useful Answers

  • MASS UPDATE FOR MATERIAL CODE DELETION

    Dear all ,
    Please  provide the option for material code deletion in mass update .
    Srithar K

    Use T-code: MM17
    Table-Fields:
    MARA-LVORM (Client level)
    MARC-LVORM (Plant level)
    If its your first time, do a test run in sandbox.
    Added
    The above will flag the deletion flag. Then you will have to do a archival. To know the steps, just do a search in this forum or MM forum, you will get a step by step procedure.

  • Any suggestions for my code.

    Hi,
    I wrote this little piece of code to reduce some of the work I need to do when doing database access. I intend to use if with mySQL and mostly web based applications. It'll probably use it quite a bit, and since it's my first try at writing something like this I figured I'd post the code to see if anyone can find any problems. I've already tested it and it works, so I'm mostly interested in any feedback about performance issues.
    I'd really like to know if there's any way I can get the number of rows in a result set before I start going through it. That way I could return the data in an Object[][] array (I'd assume it'd be a little faster to add values to than the ArrayList).
    Here's the code...
    * SQLGruntBean.java
    * Created on November 22, 2002, 12:37 PM
    package com.vacode.beans.sql;
    import java.sql.*;
    import java.util.*;
    /** This bean is a generic class that can be used to access any type of SQL
    *  database.  To use it with an application that accesses an SQL database
    *  do the following:
    *  <p>1. Create a new instance of SQLGruntBean.</p>
    *  <p>2. Set the SQL connection source by calling setConnection(Connection).</p>
    *  <p>3. Set the SQL query you wish to perform by calling setSqlQuery(String).
    *  <br><b>Note:</b> You may replace all values with question mark place holders
    *  as long as you also perform step 4.</p>
    *  <p>4. (OPTIONAL) Set the values that are represented by question mark place
    *  holders by calling setSqlValues.  This method requires an Object array as
    *  input.</p>
    *  <p>5. (OPTIONAL) Set the maximum number of results to be retrieved by calling
    *  setMaxRows.  If left unset it will default to 100.  This method should not
    *  be used as a replacement for the LIMIT parameter in an SQL query.  It is
    *  merely a backup in case an excessive number of results are returned
    *  erroneously.</p>
    *  <p>6. Once all the necessary variables are set you may call either
    *  executeQuery or executeUpdate to perform the intended task.</p>
    *  <p>     <b><i><u>EXAMPLE</u></i></b></p>
    *  <p>
    *  <code>
    *  <br>SQLGruntBean sgb = new SQLGruntBean();
    *  <br>Object[] values = new Object[1];
    *  <br>ArrayList data = null;
    *  <br><br>
    *  <br>sgb.setConnection(dataSource.getConnection);
    *  <br>sgb.setSqlQuery("SELECT * FROM USERS WHERE firstName = ?");
    *  <br>values[0] = "John";
    *  <br>sgb.setSqlValues(values);
    *  <br>data = sgb.executeQuery();
    *  </code>
    *  </p>
    *  <p>The necessary try / catch blocks and error handling have been left out of
    *  this example, but will need to be implemented for production code.</p>
    * @author  Vacode Web Systems
    * @version 1.0
    public class SQLGruntBean
        // Define global variables
        private Connection dbConnection = null;
        private String sqlQuery = null;
        private int maxRows = 100;  // Default to 100 in case it is not set
        private Object[] sqlValues = null;
        // End global variables
        /** A write only method for defining the connection to an SQL
         *  database
        public void setConnection(Connection sqlConnectionObject)
         this.dbConnection = sqlConnectionObject;
        /** A write only method for defining the SQL query that is to be
         *  executed.*/
        public void setSqlQuery(String sqlQuery)
         this.sqlQuery = sqlQuery;
        /** Defines the maximum number of rows that are to be retrieved from the
         *  result set.  This is more of a back up than anything as the sql query
         *  should contain a limit parameter if the query is going to return an
         *  excessive number of results. */
        public void setMaxRows(int maximumRows)
         this.maxRows = maximumRows;
        /** A write only method for defining the dynamic values that are
         *  to replace the question mark placeholders in the sql query.*/
        public void setSqlValues(Object[] values)
         this.sqlValues = values;
        /** Used to execute an sql query.  The executed query is defined by calling
         *  setSqlQuery prior to this method.  The database connection to be used
         *  is defined by calling setConnection prior to this method. */
        public ArrayList executeQuery() throws SQLException
         // Define the local variables that will be used within this method
         ArrayList data = null;
         // End local variables
         if(this.sqlValues!=null && this.sqlValues.length>0)
             /* A prepared statement needs to be executed because the
              * sqlQuery is going to contain ? placeholders rather than
              * actual values.  It is necessary to replace these place
              * holders with their corresponding values.*/
             data = executePreparedQuery();
         else
             // A regular sql query needs to be executed.
             data = executeRegularQuery();
         return(data);
        /** Used to execute an sql update.  The executed update is defined by calling
         *  setSqlQuery prior to this method.  The database connection to be used
         *  is defined by calling setConnection prior to this method. */
        public int executeUpdate() throws SQLException
         // Define the local variables that will be used in this method
         int rowsAffected = -1;
         // Done local variables
         if(this.sqlValues!=null && this.sqlValues.length>0)
             /* A prepared update needs to be executed because the
              * sqlQuery is going to contain ? placeholders rather than
              * actual values.  It is necessary to replace these place
              * holders with their corresponding values.*/
             rowsAffected = executePreparedUpdate();
         else
             // We just need to execute a regular sql query
             rowsAffected = executeRegularUpdate();
         return(rowsAffected);
        /** If a prepared statement is needed this method will be called by the
         *  executeQuery method.*/
        private ArrayList executePreparedQuery() throws SQLException
         // Define the local variables that will be used within this method
         ResultSet rs = null;
         PreparedStatement pstmt = null;
         ArrayList data = null;
         // End local variables
         try
             pstmt = this.dbConnection.prepareStatement(this.sqlQuery);
             setSqlValues(pstmt, this.sqlValues);
             rs = pstmt.executeQuery();
             /* Closing the PreparedStatement is going to cause the
              * ResultSet to be inaccessible.  Therefore it is necessary to
              * move the data that has just been aquired into an alternate
              * data storage object.*/
             data = processResult(rs);
             // Clean up all of the db resources we have opened
             rs.close();
             rs = null;
             pstmt.close();
             pstmt = null;
             this.dbConnection.close();
             this.dbConnection = null;
             /* No exceptions are caught.  They should be dealt with by the
              * calling class. */
         finally
              /* If an exception was thrown during the execution of the
               * sql query there will still be open db resources.  They need
               * to be closed. */
             if(rs!=null)
              try
              { rs.close(); } catch(SQLException sqle)
              { } // EXCEPTION IGNORED
              rs = null;
             if(pstmt!=null)
              try
              { pstmt.close(); } catch(SQLException sqle)
              { } // EXCEPTION IGNORED
              pstmt = null;
             if(this.dbConnection!=null)
              try
              { this.dbConnection.close(); } catch(SQLException sqle)
              { } // EXCEPTION IGNORED
              this.dbConnection = null;
             /* Regardless of what happens we need to return an array of Objects.
              * If the returning value is null it should be handled by the
              * calling class. */
         return(data);
        /** If a regular sql statement is required this method will be called
         *  by the executeQuery method. */
        private ArrayList executeRegularQuery() throws SQLException
         // Define the local variables that will be used within this method
         ResultSet rs = null;
         Statement stmt = null;
         ArrayList data = null;
         // End local variables
         try
             stmt = this.dbConnection.createStatement();
             rs = stmt.executeQuery(this.sqlQuery);
             /* Closing the Statement is going to cause the ResultSet to be
              * inaccessible.  Therefore it is necessary to move the data
              * that has just been aquired into an alternate data storage
              * object.*/
             data = processResult(rs);
             // Clean up all of the db resources we have opened
             rs.close();
             rs = null;
             stmt.close();
             stmt = null;
             this.dbConnection.close();
             this.dbConnection = null;
             /* No exceptions are caught.  They should be dealt with by the
              * calling class. */
         finally
              /* If an exception was thrown during the execution of the
               * sql query there will still be open db resources.  They need
               * to be closed. */
             if(rs!=null)
              try
              { rs.close(); } catch(SQLException sqle)
              { } // EXCEPTION IGNORED
              rs = null;
             if(stmt!=null)
              try
              { stmt.close(); } catch(SQLException sqle)
              { } // EXCEPTION IGNORED
              stmt = null;
             if(this.dbConnection!=null)
              try
              { this.dbConnection.close(); } catch(SQLException sqle)
              { } // EXCEPTION IGNORED
              this.dbConnection = null;
         return(data);
        /** If a prepared update is needed this method will be called by the
         *  executeUpdate method.*/
        private int executePreparedUpdate() throws SQLException
         // Define the local variables that will be used within this method
         PreparedStatement pstmt = null;
         int rowsAffected = -1;
         // End local variables
         try
             pstmt = this.dbConnection.prepareStatement(this.sqlQuery);
             setSqlValues(pstmt, this.sqlValues);
             rowsAffected = pstmt.executeUpdate();
             pstmt.close();
             pstmt = null;
             this.dbConnection.close();
             this.dbConnection = null;
             /* No exceptions are caught.  They should be dealt with by the
              * calling class. */
         finally
              /* If an exception was thrown during the execution of the
               * sql update there will still be open db resources.  They need
               * to be closed. */
             if(pstmt!=null)
              try
              { pstmt.close(); } catch(SQLException sqle)
              { } // EXCEPTION IGNORED
              pstmt = null;
             if(this.dbConnection!=null)
              try
              { this.dbConnection.close(); } catch(SQLException sqle)
              { } // EXCEPTION IGNORED
              this.dbConnection = null;
             /* Regardless of what happens we need to return an array of Objects.
              * If the returning value is -1 it should be handled by the
              * calling class. */
         return(rowsAffected);
        /** If a regular sql statement is required this method will be called
         *  by the executeQuery method. */
        private int executeRegularUpdate() throws SQLException
         // Define the local variables that will be used within this method
         ResultSet rs = null;
         Statement stmt = null;
         int rowsAffected = -1;
         // End local variables
         try
             stmt = this.dbConnection.createStatement();
             rowsAffected = stmt.executeUpdate(this.sqlQuery);
             // Clean up all of the db resources we have opened
             stmt.close();
             stmt = null;
             this.dbConnection.close();
             this.dbConnection = null;
             /* No exceptions are caught.  They should be dealt with by the
              * calling class. */
         finally
              /* If an exception was thrown during the execution of the
               * sql update there will still be open db resources.  They need
               * to be closed. */
             if(stmt!=null)
              try
              { stmt.close(); } catch(SQLException sqle)
              { } // EXCEPTION IGNORED
              stmt = null;
             if(this.dbConnection!=null)
              try
              { this.dbConnection.close(); } catch(SQLException sqle)
              { } // EXCEPTION IGNORED
              this.dbConnection = null;
         return(rowsAffected);
        /** used to iterate through the sql values and add them to the
         *  prepared statement object. */
        private void setSqlValues(PreparedStatement ps, Object[] values) throws SQLException
         for(int i=0;i<this.sqlValues.length;i++)
             Object o = this.sqlValues;
         /* SQL starts counting at 1 not 0, so this loop needs to be
         * incremented by 1 for the setObject method to interpret it
         * correctly. */
         ps.setObject(i+1, values[i]);
    /** Used to copy a result set into a persistent object so that it can
    * be used even once the connection to the database has been closed. */
    private ArrayList processResult(ResultSet rs) throws SQLException
         ArrayList data = new ArrayList();
         ResultSetMetaData rsmd = rs.getMetaData();
         int colCount = rsmd.getColumnCount();
         while(rs.next())
         Object[] currentRow = new Object[colCount];
         for(int i=0;i<colCount;i++)
              currentRow[i] = rs.getObject(i+1); //SQL starts at 1 not 0
         data.add(currentRow);
         return(data);
    Thanks for the input,
    Ryan

    I think I have an idea of what you mean. I just want to make sure before I write everything though. I could implement your idea by doing the following right?
    I haven't tried any of this, so if there's minor (syntax) errors just ignore them. I'll fix them later.
    1. Create the following Interface.
    package com.vacode.beans.sql;
    public interface GruntBeanProccessingModule
        public Object get(Object[] properties);
    }2. Force the subclasses to implement the above interface
    public class EmployeeProcessor implements GruntBeanProcessingModule
        public Object get(Object[] properties)
         //make sure the input array is the right length (+ other validation, etc.)
         //create a new EmployeeBean
         //set all the EmployeeBean properties based on the input Object[]
         //return the EmployeeBean
    }3. Make the following additions to my SQLGruntBean class
    private requestedClassType = null;
    public void setRequestedClassType(Object o) // o must be an instance of the requested class
        this.requestedClassType = o;
    //if requestedClassType isn't null then create the ArrayList like this
    while(rs.next())
             Object[] currentRow = new Object[colCount];
             for(int i=0;i<colCount;i++)
              currentRow[i] = rs.getObject(i+1); //SQL starts at 1 not 0
             Class requestedClass = Class.forName(requestedClassType.getClass().getName());
             GruntBeanProcessingModule gbpm = requestedClass.newInstance();
             Object convertedData = gbpm.get(currentRow);
             data.add(convertedData);
         }Of course I'll have to handle any possible exceptions (requestedClassType isn't an instance of GruntBeanProcessingModule, etc.). I also notice the forum replaced some of my [] with <> (I've seen it before though, so you probably already know about it).
    Did I get it right or am I out to lunch :-)
    Thank you very much for the feedback,
    Ryan

  • What are the values for operation code in order import open interface

    Hi,
    I am trying to create the sales order by populating the interface table and run the request import order i.e. open interace without standard OE APIs.
    I am also populating the actions interface table i.e. OE_ACTIONS_IFACE_ALL along with header, line, & price adjustment tables to hold the order. The sales order creates successfully but it fails at holding action due to invalid operation code. It has been tried with ‘CREATE’, ‘UPDATE, ‘INSERT’ for operation code in action interface table but no use.
    So my concern is what value needs to pass for operation code in action interface table.
    Any help would appreciate.
    Thanks,
    Sai Krishna

    If you are planning to apply holds, For holds the action is OE_Globals.G_APPLY_HOLD or APPLY_HOLD.
    Thanks
    Nagamohan

  • Error during distribution for compiled code generation-Reply

    Hi,
    Looking at your error messages, it looks as though your build is failing during the code generation phase of an autocompilation. To determine why the code generator crashed, either look in the $FORTE_ROOT/log/forte_ex*.log files or don't use autocompilation and use fcompile.
    There are many reasons why the code generator could crash. Some of the things I've come across are running out of memory and trying to find invalid classes.
    If its the invalid class problem you'll find a message like:
    Generating code for partition BLTCustomWindow_cl0_Part1.
    ERROR: Exiting due to following exception:
    SYSTEM ERROR: Client partition FTCompile_cl0_Client was terminated by escaped
    exception. See the remainder of the error stack for more information.
    Class: qqsp_ResourceException
    Error #: [1001, 3]
    Detected at: qqrt_ForteExecAgent::LoadPartition at 1
    Error Time: Tue Aug 18 17:52:44
    Exception occurred (locally) on partition "Forte_Executor", (partitionId =
    9EA25A00-36FE-11D2-87C4-502F15BEAA77:0x1, taskId =
    [9EA25A00-36FE-11D2-87C4-502F15BEAA77:0x1.6]) in application
    "FTCompile_cl0", pid 28331 on node stardev in environment <unknown>.
    FATAL ERROR: Invalid class ProductBMServices.ProductSecurityMgrProxy
    (0x4ecd,0x19a)
    Class: qqsp_ImplementationException
    Detected at: qqcg_TRclass::SetClass at 2
    Last TOOL statement: method ForteCompiler.ProcessPGF
    Error Time: Tue Aug 18 17:52:44
    Exception occurred (locally) on partition "Forte_Executor",
    (partitionId = 9EA25A00-36FE-11D2-87C4-502F15BEAA77:0x1, taskId =
    [9EA25A00-36FE-11D2-87C4-502F15BEAA77:0x1.6]) in application
    "FTCompile_cl0", pid 28331 on node stardev in environment <unknown>.
    The solution for this instance is to clean up the invalid classes using the c4tstdrv utility.
    c4tstdrv > setrepos star8
    c4tstdrv > setwork dmcompiledbuild
    c4tstdrv > open
    Type Service Flags Level
    err sh * 255
    trc rp 1 4
    c4tstdrv > findproj productbmservices
    c4tstdrv > cleanuprtclasses
    Removing extraneous RTclass ProductShootingLocationMgrProxy
    Removing extraneous RTclass PRTerritoryBaseMgrProxy
    Removing extraneous RTclass PRTerritoryMgrProxy
    Removing extraneous RTclass TalentBaseMgrProxy
    Removing extraneous RTclass TalentTypeMgrProxy
    Removing extraneous RTclass TitleTypeBaseMgrProxy
    Removing extraneous RTclass TitleTypeMgrProxy
    Removing extraneous RTclass ProductSecurityBaseClass
    Removing extraneous RTclass ProductSecurityBaseQuery
    Removing extraneous RTclass ProductSecurityQuery
    Removing extraneous RTclass ProductSecurityMgrProxy
    c4tstdrv > commit
    c4tstdrv > exit
    Integrate the changes to the workspace, start the build again and this should have cured the problem.
    However, its hard to know what the cause of your problem is without seeing the output in the log files.
    Good luck.
    Mark Carruthers
    20th Century Fox
    "Forte Consultants" <[email protected]> 01/22/99 08:35am >>>
    Hi,
    I'm doing application distribution for my application using a fscript
    script and am forcing compilation on 2 of my partitions.
    This I have been doing from quite sometime successfully. Recently I
    developed a new service and plugged it into my application for
    deployment.
    I'm successfully able to distribute & deploy the interpreted code. But
    I'm getting a long list of system errors when I try doing distribution
    for compiled code. And I see only one of the .exe generated instead of
    two because of which I'm unable to go ahead with installaion. I would
    appreciate if anybody let me know why this's happening ?. The following
    is the main chunk of this error list.
    Thanks in advance.
    --Anand Ramaswamy
    SYSTEM ERROR: Cannot resolve the distributed reference for an object of
    class
    (qqlo_Object) named (<Unknown>) for the reasons below.
    Class: qqsp_DistAccessException
    Error #: [601, 144]
    Detected at: qqdo_ProxyMgr::ResolveOutGoingProxy at 10
    Error Time: Fri Jan 22 10:44:22
    Exception occurred (locally) on partition "Fscript_cl9_Client",
    (partitionId = 32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1,
    taskId =
    [32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1.1]) in application
    "fscript", pid 4b81 on node MOOSUP in environment IGTSDENV.
    SYSTEM ERROR: Can not initially communicate with the object named
    (Unnamed),
    which is supposed to be in partition
    (32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x616:0x1).
    Class: qqsp_DistAccessException
    Error #: [601, 140]
    Detected at: qqdo_ProxyMgr::CheckAccess at 1
    Error Time: Fri Jan 22 10:44:22
    Exception occurred (locally) on partition "Fscript_cl9_Client",
    (partitionId = 32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1,
    taskId =
    [32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1.1]) in application
    "fscript", pid 4b81 on node MOOSUP in environment IGTSDENV.
    SYSTEM ERROR: Attempt to send to unknown destination partition
    (32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x616:0x1).
    Class: qqsp_DistAccessException
    Error #: [601, 102]
    Detected at: qqdo_PartitionMgr::SendMsg at 1
    Error Time: Fri Jan 22 10:44:22
    Distributed method called: qqdo_InternalMessage.<Message> (object
    name
    Unnamed) from partition "CodeGenerationSvc_cl0_Part1-router",
    (partitionId
    = 32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x615:0x1, taskId =
    [32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x615.2]) in application
    "CodeGenerationSvc_cl0", pid 7487 on node MOOSUP in environment
    IGTSDENV
    Exception occurred (locally) on partition "Fscript_cl9_Client",
    (partitionId = 32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1,
    taskId =
    [32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1.1]) in application
    "fscript", pid 4b81 on node MOOSUP in environment IGTSDENV.
    SYSTEM ERROR: Partition (32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x616:0x1)
    no
    longer exists. The process associated with the partition probably
    terminated.
    Class: qqsp_DistAccessException
    Detected at: qqdo_PartitionMgr::CheckStarted at 1
    Error Time: Fri Jan 22 10:44:22
    Exception occurred (locally) on partition "Fscript_cl9_Client",
    (partitionId = 32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1,
    taskId =
    [32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1.1]) in application
    "fscript", pid 4b81 on node MOOSUP in environment IGTSDENV.
    SYSTEM ERROR: This method invocation is being retried because the
    failures
    shown below and the fact that the dialog duration is MESSAGE. This is
    try #2.
    Class: qqsp_DistAccessException
    Error #: [601, 54]
    Detected at: qqdo_Message::Failed at 1
    Error Time: Fri Jan 22 10:44:19
    Exception occurred (locally) on partition "Fscript_cl9_Client",
    (partitionId = 32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1,
    taskId =
    [32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1.1]) in application
    "fscript", pid 4b81 on node MOOSUP in environment IGTSDENV.
    SYSTEM ERROR: The load balanced router is disabled or has no members.
    This
    can happen if all of the members terminated or failed.
    Class: qqsp_DistAccessException
    Error #: [601, 161]
    Detected at: qqdo_LbRouter::Route at 1
    Error Time: Fri Jan 22 10:44:19
    Distributed method called: GenerationMgrProxy.GeneratePartitionCode
    (object name
    site/codegenerationsvc_cl0/codegenerationsvc_cl0-codegensvc)
    from partition "Fscript_cl9_Client", (partitionId =
    32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1, taskId =
    [32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614.2]) in application
    "fscript",
    pid 4b81 on node MOOSUP in environment IGTSDENV
    Exception occurred (remotely) on partition
    "CodeGenerationSvc_cl0_Part1-router", (partitionId =
    32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x615:0x1, taskId =
    [32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1.10]) in
    application
    "CodeGenerationSvc_cl0", pid 7487 on node MOOSUP in environment
    IGTSDENV.
    SYSTEM ERROR: This method invocation is being retried because the
    failures
    shown below and the fact that the dialog duration is MESSAGE. This is
    try #1.
    Class: qqsp_DistAccessException
    Error #: [601, 54]
    Detected at: qqdo_Message::Failed at 1
    Error Time: Fri Jan 22 10:44:15
    Exception occurred (locally) on partition "Fscript_cl9_Client",
    (partitionId = 32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1,
    taskId =
    [32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1.1]) in application
    "fscript", pid 4b81 on node MOOSUP in environment IGTSDENV.
    SYSTEM ERROR: Access to a load balanced router member (which is a
    service
    object) failed for the reasons below.
    Class: qqsp_DistAccessException
    Error #: [601, 162]
    Detected at: qqdo_LbRouter::Route at 2
    Error Time: Fri Jan 22 10:44:15
    Distributed method called: GenerationMgrProxy.GeneratePartitionCode
    (object name
    site/codegenerationsvc_cl0/codegenerationsvc_cl0-codegensvc)
    from partition "Fscript_cl9_Client", (partitionId =
    32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1, taskId =
    [32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614.3]) in application
    "fscript",
    pid 4b81 on node MOOSUP in environment IGTSDENV
    Distributed method called: qqlo_Object.<Message> (object name
    Unnamed)
    from partition "Forte_Executor", (partitionId =
    32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x615, taskId =
    [32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x615.12]) in application
    "CodeGenerationSvc_cl0", pid 7487 on node MOOSUP in environment
    IGTSDENV
    Exception occurred (remotely) on partition
    "CodeGenerationSvc_cl0_Part1-router", (partitionId =
    32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x615:0x1, taskId =
    [32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1.10]) in
    application
    "CodeGenerationSvc_cl0", pid 7487 on node MOOSUP in environment
    IGTSDENV.
    SYSTEM ERROR: Cannot resolve the distributed reference for an object of
    class
    (qqlo_Object) named (<Unknown>) for the reasons below.
    Class: qqsp_DistAccessException
    Error #: [601, 144]
    Detected at: qqdo_ProxyMgr::ResolveOutGoingProxy at 10
    Error Time: Fri Jan 22 10:44:15
    Distributed method called: qqlo_Object.<Message> (object name
    Unnamed)
    from partition "Forte_Executor", (partitionId =
    32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x615, taskId =
    [32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x615.12]) in application
    "CodeGenerationSvc_cl0", pid 7487 on node MOOSUP in environment
    IGTSDENV
    Exception occurred (remotely) on partition
    "CodeGenerationSvc_cl0_Part1-router", (partitionId =
    32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x615:0x1, taskId =
    [32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1.10]) in
    application
    "CodeGenerationSvc_cl0", pid 7487 on node MOOSUP in environment
    IGTSDENV.
    SYSTEM ERROR: This distributed reference was previously invalidated due
    to the
    reasons below.
    Class: qqsp_DistAccessException
    Error #: [601, 132]
    Detected at: qqdo_ProxyMgr::ResolveOutGoingProxy at 3
    Error Time: Fri Jan 22 10:44:15
    Exception occurred (remotely) on partition
    "CodeGenerationSvc_cl0_Part1-router", (partitionId =
    32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x615:0x1, taskId =
    [32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1.10]) in
    application
    "CodeGenerationSvc_cl0", pid 7487 on node MOOSUP in environment
    IGTSDENV.
    INFORMATION: The connection to the partner was terminated by the
    Communication
    Manager for the reasons below.
    Class: qqsp_DistAccessException
    Detected at: qqdo_PartitionMgr::StopLocation at 1
    Error Time: Fri Jan 22 10:44:15
    Exception occurred (remotely) on partition
    "CodeGenerationSvc_cl0_Part1-router", (partitionId =
    32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x615:0x1, taskId =
    [32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1.10]) in
    application
    "CodeGenerationSvc_cl0", pid 7487 on node MOOSUP in environment
    IGTSDENV.
    INFORMATION: Network partner closed connection. This usually means the
    process at the other end of the wire failed. Please go look there and
    find
    out why.
    Class: qqsp_DistAccessException
    Detected at: qqcm_HoseFSM::ReceivedClose at 2
    Error Time: Fri Jan 22 10:44:15
    Exception occurred (remotely) on partition
    "CodeGenerationSvc_cl0_Part1-router", (partitionId =
    32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x615:0x1, taskId =
    [32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1.10]) in
    application
    "CodeGenerationSvc_cl0", pid 7487 on node MOOSUP in environment
    IGTSDENV.
    INFORMATION: Asynchronous Failure: Recieved a close from the network
    partner:
    Internet Location - Host: moosup.iroquois.com Port Number: 2504 Dot:
    193.1.11.26 %LINKDISCON, network partner disconnected logical link
    Event 4
    Class: qqsp_DistAccessException
    Detected at: qqcm_HoseFSM::ReceivedClose at 1
    Error Time: Fri Jan 22 10:44:15
    Exception occurred (remotely) on partition
    "CodeGenerationSvc_cl0_Part1-router", (partitionId =
    32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x615:0x1, taskId =
    [32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1.10]) in
    application
    "CodeGenerationSvc_cl0", pid 7487 on node MOOSUP in environment
    IGTSDENV.
    SYSTEM ERROR: This method invocation is being retried because the
    failures
    shown below and the fact that the dialog duration is MESSAGE. This is
    try #1.
    Class: qqsp_DistAccessException
    Error #: [601, 54]
    Detected at: qqdo_Message::Failed at 1
    Error Time: Fri Jan 22 10:44:15
    Exception occurred (remotely) on partition
    "CodeGenerationSvc_cl0_Part1-router", (partitionId =
    32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x615:0x1, taskId =
    [32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1.10]) in
    application
    "CodeGenerationSvc_cl0", pid 7487 on node MOOSUP in environment
    IGTSDENV.
    INFORMATION: The connection to the partner was terminated by the
    Communication
    Manager for the reasons below.
    Class: qqsp_DistAccessException
    Detected at: qqdo_PartitionMgr::StopLocation at 1
    Error Time: Fri Jan 22 10:44:15
    Distributed method called: qqlo_Object.<Message> (object name
    Unnamed)
    from partition "Forte_Executor", (partitionId =
    32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x615, taskId =
    [32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x615.12]) in application
    "CodeGenerationSvc_cl0", pid 7487 on node MOOSUP in environment
    IGTSDENV
    Exception occurred (remotely) on partition
    "CodeGenerationSvc_cl0_Part1-router", (partitionId =
    32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x615:0x1, taskId =
    [32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1.10]) in
    application
    "CodeGenerationSvc_cl0", pid 7487 on node MOOSUP in environment
    IGTSDENV.
    INFORMATION: Network partner closed connection. This usually means the
    process at the other end of the wire failed. Please go look there and
    find
    out why.
    Class: qqsp_DistAccessException
    Detected at: qqcm_HoseFSM::ReceivedClose at 2
    Error Time: Fri Jan 22 10:44:15
    Exception occurred (remotely) on partition
    "CodeGenerationSvc_cl0_Part1-router", (partitionId =
    32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x615:0x1, taskId =
    [32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1.10]) in
    application
    "CodeGenerationSvc_cl0", pid 7487 on node MOOSUP in environment
    IGTSDENV.
    INFORMATION: Asynchronous Failure: Recieved a close from the network
    partner:
    Internet Location - Host: moosup.iroquois.com Port Number: 2504 Dot:
    193.1.11.26 %LINKDISCON, network partner disconnected logical link
    Event 4
    Class: qqsp_DistAccessException
    Detected at: qqcm_HoseFSM::ReceivedClose at 1
    Error Time: Fri Jan 22 10:44:15
    Exception occurred (remotely) on partition
    "CodeGenerationSvc_cl0_Part1-router", (partitionId =
    32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x615:0x1, taskId =
    [32271CD0-4E62-11D2-AF29-9F40A9E1AA77:0x614:0x1.10]) in
    application
    "CodeGenerationSvc_cl0", pid 7487 on node MOOSUP in environment
    IGTSDENV.
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

    Hi,
    If this INCLUDE is in a function group go the MAIN program and activate from there.
    Can you list out the include name?

  • Posting limit restriction ( UpTO 10000) for T Code FB60 - for specific GL

    Dear All,
    Posting limit restriction ( UpTO 10000) for T Code FB60 - for specific GL
    Is it Possibal ?
    Any other way to stop Posting Amt more than Rs 10000 ( Ten Thousand)
    In specific T Code FB60
    Required urgent Help,
    Your early reply / solution is expected
    Regards,
    S Kulkarni

    Hi,
    Just go to OB28, define a validation (if you do not use one already), define one step, define the prerequisites on BSEG level of the account and define the check.
    For example, you can use the validation for the following situation: You want to make sure that postings to the expense account "Telephone costs" can only be posted to the services cost center "Telephone". You can carry out the checks needed for this by using the validation.
    Activities
    If you want to define new validations, go through the following activities:
    1. Place the cursor on a line in which company code and callup point are entered (you can enter company code and validation callup point via Edit -> New entries).
    2. Afterwards select Environment -> Validation. You reach the first screen for maintaining a validation.
    3. Select Validation -> Create. Enter the required name. After pressing ENTER, you come to an overview screen of the validation activities belonging to the validation.
    4. Select Insert entry. On the next screen you can describe a new validation activity. You describe the check requirements and the actual check for this. The syntax to be used for this is described in the online help (F1 help) for the input fields for Requirements and Check. You can also define a message (warning or error message) which is sent if the check is not successful.
    If you want to change validations which already exist, proceed as follows:
    1. Place the cursor on an already existing entry and select Goto -> Validation.
    2. On the next screen select Validation -> Display or Validation -> Change. After pressing ENTER, you get to the overview screen of the validation activities belonging to the validation. If you select Insert entry, you can carry out changes if necessary.
    Regards,
    Eli

  • WAITING FOR TIME CODE....again

    Hi, when I try to capture from DV device, the capture window appears "PREVIEW DISABLED" I can remote the dv device, mark time code in or out, play tape, pause tape, the time code in the capture window run and is the same taht the tape, but when I do batch capture, cpture clip or capture now, the preview window of catpure says : "WAITING FOR TIME CODE" "DEVICE MUST IN VTR MODE WHEN DEVICE CONTROL IS ENABLED" and when I abort the capture this message apperas: "THIS OPERATION COULD NOT BE COMPLETED AS THERE IS NO VIDEO", Quicktime pro is unabled to capture too, but IMOVIE capture without this problem. I download the firewire sdk from developer connection of apple and use AVCVideo Cap, and no problem for cature, so , my Firewire or dv devices are ok, with DVHSCap I capture PRO HD JVC very well.
    Resume , I think there is a problem with quicktime and DV format, My Ibook G4 with FCP 5.0.1 capture from DV devices OK, without problem. If anybody resolved this please comment with us. I work to day with FCP 6.0.4 and quicktime 7.5 and Mac os 10.4.11 and 10.5.4 the problem is afected my PowerPC G5 and my powerbook intel. Another point of interest is that this problem is RANDOM, some times I can capture from DV devices in the first time, some times I can't capture.

    Hey AL
    How ya doin buddy?
    "Either way, try an Easy Setup>DV Converter, to match your video standard (Pal or NTSC)."
    Yep - did that
    Yes actually my older Sony TVR-310 camcorder IS a digital unit which can also play back analog tapes.
    As I'm getting my way around now in FCE, I'm coming to some conclusions in regard to FCE's capture capability.
    First let me say that I've also tried capturing some footage in FCE with my other Sony TVR-950, and have had dropped frames, and also breaks in time code.
    I thought dropped frames were strictly a PC issue?
    Anyway, it appears to me that FCE is VERY sensitive to time code issues NO matter which camera is in the chain.
    In fact, I've also read here where folks have a lot of trouble with their Canon GL2's as well. Some of you have even suggested to do your captures in a cheaper Mini DV, or a clam-shell playback machine. This conserves the heads on your GL2 as well.
    But why would FCE do better in regard to capturing and time code, with a cheaper Mini DV Camcorder? Perhaps I'm missing something here?
    Perhaps iMovie doesn't care about the same issue?
    Now my main question is:
    Ok I'll use iMovie6 HD (tried and true), to capture ALL my footage and just save the DV files to be edited later (imported) into FCE.
    Does this sound like a viable solution to FCE's time code issues?
    Will my iMovie captures be JUST AS GOOD as if they were done in FCE?
    Thanx so much guys!
    Mike

  • Use one store account for two I pads. Get request for security code

    Trying to use one store account for two I pads. One works fine, the other is unable to download a free app, window asks for security code.?.......
    What security code?

    Probably the security code on your credit card

Maybe you are looking for